From 1facb09b94bf806b301868539185c0ff9ddffee2 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Tue, 9 Aug 2022 10:57:04 +0300 Subject: [PATCH] package/nodejs: build host-nodejs only if we're installing modules with NPM Building host-nodejs is no longer needed to build the target nodejs, unless npm is needed during the build, which happens when BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL is used. We need to make that host-python3 is built with bz2 and ssl support. Until now, it was done by the BR2_PACKAGE_HOST_NODEJS option, but now that the target nodejs no longer depends on host-nodejs, we are no longer guaranteed to have a host-python3 with bz2/ssl. To make sure it is the case, we select the relevant options from BR2_PACKAGE_NODEJS. Signed-off-by: Alexandru Ardelean Signed-off-by: Thomas Petazzoni --- package/nodejs/Config.in | 5 ++++- package/nodejs/nodejs.mk | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in index 016aeb4e1a..8d0bd8fd60 100644 --- a/package/nodejs/Config.in +++ b/package/nodejs/Config.in @@ -27,7 +27,10 @@ config BR2_PACKAGE_NODEJS # uses dlopen(). On ARMv5, we could technically support static # linking, but that's too much of a corner case to support it. depends on !BR2_STATIC_LIBS - select BR2_PACKAGE_HOST_NODEJS + select BR2_PACKAGE_HOST_NODEJS if BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL != "" + select BR2_PACKAGE_HOST_PYTHON3 + select BR2_PACKAGE_HOST_PYTHON3_BZIP2 + select BR2_PACKAGE_HOST_PYTHON3_SSL select BR2_PACKAGE_C_ARES select BR2_PACKAGE_LIBUV select BR2_PACKAGE_ZLIB diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk index 92a9493e25..e9fe96812f 100644 --- a/package/nodejs/nodejs.mk +++ b/package/nodejs/nodejs.mk @@ -8,7 +8,6 @@ NODEJS_VERSION = 16.16.0 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = \ - host-nodejs \ host-ninja \ host-pkgconf \ host-python3 \ @@ -240,6 +239,7 @@ NPM = $(TARGET_CONFIGURE_OPTS) \ # We can only call NPM if there's something to install. # ifneq ($(NODEJS_MODULES_LIST),) +NODEJS_DEPENDENCIES += host-nodejs define NODEJS_INSTALL_MODULES # If you're having trouble with module installation, adding -d to the # npm install call below and setting npm_config_rollback=false can both