diff options
Diffstat (limited to 'community/maturin/APKBUILD')
-rw-r--r-- | community/maturin/APKBUILD | 96 |
1 files changed, 71 insertions, 25 deletions
diff --git a/community/maturin/APKBUILD b/community/maturin/APKBUILD index a707c89b8a3..92fd2d446c1 100644 --- a/community/maturin/APKBUILD +++ b/community/maturin/APKBUILD @@ -1,27 +1,68 @@ # Contributor: omni <omni+alpine@hack.org> # Maintainer: messense <messense@icloud.com> pkgname=maturin -pkgver=0.12.6 +pkgver=1.5.1 pkgrel=0 pkgdesc="Build and publish crates with pyo3, rust-cpython and cffi bindings" url="https://github.com/PyO3/maturin" -arch="aarch64 armv7 armhf x86 x86_64 ppc64le" # limited by rust -license="Apache-2.0 MIT" -makedepends="cargo dbus-dev" -checkdepends="py3-virtualenv py3-pyo py3-cffi libffi-dev python3-dev" +arch="all" +license="Apache-2.0 OR MIT" +makedepends=" + bzip2-dev + cargo + dbus-dev + openssl-dev + py3-gpep517 + py3-setuptools + py3-setuptools-rust + py3-wheel + " +checkdepends=" + libffi-dev + patchelf + py3-cffi + py3-pyo + py3-virtualenv + python3-dev + " subpackages=" - $pkgname-doc $pkgname-bash-completion $pkgname-fish-completion $pkgname-zsh-completion + py3-$pkgname:py3:noarch " source="$pkgname-$pkgver.tar.gz::https://github.com/PyO3/maturin/archive/v$pkgver.tar.gz" +options="net" + +_features="--features=full,native-tls" + +case "$CARCH" in +aarch64) + # zipfile.BadZipFile: Bad CRC-32 for file '_cffi_backend.cpython-312-aarch64-linux-musl.so' + options="$options !check" + ;; +s390x) + # s390x fails to build password-storage, so don't append it + ;; +*) + _features="$_features,password-storage" + ;; +esac + +prepare() { + default_prepare + + cargo fetch --target="$CTARGET" --locked +} build() { - case "$CARCH" in - ppc64le | s390x) cargo build --release --locked --no-default-features --features "log,human-panic" ;; - *) cargo build --release --locked --all-features ;; - esac + export OPENSSL_NO_VENDOR=1 + + export MATURIN_SETUP_ARGS="--no-default-features $_features" + + gpep517 build-wheel \ + --wheel-dir .dist \ + --output-fd 3 3>&1 >&2 ./target/release/maturin completions bash > $pkgname.bash ./target/release/maturin completions fish > $pkgname.fish @@ -29,25 +70,30 @@ build() { } check() { - # enable interpreter "python" hack - mkdir "$builddir"/pythonbindir - ln -s /usr/bin/python3 "$builddir"/pythonbindir/python - export PATH="$PATH:$builddir/pythonbindir" - - case "$CARCH" in - ppc64le | s390x) cargo test --release --locked \ - --no-default-features --features "log,human-panic" ;; - *) cargo test --release --locked --all-features ;; - esac + export OPENSSL_NO_VENDOR=1 + + cargo test \ + --frozen \ + --no-default-features $_features \ + -- --skip git_sdist_generator } package() { - install -Dm0755 target/release/$pkgname -t "$pkgdir"/usr/bin - install -Dm0644 license-apache "$pkgdir"/usr/share/licenses/$pkgname/license-apache - install -Dm0644 license-mit "$pkgdir"/usr/share/licenses/$pkgname/license-mit install -Dm644 $pkgname.bash "$pkgdir"/usr/share/bash-completion/completions/$pkgname - install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/completions/$pkgname.fish + install -Dm644 $pkgname.fish "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish install -Dm644 $pkgname.zsh "$pkgdir"/usr/share/zsh/site-functions/_$pkgname + + python3 -m installer -d "$pkgdir" \ + .dist/maturin*.whl +} + +py3() { + pkgdesc="$pkgdesc (python module)" + depends="$pkgname=$pkgver-r$pkgrel" + + amove usr/lib/python3* } -sha512sums="ebb1810567147a6732f6ecf513b2227bc4023c8e524a5bce966da8e96224a6583da8122a09f69667daa4248c5e5ec138c31e499bb321e3f1b0570aebda8ad87a maturin-0.12.6.tar.gz" +sha512sums=" +92cca4b398f9ecf767ed7da27599cc328570e5ef18b39c0f1104438f2977395a02737c8a5c62d994490e248000cceaffbeba11cbf94e9f8756538851af8e6884 maturin-1.5.1.tar.gz +" |