node-yarn: Support for npm@8
authorHirokazu MORIKAWA <morikw2@gmail.com>
Wed, 6 Apr 2022 01:19:45 +0000 (10:19 +0900)
committerJosef Schlehofer <pepe.schlehofer@gmail.com>
Sun, 22 May 2022 09:22:20 +0000 (11:22 +0200)
With the upgrade of node.js to version 16, the npm version will also change to version 8.
This fix is to support npm@8. npm@6 can also build without problems.

Signed-off-by: Hirokazu MORIKAWA <morikw2@gmail.com>
(cherry picked from commit 285efba8ea9c3f49334c54cd6a96b2721deb0e2b)

lang/node-yarn/Makefile

index 55919de973f26d58df667e1da405e316c4896be4..47c7112f204f38fa3eca04f2bef8a8b4ab4c1c0f 100644 (file)
@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
 PKG_NPM_NAME:=yarn
 PKG_NAME:=node-$(PKG_NPM_NAME)
 PKG_VERSION:=1.22.10
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NPM_NAME)-$(PKG_VERSION).tgz
 PKG_SOURCE_URL:=https://registry.npmjs.org/$(PKG_NPM_NAME)/-/
@@ -43,13 +43,19 @@ TAR_CMD=$(HOST_TAR) -C $(1) $(TAR_OPTIONS)
 
 HOSTTMPNPM:=$(shell mktemp -u XXXXXXXXXX)
 
-define Host/Compile
-       $(HOST_MAKE_VARS) \
+HOST_NPM_FLAGS=$(HOST_MAKE_VARS) \
+       $(HOST_MAKE_FLAGS) \
+       npm_config_arch=$(NODEJS_CPU) \
+       npm_config_target_arch=$(NODEJS_CPU) \
+       npm_config_build_from_source=true \
        npm_config_nodedir=$(STAGING_DIR)/usr/ \
        npm_config_prefix=$(HOST_INSTALL_DIR)/usr/ \
        npm_config_cache=$(TMP_DIR)/npm-cache-$(HOSTTMPNPM) \
-       npm_config_tmp=$(TMP_DIR)/npm-tmp-$(HOSTTMPNPM) \
-       npm install -g $(HOST_BUILD_DIR)
+       npm_config_tmp=$(TMP_DIR)/npm-tmp-$(HOSTTMPNPM)
+
+define Host/Compile
+       $(HOST_NPM_FLAGS) npm i -g --production $(HOST_BUILD_DIR)
+       $(HOST_NPM_FLAGS) npm i --production --prefix=$(HOST_BUILD_DIR) --target_arch=$(NODEJS_CPU) --prefer-dedupe
        rm -rf $(TMP_DIR)/npm-tmp-$(HOSTTMPNPM)
        rm -rf $(TMP_DIR)/npm-cache-$(HOSTTMPNPM)
 endef