All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares
@ 2017-07-18 11:45 Martin Bark
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 2/3] package/nodejs: use shared libhttpparser Martin Bark
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Martin Bark @ 2017-07-18 11:45 UTC (permalink / raw)
  To: buildroot

nodejs requires c-ares and by default will use an internal copy
bundled with the release.  Change to using a shared c-ares library.

Signed-off-by: Martin Bark <martin@barkynet.com>

---
Changes v1 -> v2:
 - always use shared c-ares (Thomas Petazzoni)
---
 package/nodejs/Config.in | 1 +
 package/nodejs/nodejs.mk | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in
index 3022f9c..37d63d0 100644
--- a/package/nodejs/Config.in
+++ b/package/nodejs/Config.in
@@ -25,6 +25,7 @@ config BR2_PACKAGE_NODEJS
 	# linking, but that's too much of a corner case to support it.
 	depends on !BR2_STATIC_LIBS
 	select BR2_PACKAGE_ZLIB
+	select BR2_PACKAGE_C_ARES
 	help
 	  Event-driven I/O server-side JavaScript environment based on V8.
 
diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk
index 43c5ff3..68cc904 100644
--- a/package/nodejs/nodejs.mk
+++ b/package/nodejs/nodejs.mk
@@ -8,6 +8,7 @@ NODEJS_VERSION = 8.1.4
 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
 NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
 NODEJS_DEPENDENCIES = host-python host-nodejs zlib \
+	c-ares \
 	$(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS))
 HOST_NODEJS_DEPENDENCIES = host-python host-zlib
 NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components)
@@ -16,6 +17,7 @@ NODEJS_LICENSE_FILES = LICENSE
 NODEJS_CONF_OPTS = \
 	--without-snapshot \
 	--shared-zlib \
+	--shared-cares \
 	--without-dtrace \
 	--without-etw \
 	--dest-os=linux
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2 2/3] package/nodejs: use shared libhttpparser
  2017-07-18 11:45 [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Martin Bark
@ 2017-07-18 11:45 ` Martin Bark
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv Martin Bark
  2017-07-19 20:45 ` [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Thomas Petazzoni
  2 siblings, 0 replies; 5+ messages in thread
From: Martin Bark @ 2017-07-18 11:45 UTC (permalink / raw)
  To: buildroot

nodejs requires libhttpparser and by default will use an internal copy
bundled with the release.  Change to using a shared libhttpparser library.

Signed-off-by: Martin Bark <martin@barkynet.com>

---
Changes v1 -> v2:
 - always use shared libhttpparser (Thomas Petazzoni)
---
 package/nodejs/Config.in | 1 +
 package/nodejs/nodejs.mk | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in
index 37d63d0..f02b9a7 100644
--- a/package/nodejs/Config.in
+++ b/package/nodejs/Config.in
@@ -26,6 +26,7 @@ config BR2_PACKAGE_NODEJS
 	depends on !BR2_STATIC_LIBS
 	select BR2_PACKAGE_ZLIB
 	select BR2_PACKAGE_C_ARES
+	select BR2_PACKAGE_LIBHTTPPARSER
 	help
 	  Event-driven I/O server-side JavaScript environment based on V8.
 
diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk
index 68cc904..c97b793 100644
--- a/package/nodejs/nodejs.mk
+++ b/package/nodejs/nodejs.mk
@@ -8,7 +8,7 @@ NODEJS_VERSION = 8.1.4
 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
 NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
 NODEJS_DEPENDENCIES = host-python host-nodejs zlib \
-	c-ares \
+	c-ares libhttpparser \
 	$(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS))
 HOST_NODEJS_DEPENDENCIES = host-python host-zlib
 NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components)
@@ -18,6 +18,7 @@ NODEJS_CONF_OPTS = \
 	--without-snapshot \
 	--shared-zlib \
 	--shared-cares \
+	--shared-http-parser \
 	--without-dtrace \
 	--without-etw \
 	--dest-os=linux
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv
  2017-07-18 11:45 [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Martin Bark
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 2/3] package/nodejs: use shared libhttpparser Martin Bark
@ 2017-07-18 11:45 ` Martin Bark
  2017-07-19 20:46   ` Thomas Petazzoni
  2017-07-19 20:45 ` [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Thomas Petazzoni
  2 siblings, 1 reply; 5+ messages in thread
From: Martin Bark @ 2017-07-18 11:45 UTC (permalink / raw)
  To: buildroot

nodejs requires libuv and by default will use an internal copy
bundled with the release.  Change to using a shared libuv library.

Signed-off-by: Martin Bark <martin@barkynet.com>

---
Changes v1 -> v2:
 - always use shared libuv (Thomas Petazzoni)
---
 package/nodejs/Config.in | 9 ++++++---
 package/nodejs/nodejs.mk | 3 ++-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in
index f02b9a7..d3cb006 100644
--- a/package/nodejs/Config.in
+++ b/package/nodejs/Config.in
@@ -5,15 +5,17 @@ config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
 	default y if BR2_mipsel && !BR2_MIPS_SOFT_FLOAT
 	default y if BR2_aarch64 || BR2_i386 || BR2_x86_64
 
-comment "nodejs needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.8, wchar"
+comment "nodejs needs a toolchain w/ C++, dynamic library, NPTL, gcc >= 4.8, wchar"
 	depends on BR2_USE_MMU
 	depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
-	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4
+	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
 		!BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR
 
 config BR2_PACKAGE_NODEJS
 	bool "nodejs"
-	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
+	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
 	depends on BR2_HOST_GCC_AT_LEAST_4_8
@@ -27,6 +29,7 @@ config BR2_PACKAGE_NODEJS
 	select BR2_PACKAGE_ZLIB
 	select BR2_PACKAGE_C_ARES
 	select BR2_PACKAGE_LIBHTTPPARSER
+	select BR2_PACKAGE_LIBUV
 	help
 	  Event-driven I/O server-side JavaScript environment based on V8.
 
diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk
index c97b793..4012b4d 100644
--- a/package/nodejs/nodejs.mk
+++ b/package/nodejs/nodejs.mk
@@ -8,7 +8,7 @@ NODEJS_VERSION = 8.1.4
 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz
 NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION)
 NODEJS_DEPENDENCIES = host-python host-nodejs zlib \
-	c-ares libhttpparser \
+	c-ares libhttpparser libuv \
 	$(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS))
 HOST_NODEJS_DEPENDENCIES = host-python host-zlib
 NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components)
@@ -19,6 +19,7 @@ NODEJS_CONF_OPTS = \
 	--shared-zlib \
 	--shared-cares \
 	--shared-http-parser \
+	--shared-libuv \
 	--without-dtrace \
 	--without-etw \
 	--dest-os=linux
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares
  2017-07-18 11:45 [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Martin Bark
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 2/3] package/nodejs: use shared libhttpparser Martin Bark
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv Martin Bark
@ 2017-07-19 20:45 ` Thomas Petazzoni
  2 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2017-07-19 20:45 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 18 Jul 2017 12:45:41 +0100, Martin Bark wrote:

> diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in
> index 3022f9c..37d63d0 100644
> --- a/package/nodejs/Config.in
> +++ b/package/nodejs/Config.in
> @@ -25,6 +25,7 @@ config BR2_PACKAGE_NODEJS
>  	# linking, but that's too much of a corner case to support it.
>  	depends on !BR2_STATIC_LIBS
>  	select BR2_PACKAGE_ZLIB
> +	select BR2_PACKAGE_C_ARES

Alphabetic ordering here and in <pkg>_DEPENDENCIES would have been
better. I've fixed this and applied all three patches. Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv
  2017-07-18 11:45 ` [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv Martin Bark
@ 2017-07-19 20:46   ` Thomas Petazzoni
  0 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2017-07-19 20:46 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 18 Jul 2017 12:45:43 +0100, Martin Bark wrote:

> diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in
> index f02b9a7..d3cb006 100644
> --- a/package/nodejs/Config.in
> +++ b/package/nodejs/Config.in
> @@ -5,15 +5,17 @@ config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
>  	default y if BR2_mipsel && !BR2_MIPS_SOFT_FLOAT
>  	default y if BR2_aarch64 || BR2_i386 || BR2_x86_64
>  
> -comment "nodejs needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.8, wchar"
> +comment "nodejs needs a toolchain w/ C++, dynamic library, NPTL, gcc >= 4.8, wchar"
>  	depends on BR2_USE_MMU
>  	depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
> -	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
> +	depends on BR2_TOOLCHAIN_HAS_SYNC_4
> +	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
>  		!BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR
>  
>  config BR2_PACKAGE_NODEJS
>  	bool "nodejs"
> -	depends on BR2_TOOLCHAIN_HAS_THREADS
> +	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
> +	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv

BR2_TOOLCHAIN_HAS_SYNC_4 really is an architecture dependency (we don't
show a Config.in comment for it), so I've moved it under
BR2_PACKAGE_NODEJS_ARCH_SUPPORTS, so it doesn't have to be duplicated.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-07-19 20:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-18 11:45 [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Martin Bark
2017-07-18 11:45 ` [Buildroot] [PATCH v2 2/3] package/nodejs: use shared libhttpparser Martin Bark
2017-07-18 11:45 ` [Buildroot] [PATCH v2 3/3] package/nodejs: use shared libuv Martin Bark
2017-07-19 20:46   ` Thomas Petazzoni
2017-07-19 20:45 ` [Buildroot] [PATCH v2 1/3] package/nodejs: use shared c-ares Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.