From: nathanblair <nathanblair@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] New Package: nodejs-static-v14.0.0
Date: Sun, 26 Apr 2020 03:39:20 +0200 [thread overview]
Message-ID: <20200426013920.r-7Q5XJeIH_FidgsnXvLXc80RFOmSOeOFu2wNIhJAW0@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-21341@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 1755 bytes --]
There is an updated pull request by nathanblair against master on the void-packages repository
https://github.com/nathanblair/void-packages master
https://github.com/void-linux/void-packages/pull/21341
New Package: nodejs-static-v14.0.0
Added statically-compiled nodejs (v14.0.0)
This is mostly a copy-job from current `nodejs`, with shared
dependencies removed and the `--fully-static` configure flag set on
nodejs
This was done to circumvent some of the blocking dependency upgrades preventing `node` being upgraded past v13.2.0 (namely `icu`).
This could be a decent starting point for the `nodejs-lts`/`nodejs-lts-14`, or just as a decent `static`ally compiled nodejs alternative.
- Still includes `npm`
- Likely will only be available on `musl` as the libc from it can be statically linked, unless I'm misunderstanding something
All other nodejs configure flags are left as default for v14.0.0
Can't build on arm* - I'm using a 64-bit machine
arm64 isn't working either - getting this error when executing
`./xbps-src -a aarch64 pkg nodejs-static`
`ERROR: cross-aarch64-linux-gnu-0.33_2: cannot be built, it's currently broken;`
NOTE: This is my first contribution to the package repo. I apologize in advance if I missed anything in the CONTRIBUTING form about not submitting `static` binaries or missed a licensing issue somewhere. I was able to install it to my machine and ran a quick `node` testing suite I had handy; it did execute beautifully (`node` v14.0.0+ adds support for optional chaining and null coalescing so I was able to remove the `--harmony` flag I had to have set previously with `node v13.2.0`).
[ci skip]
A patch file from https://github.com/void-linux/void-packages/pull/21341.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-master-21341.patch --]
[-- Type: text/x-diff, Size: 7072 bytes --]
From abb3f6d50b50f711d98bb1699a6b1c08b599b1fe Mon Sep 17 00:00:00 2001
From: Nathan Blair <engineer.nblair@gmail.com>
Date: Sat, 25 Apr 2020 16:23:29 -0400
Subject: [PATCH 1/2] New Package: nodejs-static-v14.0.0
Added statically-compiled nodejs (v14.0.0)
This is mostly a copy-job from current `nodejs`, with shared
dependencies removed and the `--fully-static` configure flag set on
nodejs
All other nodejs configure flags are left as default for v14.0.0
Can't build on arm* - I'm using a 64-bit machine
arm64 isn't working either - getting this error when executing
`./xbps-src -a aarch64 pkg nodejs-static`:
`ERROR: cross-aarch64-linux-gnu-0.33_2: cannot be built, it's currently broken;`
- Still includes npm
- Likely will only be available on musl as the libc from it can be statically linked, unless I'm misunderstanding something
[ci skip]
---
srcpkgs/nodejs-static-devel | 1 +
srcpkgs/nodejs-static/patches/ppc32.patch | 20 ++++++
srcpkgs/nodejs-static/template | 88 +++++++++++++++++++++++
srcpkgs/nodejs-static/update | 2 +
4 files changed, 111 insertions(+)
create mode 120000 srcpkgs/nodejs-static-devel
create mode 100644 srcpkgs/nodejs-static/patches/ppc32.patch
create mode 100644 srcpkgs/nodejs-static/template
create mode 100644 srcpkgs/nodejs-static/update
diff --git a/srcpkgs/nodejs-static-devel b/srcpkgs/nodejs-static-devel
new file mode 120000
index 00000000000..ffb7180fabd
--- /dev/null
+++ b/srcpkgs/nodejs-static-devel
@@ -0,0 +1 @@
+nodejs-static
\ No newline at end of file
diff --git a/srcpkgs/nodejs-static/patches/ppc32.patch b/srcpkgs/nodejs-static/patches/ppc32.patch
new file mode 100644
index 00000000000..502d471429f
--- /dev/null
+++ b/srcpkgs/nodejs-static/patches/ppc32.patch
@@ -0,0 +1,20 @@
+--- deps/v8/src/libsampler/sampler.cc.orig
++++ deps/v8/src/libsampler/sampler.cc
+@@ -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
+ #if V8_TARGET_ARCH_32_BIT
diff --git a/srcpkgs/nodejs-static/template b/srcpkgs/nodejs-static/template
new file mode 100644
index 00000000000..702a60916bb
--- /dev/null
+++ b/srcpkgs/nodejs-static/template
@@ -0,0 +1,88 @@
+# Template file for 'nodejs-static'
+pkgname=nodejs-static
+version=14.0.0
+revision=1
+wrksrc="node-v14.0.0"
+# Need these for host v8 for torque, see https://github.com/nodejs/node/pull/21079
+hostmakedepends="python3"
+makedepends="python3-devel which"
+short_desc="Evented I/O for V8 javascript"
+maintainer="Nathan Blair <engineer.nblair@gmail.com>"
+license="MIT"
+homepage="https://nodejs.org/"
+distfiles="${homepage}/dist/v${version}/node-v${version}.tar.gz"
+checksum=5ee2a8d3036a1652ec93bbd8b5812e0ae41e0450af729b14df4a27afc6f17cf8
+python_version=3 #unverified
+
+replaces="iojs>=0"
+conflicts="nodejs-lts nodejs-lts-10 nodejs-lts-12 nodejs"
+provides="nodejs-runtime-0_1"
+
+if [ "$XBPS_WORDSIZE" -ne "$XBPS_TARGET_WORDSIZE" ]; then
+ nocross="host and target must have the same pointer size"
+fi
+
+case "$XBPS_TARGET_MACHINE" in
+ ppc64*) ;;
+ ppc*) broken="Node does not support 32-bit ppc" ;;
+esac
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+ makedepends+=" libatomic-devel"
+fi
+if [ "$XBPS_NO_ATOMIC8" ]; then
+ hostmakedepends+=" libatomic-devel"
+fi
+
+do_configure() {
+ local _args
+
+ 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" ;;
+ *) msg_error "$pkgver: cannot be cross compiled for ${XBPS_TARGET_MACHINE}.\n" ;;
+ esac
+ # this is necessary - for example, normally compiling from ppc64le
+ # to ppc64 or from glibc to musl is considered non-cross-compiling
+ # by the build system, because it's technically the same architecture
+ #
+ # that results in the toolset built for target only, and attempting
+ # to execute it within the build system fails
+ _args+=" --cross-compiling"
+ fi
+ # their pregenerated asm is for ELFv1...
+ case "$XBPS_TARGET_MACHINE" in
+ ppc64|ppc64-musl) _args+=" --openssl-no-asm" ;;
+ esac
+ ./configure --prefix=/usr --fully-static ${_args}
+}
+
+do_build() {
+ if [ "$CROSS_BUILD" ]; then
+ make LD="$CXX" LDFLAGS+=-ldl -j4 PORTABLE=1 V=1
+ else
+ make LD="$CXX" LDFLAGS+=-ldl -j4 V=1
+ fi
+}
+
+do_install() {
+ make LD="$CXX" LDFLAGS+=-ldl DESTDIR="$DESTDIR" install
+ rm $DESTDIR/usr/include/node/openssl -rf
+ vlicense LICENSE
+}
+
+nodejs-static-devel_package() {
+ short_desc+=" (development files)"
+ conflicts="nodejs-devel nodejs-lts-devel nodejs-lts-10-devel nodejs-lts-12-devel"
+ pkg_install() {
+ vmove usr/include
+ }
+}
diff --git a/srcpkgs/nodejs-static/update b/srcpkgs/nodejs-static/update
new file mode 100644
index 00000000000..ccd29b0ebd3
--- /dev/null
+++ b/srcpkgs/nodejs-static/update
@@ -0,0 +1,2 @@
+site=https://nodejs.org/dist
+pattern='v\K[\d.]+(?=\/)'
From ef971126c6cfc7f90133e2428b82a688bf25653d Mon Sep 17 00:00:00 2001
From: Nathan Blair <engineer.nblair@gmail.com>
Date: Sat, 25 Apr 2020 21:33:37 -0400
Subject: [PATCH 2/2] Updated wofi
---
srcpkgs/wofi/template | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/srcpkgs/wofi/template b/srcpkgs/wofi/template
index be21893f271..cc67f79426f 100644
--- a/srcpkgs/wofi/template
+++ b/srcpkgs/wofi/template
@@ -1,14 +1,14 @@
# Template file for 'wofi'
pkgname=wofi
-version=1.1.2
+version=0
revision=1
-wrksrc="${pkgname}-v${version}"
+wrksrc="wofi-tip"
build_style=meson
hostmakedepends="pkg-config"
makedepends="wayland-devel gtk+3-devel"
short_desc="Program launcher for Wayland compositors"
-maintainer="Zach Dykstra <dykstra.zachary@gmail.com>"
+maintainer="Nathan Blair <engineer.nblair@gmail.com>"
license="GPL-3.0-or-later"
homepage="https://hg.sr.ht/~scoopta/wofi"
-distfiles="https://hg.sr.ht/~scoopta/wofi/archive/v${version}.tar.gz"
-checksum=@8c19138049e9c27c243316d810767674d090a850b41edc2af2badf111b77c2b0
+distfiles="https://hg.sr.ht/~scoopta/wofi/archive/tip.tar.gz"
+checksum=@c8a61418bce6f54c6fb4e64f04f1df8831324ddee98c1fb2fa0a617fffa1b5d2
next prev parent reply other threads:[~2020-04-26 1:39 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-25 20:49 [PR PATCH] " nathanblair
2020-04-25 20:50 ` [PR PATCH] [Updated] " nathanblair
2020-04-25 20:59 ` nathanblair
2020-04-25 22:12 ` nathanblair
2020-04-26 1:39 ` nathanblair [this message]
2020-04-26 17:25 ` [PR PATCH] [Updated] " nathanblair
2020-04-26 17:25 ` nathanblair
2020-04-26 18:05 ` Piraty
2020-04-28 1:17 ` nathanblair
2020-04-28 2:44 ` q66
2020-05-03 2:22 ` nathanblair
2020-05-07 3:36 ` nathanblair
2020-05-07 3:37 ` nathanblair
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200426013920.r-7Q5XJeIH_FidgsnXvLXc80RFOmSOeOFu2wNIhJAW0@z \
--to=nathanblair@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).