diff options
author | Khem Raj <raj.khem@gmail.com> | 2021-10-26 10:37:42 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2021-10-26 10:38:40 -0700 |
commit | 7c20920cb6564897a7c864dd7a224a2e3060042d (patch) | |
tree | 6ea0ed97332f6c309a4a50cb10cee61b9f603f04 /meta-oe/dynamic-layers | |
parent | f917e5fe40a22bc96dde0f86f5ac177c5f8c2ef6 (diff) | |
download | meta-openembedded-7c20920cb6564897a7c864dd7a224a2e3060042d.tar.gz |
mozjs: Fix build for 32bit systems disabling JIT
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/dynamic-layers')
3 files changed, 22 insertions, 10 deletions
diff --git a/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/nojit-32bit-arch-fix.patch b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/nojit-32bit-arch-fix.patch new file mode 100644 index 000000000..f308b4863 --- /dev/null +++ b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/nojit-32bit-arch-fix.patch | |||
@@ -0,0 +1,21 @@ | |||
1 | Fix build when JIT is disabled on 32bit systems | ||
2 | |||
3 | This fixes a compile time assert | ||
4 | js/src/wasm/WasmFrame.cpp:57:3: error: static_assert failed due to requirement '(__builtin_offsetof(js::wasm::DebugFrame, frame_) + sizeof(js::wasm::Frame)) % Alignment == 0' "Aligned after pushing DebugFrame" | ||
5 | static_assert((offsetof(DebugFrame, frame_) + sizeof(Frame)) % Alignment == 0, | ||
6 | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
10 | |||
11 | --- a/js/src/wasm/WasmFrame.h | ||
12 | +++ b/js/src/wasm/WasmFrame.h | ||
13 | @@ -230,6 +230,8 @@ class DebugFrame { | ||
14 | // Avoid -Wunused-private-field warnings. | ||
15 | protected: | ||
16 | #if defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_ARM) || \ | ||
17 | + (defined(JS_CODEGEN_NONE) && \ | ||
18 | + (defined(__riscv) && __riscv_xlen == 32) || defined(__mips__)) || \ | ||
19 | defined(JS_CODEGEN_X86) || defined(__wasi__) | ||
20 | // See alignmentStaticAsserts(). For MIPS32, ARM32 and X86 DebugFrame is only | ||
21 | // 4-byte aligned, so we add another word to get up to 8-byte | ||
diff --git a/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/riscv32.patch b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/riscv32.patch index 1f1f93987..fe9c332a0 100644 --- a/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/riscv32.patch +++ b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs/riscv32.patch | |||
@@ -43,13 +43,3 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> | |||
43 | "riscv64-unknown-linux-gnu": little_endian + {"__riscv": 1, "__riscv_xlen": 64}, | 43 | "riscv64-unknown-linux-gnu": little_endian + {"__riscv": 1, "__riscv_xlen": 64}, |
44 | "sh4-unknown-linux-gnu": little_endian + {"__sh__": 1}, | 44 | "sh4-unknown-linux-gnu": little_endian + {"__sh__": 1}, |
45 | } | 45 | } |
46 | --- a/js/src/wasm/WasmFrame.h | ||
47 | +++ b/js/src/wasm/WasmFrame.h | ||
48 | @@ -230,6 +230,7 @@ class DebugFrame { | ||
49 | // Avoid -Wunused-private-field warnings. | ||
50 | protected: | ||
51 | #if defined(JS_CODEGEN_MIPS32) || defined(JS_CODEGEN_ARM) || \ | ||
52 | + (defined(JS_CODEGEN_NONE) && defined(__riscv) && __riscv_xlen == 32) || \ | ||
53 | defined(JS_CODEGEN_X86) || defined(__wasi__) | ||
54 | // See alignmentStaticAsserts(). For MIPS32, ARM32 and X86 DebugFrame is only | ||
55 | // 4-byte aligned, so we add another word to get up to 8-byte | ||
diff --git a/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs_91.2.0.bb b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs_91.2.0.bb index 45f014531..a1a5ddc3b 100644 --- a/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs_91.2.0.bb +++ b/meta-oe/dynamic-layers/meta-python/recipes-extended/mozjs/mozjs_91.2.0.bb | |||
@@ -11,6 +11,7 @@ SRC_URI = "https://archive.mozilla.org/pub/firefox/releases/${PV}esr/source/fire | |||
11 | file://fix-musl-build.patch \ | 11 | file://fix-musl-build.patch \ |
12 | file://0001-build-do-not-use-autoconf-s-config.sub-to-canonicali.patch \ | 12 | file://0001-build-do-not-use-autoconf-s-config.sub-to-canonicali.patch \ |
13 | file://riscv32.patch \ | 13 | file://riscv32.patch \ |
14 | file://nojit-32bit-arch-fix.patch \ | ||
14 | " | 15 | " |
15 | SRC_URI[sha256sum] = "3ef3cfd321d0c2c80ee1b41b8baf7a1ea4daf93c29e1377274933440ff5e42c3" | 16 | SRC_URI[sha256sum] = "3ef3cfd321d0c2c80ee1b41b8baf7a1ea4daf93c29e1377274933440ff5e42c3" |
16 | 17 | ||