aports/testing/wasmtime/APKBUILD
2025-01-18 21:45:45 +00:00

80 lines
2.1 KiB
Text

# Contributor: Patrycja Rosa <alpine@ptrcnull.me>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=wasmtime
pkgver=28.0.1
pkgrel=0
pkgdesc="Fast and secure runtime for WebAssembly"
url="https://wasmtime.dev/"
# others unsupported
arch="aarch64 x86_64"
license="Apache-2.0"
depends_dev="libwasmtime=$pkgver-r$pkgrel"
makedepends="
cargo
cargo-auditable
chrpath
cmake
rust-wasm
samurai
zstd-dev
"
subpackages="libwasmtime-static libwasmtime $pkgname-dev"
source="https://github.com/bytecodealliance/wasmtime/releases/download/v$pkgver/wasmtime-v$pkgver-src.tar.gz
system-zstd.patch
"
builddir="$srcdir/wasmtime-v$pkgver-src"
# net: fetch dependencies
# check: thread 'main' panicked at src/cargo/ops/cargo_compile/mod.rs:933:14: packages downloaded: failed to download `windows-sys v0.52.0`
# (attempting to make an HTTP request, but --frozen was specified)
options="!check net"
prepare() {
default_prepare
git init -q
# can't patch deps with vendor dir
rm -fv .cargo/config.toml
rm -rf vendor
# Rust target triple.
local target=$(rustc -vV | sed -n 's/host: //p')
# Build against system-provided libs
mkdir -p .cargo
cat >> .cargo/config.toml <<-EOF
[target.$target]
zstd = { rustc-link-lib = ["zstd"] }
EOF
cargo fetch --target="$CTARGET" --locked
}
build() {
cargo auditable build --frozen --release
cargo auditable build --frozen --release -p wasmtime-c-api
cmake -G Ninja -B build-capi -S crates/c-api \
-DCMAKE_INSTALL_PREFIX=/usr
cmake --build build-capi
}
check() {
cargo test --frozen
}
package() {
install -Dm755 target/release/wasmtime -t "$pkgdir"/usr/bin/
# remove gigantic useless rpath to /usr/lib
chrpath -d target/release/libwasmtime.so
install -Dm644 target/release/libwasmtime.so -t "$pkgdir"/usr/lib/
cmake --install build-capi --prefix="$pkgdir"/usr
}
libwasmtime() {
amove usr/lib
}
sha512sums="
9b9aea5b941af7d3f99179b9bc8ccd4a09d4a01dfaede8cc3c6b6fd4ebf324d4c4cd2217c92819811ac45c2eb7c7d04bdc4f3cbfd83df66f0743a68e1e416aa5 wasmtime-v28.0.1-src.tar.gz
86f5254142cbe0adb6fd573169a89bbf40d60f5690944f8b29be4d89ee714a1d7745b8e7742326507f28dbf193e0a813dec0fa095c8da1d1215e0556b7ecb9c3 system-zstd.patch
"