* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
@ 2019-11-03 16:45 ` voidlinux-github
2019-11-03 20:19 ` [PR PATCH] [Updated] " voidlinux-github
` (10 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-03 16:45 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 158 bytes --]
New comment by Piraty on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549156098
Comment:
@q66 (ppc patches)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PR PATCH] [Updated] nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
2019-11-03 16:45 ` voidlinux-github
@ 2019-11-03 20:19 ` voidlinux-github
2019-11-03 20:21 ` voidlinux-github
` (9 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-03 20:19 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 361 bytes --]
There is an updated pull request by k4leg against master on the void-packages repository
https://github.com/k4leg/void-packages nodejs-lts
https://github.com/void-linux/void-packages/pull/16085
nodejs-lts: update to 12.13.0. [ci skip]
Compiled successfully on x86_64.
A patch file from https://github.com/void-linux/void-packages/pull/16085.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nodejs-lts-16085.patch --]
[-- Type: text/x-diff, Size: 9161 bytes --]
From b07ca20be6385068feb9daf228b642a52d846d6b Mon Sep 17 00:00:00 2001
From: k4leg <d0xi@inbox.ru>
Date: Sun, 3 Nov 2019 18:19:50 +0300
Subject: [PATCH] nodejs-lts: update to 12.13.0. [ci skip]
---
srcpkgs/nodejs-lts-devel | 1 +
srcpkgs/nodejs-lts/patches/ppc32.patch | 33 +++-----------
srcpkgs/nodejs-lts/patches/ppc64.patch | 41 ------------------
srcpkgs/nodejs-lts/template | 60 ++++++++++++++++++--------
4 files changed, 48 insertions(+), 87 deletions(-)
create mode 120000 srcpkgs/nodejs-lts-devel
delete mode 100644 srcpkgs/nodejs-lts/patches/ppc64.patch
diff --git a/srcpkgs/nodejs-lts-devel b/srcpkgs/nodejs-lts-devel
new file mode 120000
index 00000000000..c9a495a2e35
--- /dev/null
+++ b/srcpkgs/nodejs-lts-devel
@@ -0,0 +1 @@
+nodejs-lts
\ No newline at end of file
diff --git a/srcpkgs/nodejs-lts/patches/ppc32.patch b/srcpkgs/nodejs-lts/patches/ppc32.patch
index 343eff58512..502d471429f 100644
--- a/srcpkgs/nodejs-lts/patches/ppc32.patch
+++ b/srcpkgs/nodejs-lts/patches/ppc32.patch
@@ -1,42 +1,19 @@
---- configure.py
-+++ configure.py
-@@ -848,7 +848,7 @@ def host_arch_cc():
- '__MIPSEL__' : 'mipsel',
- '__mips__' : 'mips',
- '__PPC64__' : 'ppc64',
-- '__PPC__' : 'ppc64',
-+ '__PPC__' : 'ppc',
- '__x86_64__' : 'x64',
- '__s390__' : 's390',
- '__s390x__' : 's390x',
---- node.gyp
-+++ node.gyp
-@@ -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)' ]
- }, {
---- deps/v8/src/libsampler/sampler.cc
+--- deps/v8/src/libsampler/sampler.cc.orig
+++ deps/v8/src/libsampler/sampler.cc
-@@ -418,9 +418,15 @@ void SignalHandler::FillRegisterState(void* context, RegisterState* state) {
- reinterpret_cast<void*>(ucontext->uc_mcontext.regs->gpr[PT_R31]);
+@@ -423,10 +423,17 @@
+ state->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.regs->link);
#else
// Some C libraries, notably Musl, define the regs member as a void pointer
+ #if !V8_TARGET_ARCH_32_BIT
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->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[36]);
+ #else
+ 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]);
++ state->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[36]);
+ #endif
#endif
#elif V8_HOST_ARCH_S390
diff --git a/srcpkgs/nodejs-lts/patches/ppc64.patch b/srcpkgs/nodejs-lts/patches/ppc64.patch
deleted file mode 100644
index 8190db1ce6f..00000000000
--- a/srcpkgs/nodejs-lts/patches/ppc64.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Taken from Adélie Linux, fixes node on big endian ELFv2.
---- deps/v8/src/ppc/assembler-ppc.h.old 2019-03-05 15:16:29.000000000 +0000
-+++ deps/v8/src/ppc/assembler-ppc.h 2019-04-02 07:05:25.977213735 +0000
-@@ -48,7 +48,8 @@
- #include "src/ppc/constants-ppc.h"
-
- #if V8_HOST_ARCH_PPC && \
-- (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && V8_TARGET_BIG_ENDIAN))
-+ (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_BIG_ENDIAN && (!defined(_CALL_ELF) || _CALL_ELF == 1))))
- #define ABI_USES_FUNCTION_DESCRIPTORS 1
- #else
- #define ABI_USES_FUNCTION_DESCRIPTORS 0
-@@ -60,13 +61,15 @@
- #define ABI_PASSES_HANDLES_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || V8_TARGET_LITTLE_ENDIAN
-+#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1
- #else
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN)
-+#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2)))
- #define ABI_CALL_VIA_IP 1
- #else
- #define ABI_CALL_VIA_IP 0
-@@ -220,7 +220,8 @@
- // The following constants describe the stack frame linkage area as
- // defined by the ABI. Note that kNumRequiredStackFrameSlots must
- // satisfy alignment requirements (rounding up if required).
--#if V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN
-+#if V8_TARGET_ARCH_PPC64 && (V8_TARGET_LITTLE_ENDIAN || \
-+ defined(_CALL_ELF) && _CALL_ELF == 2)
- // [0] back chain
- // [1] condition register save area
- // [2] link register save area
diff --git a/srcpkgs/nodejs-lts/template b/srcpkgs/nodejs-lts/template
index b260e1c0706..d02f5e06397 100644
--- a/srcpkgs/nodejs-lts/template
+++ b/srcpkgs/nodejs-lts/template
@@ -1,28 +1,28 @@
# Template file for 'nodejs-lts'
pkgname=nodejs-lts
-version=10.16.2
+version=12.13.0
revision=1
wrksrc="node-v${version}"
# Need these for host v8 for torque, see https://github.com/nodejs/node/pull/21079
hostmakedepends="pkg-config python zlib-devel $(vopt_if icu icu-devel)
$(vopt_if ssl libressl-devel) $(vopt_if libuv libuv-devel)
$(vopt_if http_parser http-parser-devel) $(vopt_if nghttp2 nghttp2-devel)
- $(vopt_if cares c-ares-devel)"
+ $(vopt_if cares c-ares-devel) $(vopt_if http_parser llhttp-devel)"
makedepends="zlib-devel python-devel $(vopt_if icu icu-devel)
$(vopt_if ssl libressl-devel) $(vopt_if libuv libuv-devel)
$(vopt_if http_parser http-parser-devel) $(vopt_if nghttp2 nghttp2-devel)
- $(vopt_if cares c-ares-devel)"
+ $(vopt_if cares c-ares-devel) $(vopt_if http_parser llhttp-devel)"
short_desc="Evented I/O for V8 javascript"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="MIT"
homepage="https://nodejs.org/"
distfiles="${homepage}/dist/v${version}/node-v${version}.tar.gz"
-checksum=5936ef12ab3f0ce5fbb6751c1bb41f626b6058f414a297b3d8c5eb418a27e8fe
+checksum=2e5321e095fe673a3ab936cf77faf8c983cba62f27a9fbd00530a7edb739a040
build_options="ssl libuv http_parser icu nghttp2 cares"
desc_option_ssl="Enable shared libressl"
desc_option_libuv="Enable shared libuv"
-desc_option_http_parser="Enable shared http-parser"
+desc_option_http_parser="Enable shared http-parser and llhttp"
desc_option_icu="Enable shared icu"
desc_option_nghttp2="Enable shared nghttp2"
desc_option_cares="Enable shared c-ares"
@@ -33,13 +33,24 @@ conflicts="nodejs"
provides="nodejs-runtime-0_1"
if [ "$XBPS_WORDSIZE" -ne "$XBPS_TARGET_WORDSIZE" ]; then
- nocross="host and target must have the same pointer size"
+ nocross="host and target must have the same pointer size"
fi
-case "$XBPS_MACHINE" in
+case "$XBPS_TARGET_MACHINE" in
ppc64*) ;;
+ ppc*) broken="Node 12.x does not support 32-bit ppc" ;;
+esac
+
+# v8 requires libatomic on ppc*/s390x/mips*
+case "$XBPS_TARGET_MACHINE" in
+ mips*|ppc*) makedepends+=" libatomic-devel" ;;
+ *) ;;
+esac
+
+# also need it on host when it's one of those archs
+case "$XBPS_MACHINE" in
mips*|ppc*) hostmakedepends+=" libatomic-devel" ;;
- *) ;;
+ *) ;;
esac
do_configure() {
@@ -48,17 +59,17 @@ do_configure() {
export LD="$CXX"
if [ "$CROSS_BUILD" ]; then
case "$XBPS_TARGET_MACHINE" in
- arm*) _args="--dest-cpu=arm" ;;
- aarch64*) _args="--dest-cpu=arm64" ;;
- ppc64*) _args="--dest-cpu=ppc64" ;;
- ppc*) _args="--dest-cpu=ppc" ;;
- mipsel*) _args="--dest-cpu=mipsel" ;;
- mips*) _args="--dest-cpu=mips" ;;
- i686*) _args="--dest-cpu=x86" ;;
- x86_64*) _args="--dest-cpu=x86_64" ;;
+ arm*) _args="--dest-cpu=arm" ;;
+ aarch64*) _args="--dest-cpu=arm64" ;;
+ ppc64*) _args="--dest-cpu=ppc64" ;;
+ ppc*) _args="--dest-cpu=ppc" ;;
+ mipsel*) _args="--dest-cpu=mipsel" ;;
+ mips*) _args="--dest-cpu=mips" ;;
+ i686*) _args="--dest-cpu=x86" ;;
+ x86_64*) _args="--dest-cpu=x86_64" ;;
*) msg_error "$pkgver: cannot be cross compiled for ${XBPS_TARGET_MACHINE}.\n" ;;
esac
- _args+=" --without-snapshot"
+ _args+=" --cross-compiling"
fi
# their pregenerated asm is for ELFv1...
case "$XBPS_TARGET_MACHINE" in
@@ -72,6 +83,12 @@ do_configure() {
$(vopt_if nghttp2 --shared-nghttp2) \
$(vopt_if cares --shared-cares) ${_args}
}
+
+post_configure() {
+ # Fix linking against llhttp
+ sed 's/-lhttp_parser/& -lllhttp/' -i out/*.target.mk
+}
+
do_build() {
if [ "$CROSS_BUILD" ]; then
make LD="$CXX" LDFLAGS+=-ldl ${makejobs} PORTABLE=1 V=1
@@ -79,8 +96,15 @@ do_build() {
make LD="$CXX" LDFLAGS+=-ldl ${makejobs} V=1
fi
}
+
do_install() {
make LD="$CXX" LDFLAGS+=-ldl DESTDIR="$DESTDIR" install
vlicense LICENSE
- rm -r $DESTDIR/usr/include
+}
+
+nodejs-lts-devel_package() {
+ short_desc+=" (development files)"
+ pkg_install() {
+ vmove usr/include
+ }
}
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
2019-11-03 16:45 ` voidlinux-github
2019-11-03 20:19 ` [PR PATCH] [Updated] " voidlinux-github
@ 2019-11-03 20:21 ` voidlinux-github
2019-11-03 23:00 ` voidlinux-github
` (8 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-03 20:21 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 184 bytes --]
New comment by k4leg on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549174590
Comment:
Also added a new package: `nodejs-lts-devel`.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (2 preceding siblings ...)
2019-11-03 20:21 ` voidlinux-github
@ 2019-11-03 23:00 ` voidlinux-github
2019-11-04 9:06 ` voidlinux-github
` (7 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-03 23:00 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 417 bytes --]
New comment by q66 on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549188474
Comment:
this means there will no longer be a version of node that works on ppc32 (as 12.x broke it), which will be a problem once i have fixed (or someone else has) firefox (as that needs node to build)
10.x is supported until mid 2021...
i wonder what would be the best thing to do
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (3 preceding siblings ...)
2019-11-03 23:00 ` voidlinux-github
@ 2019-11-04 9:06 ` voidlinux-github
2019-11-05 17:49 ` [PR PATCH] [Updated] " voidlinux-github
` (6 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-04 9:06 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 248 bytes --]
New comment by k4leg on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549268604
Comment:
@q66 hi! May need to add two more packages. For example, as in [Arch Linux](https://i.imgur.com/OhSpiEo.png).
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PR PATCH] [Updated] nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (4 preceding siblings ...)
2019-11-04 9:06 ` voidlinux-github
@ 2019-11-05 17:49 ` voidlinux-github
2019-11-05 17:49 ` voidlinux-github
` (5 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-05 17:49 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 361 bytes --]
There is an updated pull request by k4leg against master on the void-packages repository
https://github.com/k4leg/void-packages nodejs-lts
https://github.com/void-linux/void-packages/pull/16085
nodejs-lts: update to 12.13.0. [ci skip]
Compiled successfully on x86_64.
A patch file from https://github.com/void-linux/void-packages/pull/16085.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nodejs-lts-16085.patch --]
[-- Type: text/x-diff, Size: 9347 bytes --]
From b55047262d865eed287cc7bdc6c19076fa33ff86 Mon Sep 17 00:00:00 2001
From: k4leg <d0xi@inbox.ru>
Date: Sun, 3 Nov 2019 18:19:50 +0300
Subject: [PATCH] nodejs-lts: update to 12.13.0. [ci skip]
---
srcpkgs/nodejs-lts-devel | 1 +
srcpkgs/nodejs-lts/patches/ppc32.patch | 33 ++-----------
srcpkgs/nodejs-lts/patches/ppc64.patch | 41 -----------------
srcpkgs/nodejs-lts/template | 64 ++++++++++++++++++--------
4 files changed, 51 insertions(+), 88 deletions(-)
create mode 120000 srcpkgs/nodejs-lts-devel
delete mode 100644 srcpkgs/nodejs-lts/patches/ppc64.patch
diff --git a/srcpkgs/nodejs-lts-devel b/srcpkgs/nodejs-lts-devel
new file mode 120000
index 00000000000..c9a495a2e35
--- /dev/null
+++ b/srcpkgs/nodejs-lts-devel
@@ -0,0 +1 @@
+nodejs-lts
\ No newline at end of file
diff --git a/srcpkgs/nodejs-lts/patches/ppc32.patch b/srcpkgs/nodejs-lts/patches/ppc32.patch
index 343eff58512..502d471429f 100644
--- a/srcpkgs/nodejs-lts/patches/ppc32.patch
+++ b/srcpkgs/nodejs-lts/patches/ppc32.patch
@@ -1,42 +1,19 @@
---- configure.py
-+++ configure.py
-@@ -848,7 +848,7 @@ def host_arch_cc():
- '__MIPSEL__' : 'mipsel',
- '__mips__' : 'mips',
- '__PPC64__' : 'ppc64',
-- '__PPC__' : 'ppc64',
-+ '__PPC__' : 'ppc',
- '__x86_64__' : 'x64',
- '__s390__' : 's390',
- '__s390x__' : 's390x',
---- node.gyp
-+++ node.gyp
-@@ -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)' ]
- }, {
---- deps/v8/src/libsampler/sampler.cc
+--- deps/v8/src/libsampler/sampler.cc.orig
+++ deps/v8/src/libsampler/sampler.cc
-@@ -418,9 +418,15 @@ void SignalHandler::FillRegisterState(void* context, RegisterState* state) {
- reinterpret_cast<void*>(ucontext->uc_mcontext.regs->gpr[PT_R31]);
+@@ -423,10 +423,17 @@
+ state->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.regs->link);
#else
// Some C libraries, notably Musl, define the regs member as a void pointer
+ #if !V8_TARGET_ARCH_32_BIT
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->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.gp_regs[36]);
+ #else
+ 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]);
++ state->lr = reinterpret_cast<void*>(ucontext->uc_mcontext.gregs[36]);
+ #endif
#endif
#elif V8_HOST_ARCH_S390
diff --git a/srcpkgs/nodejs-lts/patches/ppc64.patch b/srcpkgs/nodejs-lts/patches/ppc64.patch
deleted file mode 100644
index 8190db1ce6f..00000000000
--- a/srcpkgs/nodejs-lts/patches/ppc64.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Taken from Adélie Linux, fixes node on big endian ELFv2.
---- deps/v8/src/ppc/assembler-ppc.h.old 2019-03-05 15:16:29.000000000 +0000
-+++ deps/v8/src/ppc/assembler-ppc.h 2019-04-02 07:05:25.977213735 +0000
-@@ -48,7 +48,8 @@
- #include "src/ppc/constants-ppc.h"
-
- #if V8_HOST_ARCH_PPC && \
-- (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && V8_TARGET_BIG_ENDIAN))
-+ (V8_OS_AIX || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_BIG_ENDIAN && (!defined(_CALL_ELF) || _CALL_ELF == 1))))
- #define ABI_USES_FUNCTION_DESCRIPTORS 1
- #else
- #define ABI_USES_FUNCTION_DESCRIPTORS 0
-@@ -60,13 +61,15 @@
- #define ABI_PASSES_HANDLES_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || V8_TARGET_LITTLE_ENDIAN
-+#if !V8_HOST_ARCH_PPC || !V8_TARGET_ARCH_PPC64 || \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2))
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 1
- #else
- #define ABI_RETURNS_OBJECT_PAIRS_IN_REGS 0
- #endif
-
--#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN)
-+#if !V8_HOST_ARCH_PPC || (V8_TARGET_ARCH_PPC64 && \
-+ (V8_TARGET_LITTLE_ENDIAN || (defined(_CALL_ELF) && _CALL_ELF == 2)))
- #define ABI_CALL_VIA_IP 1
- #else
- #define ABI_CALL_VIA_IP 0
-@@ -220,7 +220,8 @@
- // The following constants describe the stack frame linkage area as
- // defined by the ABI. Note that kNumRequiredStackFrameSlots must
- // satisfy alignment requirements (rounding up if required).
--#if V8_TARGET_ARCH_PPC64 && V8_TARGET_LITTLE_ENDIAN
-+#if V8_TARGET_ARCH_PPC64 && (V8_TARGET_LITTLE_ENDIAN || \
-+ defined(_CALL_ELF) && _CALL_ELF == 2)
- // [0] back chain
- // [1] condition register save area
- // [2] link register save area
diff --git a/srcpkgs/nodejs-lts/template b/srcpkgs/nodejs-lts/template
index b260e1c0706..7b4b51fb2e8 100644
--- a/srcpkgs/nodejs-lts/template
+++ b/srcpkgs/nodejs-lts/template
@@ -1,45 +1,56 @@
# Template file for 'nodejs-lts'
pkgname=nodejs-lts
-version=10.16.2
+version=12.13.0
revision=1
wrksrc="node-v${version}"
# Need these for host v8 for torque, see https://github.com/nodejs/node/pull/21079
hostmakedepends="pkg-config python zlib-devel $(vopt_if icu icu-devel)
$(vopt_if ssl libressl-devel) $(vopt_if libuv libuv-devel)
$(vopt_if http_parser http-parser-devel) $(vopt_if nghttp2 nghttp2-devel)
- $(vopt_if cares c-ares-devel)"
+ $(vopt_if cares c-ares-devel) $(vopt_if http_parser llhttp-devel)"
makedepends="zlib-devel python-devel $(vopt_if icu icu-devel)
$(vopt_if ssl libressl-devel) $(vopt_if libuv libuv-devel)
$(vopt_if http_parser http-parser-devel) $(vopt_if nghttp2 nghttp2-devel)
- $(vopt_if cares c-ares-devel)"
+ $(vopt_if cares c-ares-devel) $(vopt_if http_parser llhttp-devel)"
short_desc="Evented I/O for V8 javascript"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="MIT"
homepage="https://nodejs.org/"
distfiles="${homepage}/dist/v${version}/node-v${version}.tar.gz"
-checksum=5936ef12ab3f0ce5fbb6751c1bb41f626b6058f414a297b3d8c5eb418a27e8fe
+checksum=2e5321e095fe673a3ab936cf77faf8c983cba62f27a9fbd00530a7edb739a040
build_options="ssl libuv http_parser icu nghttp2 cares"
desc_option_ssl="Enable shared libressl"
desc_option_libuv="Enable shared libuv"
-desc_option_http_parser="Enable shared http-parser"
+desc_option_http_parser="Enable shared http-parser and llhttp"
desc_option_icu="Enable shared icu"
desc_option_nghttp2="Enable shared nghttp2"
desc_option_cares="Enable shared c-ares"
build_options_default="libuv http_parser icu nghttp2 cares"
replaces="iojs>=0"
-conflicts="nodejs"
+conflicts="nodejs nodejs-lts-10"
provides="nodejs-runtime-0_1"
if [ "$XBPS_WORDSIZE" -ne "$XBPS_TARGET_WORDSIZE" ]; then
- nocross="host and target must have the same pointer size"
+ nocross="host and target must have the same pointer size"
fi
-case "$XBPS_MACHINE" in
+case "$XBPS_TARGET_MACHINE" in
ppc64*) ;;
+ ppc*) broken="Node 12.x does not support 32-bit ppc" ;;
+esac
+
+# v8 requires libatomic on ppc*/s390x/mips*
+case "$XBPS_TARGET_MACHINE" in
+ mips*|ppc*) makedepends+=" libatomic-devel" ;;
+ *) ;;
+esac
+
+# also need it on host when it's one of those archs
+case "$XBPS_MACHINE" in
mips*|ppc*) hostmakedepends+=" libatomic-devel" ;;
- *) ;;
+ *) ;;
esac
do_configure() {
@@ -48,17 +59,17 @@ do_configure() {
export LD="$CXX"
if [ "$CROSS_BUILD" ]; then
case "$XBPS_TARGET_MACHINE" in
- arm*) _args="--dest-cpu=arm" ;;
- aarch64*) _args="--dest-cpu=arm64" ;;
- ppc64*) _args="--dest-cpu=ppc64" ;;
- ppc*) _args="--dest-cpu=ppc" ;;
- mipsel*) _args="--dest-cpu=mipsel" ;;
- mips*) _args="--dest-cpu=mips" ;;
- i686*) _args="--dest-cpu=x86" ;;
- x86_64*) _args="--dest-cpu=x86_64" ;;
+ arm*) _args="--dest-cpu=arm" ;;
+ aarch64*) _args="--dest-cpu=arm64" ;;
+ ppc64*) _args="--dest-cpu=ppc64" ;;
+ ppc*) _args="--dest-cpu=ppc" ;;
+ mipsel*) _args="--dest-cpu=mipsel" ;;
+ mips*) _args="--dest-cpu=mips" ;;
+ i686*) _args="--dest-cpu=x86" ;;
+ x86_64*) _args="--dest-cpu=x86_64" ;;
*) msg_error "$pkgver: cannot be cross compiled for ${XBPS_TARGET_MACHINE}.\n" ;;
esac
- _args+=" --without-snapshot"
+ _args+=" --cross-compiling"
fi
# their pregenerated asm is for ELFv1...
case "$XBPS_TARGET_MACHINE" in
@@ -72,6 +83,12 @@ do_configure() {
$(vopt_if nghttp2 --shared-nghttp2) \
$(vopt_if cares --shared-cares) ${_args}
}
+
+post_configure() {
+ # Fix linking against llhttp
+ sed 's/-lhttp_parser/& -lllhttp/' -i out/*.target.mk
+}
+
do_build() {
if [ "$CROSS_BUILD" ]; then
make LD="$CXX" LDFLAGS+=-ldl ${makejobs} PORTABLE=1 V=1
@@ -79,8 +96,17 @@ do_build() {
make LD="$CXX" LDFLAGS+=-ldl ${makejobs} V=1
fi
}
+
do_install() {
make LD="$CXX" LDFLAGS+=-ldl DESTDIR="$DESTDIR" install
+ rm $DESTDIR/usr/include/node/openssl -rf
vlicense LICENSE
- rm -r $DESTDIR/usr/include
+}
+
+nodejs-lts-devel_package() {
+ short_desc+=" (development files)"
+ conflicts="nodejs-devel nodejs-lts-10-devel"
+ pkg_install() {
+ vmove usr/include
+ }
}
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (5 preceding siblings ...)
2019-11-05 17:49 ` [PR PATCH] [Updated] " voidlinux-github
@ 2019-11-05 17:49 ` voidlinux-github
2019-11-05 17:52 ` voidlinux-github
` (4 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-05 17:49 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 202 bytes --]
New comment by k4leg on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549936923
Comment:
Deleted files from `usr/include/node/openssl`. Conflicts added.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (6 preceding siblings ...)
2019-11-05 17:49 ` voidlinux-github
@ 2019-11-05 17:52 ` voidlinux-github
2019-11-05 21:25 ` voidlinux-github
` (3 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-05 17:52 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 207 bytes --]
New comment by k4leg on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-549936923
Comment:
- Deleted files from `usr/include/node/openssl`;
- Conflicts added.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (7 preceding siblings ...)
2019-11-05 17:52 ` voidlinux-github
@ 2019-11-05 21:25 ` voidlinux-github
2019-11-06 8:14 ` voidlinux-github
` (2 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-05 21:25 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 308 bytes --]
New comment by q66 on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-550027496
Comment:
yeah, I guess adding a new package for that should be ok - can you add it in this PR? should be mostly copying the nodejs-lts pre-update and renaming it to something else.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (8 preceding siblings ...)
2019-11-05 21:25 ` voidlinux-github
@ 2019-11-06 8:14 ` voidlinux-github
2019-11-06 10:08 ` voidlinux-github
2019-11-06 18:30 ` voidlinux-github
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-06 8:14 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 245 bytes --]
New comment by k4leg on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-550196252
Comment:
I'm sorry, I did not understand you. Can it be simpler? (I do not speak English. I use Google Translate.)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (9 preceding siblings ...)
2019-11-06 8:14 ` voidlinux-github
@ 2019-11-06 10:08 ` voidlinux-github
2019-11-06 18:30 ` voidlinux-github
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-06 10:08 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 193 bytes --]
New comment by Johnnynator on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-550239916
Comment:
@q66 He has a `nodejs-lts-10` package in #16150
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: nodejs-lts: update to 12.13.0. [ci skip]
2019-11-03 15:24 [PR PATCH] nodejs-lts: update to 12.13.0. [ci skip] voidlinux-github
` (10 preceding siblings ...)
2019-11-06 10:08 ` voidlinux-github
@ 2019-11-06 18:30 ` voidlinux-github
11 siblings, 0 replies; 13+ messages in thread
From: voidlinux-github @ 2019-11-06 18:30 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 162 bytes --]
New comment by q66 on void-packages repository
https://github.com/void-linux/void-packages/pull/16085#issuecomment-550441236
Comment:
i see, then it's all fine
^ permalink raw reply [flat|nested] 13+ messages in thread