summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJingbei Li2024-03-31 02:16:44 +0800
committerJingbei Li2024-03-31 02:16:44 +0800
commit71bec34c2cdec6227004b16267e16a6dc425855f (patch)
tree47c115318908c14459295da45c94b6b6a4e56a3f
downloadaur-71bec34c2cdec6227004b16267e16a6dc425855f.tar.gz
initial commit
-rw-r--r--.SRCINFO27
-rw-r--r--PKGBUILD67
2 files changed, 94 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..86132a4c67db
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,27 @@
+pkgbase = nodejs-shared
+ pkgdesc = Evented I/O for V8 javascript
+ pkgver = 21.7.1
+ pkgrel = 1
+ url = https://nodejs.org/
+ arch = x86_64
+ license = MIT
+ makedepends = git
+ makedepends = python
+ makedepends = procps-ng
+ depends = icu
+ depends = libuv
+ depends = libnghttp2
+ depends = libnghttp3
+ depends = libngtcp2
+ depends = openssl
+ depends = zlib
+ depends = brotli
+ depends = c-ares
+ optdepends = npm: nodejs package manager
+ provides = nodejs
+ conflicts = nodejs
+ options = !lto
+ source = node-21.7.1.zip::https://github.com/nodejs/node/archive/84c7e6fad4adbc972e0fecf537d6c6a3accf6b9e.zip
+ sha512sums = 82699400af0ee082c6ff24560e3acfd99dd9e28f1701ad1ad1a41d8a925462b63cffa6a30b282e742c2ccc3a32fc13064f6d783feb5ed1282a95905532978c5a
+
+pkgname = nodejs-shared
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..ff1f8dd3b64a
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,67 @@
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Thomas Dziedzic < gostrc at gmail >
+# Contributor: James Campos <james.r.campos@gmail.com>
+# Contributor: BlackEagle < ike DOT devolder AT gmail DOT com >
+# Contributor: Dongsheng Cai <dongsheng at moodle dot com>
+# Contributor: Masutu Subric <masutu.arch at googlemail dot com>
+# Contributor: TIanyi Cui <tianyicui@gmail.com>
+
+pkgname=nodejs-shared
+pkgver=21.7.1
+_commit=84c7e6fad4adbc972e0fecf537d6c6a3accf6b9e
+pkgrel=1
+pkgdesc='Evented I/O for V8 javascript'
+arch=('x86_64')
+url='https://nodejs.org/'
+license=('MIT')
+options=(!lto)
+depends=('icu' 'libuv' 'libnghttp2' 'libnghttp3' 'libngtcp2' 'openssl' 'zlib' 'brotli' 'c-ares') # 'http-parser' 'v8')
+makedepends=('git' 'python' 'procps-ng')
+optdepends=('npm: nodejs package manager')
+source=("node-${pkgver}.zip::https://github.com/nodejs/node/archive/${_commit}.zip")
+sha512sums=('82699400af0ee082c6ff24560e3acfd99dd9e28f1701ad1ad1a41d8a925462b63cffa6a30b282e742c2ccc3a32fc13064f6d783feb5ed1282a95905532978c5a')
+provides=('nodejs')
+conflicts=('nodejs')
+
+build() {
+ cd node-${_commit}
+
+ # /usr/lib/libnode.so uses malloc_usable_size, which is incompatible with fortification level 3
+ export CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
+ export CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
+
+ ./configure \
+ --prefix=/usr \
+ --without-npm \
+ --with-intl=system-icu \
+ --shared \
+ --shared-libuv \
+ --shared-nghttp2 \
+ --shared-nghttp3 \
+ --shared-ngtcp2 \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-brotli \
+ --shared-cares
+ # --shared-v8
+ # --shared-http-parser
+
+ make
+}
+
+check() {
+ cd node-${_commit}
+ make test || :
+}
+
+package() {
+ cd node-${_commit}
+ make DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/nodejs/
+
+ cd "$pkgdir"/usr/lib
+ ln -s libnode.so.* libnode.so
+}
+
+# vim:set ts=2 sw=2 et: