package/nodejs: use shared libuv
authorMartin Bark <martin@barkynet.com>
Tue, 18 Jul 2017 11:45:43 +0000 (12:45 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 19 Jul 2017 20:01:39 +0000 (22:01 +0200)
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>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/nodejs/Config.in
package/nodejs/nodejs.mk

index a96901a31c55fc4183ae34164d8ecdc6d5950d59..345fe1047dbdec63d9db4897467dd478ae1ec8a8 100644 (file)
@@ -4,16 +4,18 @@ config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
        default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 && BR2_ARM_CPU_HAS_VFPV2
        default y if BR2_mipsel && !BR2_MIPS_SOFT_FLOAT
        default y if BR2_aarch64 || BR2_i386 || BR2_x86_64
+       # libuv
+       depends on BR2_TOOLCHAIN_HAS_SYNC_4
 
-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_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_INSTALL_LIBSTDCPP
        depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS
        depends on BR2_HOST_GCC_AT_LEAST_4_8
@@ -26,6 +28,7 @@ config BR2_PACKAGE_NODEJS
        depends on !BR2_STATIC_LIBS
        select BR2_PACKAGE_C_ARES
        select BR2_PACKAGE_LIBHTTPPARSER
+       select BR2_PACKAGE_LIBUV
        select BR2_PACKAGE_ZLIB
        help
          Event-driven I/O server-side JavaScript environment based on V8.
index f4e59697326dac3bc746c4a30c5273012fd8919c..bb4f984fcce7e1e08d7e1375f3ce0828481c37ed 100644 (file)
@@ -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 c-ares \
-       libhttpparser zlib \
+       libhttpparser libuv zlib \
        $(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