similarity index 100%
rename from meta-oe/recipes-devtools/nodejs/nodejs-oe-cache-16.18/oe-npm-cache
rename to meta-oe/recipes-devtools/nodejs/nodejs-oe-cache-18.12/oe-npm-cache
similarity index 100%
rename from meta-oe/recipes-devtools/nodejs/nodejs-oe-cache-native_16.18.bb
rename to meta-oe/recipes-devtools/nodejs/nodejs-oe-cache-native_18.12.bb
@@ -5,32 +5,24 @@ Subject: [PATCH] Using native binaries
Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
---
- node.gyp | 2 ++
+ node.gyp | 1 +
tools/v8_gypfiles/v8.gyp | 5 +++++
- 2 files changed, 7 insertions(+)
+ 2 files changed, 6 insertions(+)
diff --git a/node.gyp b/node.gyp
-index 24505da7ba..7d41bd52db 100644
+index e8e1d9f9..e60ccc10 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -319,6 +319,7 @@
- 'action_name': 'run_mkcodecache',
- 'process_outputs_as_sources': 1,
- 'inputs': [
-+ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
- '<(mkcodecache_exec)',
- ],
- 'outputs': [
-@@ -366,6 +367,7 @@
+@@ -320,6 +320,7 @@
'action_name': 'node_mksnapshot',
'process_outputs_as_sources': 1,
'inputs': [
+ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
'<(node_mksnapshot_exec)',
+ '<(node_snapshot_main)',
],
- 'outputs': [
diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
-index ed042f8829..371b8e02c2 100644
+index 42e26cd9..bc721991 100644
--- a/tools/v8_gypfiles/v8.gyp
+++ b/tools/v8_gypfiles/v8.gyp
@@ -68,6 +68,7 @@
@@ -57,7 +49,7 @@ index ed042f8829..371b8e02c2 100644
'<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)',
],
'outputs': [
-@@ -395,6 +398,7 @@
+@@ -400,6 +403,7 @@
],
},
'inputs': [
@@ -65,7 +57,7 @@ index ed042f8829..371b8e02c2 100644
'<(mksnapshot_exec)',
],
'outputs': [
-@@ -1513,6 +1517,7 @@
+@@ -1539,6 +1543,7 @@
{
'action_name': 'run_gen-regexp-special-case_action',
'inputs': [
@@ -9,14 +9,20 @@ Fixes builds on mips where clang reports an error
^~~~
Upstream-Status: Submitted [https://chromium-review.googlesource.com/c/v8/v8/+/3235674]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
---
- src/wasm/baseline/liftoff-assembler.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
+ deps/v8/src/wasm/baseline/liftoff-assembler.h | 6 +++---
+ deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h | 2 +-
+ deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h | 2 +-
+ .../src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h | 2 +-
+ 4 files changed, 6 insertions(+), 6 deletions(-)
+diff --git a/deps/v8/src/wasm/baseline/liftoff-assembler.h b/deps/v8/src/wasm/baseline/liftoff-assembler.h
+index 22c7f73a..db4cb168 100644
--- a/deps/v8/src/wasm/baseline/liftoff-assembler.h
+++ b/deps/v8/src/wasm/baseline/liftoff-assembler.h
-@@ -613,7 +613,7 @@ class LiftoffAssembler : public TurboAss
+@@ -646,7 +646,7 @@ class LiftoffAssembler : public TurboAssembler {
void FinishCall(const ValueKindSig*, compiler::CallDescriptor*);
// Move {src} into {dst}. {src} and {dst} must be different.
@@ -25,7 +31,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
// Parallel register move: For a list of tuples <dst, src, kind>, move the
// {src} register of kind {kind} into {dst}. If {src} equals {dst}, ignore
-@@ -759,8 +759,8 @@ class LiftoffAssembler : public TurboAss
+@@ -795,8 +795,8 @@ class LiftoffAssembler : public TurboAssembler {
inline void MoveStackValue(uint32_t dst_offset, uint32_t src_offset,
ValueKind);
@@ -36,10 +42,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
inline void Spill(int offset, LiftoffRegister, ValueKind);
inline void Spill(int offset, WasmValue);
+diff --git a/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h b/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h
+index c76fd2f4..0fffe231 100644
--- a/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h
+++ b/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h
-@@ -658,7 +658,7 @@ void LiftoffAssembler::Store(Register ds
- pinned = pinned | LiftoffRegList::ForRegs(dst_op.rm(), src);
+@@ -661,7 +661,7 @@ void LiftoffAssembler::Store(Register dst_addr, Register offset_reg,
+ pinned = pinned | LiftoffRegList{dst_op.rm(), src};
LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
// Save original value.
- Move(tmp, src, type.value_type());
@@ -47,9 +55,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src = tmp;
pinned.set(tmp);
+diff --git a/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h b/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h
+index 36413545..48207337 100644
--- a/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h
+++ b/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h
-@@ -596,7 +596,7 @@ void LiftoffAssembler::Store(Register ds
+@@ -593,7 +593,7 @@ void LiftoffAssembler::Store(Register dst_addr, Register offset_reg,
pinned.set(dst_op.rm());
LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
// Save original value.
@@ -58,9 +68,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src = tmp;
pinned.set(tmp);
+diff --git a/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h b/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h
+index 642a7d2a..56ffcc2a 100644
--- a/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h
+++ b/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h
-@@ -580,7 +580,7 @@ void LiftoffAssembler::Store(Register ds
+@@ -589,7 +589,7 @@ void LiftoffAssembler::Store(Register dst_addr, Register offset_reg,
pinned.set(dst_op.rm());
LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
// Save original value.
@@ -69,3 +81,5 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src = tmp;
pinned.set(tmp);
+--
+2.34.1
similarity index 93%
rename from meta-oe/recipes-devtools/nodejs/nodejs_16.18.1.bb
rename to meta-oe/recipes-devtools/nodejs/nodejs_18.12.1.bb
@@ -1,13 +1,13 @@
DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
HOMEPAGE = "http://nodejs.org"
LICENSE = "MIT & ISC & BSD-2-Clause & BSD-3-Clause & Artistic-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=6e54852cd826c41e80c6d80f6db00a85"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=dfd7ae796baf5326016a3865ee1dc632"
DEPENDS = "openssl"
DEPENDS:append:class-target = " qemu-native"
DEPENDS:append:class-native = " c-ares-native"
-inherit pkgconfig python3native qemu
+inherit pkgconfig python3native qemu ptest
COMPATIBLE_MACHINE:armv4 = "(!.*armv4).*"
COMPATIBLE_MACHINE:armv5 = "(!.*armv5).*"
@@ -26,6 +26,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 \
"
+
SRC_URI:append:class-target = " \
file://0001-Using-native-binaries.patch \
"
@@ -35,7 +36,7 @@ SRC_URI:append:toolchain-clang:x86 = " \
SRC_URI:append:toolchain-clang:powerpc64le = " \
file://0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch \
"
-SRC_URI[sha256sum] = "1f8051a88f86f42064f4415fe7a980e59b0a502ecc8def583f6303bc4d445238"
+SRC_URI[sha256sum] = "4fa406451bc52659a290e52cfdb2162a760bd549da4b8bbebe6a29f296d938df"
S = "${WORKDIR}/node-v${PV}"
@@ -151,6 +152,7 @@ do_configure () {
do_compile () {
export LD="${CXX}"
+ install -D ${RECIPE_SYSROOT_NATIVE}/etc/ssl/openssl.cnf ${B}/deps/openssl/nodejs-openssl.cnf
install -D ${B}/v8-qemu-wrapper.sh ${B}/out/Release/v8-qemu-wrapper.sh
oe_runmake BUILDTYPE=Release
}
@@ -159,10 +161,15 @@ do_install () {
oe_runmake install DESTDIR=${D}
}
+do_install_ptest () {
+ cp -r ${B}/out/Release/cctest ${D}${PTEST_PATH}/
+ cp -r ${B}/test ${D}${PTEST_PATH}
+ chown -R root:root ${D}${PTEST_PATH}
+}
+
BINARIES = " \
bytecode_builtins_list_generator \
${@bb.utils.contains('PACKAGECONFIG', 'icu', 'gen-regexp-special-case', '', d)} \
- mkcodecache \
node_mksnapshot \
torque \
"
Node-18 is the current LTS release, node-19 is a development release and node-20 is scheduled to be released until 2023-04-18 which is too late for YP-4.2 https://github.com/nodejs/release * Refresh below two patches - 0001-Using-native-binaries.patch - 0001-liftoff-Correct-function-signatures.patch * Copy openssl.cnf from sysroot_native to nodejs-openssl.cnf otherwise do_compile failed: make[1]: *** No rule to make target '../deps/openssl/nodejs-openssl.cnf', needed by 'Release/obj.target/deps/openssl/openssl.cnf'. Stop. * Add initial ptest support using ctest only, it covered 20% of the nodejs tests. There are some more tests exist to add but will require additional work. Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com> --- .../oe-npm-cache | 0 ....18.bb => nodejs-oe-cache-native_18.12.bb} | 0 .../nodejs/0001-Using-native-binaries.patch | 24 +++++--------- ...-liftoff-Correct-function-signatures.patch | 32 +++++++++++++------ .../{nodejs_16.18.1.bb => nodejs_18.12.1.bb} | 15 ++++++--- 5 files changed, 42 insertions(+), 29 deletions(-) rename meta-oe/recipes-devtools/nodejs/{nodejs-oe-cache-16.18 => nodejs-oe-cache-18.12}/oe-npm-cache (100%) rename meta-oe/recipes-devtools/nodejs/{nodejs-oe-cache-native_16.18.bb => nodejs-oe-cache-native_18.12.bb} (100%) rename meta-oe/recipes-devtools/nodejs/{nodejs_16.18.1.bb => nodejs_18.12.1.bb} (93%)