mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-03-30 19:01:45 +02:00
163 lines
4.8 KiB
Plaintext
163 lines
4.8 KiB
Plaintext
# Contributor: lauren n. liberda <lauren@selfisekai.rocks>
|
|
# Maintainer: lauren n. liberda <lauren@selfisekai.rocks>
|
|
pkgname=rollup
|
|
pkgver=4.55.2
|
|
pkgrel=0
|
|
pkgdesc="The new cool ES module bundler"
|
|
url="https://rollupjs.org/"
|
|
arch="all"
|
|
license="MIT AND ISC AND 0BSD"
|
|
depends="nodejs"
|
|
makedepends="
|
|
cargo
|
|
esbuild
|
|
npm
|
|
"
|
|
# !check: todo
|
|
options="!check"
|
|
subpackages="$pkgname-doc"
|
|
source="
|
|
https://github.com/rollup/rollup/archive/v$pkgver/rollup-$pkgver.tar.gz
|
|
rollup.d.ts
|
|
stage1.patch.noauto
|
|
no-bootstrap.patch.noauto
|
|
stage2.patch.noauto
|
|
rust-non-nightly.patch.noauto
|
|
no-sourcemaps.patch.noauto
|
|
nativejs.patch.noauto
|
|
no-wasm.patch.noauto
|
|
no-mimalloc.patch.noauto
|
|
"
|
|
builddir="$srcdir"
|
|
|
|
case "$CARCH" in
|
|
# XXX:
|
|
s390x|*) _nowasm=1 ;;
|
|
*)
|
|
_nowasm=0
|
|
makedepends="
|
|
$makedepends
|
|
binaryen
|
|
wasm-bindgen
|
|
wasm-pack
|
|
"
|
|
;;
|
|
esac
|
|
|
|
case "$CARCH" in
|
|
aarch64) _target=linux-arm64-musl ;;
|
|
# armhf is "armv6" in napi.rs but "arm" in process.arch
|
|
armhf|armv7) _target=linux-arm-musleabihf ;;
|
|
loongarch64) _target=linux-loong64-musl ;;
|
|
ppc64le) _target=linux-ppc64-musl ;;
|
|
riscv64) _target=linux-riscv64-musl ;;
|
|
s390x) _target=linux-s390x-musl ;;
|
|
x86) _target=linux-i586-musl ;;
|
|
x86_64) _target=linux-x64-musl ;;
|
|
esac
|
|
|
|
prepare() {
|
|
mv "rollup-$pkgver" rollup-stage2
|
|
cp -r rollup-stage2 rollup-stage1
|
|
default_prepare
|
|
(
|
|
cd rollup-stage1
|
|
|
|
patch -p1 -i ../stage1.patch.noauto
|
|
patch -p1 -i ../no-bootstrap.patch.noauto
|
|
patch -p1 -i ../nativejs.patch.noauto
|
|
|
|
npm ci --ignore-scripts
|
|
)
|
|
(
|
|
cd rollup-stage2
|
|
|
|
patch -p1 -i ../stage2.patch.noauto
|
|
patch -p1 -i ../rust-non-nightly.patch.noauto
|
|
patch -p1 -i ../no-sourcemaps.patch.noauto
|
|
patch -p1 -i ../nativejs.patch.noauto
|
|
patch -p1 -i ../no-mimalloc.patch.noauto
|
|
if [ "$_nowasm" = "1" ]; then
|
|
patch -p1 -i ../no-wasm.patch.noauto
|
|
fi
|
|
|
|
npm ci --ignore-scripts
|
|
)
|
|
(
|
|
# doesn't matter which one
|
|
cd rollup-stage1/rust/
|
|
|
|
cargo fetch --target="$CTARGET"
|
|
)
|
|
}
|
|
|
|
build() {
|
|
(
|
|
cd rollup-stage2
|
|
./node_modules/.bin/napi build \
|
|
--cwd rust/bindings_napi \
|
|
--platform \
|
|
--dts native.d.ts \
|
|
--no-js \
|
|
--output-dir ../.. \
|
|
--package-json-path ../../package.json \
|
|
--release \
|
|
-- --frozen
|
|
if [ "$CARCH" = "armhf" ]; then
|
|
# can't tell apart armhf and armv7 in native.js since process.arch=="arm"
|
|
mv rollup.linux-armv6-musleabihf.node rollup.$_target.node
|
|
fi
|
|
cp rollup.$_target.node ../rollup-stage1/
|
|
|
|
if [ "$_nowasm" = "0" ]; then
|
|
unset RUSTFLAGS
|
|
wasm-pack build rust/bindings_wasm --out-dir ../../wasm --target web --no-pack --mode=no-install
|
|
fi
|
|
)
|
|
(
|
|
cd rollup-stage1
|
|
|
|
esbuild --bundle cli/cli.ts --outfile=rollup --platform=node --format=cjs
|
|
esbuild --bundle src/node-entry.ts --outfile=dist/es/rollup.js --platform=node --packages=external --format=esm
|
|
cp "$srcdir"/rollup.d.ts dist/rollup.d.ts
|
|
)
|
|
(
|
|
cd rollup-stage2
|
|
|
|
node ../rollup-stage1/rollup --config rollup.config.ts --configIsBuildNode --configPlugin typescript --forceExit
|
|
)
|
|
}
|
|
|
|
package() {
|
|
cd rollup-stage2
|
|
|
|
_rollup="$pkgdir"/usr/share/node_modules/rollup
|
|
|
|
install -Dm755 \
|
|
native.d.ts \
|
|
native.js \
|
|
package.json \
|
|
rollup.$_target.node \
|
|
-t "$_rollup"
|
|
|
|
cp -r dist "$_rollup"/dist
|
|
|
|
mkdir -p "$pkgdir"/usr/bin
|
|
ln -s ../share/node_modules/rollup/dist/bin/rollup "$pkgdir"/usr/bin/rollup
|
|
|
|
install -Dm644 LICENSE.md -t "$pkgdir"/usr/share/licenses/rollup/
|
|
}
|
|
|
|
sha512sums="
|
|
92a8906a0f9f9cde18eb4d89b17ceab2c99fb58e5d7ebf0c930cce2b564566a4a600f33beec97fb35e9519d9d671d1f2b0e1772f628b1350338f04f029f44a69 rollup-4.55.2.tar.gz
|
|
50cf77ae4457ae564f3d5cc705e2e8b6d379d088a02c04e9bcf207b5f4b206212d7b5faf4672e295a2d38f4ee84145d5a784f250cf8760eaf4a759b523d81a7d rollup.d.ts
|
|
4c2d08d52391efd7252c855bc24637d6f3b4ac47a28617146107084d21c68225ad43f32380cf4fa915446abdf1562be6cf4ab4bffa79939f9eb115325c9b458d stage1.patch.noauto
|
|
a4d774cee0dccd47d288e84edffb14342f25c037db0c9076915928eb0abd58ee23c36b4f98bcb1b954a0a45c12f33b30f8405302488a2e39015a5a6d60069476 no-bootstrap.patch.noauto
|
|
e4e51e2c246856cd4ae0e18b44d1869055f03116e466db49658db56fc562a8959cbdbeb21cfc952fd00a8c95e2eb66430db87fe2ae56164f17c5183a6a19a580 stage2.patch.noauto
|
|
fe7dfde0c97677708416e1b32e4de34fb576da7adc2f8278c2e0ba366018338e1e23c636a9a9526a8bf0dd18230176fc472534d050539fac1ad5b3ef77b65893 rust-non-nightly.patch.noauto
|
|
2fb663afdb19e6a2db1081c00044de348d586afe456faf564bf3965da03b7fd086c6e0958e71bb822ee5cf50a5d780194a185928d7a847361f9009be08fe3819 no-sourcemaps.patch.noauto
|
|
bc012bc3665b11f2950206318c548208be483b38a5d52289a09a800b54117a69a5017af043540632673227f519d53364a1088543872637706d24f228ec23ffd8 nativejs.patch.noauto
|
|
90da869e73eb116c5755c7a6da9af1d8c743be44821b14ced96c67eef41d85e17bc9d1b5c1dd411741f1b584530ea480b25613f4b11582f475bf8d76d48b146b no-wasm.patch.noauto
|
|
261c064bf9a6023a6f6c98b587c11473aeee19ac1d5690f62768d43691dc86e9bcc480ad6f0fca176d085d2085bd5607b1d694f360ec9538ffdcff3702ee9c23 no-mimalloc.patch.noauto
|
|
"
|