diff options
-rw-r--r-- | extra/nodejs/PKGBUILD | 17 | ||||
-rw-r--r-- | extra/nodejs/node-17.1.0-atomic.patch | 27 |
2 files changed, 44 insertions, 0 deletions
diff --git a/extra/nodejs/PKGBUILD b/extra/nodejs/PKGBUILD new file mode 100644 index 00000000..ca9008ec --- /dev/null +++ b/extra/nodejs/PKGBUILD @@ -0,0 +1,17 @@ +# add -latomic where needed (i486) +if [ "$CARCH" = 'i486' ]; then + source+=('node-17.1.0-atomic.patch') + sha512sums+=('0fd62af37c4c0e2cd81fc613f4610741dbe6e883b5d15aa1fd64bcdbca8ec8d95aa98a37525425e5f80e8ca1305e222235f3ca6069779e3fcc1940b20207d50a') + eval "$( + declare -f prepare | \ + sed ' + $i patch -Np1 -i "../node-17.1.0-atomic.patch" + ' + )" + eval "$( + declare -f build | \ + sed ' + 3 i LDFLAGS+=" -latomic" + ' + )" +fi diff --git a/extra/nodejs/node-17.1.0-atomic.patch b/extra/nodejs/node-17.1.0-atomic.patch new file mode 100644 index 00000000..58ae4ecc --- /dev/null +++ b/extra/nodejs/node-17.1.0-atomic.patch @@ -0,0 +1,27 @@ +diff -rauN node-17.1.0/node.gyp node-17.1.0-atomic-patch/node.gyp +--- node-17.1.0/node.gyp 2021-11-08 16:40:59.000000000 +0100 ++++ node-17.1.0-atomic-patch/node.gyp 2021-12-04 12:21:17.836148103 +0100 +@@ -116,6 +116,11 @@ + '-Wl,-bnoerrmsg', + ], + }], ++ [ 'host_arch=="x86"', { ++ 'link_settings': { ++ 'libraries': [ '-latomic' ], ++ }, ++ }], + ['OS == "linux" and llvm_version != "0.0"', { + 'libraries': ['-latomic'], + }], +diff -rauN node-17.1.0/tools/v8_gypfiles/v8.gyp node-17.1.0-atomic-patch/tools/v8_gypfiles/v8.gyp +--- node-17.1.0/tools/v8_gypfiles/v8.gyp 2021-11-08 16:40:59.000000000 +0100 ++++ node-17.1.0-atomic-patch/tools/v8_gypfiles/v8.gyp 2021-12-04 11:32:45.735522099 +0100 +@@ -965,7 +965,7 @@ + }], + # Platforms that don't have Compare-And-Swap (CAS) support need to link atomic library + # to implement atomic memory access +- ['v8_current_cpu in ["mips", "mipsel", "mips64", "mips64el", "ppc", "arm", "riscv64"]', { ++ ['v8_current_cpu in ["mips", "mipsel", "mips64", "mips64el", "ppc", "arm", "riscv64", "x86"]', { + 'link_settings': { + 'libraries': ['-latomic', ], + }, |