mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-01-21 16:41:52 +01:00
89 lines
2.7 KiB
Plaintext
89 lines
2.7 KiB
Plaintext
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
|
|
# Maintainer: Jose-Luis Rivas <ghostbar@riseup.net>
|
|
pkgname=nodejs-current
|
|
# The current stable version, i.e. non-LTS.
|
|
pkgver=8.5.0
|
|
pkgrel=0
|
|
pkgdesc="JavaScript runtime built on V8 engine - current stable version"
|
|
url="http://nodejs.org/"
|
|
arch="all"
|
|
license="MIT"
|
|
depends="ca-certificates"
|
|
depends_dev="libuv"
|
|
# gold is needed for mksnapshot
|
|
makedepends="$depends_dev python2 openssl-dev zlib-dev libuv-dev linux-headers
|
|
paxmark binutils-gold http-parser-dev ca-certificates c-ares-dev"
|
|
subpackages="$pkgname-dev $pkgname-doc $pkgname-npm::noarch"
|
|
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
|
|
ppc-fix-musl-mcontext.patch"
|
|
builddir="$srcdir/node-v$pkgver"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# Remove bundled dependencies that we're not using.
|
|
rm -rf deps/http_parser deps/openssl deps/uv deps/zlib
|
|
}
|
|
|
|
build() {
|
|
cd "$builddir"
|
|
|
|
./configure --prefix=/usr \
|
|
--shared-zlib \
|
|
--shared-libuv \
|
|
--shared-openssl \
|
|
--shared-http-parser \
|
|
--shared-cares \
|
|
--openssl-use-def-ca-store
|
|
|
|
# we need run mksnapshot at build time so paxmark it early.
|
|
make -C out mksnapshot BUILDTYPE=Release
|
|
paxmark -m out/Release/mksnapshot
|
|
make
|
|
|
|
# paxmark so JIT works
|
|
paxmark -m out/Release/node
|
|
}
|
|
|
|
# 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() {
|
|
cd "$builddir"
|
|
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
# It's strange, but it really needs to be paxmarked again...
|
|
paxmark -m "$pkgdir"/usr/bin/node
|
|
|
|
cp -pr "$pkgdir"/usr/lib/node_modules/npm/man "$pkgdir"/usr/share
|
|
local d; for d in doc html man; do
|
|
rm -r "$pkgdir"/usr/lib/node_modules/npm/$d
|
|
done
|
|
}
|
|
|
|
npm() {
|
|
pkgdesc="A package manager for JavaScript"
|
|
depends="$pkgname"
|
|
provides="nodejs-npm"
|
|
replaces="nodejs-npm $pkgname" # $pkgname for backward compatibility
|
|
|
|
mkdir -p "$subpkgdir"/usr/bin
|
|
mv "$pkgdir"/usr/bin/npm "$subpkgdir"/usr/bin/
|
|
|
|
mkdir -p "$subpkgdir"/usr/lib/node_modules
|
|
mv "$pkgdir"/usr/lib/node_modules/npm "$subpkgdir"/usr/lib/node_modules/
|
|
}
|
|
|
|
sha512sums="60032c8676393b7a00bfe18b0ba2a0450c1f85aa468d08b29cef87faef41c8c1f5970260656a26970c6b7f1523424adeb69106fd7b03d0b3a6a0264299156f2c node-v8.5.0.tar.gz
|
|
ba95f21b1e80717ef63941854e7ed412f64a91da068c0dbf0d6d9697333ee266c9f4cd7bf1a01111eeb28aa66adefd8a58cfb3e82debb84b43e35e9dc914dd36 dont-run-gyp-files-for-bundled-deps.patch
|
|
fba595afa968810a705c0c5794329e888e2ff78b797861b80aa6f021c27770ea716cda544962cbf0abf4ba152eeee7869b58f1b042ed9b3f543c63f527c569a2 ppc-fix-musl-mcontext.patch"
|