summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/nodejs
diff options
context:
space:
mode:
authorTim Orling <ticotimo@gmail.com>2026-05-21 13:14:01 -0700
committerKhem Raj <khem.raj@oss.qualcomm.com>2026-05-21 17:20:20 -0700
commit143d18269cefc6fe4aaa0cee5fc1f231a904fb81 (patch)
treec3639748a437dc74cd9a2b2eb62f748dc54a8825 /meta-oe/recipes-devtools/nodejs
parent9f1a858701f25f248155f462fc937ee7e095a2e4 (diff)
downloadmeta-openembedded-143d18269cefc6fe4aaa0cee5fc1f231a904fb81.tar.gz
nodejs: upgrade 22.22.3 -> 24.16.0 (LTS)
Add Node.js 24.16.0 [1] recipe based on 22.22.3. Patches reviewed against the 24.15.0 source tree and rebased where needed: - 0001: rebased for Makefile changes (common_node.gypi removed, line offsets shifted); merged with Disable-running-gyp-files patch since both modify the same Makefile hunk. Remove deps/simdutf/simdutf.gyp; no longer vendored here. - 0005: rebased for v8.gyp libatomic condition change (clang condition folded upstream, ppc removed) - v24.16.0 bumps bundled llhttp to 9.3.1 (LLHTTP_VERSION_MAJOR/MINOR/PATCH = 9/3/1 in deps/llhttp/include/llhttp.h). Five patches dropped as no longer needed: - build-remove-redundant-mXX-flags-for-V8: backport already merged upstream in Node.js 24 - ppc64-Do-not-use-mminimal-toc-with-clang: Node.js 24 common.gypi already gates -mminimal-toc behind clang==0 - fix-arm-Neon-intrinsics-types: the v24.16.0 source already uses vandq_u8/vorrq_u8 and vshrn_n_u16(vreinterpretq_u16_u8(mask), 4). - detect-aarch64-Neon-correctly: #ifdef __ARM_NEON__ → #if defined(__ARM_NEON__) || defined(__ARM_NEON) — already present at lines 13 and 2628. - llhttp-fix-NEON-header-value-__builtin_ctzll-undefin: wanted the match_mask == 0 guard around __builtin_ctzll — already present. "This patch can be dropped when nodejs updates its bundled llhttp to >= 9.3.1.") Remaining 9 patches renumbered sequentially 0001-0009. All verified to apply cleanly against the v24.16.0 source tarball. NOTE: The "current" release is v26.2.0 [1], but this is not yet an LTS release. Application stacks frequently lag new releases, so it makes sense to have support for the v24 LTS release. [1] https://nodejs.org/en/blog/release/v24.16.0 [2] https://nodejs.org/en/blog/release/v26.2.0 Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Diffstat (limited to 'meta-oe/recipes-devtools/nodejs')
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0001-Do-not-use-glob-in-deps.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch)26
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0002-v8-don-t-override-ARM-CFLAGS.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0004-v8-don-t-override-ARM-CFLAGS.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0003-system-c-ares.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0004-liftoff-Correct-function-signatures.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0005-libatomic.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch)31
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0006-deps-disable-io_uring-support-in-libuv.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0007-positional-args.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-positional-args.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0008-custom-env.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-custom-env.patch)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs-24/0009-Using-native-binaries.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0001-Using-native-binaries.patch)0
-rwxr-xr-xmeta-oe/recipes-devtools/nodejs/nodejs-24/run-ptest (renamed from meta-oe/recipes-devtools/nodejs/nodejs/run-ptest)0
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-Do-not-use-glob-in-deps.patch22
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-build-remove-redundant-mXX-flags-for-V8.patch133
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch25
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs_24.16.0.bb (renamed from meta-oe/recipes-devtools/nodejs/nodejs_22.22.3.bb)34
14 files changed, 39 insertions, 232 deletions
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0001-Do-not-use-glob-in-deps.patch
index f692eedd41..622d25bbd3 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0001-Do-not-use-glob-in-deps.patch
@@ -1,10 +1,13 @@
1// Revert the patch found here https://github.com/nodejs/node/commit/fe1dd26398e1887b96b2dc51ab59371ad4d6bc20?diff=unified&w=0
2// so that the dependencies are still explicitly enumerated. That way we
3// can pick and choose which pieces to build and which to use existing system
4// packages for.
5
1From 689e098cbde130ecde523ae39df3567456271fda Mon Sep 17 00:00:00 2001 6From 689e098cbde130ecde523ae39df3567456271fda Mon Sep 17 00:00:00 2001
2From: Zuzana Svetlikova <zsvetlik@redhat.com> 7From: Zuzana Svetlikova <zsvetlik@redhat.com>
3Date: Thu, 27 Apr 2017 14:25:42 +0200 8Date: Thu, 27 Apr 2017 14:25:42 +0200
4Subject: [PATCH] Disable running gyp on shared deps 9Subject: [PATCH] Disable running gyp on shared deps
5 10
6Upstream-Status: Inappropriate [embedded specific]
7
8Probably imported from: 11Probably imported from:
9https://src.fedoraproject.org/rpms/nodejs/c/41af04f2a3c050fb44628e91ac65fd225b927acb?branch=22609d8c1bfeaa21fe0057645af20b3a2ccc7f53 12https://src.fedoraproject.org/rpms/nodejs/c/41af04f2a3c050fb44628e91ac65fd225b927acb?branch=22609d8c1bfeaa21fe0057645af20b3a2ccc7f53
10which is probably based on dont-run-gyp-files-for-bundled-deps.patch added in: 13which is probably based on dont-run-gyp-files-for-bundled-deps.patch added in:
@@ -28,20 +31,17 @@ python prune_sources() {
28 shutil.rmtree(d.getVar('S') + '/deps/zlib') 31 shutil.rmtree(d.getVar('S') + '/deps/zlib')
29} 32}
30do_unpack[postfuncs] += "prune_sources" 33do_unpack[postfuncs] += "prune_sources"
31---
32 Makefile | 2 +-
33 1 file changed, 1 insertion(+), 1 deletion(-)
34 34
35diff --git a/Makefile b/Makefile 35Upstream-Status: Inappropriate [embedded specific]
36index dba16e5e..da4faffc 100644 36
37--- a/Makefile 37--- a/Makefile
38+++ b/Makefile 38+++ b/Makefile
39@@ -173,7 +173,7 @@ with-code-cache test-code-cache: 39@@ -179,7 +179,7 @@ with-code-cache test-code-cache:
40 $(warning '$@' target is a noop) 40 $(warning '$@' target is a noop)
41 41
42 out/Makefile: config.gypi common.gypi common_node.gypi node.gyp \ 42 out/Makefile: config.gypi common.gypi node.gyp \
43- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \ 43- deps/*/*.gyp \
44+ deps/llhttp/llhttp.gyp \ 44+ deps/llhttp/llhttp.gyp deps/ada/ada.gyp deps/nbytes/nbytes.gyp \
45 deps/simdutf/simdutf.gyp deps/ada/ada.gyp deps/nbytes/nbytes.gyp \
46 tools/v8_gypfiles/toolchain.gypi \ 45 tools/v8_gypfiles/toolchain.gypi \
47 tools/v8_gypfiles/features.gypi \ 46 tools/v8_gypfiles/features.gypi \
47 tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0004-v8-don-t-override-ARM-CFLAGS.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0002-v8-don-t-override-ARM-CFLAGS.patch
index cc920118a2..cc920118a2 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0004-v8-don-t-override-ARM-CFLAGS.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0002-v8-don-t-override-ARM-CFLAGS.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0003-system-c-ares.patch
index 6f08c71e18..6f08c71e18 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0003-system-c-ares.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0004-liftoff-Correct-function-signatures.patch
index 5e617e6554..5e617e6554 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0004-liftoff-Correct-function-signatures.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0005-libatomic.patch
index 835c7018de..a61b28f2f8 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0005-libatomic.patch
@@ -23,11 +23,9 @@ Added libatomic library explicitly to x86 targets.
23Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> 23Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
24--- 24---
25 node.gyp | 13 ++++++++++++- 25 node.gyp | 13 ++++++++++++-
26 tools/v8_gypfiles/v8.gyp | 15 ++++++++++++--- 26 tools/v8_gypfiles/v8.gyp | 29 ++++++++++++++++++++++++-----
27 2 files changed, 24 insertions(+), 4 deletions(-) 27 2 files changed, 36 insertions(+), 6 deletions(-)
28 28
29diff --git a/node.gyp b/node.gyp
30index b425f443..f296f35c 100644
31--- a/node.gyp 29--- a/node.gyp
32+++ b/node.gyp 30+++ b/node.gyp
33@@ -503,7 +503,18 @@ 31@@ -503,7 +503,18 @@
@@ -50,37 +48,38 @@ index b425f443..f296f35c 100644
50 }], 48 }],
51 ], 49 ],
52 }, 50 },
53diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
54index b23263cf..dcabf4ca 100644
55--- a/tools/v8_gypfiles/v8.gyp 51--- a/tools/v8_gypfiles/v8.gyp
56+++ b/tools/v8_gypfiles/v8.gyp 52+++ b/tools/v8_gypfiles/v8.gyp
57@@ -1348,9 +1348,18 @@ 53@@ -1324,10 +1324,24 @@
58 # Platforms that don't have Compare-And-Swap (CAS) support need to link atomic library 54 # Platforms that don't have Compare-And-Swap (CAS) support need to link atomic library
59 # to implement atomic memory access 55 # to implement atomic memory access.
60 ['v8_current_cpu in ["mips64", "mips64el", "ppc", "arm", "riscv64", "loong64"]', { 56 # Clang needs it for some atomic operations (https://clang.llvm.org/docs/Toolchain.html#atomics-library).
57- ['(OS=="linux" and clang==1) or (v8_current_cpu in ["mips64", "mips64el", "arm", "riscv64", "loong64"])', {
61- 'link_settings': { 58- 'link_settings': {
62- 'libraries': ['-latomic', ], 59- 'libraries': ['-latomic', ],
63- }, 60- },
61+ ['(OS=="linux" and clang==1) or \
62+ (v8_current_cpu in ["mips64", "mips64el", "arm", "riscv64", "loong64"])', {
64+ 'target_conditions': [ 63+ 'target_conditions': [
65+ ['_toolset=="host"', { 64+ ['_toolset=="host"', {
66+ 'conditions': [ 65+ 'conditions': [
67+ ['"<!(echo $HOST_AND_TARGET_SAME_WIDTH)"=="0"', { 66+ ['"<!(echo $HOST_AND_TARGET_SAME_WIDTH)"=="0"', {
68+ 'libraries': ['-latomic'], 67+ 'link_settings': {
68+ 'libraries': ['-latomic'],
69+ },
69+ }], 70+ }],
70+ ], 71+ ],
71+ }], 72+ }],
72+ ['_toolset=="target"', { 73+ ['_toolset=="target"', {
73+ 'libraries': ['-latomic', ], 74+ 'link_settings': {
75+ 'libraries': ['-latomic', ],
76+ },
74+ }], 77+ }],
75+ ], 78+ ],
76 }], 79 }],
77 ], 80 ],
78 }, # v8_base_without_compiler 81 }, # v8_base_without_compiler
79diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp 82@@ -1793,6 +1805,13 @@
80index cb82d4f15bc..65cb123b7bf 100644
81--- a/tools/v8_gypfiles/v8.gyp
82+++ b/tools/v8_gypfiles/v8.gyp
83@@ -1820,6 +1820,13 @@
84 ['enable_lto=="true"', { 83 ['enable_lto=="true"', {
85 'ldflags': [ '-fno-lto' ], 84 'ldflags': [ '-fno-lto' ],
86 }], 85 }],
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0006-deps-disable-io_uring-support-in-libuv.patch
index 50d63cf78c..50d63cf78c 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-deps-disable-io_uring-support-in-libuv.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0006-deps-disable-io_uring-support-in-libuv.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-positional-args.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0007-positional-args.patch
index 5fd6aee351..5fd6aee351 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-positional-args.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0007-positional-args.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-custom-env.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0008-custom-env.patch
index 532d3c5f51..532d3c5f51 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-custom-env.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0008-custom-env.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Using-native-binaries.patch b/meta-oe/recipes-devtools/nodejs/nodejs-24/0009-Using-native-binaries.patch
index 0178cec777..0178cec777 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Using-native-binaries.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/0009-Using-native-binaries.patch
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/run-ptest b/meta-oe/recipes-devtools/nodejs/nodejs-24/run-ptest
index e82f373626..e82f373626 100755
--- a/meta-oe/recipes-devtools/nodejs/nodejs/run-ptest
+++ b/meta-oe/recipes-devtools/nodejs/nodejs-24/run-ptest
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Do-not-use-glob-in-deps.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-Do-not-use-glob-in-deps.patch
deleted file mode 100644
index 551869523e..0000000000
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-Do-not-use-glob-in-deps.patch
+++ /dev/null
@@ -1,22 +0,0 @@
1// Revert the patch found here https://github.com/nodejs/node/commit/fe1dd26398e1887b96b2dc51ab59371ad4d6bc20?diff=unified&w=0
2// so that the dependencies are still explicitly enumerated. That way we
3// can pick and choose which pieces to build and which to use existing system
4// packages for.
5
6Upstream-Status: Inappropriate [embedded specific]
7
8
9--- a/Makefile 2025-01-11 14:37:29.059536707 -0500
10+++ b/Makefile 2025-01-11 14:39:52.419867046 -0500
11@@ -171,7 +171,8 @@
12 $(warning '$@' target is a noop)
13
14 out/Makefile: config.gypi common.gypi common_node.gypi node.gyp \
15- deps/*/*.gyp \
16+ deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
17+ deps/simdutf/simdutf.gyp deps/ada/ada.gyp deps/nbytes/nbytes.gyp \
18 tools/v8_gypfiles/toolchain.gypi \
19 tools/v8_gypfiles/features.gypi \
20 tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
21
22
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-build-remove-redundant-mXX-flags-for-V8.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-build-remove-redundant-mXX-flags-for-V8.patch
deleted file mode 100644
index b47aa564cf..0000000000
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-build-remove-redundant-mXX-flags-for-V8.patch
+++ /dev/null
@@ -1,133 +0,0 @@
1From 403264c02edc2689671dbefaf032e3acb4fb713d Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= <targos@protonmail.com>
3Date: Sat, 19 Apr 2025 12:22:10 +0200
4Subject: [PATCH] build: remove redundant `-mXX` flags for V8
5
6They are already set by `common.gypi`.
7
8
9Needed to build on aarch64 build hosts with clang compiler
10Drop it when upgrading to 0.24.x or newer.
11
12Upstream-Status: Backport [https://github.com/nodejs/node/commit/403264c02edc2689671dbefaf032e3acb4fb713d]
13
14PR-URL: https://github.com/nodejs/node/pull/57907
15Reviewed-By: James M Snell <jasnell@gmail.com>
16Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
17Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
18Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
19Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
20---
21 tools/v8_gypfiles/toolchain.gypi | 91 --------------------------------
22 1 file changed, 91 deletions(-)
23
24Index: node-v22.16.0/tools/v8_gypfiles/toolchain.gypi
25===================================================================
26--- node-v22.16.0.orig/tools/v8_gypfiles/toolchain.gypi
27+++ node-v22.16.0/tools/v8_gypfiles/toolchain.gypi
28@@ -103,33 +103,6 @@
29 # Indicates if gcmole tools are downloaded by a hook.
30 'gcmole%': 0,
31 },
32-
33- # [GYP] this needs to be outside of the top level 'variables'
34- 'conditions': [
35- ['host_arch=="ia32" or host_arch=="x64" or \
36- host_arch=="ppc" or host_arch=="ppc64" or \
37- host_arch=="s390x" or \
38- clang==1', {
39- 'variables': {
40- 'host_cxx_is_biarch%': 1,
41- },
42- }, {
43- 'variables': {
44- 'host_cxx_is_biarch%': 0,
45- },
46- }],
47- ['target_arch=="ia32" or target_arch=="x64" or \
48- target_arch=="ppc" or target_arch=="ppc64" or \
49- target_arch=="s390x" or clang==1', {
50- 'variables': {
51- 'target_cxx_is_biarch%': 1,
52- },
53- }, {
54- 'variables': {
55- 'target_cxx_is_biarch%': 0,
56- },
57- }],
58- ],
59 'target_defaults': {
60 'cflags!': ['-Wall', '-Wextra'],
61 'conditions': [
62@@ -553,71 +526,6 @@
63 '-mmmx', # Allows mmintrin.h for MMX intrinsics.
64 ],
65 }],
66- ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
67- or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \
68- (v8_target_arch=="arm" or v8_target_arch=="ia32" or \
69- v8_target_arch=="ppc")', {
70- 'target_conditions': [
71- ['_toolset=="host"', {
72- 'conditions': [
73- ['host_cxx_is_biarch==1', {
74- 'conditions': [
75- ['host_arch=="s390x"', {
76- 'cflags': [ '-m31' ],
77- 'ldflags': [ '-m31' ]
78- },{
79- 'cflags': [ '-m32' ],
80- 'ldflags': [ '-m32' ]
81- }],
82- ],
83- }],
84- ],
85- 'xcode_settings': {
86- 'ARCHS': [ 'i386' ],
87- },
88- }],
89- ['_toolset=="target"', {
90- 'conditions': [
91- ['target_cxx_is_biarch==1', {
92- 'conditions': [
93- ['host_arch=="s390x"', {
94- 'cflags': [ '-m31' ],
95- 'ldflags': [ '-m31' ]
96- },{
97- 'cflags': [ '-m32' ],
98- 'ldflags': [ '-m32' ],
99- }],
100- ],
101- }],
102- ],
103- 'xcode_settings': {
104- 'ARCHS': [ 'i386' ],
105- },
106- }],
107- ],
108- }],
109- ['(OS=="linux" or OS=="android") and \
110- (v8_target_arch=="x64" or v8_target_arch=="arm64" or \
111- v8_target_arch=="ppc64" or v8_target_arch=="s390x")', {
112- 'target_conditions': [
113- ['_toolset=="host"', {
114- 'conditions': [
115- ['host_cxx_is_biarch==1', {
116- 'cflags': [ '-m64' ],
117- 'ldflags': [ '-m64' ]
118- }],
119- ],
120- }],
121- ['_toolset=="target"', {
122- 'conditions': [
123- ['target_cxx_is_biarch==1', {
124- 'cflags': [ '-m64' ],
125- 'ldflags': [ '-m64' ],
126- }],
127- ]
128- }],
129- ],
130- }],
131 ['OS=="android" and v8_android_log_stdout==1', {
132 'defines': [
133 'V8_ANDROID_LOG_STDOUT',
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch
deleted file mode 100644
index dd9c9015e2..0000000000
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch
+++ /dev/null
@@ -1,25 +0,0 @@
1From 0976af0f3b328436ea44a74a406f311adb2ab211 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 15 Jun 2021 19:01:31 -0700
4Subject: [PATCH] ppc64: Do not use -mminimal-toc with clang
5
6clang does not support this option
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10Upstream-Status: Pending
11
12 common.gypi | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15--- a/common.gypi
16+++ b/common.gypi
17@@ -417,7 +417,7 @@
18 'ldflags': [ '-m32' ],
19 }],
20 [ 'target_arch=="ppc64" and OS!="aix"', {
21- 'cflags': [ '-m64', '-mminimal-toc' ],
22+ 'cflags': [ '-m64' ],
23 'ldflags': [ '-m64' ],
24 }],
25 [ 'target_arch=="s390x"', {
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_22.22.3.bb b/meta-oe/recipes-devtools/nodejs/nodejs_24.16.0.bb
index a13b71b762..4b9d9c7e19 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs_22.22.3.bb
+++ b/meta-oe/recipes-devtools/nodejs/nodejs_24.16.0.bb
@@ -1,7 +1,8 @@
1DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript" 1DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
2HOMEPAGE = "http://nodejs.org" 2HOMEPAGE = "http://nodejs.org"
3LICENSE = "MIT & ISC & BSD-2-Clause & BSD-3-Clause & Artistic-2.0 & Apache-2.0 & BlueOak-1.0.0" 3LICENSE = "MIT & ISC & BSD-2-Clause & BSD-3-Clause & Artistic-2.0 & Apache-2.0 & BlueOak-1.0.0"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=b195f4ea4368177a2fd84b879f09cba8" 4LIC_FILES_CHKSUM = "file://LICENSE;md5=9f816753e8bdfe4576cb87159a0cd60c"
5FILESEXTRAPATHS:prepend := "${THISDIR}/nodejs-24:"
5 6
6CVE_PRODUCT = "nodejs node.js" 7CVE_PRODUCT = "nodejs node.js"
7 8
@@ -22,24 +23,19 @@ COMPATIBLE_HOST:powerpc64le = "null"
22 23
23SRC_URI = "https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ 24SRC_URI = "https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
24 file://0001-Do-not-use-glob-in-deps.patch \ 25 file://0001-Do-not-use-glob-in-deps.patch \
25 file://0001-Disable-running-gyp-files-for-bundled-deps.patch \ 26 file://0002-v8-don-t-override-ARM-CFLAGS.patch \
26 file://0004-v8-don-t-override-ARM-CFLAGS.patch \ 27 file://0003-system-c-ares.patch \
27 file://system-c-ares.patch \ 28 file://0004-liftoff-Correct-function-signatures.patch \
28 file://0001-liftoff-Correct-function-signatures.patch \ 29 file://0005-libatomic.patch \
29 file://libatomic.patch \ 30 file://0006-deps-disable-io_uring-support-in-libuv.patch \
30 file://0001-deps-disable-io_uring-support-in-libuv.patch \ 31 file://0007-positional-args.patch \
31 file://0001-positional-args.patch \ 32 file://0008-custom-env.patch \
32 file://0001-custom-env.patch \
33 file://0001-build-remove-redundant-mXX-flags-for-V8.patch \
34 file://run-ptest \ 33 file://run-ptest \
35 " 34 "
36SRC_URI:append:class-target = " \ 35SRC_URI:append:class-target = " \
37 file://0001-Using-native-binaries.patch \ 36 file://0009-Using-native-binaries.patch \
38 " 37 "
39SRC_URI:append:toolchain-clang:powerpc64le = " \ 38SRC_URI[sha256sum] = "2ff84a6de70b6165290111b0fc656ded1ad207a799816fe720cc7c31232df30f"
40 file://0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch \
41 "
42SRC_URI[sha256sum] = "f3e6a578db1ab335a4a72785c1e87ad18a2cf6d2fc25747a1d741fb34af0bd0f"
43 39
44S = "${UNPACKDIR}/node-v${PV}" 40S = "${UNPACKDIR}/node-v${PV}"
45 41
@@ -211,11 +207,3 @@ python __anonymous () {
211} 207}
212 208
213BBCLASSEXTEND = "native" 209BBCLASSEXTEND = "native"
214
215CVE_STATUS[CVE-2026-21710] = "fixed-version: fixed since v22.22.2"
216CVE_STATUS[CVE-2026-21712] = "cpe-incorrect: only v24 and v25 are affected"
217CVE_STATUS[CVE-2026-21713] = "fixed-version: fixed since v22.22.2"
218CVE_STATUS[CVE-2026-21714] = "fixed-version: fixed since v22.22.2"
219CVE_STATUS[CVE-2026-21715] = "fixed-version: fixed since v22.22.2"
220CVE_STATUS[CVE-2026-21716] = "fixed-version: fixed since v22.22.2"
221CVE_STATUS[CVE-2026-21717] = "fixed-version: fixed since v22.22.2"