blob: 1eae1aa2f6c1f1b4618f9d2c0a0c235da8e80a19 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jose-Luis Rivas <ghostbar@riseup.net>
#
# secfixes:
# 13.11.0-r0:
# - CVE-2019-15604
# - CVE-2019-15605
# - CVE-2019-15606
# 11.10.1-r0:
# - CVE-2019-5737
# 11.3.0-r0:
# - CVE-2018-12121
# - CVE-2018-12122
# - CVE-2018-12123
# - CVE-2018-0735
# - CVE-2018-0734
# 9.10.0-r0:
# - CVE-2018-7158
# - CVE-2018-7159
# - CVE-2018-7160
# 9.2.1-r0:
# - CVE-2017-15896
# - CVE-2017-15897
#
pkgname=nodejs-current
# The current stable version, i.e. non-LTS.
pkgver=14.1.0
pkgrel=0
pkgdesc="JavaScript runtime built on V8 engine - current stable version"
url="https://nodejs.org/"
arch="all !mips64 !mips64el"
license="MIT"
depends="ca-certificates"
depends_dev="libuv"
makedepends="
brotli-dev
c-ares-dev
libuv-dev
linux-headers
nghttp2-dev
openssl-dev
python3
zlib-dev
"
subpackages="$pkgname-dev $pkgname-doc"
provides="nodejs"
replaces="nodejs nodejs-lts" # nodejs-lts for backward compatibility
source="https://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz
dont-run-gyp-files-for-bundled-deps.patch
link-with-libatomic-on-mips32.patch
elf.patch
unbundle-uv.patch
"
builddir="$srcdir/node-v$pkgver"
prepare() {
default_prepare
# Remove bundled dependencies that we're not using.
rm -rf deps/brotli deps/cares deps/openssl deps/uv deps/zlib
}
build() {
# Add defines recommended in libuv readme.
export CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
export CXXFLAGS="$CXXFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
case "$CARCH" in
mips*) _carchflags="--with-mips-arch-variant=r1 --with-mips-float-abi=soft";;
esac
./configure --prefix=/usr \
$_carchflags \
--shared-brotli \
--shared-zlib \
--shared-libuv \
--shared-openssl \
--shared-cares \
--shared-nghttp2 \
--without-npm \
--openssl-use-def-ca-store
make BUILDTYPE=Release
}
# TODO Run provided test suite.
check() {
cd "$builddir"/out/Release
./node -e 'console.log("Hello, world!")'
./node -e "require('assert').equal(process.versions.node, '$pkgver')"
}
package() {
make DESTDIR="$pkgdir" install
}
sha512sums="e6483f0a9edf62a9925b7d803a18131ec1e29067479d6764bbc111df75e1e4de463342f79efc2ce285f7657360ecabe951054c196896835285fa3244648601a4 node-v14.1.0.tar.gz
940cc90aaa77a531cde13e31918a9978f9478936c3851038bcdf2869e64de03ce84dec5a46519469a90a8ba2853226825452d23d9347752abdbe04e944c083eb dont-run-gyp-files-for-bundled-deps.patch
fd7722bc6bd257e3bc684db2b12edf35fcdff1093af2b7afed3210f527d103aca1843cfc4524ea43d329c9efc8c8e9e3045590d7550b99abdef3ba84b3786984 link-with-libatomic-on-mips32.patch
ace818285ff0b868f17be64db7c7b77b314ba370fda6bac640d56bf18322a54fa015206a3e1adefa1d78ef66b597eebf10c28d6549005cd7e58f60a37c38b741 elf.patch
a4e1e7bd4f32ee30ebd319ac0c2fc751166f8fdd27f491709003dfebda51cbece9412630f0b98f0b85253ccc4f066c82997ad68abb9b87dc0b47c24d09a0643a unbundle-uv.patch"
|