Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/extra/nodejs
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2021-12-04 16:46:04 +0100
committerAndreas Baumann <mail@andreasbaumann.cc>2021-12-04 16:46:04 +0100
commit84ccd4e73b439cef259b79f7009c742bada6bfeb (patch)
tree55c2986a803e0918ec91d38da44c5ea72a9de50b /extra/nodejs
parentce1c1616c5938acb3f6350682aa57365c0062707 (diff)
extra/nodejs: tentative patching for -latomic on i486
Diffstat (limited to 'extra/nodejs')
-rw-r--r--extra/nodejs/PKGBUILD17
-rw-r--r--extra/nodejs/node-17.1.0-atomic.patch27
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', ],
+ },