aboutsummaryrefslogtreecommitdiffstats
path: root/community/maturin/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/maturin/APKBUILD')
-rw-r--r--community/maturin/APKBUILD106
1 files changed, 83 insertions, 23 deletions
diff --git a/community/maturin/APKBUILD b/community/maturin/APKBUILD
index b483dc272aa..92fd2d446c1 100644
--- a/community/maturin/APKBUILD
+++ b/community/maturin/APKBUILD
@@ -1,39 +1,99 @@
# Contributor: omni <omni+alpine@hack.org>
-# Maintainer: omni <omni+alpine@hack.org>
+# Maintainer: messense <messense@icloud.com>
pkgname=maturin
-pkgver=0.10.3
+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 x86 x86_64" # limited by rust, ppc64le by ring crate
-# TODO: sort arm* wheel issues
-license="Apache-2.0 MIT"
-makedepends="cargo dbus-dev"
-checkdepends="py3-virtualenv py3-pyo py3-cffi libffi-dev python3-dev"
-subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/PyO3/maturin/archive/v$pkgver.tar.gz
- disable-no_extensions_module-test.patch
- target_triple.patch"
+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-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() {
- cargo build --release --locked --all-features
+ 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
+ ./target/release/maturin completions zsh > $pkgname.zsh
}
check() {
- # enable interpreter "python" hack
- mkdir "$builddir"/pythonbindir
- ln -s /usr/bin/python3 "$builddir"/pythonbindir/python
- export PATH="$PATH:$builddir/pythonbindir"
+ export OPENSSL_NO_VENDOR=1
- cargo test --release --locked
+ 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/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="ebffecadb8a8f1c8cafa0e2673b6ec8d29085afdda493e364549cdd64c81d1f4e0095f391ddc5ab38ca3dca83e8ee33f99d146e05a87087423eebfbfe5364ebc maturin-0.10.3.tar.gz
-e2f5b07ed63a498fd46ef2f098c6b3235d44a3736768a4bf622078188795f4f8db8fafdaef5f9c953efc8b52e4f1af286e8390e13a2c4884e515b4011f49a76d disable-no_extensions_module-test.patch
-497599447e01f263e2dae1bdd1d9f60815173a6f9d0843444425b742a2f1aaba982180067303fd1e4255f88bc6344e532b50f2d7462d1868a20ea1c68ee6313c target_triple.patch"
+sha512sums="
+92cca4b398f9ecf767ed7da27599cc328570e5ef18b39c0f1104438f2977395a02737c8a5c62d994490e248000cceaffbeba11cbf94e9f8756538851af8e6884 maturin-1.5.1.tar.gz
+"