mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-17 16:47:13 +00:00
143d18269c
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>
48 lines
1.9 KiB
Diff
48 lines
1.9 KiB
Diff
// Revert the patch found here https://github.com/nodejs/node/commit/fe1dd26398e1887b96b2dc51ab59371ad4d6bc20?diff=unified&w=0
|
|
// so that the dependencies are still explicitly enumerated. That way we
|
|
// can pick and choose which pieces to build and which to use existing system
|
|
// packages for.
|
|
|
|
From 689e098cbde130ecde523ae39df3567456271fda Mon Sep 17 00:00:00 2001
|
|
From: Zuzana Svetlikova <zsvetlik@redhat.com>
|
|
Date: Thu, 27 Apr 2017 14:25:42 +0200
|
|
Subject: [PATCH] Disable running gyp on shared deps
|
|
|
|
Probably imported from:
|
|
https://src.fedoraproject.org/rpms/nodejs/c/41af04f2a3c050fb44628e91ac65fd225b927acb?branch=22609d8c1bfeaa21fe0057645af20b3a2ccc7f53
|
|
which is probably based on dont-run-gyp-files-for-bundled-deps.patch added in:
|
|
https://github.com/alpinelinux/aports/commit/6662eb3199902e8451fb20dce82554ad96f796bb
|
|
|
|
We also explicitly prune some dependencies from source in the bitbake recipe:
|
|
|
|
python prune_sources() {
|
|
import shutil
|
|
|
|
shutil.rmtree(d.getVar('S') + '/deps/openssl')
|
|
if 'ares' in d.getVar('PACKAGECONFIG'):
|
|
shutil.rmtree(d.getVar('S') + '/deps/cares')
|
|
if 'brotli' in d.getVar('PACKAGECONFIG'):
|
|
shutil.rmtree(d.getVar('S') + '/deps/brotli')
|
|
if 'libuv' in d.getVar('PACKAGECONFIG'):
|
|
shutil.rmtree(d.getVar('S') + '/deps/uv')
|
|
if 'nghttp2' in d.getVar('PACKAGECONFIG'):
|
|
shutil.rmtree(d.getVar('S') + '/deps/nghttp2')
|
|
if 'zlib' in d.getVar('PACKAGECONFIG'):
|
|
shutil.rmtree(d.getVar('S') + '/deps/zlib')
|
|
}
|
|
do_unpack[postfuncs] += "prune_sources"
|
|
|
|
Upstream-Status: Inappropriate [embedded specific]
|
|
|
|
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -179,7 +179,7 @@ with-code-cache test-code-cache:
|
|
$(warning '$@' target is a noop)
|
|
|
|
out/Makefile: config.gypi common.gypi node.gyp \
|
|
- deps/*/*.gyp \
|
|
+ deps/llhttp/llhttp.gyp deps/ada/ada.gyp deps/nbytes/nbytes.gyp \
|
|
tools/v8_gypfiles/toolchain.gypi \
|
|
tools/v8_gypfiles/features.gypi \
|
|
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
|