void-packages/srcpkgs/wasi-libc/template
2025-02-14 18:55:21 +01:00

36 lines
1.3 KiB
Bash

# Template file for 'wasi-libc'
pkgname=wasi-libc
version=25
revision=2
_llvmver=19
hostmakedepends="clang${_llvmver} llvm${_llvmver}"
short_desc="WASI libc implementation for WebAssembly"
maintainer="Duncaen <duncaen@voidlinux.org>"
license="MIT, custom:Apache-2.0-with-llvm-exception"
homepage="https://github.com/WebAssembly/wasi-libc"
distfiles="https://github.com/WebAssembly/wasi-libc/archive/refs/tags/wasi-sdk-${version}.tar.gz"
checksum=42e6eb03fd097f8a0f76c0db3c6364b71c97bc11aedc3cd73266fad587a1ea11
nostrip=yes
post_patch() {
# avoid building again at install step
vsed -e 's/\(install:\) finish/\1/' -i Makefile
}
do_build() {
# https://bugzilla.mozilla.org/show_bug.cgi?id=1773200#c4
make ${makejobs} AR=llvm-ar CC=clang NM=llvm-nm BULK_MEMORY_SOURCES=
make ${makejobs} AR=llvm-ar CC=clang NM=llvm-nm THREAD_MODEL=posix
# new wasm targets needed by rust
make ${makejobs} AR=llvm-ar CC=clang NM=llvm-nm TARGET_TRIPLE=wasm32-wasip1
make ${makejobs} AR=llvm-ar CC=clang NM=llvm-nm TARGET_TRIPLE=wasm32-wasip1-threads THREAD_MODEL=posix
make ${makejobs} AR=llvm-ar CC=clang NM=llvm-nm TARGET_TRIPLE=wasm32-wasip2 WASI_SNAPSHOT=p2
}
do_install() {
make CC=clang INSTALL_DIR="${DESTDIR}/usr/share/wasi-sysroot" install
vlicense LICENSE-MIT
vlicense LICENSE-APACHE-LLVM
}