diff options
-rw-r--r-- | meta-oe/recipes-devtools/nodejs/nodejs/0003-include-obj-name-in-shared-intermediate.patch | 45 | ||||
-rw-r--r-- | meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb | 4 |
2 files changed, 48 insertions, 1 deletions
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0003-include-obj-name-in-shared-intermediate.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0003-include-obj-name-in-shared-intermediate.patch new file mode 100644 index 0000000000..a510216177 --- /dev/null +++ b/meta-oe/recipes-devtools/nodejs/nodejs/0003-include-obj-name-in-shared-intermediate.patch @@ -0,0 +1,45 @@ +From e6e691d093de440e0f408d48971e2b7332a07d58 Mon Sep 17 00:00:00 2001 +From: Min RK <benjaminrk@gmail.com> +Date: Fri, 19 Feb 2021 11:57:04 +0100 +Subject: [PATCH] include obj name in shared intermediate + +avoids duplicate ninja rules for v8 used in host and target + +From: https://github.com/minrk/node/commit/5e533cb943eef68b270f55f0cba02c0ec67c699d +Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> + +Upstream-Status: Submitted [https://github.com/nodejs/gyp-next/pull/185] +Signed-off-by: Tim Orling <tim.orling@konsulko.com> +--- + tools/gyp/pylib/gyp/generator/ninja.py | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/tools/gyp/pylib/gyp/generator/ninja.py b/tools/gyp/pylib/gyp/generator/ninja.py +index d173bf2299..efaeee53ef 100644 +--- a/tools/gyp/pylib/gyp/generator/ninja.py ++++ b/tools/gyp/pylib/gyp/generator/ninja.py +@@ -42,7 +42,7 @@ generator_default_variables = { + # the start of a string, while $| is used for variables that can appear + # anywhere in a string. + "INTERMEDIATE_DIR": "$!INTERMEDIATE_DIR", +- "SHARED_INTERMEDIATE_DIR": "$!PRODUCT_DIR/gen", ++ "SHARED_INTERMEDIATE_DIR": "$!PRODUCT_DIR/$|OBJ/gen", + "PRODUCT_DIR": "$!PRODUCT_DIR", + "CONFIGURATION_NAME": "$|CONFIGURATION_NAME", + # Special variables that may be used by gyp 'rule' targets. +@@ -285,6 +285,12 @@ class NinjaWriter: + CONFIGURATION_NAME = "$|CONFIGURATION_NAME" + path = path.replace(CONFIGURATION_NAME, self.config_name) + ++ obj = "obj" ++ if self.toolset != "target": ++ obj += "." + self.toolset ++ ++ path = path.replace("$|OBJ", obj) ++ + return path + + def ExpandRuleVariables(self, path, root, dirname, source, ext, name): +-- +2.37.3 + diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb b/meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb index f8b7f76f61..d410f13f85 100644 --- a/meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb +++ b/meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb @@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=dfd7ae796baf5326016a3865ee1dc632" CVE_PRODUCT = "nodejs node.js" -DEPENDS = "openssl" +DEPENDS = "openssl ninja-native" DEPENDS:append:class-target = " qemu-native" DEPENDS:append:class-native = " c-ares-native" @@ -28,6 +28,7 @@ SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ file://0001-liftoff-Correct-function-signatures.patch \ file://0001-mips-Use-32bit-cast-for-operand-on-mips32.patch \ file://gcc13.patch \ + file://0003-include-obj-name-in-shared-intermediate.patch \ " SRC_URI:append:class-target = " \ @@ -146,6 +147,7 @@ do_configure () { GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES # $TARGET_ARCH settings don't match --dest-cpu settings python3 configure.py --verbose --prefix=${prefix} \ + --ninja \ --shared-openssl \ --without-dtrace \ --without-etw \ |