summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--user/node/APKBUILD11
-rw-r--r--user/node/libatomic.patch14
-rw-r--r--user/node/ppc32.patch15
3 files changed, 38 insertions, 2 deletions
diff --git a/user/node/APKBUILD b/user/node/APKBUILD
index 1abb1ac19..f4dbbbbf0 100644
--- a/user/node/APKBUILD
+++ b/user/node/APKBUILD
@@ -13,6 +13,8 @@ makedepends="c-ares-dev http-parser-dev icu-dev libexecinfo-dev libuv-dev
subpackages="$pkgname-dev $pkgname-doc"
source="https://nodejs.org/download/release/v$pkgver/node-v$pkgver.tar.xz
https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
+ libatomic.patch
+ ppc32.patch
ppc64.patch
stack-silliness.patch
"
@@ -45,20 +47,25 @@ build() {
--shared-nghttp2 \
--openssl-no-asm \
--shared-zlib
- make
+ # keep DESTDIR set, to avoid a full rebuild in package()
+ make DESTDIR="$pkgdir"
}
check() {
cd "$builddir"
- make test-only
+ export PATH="$srcdir/python/bin:$PATH"
+ make DESTDIR="$pkgdir" test-only
}
package() {
cd "$builddir"
+ export PATH="$srcdir/python/bin:$PATH"
make DESTDIR="$pkgdir" install
}
sha512sums="cf741f733af7a7e1fbd37b0f98110078494b4771dbdfccacfda95a5ea4cda6cdcea4f8d31dddcf27477213614e4ab6cf7d1a1f900cb92936333730737ac4f9e8 node-v10.15.3.tar.xz
27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz
+8f64922d586bce9d82c83042a989739cc55ecc5e015778cdfbda21c257aa50527ddb18740985bcb2068e4a749b71eb8a135d9a8152b374d361589df7f33c9b60 libatomic.patch
+afe6ced1d6dc56ef1be9fba03b84eb23ff21949939dda5b84543a14e34c987d37a0067fdc38c45a622aa2e74d6572fea393c05e59e3c1799f23d87f6e2495302 ppc32.patch
583326353de5b0ac14a6c42321f6b031bd943a80550624794e15bd7526470f67bfa14a66558db3c94b4ee2db3053d2e4efed2117f4e7b6dca3c59c171048c094 ppc64.patch
3ea09e36ed0cc31e0475ebc9c92b7609b70e9c1637c5db6c92cf1d6363fb8c6f884ffa20dd81054ca390b721695185327d80c9eeff0688a959e9d46947602471 stack-silliness.patch"
diff --git a/user/node/libatomic.patch b/user/node/libatomic.patch
new file mode 100644
index 000000000..fc2e4ffd2
--- /dev/null
+++ b/user/node/libatomic.patch
@@ -0,0 +1,14 @@
+--- node-v10.15.3/node.gyp.old 2019-03-05 15:16:32.000000000 +0000
++++ node-v10.15.3/node.gyp 2019-04-06 13:54:51.204939193 +0000
+@@ -479,6 +479,11 @@
+ 'msvs_disabled_warnings!': [4244],
+
+ 'conditions': [
++ [ 'host_arch=="mips" or host_arch=="mipsel" or host_arch=="ppc"', {
++ 'link_settings': {
++ 'libraries': [ '-latomic' ],
++ },
++ }],
+ [ 'node_code_cache_path!=""', {
+ 'sources': [ '<(node_code_cache_path)' ]
+ }, {
diff --git a/user/node/ppc32.patch b/user/node/ppc32.patch
new file mode 100644
index 000000000..35270fba6
--- /dev/null
+++ b/user/node/ppc32.patch
@@ -0,0 +1,15 @@
+--- node-v10.15.3/deps/v8/src/libsampler/sampler.cc.old 2019-03-05 15:16:28.000000000 +0000
++++ node-v10.15.3/deps/v8/src/libsampler/sampler.cc 2019-04-06 13:44:07.224653262 +0000
+@@ -502,9 +502,9 @@
+ reinterpret_cast<void*>(ucontext->uc_mcontext.regs->gpr[PT_R31]);
+ #else
+ // Some C libraries, notably Musl, define the regs member as a void pointer
+- state->pc = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[32]);
+- state->sp = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[1]);
+- state->fp = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[31]);
++ state->pc = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[32]);
++ state->sp = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[1]);
++ state->fp = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[31]);
+ #endif
+ #elif V8_HOST_ARCH_S390
+ #if V8_TARGET_ARCH_32_BIT