summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-oe/recipes-devtools
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-devtools')
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.8.bb25
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb25
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.124.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb)8
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch15
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Remove-use-of-register-r7-because-llvm-now-issues-an.patch53
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch93
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch37
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch21
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/mips-less-memory.patch32
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/v8-call-new-ListFormatter-createInstance.patch93
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_14.16.1.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb)48
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7069.patch158
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7070.patch24
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.16.bb (renamed from meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb)7
-rw-r--r--meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.10.bb2
15 files changed, 288 insertions, 353 deletions
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.8.bb b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.8.bb
deleted file mode 100644
index d006d83aa..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.8.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (C) 2015 Igor Santos <igor.santos@aker.com.br>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-SUMMARY = "Exuberant Ctags"
-DESCRIPTION = "Exuberant Ctags is a multilanguage reimplementation of the \
- Unix ctags utility. Ctags generates an index of source code \
- definitions which is used by numerous editors and utilities \
- to instantly locate the definitions."
-
-HOMEPAGE = "http://ctags.sourceforge.net/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
-
-inherit autotools-brokensep
-
-SRC_URI = "http://prdownloads.sourceforge.net/${BPN}/${BP}.tar.gz"
-
-SRC_URI[md5sum] = "c00f82ecdcc357434731913e5b48630d"
-SRC_URI[sha256sum] = "0e44b45dcabe969e0bbbb11e30c246f81abe5d32012db37395eb57d66e9e99c7"
-
-do_install() {
- install -Dm 755 ${B}/ctags ${D}${bindir}/ctags
- install -Dm 644 ${B}/ctags.1 ${D}${mandir}/man1/ctags.1
-}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb
new file mode 100644
index 000000000..aca0502db
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb
@@ -0,0 +1,25 @@
+# Copyright (C) 2015 Igor Santos <igor.santos@aker.com.br>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "Universal Ctags"
+DESCRIPTION = "Universal Ctags is a multilanguage reimplementation of the \
+ Unix ctags utility. Ctags generates an index of source code \
+ definitions which is used by numerous editors and utilities \
+ to instantly locate the definitions."
+
+HOMEPAGE = "https://ctags.io/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
+
+inherit autotools-brokensep pkgconfig manpages
+
+DEPENDS += "libxml2 jansson libyaml python3-docutils-native"
+SRCREV = "6df08b82d4845d1b9420d9268f24d5db16ee4480"
+SRC_URI = "git://github.com/universal-ctags/ctags"
+
+S = "${WORKDIR}/git"
+
+#do_install() {
+# install -Dm 755 ${B}/ctags ${D}${bindir}/ctags
+#}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.124.bb
index bb4345687..300c98f91 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.123.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/debootstrap/debootstrap_1.0.124.bb
@@ -10,11 +10,15 @@ SRC_URI = "\
file://0002-support-to-override-usr-bin-arch-test.patch \
"
-SRC_URI[md5sum] = "b959c7ac01839e9b96a733d27b19e59e"
-SRC_URI[sha256sum] = "5e5a8147ecdd6be0eea5ac4d6ed8192cc653e93f744dd3306c9b1cc51d6ca328"
+SRC_URI[md5sum] = "8a5e97f60236c3a63f715c056a5f0e29"
+SRC_URI[sha256sum] = "7700e9864b29f166b26c54153ed8c275b46f4b9a60468bb607e019a64c16cd8f"
S = "${WORKDIR}/debootstrap"
+DEPENDS = " \
+ virtual/fakeroot-native \
+"
+
fakeroot do_install() {
oe_runmake 'DESTDIR=${D}' install
chown -R root:root ${D}${datadir}/debootstrap
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
index 4dd121f48..d6e439ba2 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,4 +1,4 @@
-From c2aff16cc196a61f4ab1cdae4a91c7926123c239 Mon Sep 17 00:00:00 2001
+From 7d94bfe53beeb2d25eb5f2ff6b1d509df7e6ab80 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
@@ -8,18 +8,15 @@ Subject: [PATCH] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 0947300f24..6c98691984 100644
+index 93d63110..79caaec2 100644
--- a/Makefile
+++ b/Makefile
-@@ -141,7 +141,7 @@ test-code-cache: with-code-cache
- echo "'test-code-cache' target is a noop"
+@@ -138,7 +138,7 @@ with-code-cache test-code-cache:
+ $(warning '$@' target is a noop)
out/Makefile: config.gypi common.gypi node.gyp \
-- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
-+ deps/http_parser/http_parser.gyp \
+- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
++ deps/llhttp/llhttp.gyp \
tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
---
-2.20.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Remove-use-of-register-r7-because-llvm-now-issues-an.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Remove-use-of-register-r7-because-llvm-now-issues-an.patch
deleted file mode 100644
index a23f1c243..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Remove-use-of-register-r7-because-llvm-now-issues-an.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From be8d3cd6eab4b8f9849133060abb1aba4400276b Mon Sep 17 00:00:00 2001
-From: Amy Huang <akhuang@google.com>
-Date: Thu, 23 Apr 2020 11:25:53 -0700
-Subject: [PATCH] Remove use of register r7 because llvm now issues an error
- when "r7" is used (starting in commit d85b3877)
-
-Bug: chromium:1073270
-Change-Id: I7ec8112f170b98d2edaf92bc9341e738f8de07a3
-Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2163435
-Reviewed-by: Nico Weber <thakis@chromium.org>
-Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
-Commit-Queue: Nico Weber <thakis@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#67371}
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Backport [https://chromium.googlesource.com/v8/v8/+/00604cd2806b5d26bef592dd19989a234bd07a4b%5E%21/]
- deps/v8/src/codegen/arm/cpu-arm.cc | 13 -------------
- 1 file changed, 13 deletions(-)
-
-diff --git a/deps/v8/src/codegen/arm/cpu-arm.cc b/deps/v8/src/codegen/arm/cpu-arm.cc
-index 868f360..654d68f 100644
---- a/deps/v8/src/codegen/arm/cpu-arm.cc
-+++ b/deps/v8/src/codegen/arm/cpu-arm.cc
-@@ -30,18 +30,6 @@ V8_NOINLINE void CpuFeatures::FlushICache(void* start, size_t size) {
- register uint32_t end asm("r1") = beg + size;
- register uint32_t flg asm("r2") = 0;
-
--#ifdef __clang__
-- // This variant of the asm avoids a constant pool entry, which can be
-- // problematic when LTO'ing. It is also slightly shorter.
-- register uint32_t scno asm("r7") = __ARM_NR_cacheflush;
--
-- asm volatile("svc 0\n"
-- :
-- : "r"(beg), "r"(end), "r"(flg), "r"(scno)
-- : "memory");
--#else
-- // Use a different variant of the asm with GCC because some versions doesn't
-- // support r7 as an asm input.
- asm volatile(
- // This assembly works for both ARM and Thumb targets.
-
-@@ -59,7 +47,6 @@ V8_NOINLINE void CpuFeatures::FlushICache(void* start, size_t size) {
- : "r"(beg), "r"(end), "r"(flg), [scno] "i"(__ARM_NR_cacheflush)
- : "memory");
- #endif
--#endif
- #endif // !USE_SIMULATOR
- }
-
---
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
index b5142dc9c..c6fc2dcd7 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-binaries.patch
@@ -8,64 +8,55 @@ Subject: [PATCH] Using native binaries
tools/v8_gypfiles/v8.gyp | 11 ++++-------
2 files changed, 6 insertions(+), 9 deletions(-)
-diff --git a/node.gyp b/node.gyp
-index 8f4dc518..d9389190 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -446,7 +446,7 @@
- '<(SHARED_INTERMEDIATE_DIR)/node_code_cache.cc',
+@@ -487,6 +487,7 @@
+ 'action_name': 'run_mkcodecache',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(mkcodecache_exec)',
],
- 'action': [
-- '<@(_inputs)',
-+ 'mkcodecache',
- '<@(_outputs)',
+ 'outputs': [
+@@ -512,6 +513,7 @@
+ 'action_name': 'node_mksnapshot',
+ 'process_outputs_as_sources': 1,
+ 'inputs': [
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(node_mksnapshot_exec)',
],
- },
-@@ -471,7 +471,7 @@
- '<(SHARED_INTERMEDIATE_DIR)/node_snapshot.cc',
- ],
- 'action': [
-- '<@(_inputs)',
-+ 'node_mksnapshot',
- '<@(_outputs)',
- ],
- },
-diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
-index a506a67d..c91f7dde 100644
+ 'outputs': [
--- a/tools/v8_gypfiles/v8.gyp
+++ b/tools/v8_gypfiles/v8.gyp
-@@ -140,7 +140,8 @@
- '<@(torque_outputs)',
- ],
- 'action': [
-- '<@(_inputs)',
-+ 'torque',
-+ '<@(torque_files)',
- '-o', '<(torque_output_root)/torque-generated',
- '-v8-root', '<(V8_ROOT)'
+@@ -220,6 +220,7 @@
+ {
+ 'action_name': 'run_torque_action',
+ 'inputs': [ # Order matters.
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
+ '<@(torque_files)',
],
-@@ -247,9 +248,7 @@
- '<(generate_bytecode_builtins_list_output)',
+@@ -351,6 +352,7 @@
+ {
+ 'action_name': 'generate_bytecode_builtins_list_action',
+ 'inputs': [
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)',
],
- 'action': [
-- 'python',
-- '<(V8_ROOT)/tools/run.py',
-- '<@(_inputs)',
-+ 'bytecode_builtins_list_generator',
- '<@(_outputs)',
+ 'outputs': [
+@@ -533,6 +535,7 @@
+ ],
+ },
+ 'inputs': [
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(mksnapshot_exec)',
],
- },
-@@ -1396,9 +1395,7 @@
- '<(SHARED_INTERMEDIATE_DIR)/src/regexp/special-case.cc',
+ 'outputs': [
+@@ -1448,6 +1451,7 @@
+ {
+ 'action_name': 'run_gen-regexp-special-case_action',
+ 'inputs': [
++ '<(PRODUCT_DIR)/v8-qemu-wrapper.sh',
+ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)',
],
- 'action': [
-- 'python',
-- '<(V8_ROOT)/tools/run.py',
-- '<@(_inputs)',
-+ 'gen-regexp-special-case',
- '<@(_outputs)',
- ],
- },
---
-2.20.1
-
+ 'outputs': [
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch
index 92386fa77..622392099 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,28 +1,31 @@
-From 5bfeffdf4b5de1c60a2ff0d1ddf65db2bb9a1533 Mon Sep 17 00:00:00 2001
+From 5b22fac923d1ca3e9fefb97f5a171124a88f5e22 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 3/3] Install both binaries and use libdir.
+Subject: [PATCH] Install both binaries and use libdir.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
This allows us to build with a shared library for other users while
still providing the normal executable.
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
-
-Stolen from [1]
-
-[1] https://src.fedoraproject.org/rpms/nodejs/raw/master/f/0003-Install-both-binaries-and-use-libdir.patch
+Taken from - https://src.fedoraproject.org/rpms/nodejs/raw/rawhide/f/0002-Install-both-binaries-and-use-libdir.patch
Upstream-Status: Pending
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
configure.py | 7 +++++++
- tools/install.py | 31 ++++++++++++++-----------------
- 2 files changed, 21 insertions(+), 17 deletions(-)
+ tools/install.py | 21 +++++++++------------
+ 2 files changed, 16 insertions(+), 12 deletions(-)
+diff --git a/configure.py b/configure.py
+index e6f7e4db..6cf5c45d 100755
--- a/configure.py
+++ b/configure.py
-@@ -602,6 +602,12 @@ parser.add_option('--shared',
+@@ -626,6 +626,12 @@ parser.add_option('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -35,7 +38,7 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1168,6 +1174,7 @@ def configure_node(o):
+@@ -1202,6 +1208,7 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
@@ -43,9 +46,11 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
node_module_version = getmoduleversion.get_version()
if options.dest_os == 'android':
+diff --git a/tools/install.py b/tools/install.py
+index 729b416f..9bfc6234 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -121,26 +121,23 @@ def subdir_files(path, dest, action):
+@@ -121,22 +121,19 @@ def subdir_files(path, dest, action):
def files(action):
is_windows = sys.platform == 'win32'
@@ -64,16 +69,8 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
- output_file += '.dll'
- else:
- output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
-- # GYP will output to lib.target except on OS X, this is hardcoded
-- # in its source - see the _InstallableTargetInstallPath function.
-- if sys.platform != 'darwin':
-- output_prefix += 'lib.target/'
+ output_bin = 'node'
+ output_lib = 'libnode.' + variables.get('shlib_suffix')
-+ # GYP will output to lib.target except on OS X, this is hardcoded
-+ # in its source - see the _InstallableTargetInstallPath function.
-+ if sys.platform != 'darwin':
-+ output_libprefix += 'lib.target/'
- if 'false' == variables.get('node_shared'):
- action([output_prefix + output_file], 'bin/' + output_file)
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
new file mode 100644
index 000000000..cdf6bc8e2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/libatomic.patch
@@ -0,0 +1,21 @@
+Link mksnapshot with libatomic on x86
+
+Clang-12 on x86 emits atomic builtins
+
+Fixes
+| module-compiler.cc:(.text._ZN2v88internal4wasm12_GLOBAL__N_123ExecuteCompilationUnitsERKSt10shared_ptrINS2_22BackgroundCompileTokenEEPNS0_8CountersEiNS2_19CompileBaselineOnlyE+0x558): un
+defined reference to `__atomic_load'
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/tools/v8_gypfiles/v8.gyp
++++ b/tools/v8_gypfiles/v8.gyp
+@@ -1336,6 +1336,7 @@
+ {
+ 'target_name': 'mksnapshot',
+ 'type': 'executable',
++ 'libraries': [ '-latomic' ],
+ 'dependencies': [
+ 'v8_base_without_compiler',
+ 'v8_compiler_for_mksnapshot',
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/mips-less-memory.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/mips-less-memory.patch
new file mode 100644
index 000000000..56e93c50c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/mips-less-memory.patch
@@ -0,0 +1,32 @@
+Description: mksnapshot uses too much memory on 32-bit mipsel
+Author: Jérémy Lal <kapouer@melix.org>
+Last-Update: 2020-06-03
+Forwarded: https://bugs.chromium.org/p/v8/issues/detail?id=10586
+
+This ensures that we reserve 500M instead of 2G range for codegen
+ensures that qemu-mips can allocate such large ranges
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/deps/v8/src/common/globals.h
++++ b/deps/v8/src/common/globals.h
+@@ -224,7 +224,7 @@ constexpr size_t kMinimumCodeRangeSize =
+ constexpr size_t kMinExpectedOSPageSize = 64 * KB; // OS page on PPC Linux
+ #elif V8_TARGET_ARCH_MIPS
+ constexpr bool kPlatformRequiresCodeRange = false;
+-constexpr size_t kMaximalCodeRangeSize = 2048LL * MB;
++constexpr size_t kMaximalCodeRangeSize = 512 * MB;
+ constexpr size_t kMinimumCodeRangeSize = 0 * MB;
+ constexpr size_t kMinExpectedOSPageSize = 4 * KB; // OS page.
+ #else
+--- a/deps/v8/src/codegen/mips/constants-mips.h
++++ b/deps/v8/src/codegen/mips/constants-mips.h
+@@ -140,7 +140,7 @@ const uint32_t kLeastSignificantByteInIn
+ namespace v8 {
+ namespace internal {
+
+-constexpr size_t kMaxPCRelativeCodeRangeInMB = 4096;
++constexpr size_t kMaxPCRelativeCodeRangeInMB = 1024;
+
+ // -----------------------------------------------------------------------------
+ // Registers and FPURegisters.
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/v8-call-new-ListFormatter-createInstance.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/v8-call-new-ListFormatter-createInstance.patch
new file mode 100644
index 000000000..806360084
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/v8-call-new-ListFormatter-createInstance.patch
@@ -0,0 +1,93 @@
+From 035c305ce7761f51328b45f1bd83e26aef267c9d Mon Sep 17 00:00:00 2001
+From: Frank Tang <ftang@chromium.org>
+Date: Thu, 15 Oct 2020 22:44:27 -0700
+Subject: [PATCH] [Intl] call new ListFormatter::createInstance
+
+The one we currently using is now marked as internal and to be removed
+for 68. Migrating to the style which already avaiable in ICU 67-1.
+
+Upstream-Status: Backport
+Bug: v8:11031
+Change-Id: I668382a2e1b8602ddca02bf231c5008a6c92bf2d
+Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477751
+Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
+Commit-Queue: Frank Tang <ftang@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#70638}
+---
+ deps/v8/src/objects/js-list-format.cc | 55 ++++++++++++-----------------------
+ 1 file changed, 18 insertions(+), 37 deletions(-)
+
+--- a/deps/v8/src/objects/js-list-format.cc
++++ b/deps/v8/src/objects/js-list-format.cc
+@@ -29,46 +29,27 @@ namespace v8 {
+ namespace internal {
+
+ namespace {
+-const char* kStandard = "standard";
+-const char* kOr = "or";
+-const char* kUnit = "unit";
+-const char* kStandardShort = "standard-short";
+-const char* kOrShort = "or-short";
+-const char* kUnitShort = "unit-short";
+-const char* kStandardNarrow = "standard-narrow";
+-const char* kOrNarrow = "or-narrow";
+-const char* kUnitNarrow = "unit-narrow";
+
+-const char* GetIcuStyleString(JSListFormat::Style style,
+- JSListFormat::Type type) {
++UListFormatterWidth GetIcuWidth(JSListFormat::Style style) {
++ switch (style) {
++ case JSListFormat::Style::LONG:
++ return ULISTFMT_WIDTH_WIDE;
++ case JSListFormat::Style::SHORT:
++ return ULISTFMT_WIDTH_SHORT;
++ case JSListFormat::Style::NARROW:
++ return ULISTFMT_WIDTH_NARROW;
++ }
++ UNREACHABLE();
++}
++
++UListFormatterType GetIcuType(JSListFormat::Type type) {
+ switch (type) {
+ case JSListFormat::Type::CONJUNCTION:
+- switch (style) {
+- case JSListFormat::Style::LONG:
+- return kStandard;
+- case JSListFormat::Style::SHORT:
+- return kStandardShort;
+- case JSListFormat::Style::NARROW:
+- return kStandardNarrow;
+- }
++ return ULISTFMT_TYPE_AND;
+ case JSListFormat::Type::DISJUNCTION:
+- switch (style) {
+- case JSListFormat::Style::LONG:
+- return kOr;
+- case JSListFormat::Style::SHORT:
+- return kOrShort;
+- case JSListFormat::Style::NARROW:
+- return kOrNarrow;
+- }
++ return ULISTFMT_TYPE_OR;
+ case JSListFormat::Type::UNIT:
+- switch (style) {
+- case JSListFormat::Style::LONG:
+- return kUnit;
+- case JSListFormat::Style::SHORT:
+- return kUnitShort;
+- case JSListFormat::Style::NARROW:
+- return kUnitNarrow;
+- }
++ return ULISTFMT_TYPE_UNITS;
+ }
+ UNREACHABLE();
+ }
+@@ -143,7 +124,7 @@ MaybeHandle<JSListFormat> JSListFormat::
+ icu::Locale icu_locale = r.icu_locale;
+ UErrorCode status = U_ZERO_ERROR;
+ icu::ListFormatter* formatter = icu::ListFormatter::createInstance(
+- icu_locale, GetIcuStyleString(style_enum, type_enum), status);
++ icu_locale, GetIcuType(type_enum), GetIcuWidth(style_enum), status);
+ if (U_FAILURE(status) || formatter == nullptr) {
+ delete formatter;
+ THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError),
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_14.16.1.bb
index 9b86bf337..48bf2f4a8 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_14.16.1.bb
@@ -1,12 +1,12 @@
DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
HOMEPAGE = "http://nodejs.org"
LICENSE = "MIT & BSD & Artistic-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8c66ff8861d9f96076a7cb61e3d75f54"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=85bf260d8b6de1588f57abc5dc66587c"
DEPENDS = "openssl"
-DEPENDS_append_class-target = " nodejs-native"
+DEPENDS_append_class-target = " qemu-native"
-inherit pkgconfig python3native
+inherit pkgconfig python3native qemu
COMPATIBLE_MACHINE_armv4 = "(!.*armv4).*"
COMPATIBLE_MACHINE_armv5 = "(!.*armv5).*"
@@ -21,12 +21,16 @@ SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
file://0004-v8-don-t-override-ARM-CFLAGS.patch \
file://big-endian.patch \
file://mips-warnings.patch \
- file://0001-Remove-use-of-register-r7-because-llvm-now-issues-an.patch \
+ file://v8-call-new-ListFormatter-createInstance.patch \
+ file://mips-less-memory.patch \
"
SRC_URI_append_class-target = " \
file://0002-Using-native-binaries.patch \
"
-SRC_URI[sha256sum] = "052f37ace6f569b513b5a1154b2a45d3c4d8b07d7d7c807b79f1566db61e979d"
+SRC_URI_append_toolchain-clang_x86 = " \
+ file://libatomic.patch \
+ "
+SRC_URI[sha256sum] = "e44adbbed6756c2c1a01258383e9f00df30c147b36e438f6369b5ef1069abac3"
S = "${WORKDIR}/node-v${PV}"
@@ -93,12 +97,43 @@ python do_unpack() {
shutil.rmtree(d.getVar('S') + '/deps/zlib', True)
}
+# V8's JIT infrastructure requires binaries such as mksnapshot and
+# mkpeephole to be run in the host during the build. However, these
+# binaries must have the same bit-width as the target (e.g. a x86_64
+# host targeting ARMv6 needs to produce a 32-bit binary). Instead of
+# depending on a third Yocto toolchain, we just build those binaries
+# for the target and run them on the host with QEMU.
+python do_create_v8_qemu_wrapper () {
+ """Creates a small wrapper that invokes QEMU to run some target V8 binaries
+ on the host."""
+ qemu_libdirs = [d.expand('${STAGING_DIR_HOST}${libdir}'),
+ d.expand('${STAGING_DIR_HOST}${base_libdir}')]
+ qemu_cmd = qemu_wrapper_cmdline(d, d.getVar('STAGING_DIR_HOST', True),
+ qemu_libdirs)
+ wrapper_path = d.expand('${B}/v8-qemu-wrapper.sh')
+ with open(wrapper_path, 'w') as wrapper_file:
+ wrapper_file.write("""#!/bin/sh
+
+# This file has been generated automatically.
+# It invokes QEMU to run binaries built for the target in the host during the
+# build process.
+
+%s "$@"
+""" % qemu_cmd)
+ os.chmod(wrapper_path, 0o755)
+}
+
+do_create_v8_qemu_wrapper[dirs] = "${B}"
+addtask create_v8_qemu_wrapper after do_configure before do_compile
+
+LDFLAGS_append_x86 = " -latomic"
+
# Node is way too cool to use proper autotools, so we install two wrappers to forcefully inject proper arch cflags to workaround gypi
do_configure () {
export LD="${CXX}"
GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES
# $TARGET_ARCH settings don't match --dest-cpu settings
- python3 configure.py --prefix=${prefix} --cross-compiling --without-snapshot --shared-openssl \
+ python3 configure.py --prefix=${prefix} --cross-compiling --shared-openssl \
--without-dtrace \
--without-etw \
--dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \
@@ -110,6 +145,7 @@ do_configure () {
do_compile () {
export LD="${CXX}"
+ install -Dm 0755 ${B}/v8-qemu-wrapper.sh ${B}/out/Release/v8-qemu-wrapper.sh
oe_runmake BUILDTYPE=Release
}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7069.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7069.patch
deleted file mode 100644
index 0cf4d5ed6..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7069.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-Subject: Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption
- for a 12 bytes IV)
-
----
- ext/openssl/openssl.c | 10 ++++-----
- ext/openssl/tests/cipher_tests.inc | 21 +++++++++++++++++
- ext/openssl/tests/openssl_decrypt_ccm.phpt | 22 +++++++++++-------
- ext/openssl/tests/openssl_encrypt_ccm.phpt | 26 ++++++++++++++--------
- 4 files changed, 57 insertions(+), 22 deletions(-)
-
-diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c
-index 04cb9b0f..fdad2c3b 100644
---- a/ext/openssl/openssl.c
-+++ b/ext/openssl/openssl.c
-@@ -6521,11 +6521,6 @@ static int php_openssl_validate_iv(char **piv, size_t *piv_len, size_t iv_requir
- {
- char *iv_new;
-
-- /* Best case scenario, user behaved */
-- if (*piv_len == iv_required_len) {
-- return SUCCESS;
-- }
--
- if (mode->is_aead) {
- if (EVP_CIPHER_CTX_ctrl(cipher_ctx, mode->aead_ivlen_flag, *piv_len, NULL) != 1) {
- php_error_docref(NULL, E_WARNING, "Setting of IV length for AEAD mode failed");
-@@ -6534,6 +6529,11 @@ static int php_openssl_validate_iv(char **piv, size_t *piv_len, size_t iv_requir
- return SUCCESS;
- }
-
-+ /* Best case scenario, user behaved */
-+ if (*piv_len == iv_required_len) {
-+ return SUCCESS;
-+ }
-+
- iv_new = ecalloc(1, iv_required_len + 1);
-
- if (*piv_len == 0) {
-diff --git a/ext/openssl/tests/cipher_tests.inc b/ext/openssl/tests/cipher_tests.inc
-index b1e46b41..779bfa85 100644
---- a/ext/openssl/tests/cipher_tests.inc
-+++ b/ext/openssl/tests/cipher_tests.inc
-@@ -1,5 +1,26 @@
- <?php
- $php_openssl_cipher_tests = array(
-+ 'aes-128-ccm' => array(
-+ array(
-+ 'key' => '404142434445464748494a4b4c4d4e4f',
-+ 'iv' => '1011121314151617',
-+ 'aad' => '000102030405060708090a0b0c0d0e0f',
-+ 'tag' => '1fc64fbfaccd',
-+ 'pt' => '202122232425262728292a2b2c2d2e2f',
-+ 'ct' => 'd2a1f0e051ea5f62081a7792073d593d',
-+ ),
-+ array(
-+ 'key' => '404142434445464748494a4b4c4d4e4f',
-+ 'iv' => '101112131415161718191a1b',
-+ 'aad' => '000102030405060708090a0b0c0d0e0f' .
-+ '10111213',
-+ 'tag' => '484392fbc1b09951',
-+ 'pt' => '202122232425262728292a2b2c2d2e2f' .
-+ '3031323334353637',
-+ 'ct' => 'e3b201a9f5b71a7a9b1ceaeccd97e70b' .
-+ '6176aad9a4428aa5',
-+ ),
-+ ),
- 'aes-256-ccm' => array(
- array(
- 'key' => '1bde3251d41a8b5ea013c195ae128b21' .
-diff --git a/ext/openssl/tests/openssl_decrypt_ccm.phpt b/ext/openssl/tests/openssl_decrypt_ccm.phpt
-index a5f01b87..08ef5bb7 100644
---- a/ext/openssl/tests/openssl_decrypt_ccm.phpt
-+++ b/ext/openssl/tests/openssl_decrypt_ccm.phpt
-@@ -10,14 +10,16 @@ if (!in_array('aes-256-ccm', openssl_get_cipher_methods()))
- --FILE--
- <?php
- require_once __DIR__ . "/cipher_tests.inc";
--$method = 'aes-256-ccm';
--$tests = openssl_get_cipher_tests($method);
-+$methods = ['aes-128-ccm', 'aes-256-ccm'];
-
--foreach ($tests as $idx => $test) {
-- echo "TEST $idx\n";
-- $pt = openssl_decrypt($test['ct'], $method, $test['key'], OPENSSL_RAW_DATA,
-- $test['iv'], $test['tag'], $test['aad']);
-- var_dump($test['pt'] === $pt);
-+foreach ($methods as $method) {
-+ $tests = openssl_get_cipher_tests($method);
-+ foreach ($tests as $idx => $test) {
-+ echo "$method - TEST $idx\n";
-+ $pt = openssl_decrypt($test['ct'], $method, $test['key'], OPENSSL_RAW_DATA,
-+ $test['iv'], $test['tag'], $test['aad']);
-+ var_dump($test['pt'] === $pt);
-+ }
- }
-
- // no IV
-@@ -32,7 +34,11 @@ var_dump(openssl_decrypt($test['ct'], $method, $test['key'], OPENSSL_RAW_DATA,
-
- ?>
- --EXPECTF--
--TEST 0
-+aes-128-ccm - TEST 0
-+bool(true)
-+aes-128-ccm - TEST 1
-+bool(true)
-+aes-256-ccm - TEST 0
- bool(true)
-
- Warning: openssl_decrypt(): Setting of IV length for AEAD mode failed in %s on line %d
-diff --git a/ext/openssl/tests/openssl_encrypt_ccm.phpt b/ext/openssl/tests/openssl_encrypt_ccm.phpt
-index fb5dbbc8..8c4c41f8 100644
---- a/ext/openssl/tests/openssl_encrypt_ccm.phpt
-+++ b/ext/openssl/tests/openssl_encrypt_ccm.phpt
-@@ -10,15 +10,17 @@ if (!in_array('aes-256-ccm', openssl_get_cipher_methods()))
- --FILE--
- <?php
- require_once __DIR__ . "/cipher_tests.inc";
--$method = 'aes-256-ccm';
--$tests = openssl_get_cipher_tests($method);
-+$methods = ['aes-128-ccm', 'aes-256-ccm'];
-
--foreach ($tests as $idx => $test) {
-- echo "TEST $idx\n";
-- $ct = openssl_encrypt($test['pt'], $method, $test['key'], OPENSSL_RAW_DATA,
-- $test['iv'], $tag, $test['aad'], strlen($test['tag']));
-- var_dump($test['ct'] === $ct);
-- var_dump($test['tag'] === $tag);
-+foreach ($methods as $method) {
-+ $tests = openssl_get_cipher_tests($method);
-+ foreach ($tests as $idx => $test) {
-+ echo "$method - TEST $idx\n";
-+ $ct = openssl_encrypt($test['pt'], $method, $test['key'], OPENSSL_RAW_DATA,
-+ $test['iv'], $tag, $test['aad'], strlen($test['tag']));
-+ var_dump($test['ct'] === $ct);
-+ var_dump($test['tag'] === $tag);
-+ }
- }
-
- // Empty IV error
-@@ -32,7 +34,13 @@ var_dump(strlen($tag));
- var_dump(openssl_encrypt('data', $method, 'password', 0, str_repeat('x', 16), $tag, '', 1024));
- ?>
- --EXPECTF--
--TEST 0
-+aes-128-ccm - TEST 0
-+bool(true)
-+bool(true)
-+aes-128-ccm - TEST 1
-+bool(true)
-+bool(true)
-+aes-256-ccm - TEST 0
- bool(true)
- bool(true)
-
---
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7070.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7070.patch
deleted file mode 100644
index e5b527f98..000000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2020-7070.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Subject: Patch fix-urldecode for HTTP related Bug #79699
-
----
- main/php_variables.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/main/php_variables.c b/main/php_variables.c
-index 1a40c2a1..cbdc7cf1 100644
---- a/main/php_variables.c
-+++ b/main/php_variables.c
-@@ -514,7 +514,9 @@ SAPI_API SAPI_TREAT_DATA_FUNC(php_default_treat_data)
- }
-
- val = estrndup(val, val_len);
-- php_url_decode(var, strlen(var));
-+ if (arg != PARSE_COOKIE) {
-+ php_url_decode(var, strlen(var));
-+ }
- if (sapi_module.input_filter(arg, var, &val, val_len, &new_val_len)) {
- php_register_variable_safe(var, val, new_val_len, &array);
- }
---
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.16.bb
index e19d5dd21..821d9cd04 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.16.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.php.net"
SECTION = "console/network"
LICENSE = "PHP-3.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=7e571b888d585b31f9ef5edcc647fa30"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=99532e0f6620bc9bca34f12fadaee33c"
BBCLASSEXTEND = "native"
DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native"
@@ -30,13 +30,10 @@ SRC_URI_append_class-target = " \
file://phar-makefile.patch \
file://0001-opcache-config.m4-enable-opcache.patch \
file://xfail_two_bug_tests.patch \
- file://CVE-2020-7070.patch \
- file://CVE-2020-7069.patch \
"
S = "${WORKDIR}/php-${PV}"
-SRC_URI[md5sum] = "e68a66c54b080d108831f6dc2e1e403d"
-SRC_URI[sha256sum] = "2e270958a4216480da7886743438ccc92b6acf32ea96fefda88d07e0a5095deb"
+SRC_URI[sha256sum] = "85710f007cfd0fae94e13a02a3a036f4e81ef43693260cae8a2e1ca93659ce3e"
inherit autotools pkgconfig python3native gettext
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.10.bb b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.10.bb
index b564e1260..34fca8189 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.10.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.10.bb
@@ -28,6 +28,8 @@ SRC_URI[sha256sum] = "63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30
S = "${WORKDIR}/${BPN}${PV}/unix"
+PSEUDO_IGNORE_PATHS .= ",${WORKDIR}/${BPN}${PV}"
+
# Short version format: "8.6"
VER = "${@os.path.splitext(d.getVar('PV'))[0]}"