summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/nodejs
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-10-20 12:21:42 -0700
committerKhem Raj <raj.khem@gmail.com>2021-10-20 15:48:54 -0700
commit354eca104326fc99ba389e5c81748dfe5d260c8e (patch)
tree7131937e94f55e5a8458abf38f4461f4cf222cd1 /meta-oe/recipes-devtools/nodejs
parent5fd3937da1e55a3afc40a38ced9fef57c394fae1 (diff)
downloadmeta-openembedded-354eca104326fc99ba389e5c81748dfe5d260c8e.tar.gz
nodejs: Upgrade to 16.11.1
* This is new LTS release * Add patch to fix build on mips/mips64 * Add patch to build with new c-ares 2.17+ * Enhance native binaries patch to include additional native torque use * Drop mips-warnings.patch and python 3.10 support patch which is already available in 16.x * Refresh rest of patches against 16.x base Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-devtools/nodejs')
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-jinja-tests.py-add-py-3.10-fix.patch41
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch71
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch7
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0002-Install-both-binaries-and-use-libdir.patch (renamed from meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch)36
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch20
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch2
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/mips-warnings.patch19
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch24
-rw-r--r--meta-oe/recipes-devtools/nodejs/nodejs_16.11.1.bb (renamed from meta-oe/recipes-devtools/nodejs/nodejs_14.18.1.bb)18
9 files changed, 145 insertions, 93 deletions
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-jinja-tests.py-add-py-3.10-fix.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-jinja-tests.py-add-py-3.10-fix.patch
deleted file mode 100644
index b2a2da959d..0000000000
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0001-jinja-tests.py-add-py-3.10-fix.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From e1d838089cd461d9efcf4d29d9f18f65994d2d6b Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Sun, 3 Oct 2021 22:48:39 +0200
4Subject: [PATCH] jinja/tests.py: add py 3.10 fix
5
6Upstream-Status: Pending
7Signed-off-by: Alexander Kanavin <alex@linutronix.de>
8---
9 deps/v8/third_party/jinja2/tests.py | 2 +-
10 tools/inspector_protocol/jinja2/tests.py | 2 +-
11 2 files changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/deps/v8/third_party/jinja2/tests.py b/deps/v8/third_party/jinja2/tests.py
14index 0adc3d4..b14f85f 100644
15--- a/deps/v8/third_party/jinja2/tests.py
16+++ b/deps/v8/third_party/jinja2/tests.py
17@@ -10,7 +10,7 @@
18 """
19 import operator
20 import re
21-from collections import Mapping
22+from collections.abc import Mapping
23 from jinja2.runtime import Undefined
24 from jinja2._compat import text_type, string_types, integer_types
25 import decimal
26diff --git a/tools/inspector_protocol/jinja2/tests.py b/tools/inspector_protocol/jinja2/tests.py
27index 0adc3d4..b14f85f 100644
28--- a/tools/inspector_protocol/jinja2/tests.py
29+++ b/tools/inspector_protocol/jinja2/tests.py
30@@ -10,7 +10,7 @@
31 """
32 import operator
33 import re
34-from collections import Mapping
35+from collections.abc import Mapping
36 from jinja2.runtime import Undefined
37 from jinja2._compat import text_type, string_types, integer_types
38 import decimal
39--
402.20.1
41
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch
new file mode 100644
index 0000000000..d7005ae972
--- /dev/null
+++ b/meta-oe/recipes-devtools/nodejs/nodejs/0001-liftoff-Correct-function-signatures.patch
@@ -0,0 +1,71 @@
1From dc3652c0abcdf8573fd044907b19d8eda7ca1124 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 20 Oct 2021 12:49:58 -0700
4Subject: [PATCH] [liftoff] Correct function signatures
5
6Fixes builds on mips where clang reports an error
7../deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h:661:5: error: no matching member function for call to 'Move'
8 Move(tmp, src, type.value_type());
9 ^~~~
10
11Upstream-Status: Submitted [https://chromium-review.googlesource.com/c/v8/v8/+/3235674]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 src/wasm/baseline/liftoff-assembler.h | 6 +++---
15 1 file changed, 3 insertions(+), 3 deletions(-)
16
17--- a/deps/v8/src/wasm/baseline/liftoff-assembler.h
18+++ b/deps/v8/src/wasm/baseline/liftoff-assembler.h
19@@ -613,7 +613,7 @@ class LiftoffAssembler : public TurboAss
20 void FinishCall(const ValueKindSig*, compiler::CallDescriptor*);
21
22 // Move {src} into {dst}. {src} and {dst} must be different.
23- void Move(LiftoffRegister dst, LiftoffRegister src, ValueKind);
24+ void Move(LiftoffRegister dst, LiftoffRegister src, ValueKind kind);
25
26 // Parallel register move: For a list of tuples <dst, src, kind>, move the
27 // {src} register of kind {kind} into {dst}. If {src} equals {dst}, ignore
28@@ -759,8 +759,8 @@ class LiftoffAssembler : public TurboAss
29 inline void MoveStackValue(uint32_t dst_offset, uint32_t src_offset,
30 ValueKind);
31
32- inline void Move(Register dst, Register src, ValueKind);
33- inline void Move(DoubleRegister dst, DoubleRegister src, ValueKind);
34+ inline void Move(Register dst, Register src, ValueKind kind);
35+ inline void Move(DoubleRegister dst, DoubleRegister src, ValueKind kind);
36
37 inline void Spill(int offset, LiftoffRegister, ValueKind);
38 inline void Spill(int offset, WasmValue);
39--- a/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h
40+++ b/deps/v8/src/wasm/baseline/mips/liftoff-assembler-mips.h
41@@ -658,7 +658,7 @@ void LiftoffAssembler::Store(Register ds
42 pinned = pinned | LiftoffRegList::ForRegs(dst_op.rm(), src);
43 LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
44 // Save original value.
45- Move(tmp, src, type.value_type());
46+ Move(tmp, src, type.value_type().kind());
47
48 src = tmp;
49 pinned.set(tmp);
50--- a/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h
51+++ b/deps/v8/src/wasm/baseline/mips64/liftoff-assembler-mips64.h
52@@ -596,7 +596,7 @@ void LiftoffAssembler::Store(Register ds
53 pinned.set(dst_op.rm());
54 LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
55 // Save original value.
56- Move(tmp, src, type.value_type());
57+ Move(tmp, src, type.value_type().kind());
58
59 src = tmp;
60 pinned.set(tmp);
61--- a/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h
62+++ b/deps/v8/src/wasm/baseline/riscv64/liftoff-assembler-riscv64.h
63@@ -580,7 +580,7 @@ void LiftoffAssembler::Store(Register ds
64 pinned.set(dst_op.rm());
65 LiftoffRegister tmp = GetUnusedRegister(src.reg_class(), pinned);
66 // Save original value.
67- Move(tmp, src, type.value_type());
68+ Move(tmp, src, type.value_type().kind());
69
70 src = tmp;
71 pinned.set(tmp);
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
index 00b2e9baa9..4773f05109 100644
--- 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
@@ -10,11 +10,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
10 common.gypi | 2 +- 10 common.gypi | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-) 11 1 file changed, 1 insertion(+), 1 deletion(-)
12 12
13diff --git a/common.gypi b/common.gypi
14index ee91fb1d..049c8f8c 100644
15--- a/common.gypi 13--- a/common.gypi
16+++ b/common.gypi 14+++ b/common.gypi
17@@ -413,7 +413,7 @@ 15@@ -417,7 +417,7 @@
18 'ldflags': [ '-m32' ], 16 'ldflags': [ '-m32' ],
19 }], 17 }],
20 [ 'target_arch=="ppc64" and OS!="aix"', { 18 [ 'target_arch=="ppc64" and OS!="aix"', {
@@ -23,6 +21,3 @@ index ee91fb1d..049c8f8c 100644
23 'ldflags': [ '-m64' ], 21 'ldflags': [ '-m64' ],
24 }], 22 }],
25 [ 'target_arch=="s390x"', { 23 [ 'target_arch=="s390x"', {
26--
272.32.0
28
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0002-Install-both-binaries-and-use-libdir.patch
index 6223920990..5cb2e97015 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,10 +1,7 @@
1From 5b22fac923d1ca3e9fefb97f5a171124a88f5e22 Mon Sep 17 00:00:00 2001 1From 62ddf8499747fb1e366477d666c0634ad50039a9 Mon Sep 17 00:00:00 2001
2From: Elliott Sales de Andrade <quantum.analyst@gmail.com> 2From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
3Date: Tue, 19 Mar 2019 23:22:40 -0400 3Date: Tue, 19 Mar 2019 23:22:40 -0400
4Subject: [PATCH] Install both binaries and use libdir. 4Subject: [PATCH 2/2] Install both binaries and use libdir.
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8 5
9This allows us to build with a shared library for other users while 6This allows us to build with a shared library for other users while
10still providing the normal executable. 7still providing the normal executable.
@@ -22,23 +19,29 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
22 2 files changed, 16 insertions(+), 12 deletions(-) 19 2 files changed, 16 insertions(+), 12 deletions(-)
23 20
24diff --git a/configure.py b/configure.py 21diff --git a/configure.py b/configure.py
25index e6f7e4db..6cf5c45d 100755 22index 6efb98c2316f089f3167e486282593245373af3f..a6d2ec939e4480dfae703f3978067537abf9f0f0 100755
26--- a/configure.py 23--- a/configure.py
27+++ b/configure.py 24+++ b/configure.py
28@@ -626,6 +626,12 @@ parser.add_option('--shared', 25@@ -721,10 +721,16 @@ parser.add_argument('--shared',
26 dest='shared',
27 default=None,
29 help='compile shared library for embedding node in another project. ' + 28 help='compile shared library for embedding node in another project. ' +
30 '(This mode is not officially supported for regular applications)') 29 '(This mode is not officially supported for regular applications)')
31 30
32+parser.add_option('--libdir', 31+parser.add_argument('--libdir',
33+ action='store', 32+ action='store',
34+ dest='libdir', 33+ dest='libdir',
35+ default='lib', 34+ default='lib',
36+ help='a directory to install the shared library into') 35+ help='a directory to install the shared library into')
37+ 36+
38 parser.add_option('--without-v8-platform', 37 parser.add_argument('--without-v8-platform',
39 action='store_true', 38 action='store_true',
40 dest='without_v8_platform', 39 dest='without_v8_platform',
41@@ -1202,6 +1208,7 @@ def configure_node(o): 40 default=False,
41 help='do not initialize v8 platform during node.js startup. ' +
42@@ -1305,10 +1311,11 @@ def configure_node(o):
43 o['variables']['debug_nghttp2'] = 'false'
44
42 o['variables']['node_no_browser_globals'] = b(options.no_browser_globals) 45 o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
43 46
44 o['variables']['node_shared'] = b(options.shared) 47 o['variables']['node_shared'] = b(options.shared)
@@ -46,11 +49,15 @@ index e6f7e4db..6cf5c45d 100755
46 node_module_version = getmoduleversion.get_version() 49 node_module_version = getmoduleversion.get_version()
47 50
48 if options.dest_os == 'android': 51 if options.dest_os == 'android':
52 shlib_suffix = 'so'
53 elif sys.platform == 'darwin':
49diff --git a/tools/install.py b/tools/install.py 54diff --git a/tools/install.py b/tools/install.py
50index 729b416f..9bfc6234 100755 55index 41cc1cbc60a9480cc08df3aa0ebe582c2becc3a2..11208f9e7166ab60da46d5ace2257c239a7e9263 100755
51--- a/tools/install.py 56--- a/tools/install.py
52+++ b/tools/install.py 57+++ b/tools/install.py
53@@ -121,22 +121,19 @@ def subdir_files(path, dest, action): 58@@ -128,26 +128,23 @@ def subdir_files(path, dest, action):
59 for subdir, files_in_path in ret.items():
60 action(files_in_path, subdir + '/')
54 61
55 def files(action): 62 def files(action):
56 is_windows = sys.platform == 'win32' 63 is_windows = sys.platform == 'win32'
@@ -82,3 +89,8 @@ index 729b416f..9bfc6234 100755
82 89
83 if 'true' == variables.get('node_use_dtrace'): 90 if 'true' == variables.get('node_use_dtrace'):
84 action(['out/Release/node.d'], 'lib/dtrace/node.d') 91 action(['out/Release/node.d'], 'lib/dtrace/node.d')
92
93 # behave similarly for systemtap
94--
952.33.0
96
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch b/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
index c6fc2dcd76..8db1f1dd54 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
@@ -10,7 +10,7 @@ Subject: [PATCH] Using native binaries
10 10
11--- a/node.gyp 11--- a/node.gyp
12+++ b/node.gyp 12+++ b/node.gyp
13@@ -487,6 +487,7 @@ 13@@ -294,6 +294,7 @@
14 'action_name': 'run_mkcodecache', 14 'action_name': 'run_mkcodecache',
15 'process_outputs_as_sources': 1, 15 'process_outputs_as_sources': 1,
16 'inputs': [ 16 'inputs': [
@@ -18,7 +18,7 @@ Subject: [PATCH] Using native binaries
18 '<(mkcodecache_exec)', 18 '<(mkcodecache_exec)',
19 ], 19 ],
20 'outputs': [ 20 'outputs': [
21@@ -512,6 +513,7 @@ 21@@ -319,6 +320,7 @@
22 'action_name': 'node_mksnapshot', 22 'action_name': 'node_mksnapshot',
23 'process_outputs_as_sources': 1, 23 'process_outputs_as_sources': 1,
24 'inputs': [ 24 'inputs': [
@@ -28,7 +28,7 @@ Subject: [PATCH] Using native binaries
28 'outputs': [ 28 'outputs': [
29--- a/tools/v8_gypfiles/v8.gyp 29--- a/tools/v8_gypfiles/v8.gyp
30+++ b/tools/v8_gypfiles/v8.gyp 30+++ b/tools/v8_gypfiles/v8.gyp
31@@ -220,6 +220,7 @@ 31@@ -68,6 +68,7 @@
32 { 32 {
33 'action_name': 'run_torque_action', 33 'action_name': 'run_torque_action',
34 'inputs': [ # Order matters. 34 'inputs': [ # Order matters.
@@ -36,7 +36,15 @@ Subject: [PATCH] Using native binaries
36 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', 36 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
37 '<@(torque_files)', 37 '<@(torque_files)',
38 ], 38 ],
39@@ -351,6 +352,7 @@ 39@@ -99,6 +100,7 @@
40 '<@(torque_outputs_inc)',
41 ],
42 'action': [
43+ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
44 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
45 '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated',
46 '-v8-root', '<(V8_ROOT)',
47@@ -225,6 +227,7 @@
40 { 48 {
41 'action_name': 'generate_bytecode_builtins_list_action', 49 'action_name': 'generate_bytecode_builtins_list_action',
42 'inputs': [ 50 'inputs': [
@@ -44,7 +52,7 @@ Subject: [PATCH] Using native binaries
44 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)', 52 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)',
45 ], 53 ],
46 'outputs': [ 54 'outputs': [
47@@ -533,6 +535,7 @@ 55@@ -415,6 +418,7 @@
48 ], 56 ],
49 }, 57 },
50 'inputs': [ 58 'inputs': [
@@ -52,7 +60,7 @@ Subject: [PATCH] Using native binaries
52 '<(mksnapshot_exec)', 60 '<(mksnapshot_exec)',
53 ], 61 ],
54 'outputs': [ 62 'outputs': [
55@@ -1448,6 +1451,7 @@ 63@@ -1548,6 +1552,7 @@
56 { 64 {
57 'action_name': 'run_gen-regexp-special-case_action', 65 'action_name': 'run_gen-regexp-special-case_action',
58 'inputs': [ 66 'inputs': [
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch b/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
index cdf6bc8e23..cb0237309e 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
+++ b/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
@@ -11,7 +11,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
11 11
12--- a/tools/v8_gypfiles/v8.gyp 12--- a/tools/v8_gypfiles/v8.gyp
13+++ b/tools/v8_gypfiles/v8.gyp 13+++ b/tools/v8_gypfiles/v8.gyp
14@@ -1336,6 +1336,7 @@ 14@@ -1436,6 +1436,7 @@
15 { 15 {
16 'target_name': 'mksnapshot', 16 'target_name': 'mksnapshot',
17 'type': 'executable', 17 'type': 'executable',
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/mips-warnings.patch b/meta-oe/recipes-devtools/nodejs/nodejs/mips-warnings.patch
deleted file mode 100644
index 1a773f23d8..0000000000
--- a/meta-oe/recipes-devtools/nodejs/nodejs/mips-warnings.patch
+++ /dev/null
@@ -1,19 +0,0 @@
1Add explicit static cast to fix narrowing warning
2
3Fixes
4deps/v8/src/codegen/mips/assembler-mips.cc:3556:44: error: non-constant-expression cannot be narrowed from type 'int' to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
5
6Upstream-Status: Pending
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9--- a/deps/v8/src/codegen/mips/assembler-mips.cc
10+++ b/deps/v8/src/codegen/mips/assembler-mips.cc
11@@ -3553,7 +3553,7 @@ void Assembler::GrowBuffer() {
12 reloc_info_writer.last_pc() + pc_delta);
13
14 // Relocate runtime entries.
15- Vector<byte> instructions{buffer_start_, pc_offset()};
16+ Vector<byte> instructions{buffer_start_, static_cast<size_t>(pc_offset())};
17 Vector<const byte> reloc_info{reloc_info_writer.pos(), reloc_size};
18 for (RelocIterator it(instructions, reloc_info, 0); !it.done(); it.next()) {
19 RelocInfo::Mode rmode = it.rinfo()->rmode();
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch b/meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch
new file mode 100644
index 0000000000..141889ad23
--- /dev/null
+++ b/meta-oe/recipes-devtools/nodejs/nodejs/system-c-ares.patch
@@ -0,0 +1,24 @@
1keep nodejs compatible with c-ares 1.17.1
2
3Upstream-Status: Inappropriate [c-ares specific]
4Signed-off-by: Khem Raj <raj.khem@gmail.com>
5
6--- a/src/cares_wrap.h
7+++ b/src/cares_wrap.h
8@@ -22,7 +22,15 @@
9 # include <netdb.h>
10 #endif // __POSIX__
11
12-# include <ares_nameser.h>
13+#if defined(__ANDROID__) || \
14+ defined(__MINGW32__) || \
15+ defined(__OpenBSD__) || \
16+ defined(_MSC_VER)
17+
18+# include <nameser.h>
19+#else
20+# include <arpa/nameser.h>
21+#endif
22
23 namespace node {
24 namespace cares_wrap {
diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_14.18.1.bb b/meta-oe/recipes-devtools/nodejs/nodejs_16.11.1.bb
index 76ff980997..beed833c09 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs_14.18.1.bb
+++ b/meta-oe/recipes-devtools/nodejs/nodejs_16.11.1.bb
@@ -1,7 +1,7 @@
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 & BSD & Artistic-2.0" 3LICENSE = "MIT & BSD & Artistic-2.0"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=6768abdfc4dae4fde59d6b4df96930f3" 4LIC_FILES_CHKSUM = "file://LICENSE;md5=12f6b053282af96a218353ae7aff7cd8"
5 5
6DEPENDS = "openssl" 6DEPENDS = "openssl"
7DEPENDS:append:class-target = " qemu-native" 7DEPENDS:append:class-target = " qemu-native"
@@ -18,12 +18,12 @@ COMPATIBLE_HOST:riscv32 = "null"
18 18
19SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ 19SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
20 file://0001-Disable-running-gyp-files-for-bundled-deps.patch \ 20 file://0001-Disable-running-gyp-files-for-bundled-deps.patch \
21 file://0003-Install-both-binaries-and-use-libdir.patch \ 21 file://0002-Install-both-binaries-and-use-libdir.patch \
22 file://0004-v8-don-t-override-ARM-CFLAGS.patch \ 22 file://0004-v8-don-t-override-ARM-CFLAGS.patch \
23 file://big-endian.patch \ 23 file://big-endian.patch \
24 file://mips-warnings.patch \
25 file://mips-less-memory.patch \ 24 file://mips-less-memory.patch \
26 file://0001-jinja-tests.py-add-py-3.10-fix.patch \ 25 file://system-c-ares.patch \
26 file://0001-liftoff-Correct-function-signatures.patch \
27 " 27 "
28SRC_URI:append:class-target = " \ 28SRC_URI:append:class-target = " \
29 file://0002-Using-native-binaries.patch \ 29 file://0002-Using-native-binaries.patch \
@@ -34,7 +34,7 @@ SRC_URI:append:toolchain-clang:x86 = " \
34SRC_URI:append:toolchain-clang:powerpc64le = " \ 34SRC_URI:append:toolchain-clang:powerpc64le = " \
35 file://0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch \ 35 file://0001-ppc64-Do-not-use-mminimal-toc-with-clang.patch \
36 " 36 "
37SRC_URI[sha256sum] = "3fa1d71adddfab2f5e3e41874b4eddbdf92b65cade4a43922fb1e437afcf89ed" 37SRC_URI[sha256sum] = "67587f4de25e30a9cc0b51a6033eca3bc82d7b4e0d79bb84a265e88f76ab6278"
38 38
39S = "${WORKDIR}/node-v${PV}" 39S = "${WORKDIR}/node-v${PV}"
40 40
@@ -56,10 +56,11 @@ ARCHFLAGS:arm = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '-
56 bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '--with-arm-fpu=vfpv3-d16', \ 56 bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '--with-arm-fpu=vfpv3-d16', \
57 bb.utils.contains('TUNE_FEATURES', 'vfpv3', '--with-arm-fpu=vfpv3', \ 57 bb.utils.contains('TUNE_FEATURES', 'vfpv3', '--with-arm-fpu=vfpv3', \
58 '--with-arm-fpu=vfp', d), d), d)}" 58 '--with-arm-fpu=vfp', d), d), d)}"
59GYP_DEFINES:append:mipsel = " mips_arch_variant='r1' " 59ARCHFLAGS:append:mips = " --v8-lite-mode"
60ARCHFLAGS:append:mipsel = " --v8-lite-mode"
60ARCHFLAGS ?= "" 61ARCHFLAGS ?= ""
61 62
62PACKAGECONFIG ??= "brotli icu zlib" 63PACKAGECONFIG ??= "ares brotli icu zlib"
63 64
64PACKAGECONFIG[ares] = "--shared-cares,,c-ares" 65PACKAGECONFIG[ares] = "--shared-cares,,c-ares"
65PACKAGECONFIG[brotli] = "--shared-brotli,,brotli" 66PACKAGECONFIG[brotli] = "--shared-brotli,,brotli"
@@ -87,7 +88,7 @@ python do_unpack() {
87 import shutil 88 import shutil
88 89
89 bb.build.exec_func('base_do_unpack', d) 90 bb.build.exec_func('base_do_unpack', d)
90 91 shutil.rmtree(d.getVar('S') + '/deps/openssl', True)
91 if 'ares' in d.getVar('PACKAGECONFIG'): 92 if 'ares' in d.getVar('PACKAGECONFIG'):
92 shutil.rmtree(d.getVar('S') + '/deps/cares', True) 93 shutil.rmtree(d.getVar('S') + '/deps/cares', True)
93 if 'brotli' in d.getVar('PACKAGECONFIG'): 94 if 'brotli' in d.getVar('PACKAGECONFIG'):
@@ -137,6 +138,7 @@ do_configure () {
137 GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES 138 GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES
138 # $TARGET_ARCH settings don't match --dest-cpu settings 139 # $TARGET_ARCH settings don't match --dest-cpu settings
139 python3 configure.py --prefix=${prefix} --cross-compiling \ 140 python3 configure.py --prefix=${prefix} --cross-compiling \
141 --shared-openssl \
140 --without-dtrace \ 142 --without-dtrace \
141 --without-etw \ 143 --without-etw \
142 --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \ 144 --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \