149 lines
2.7 KiB
Bash
149 lines
2.7 KiB
Bash
name='maturin'
|
||
version='1.9.5'
|
||
release='1'
|
||
desc='Build and publish crates with pyo3, rust-cpython and cffi bindings'
|
||
desc_ru='Сборка и публикация крейтов с привязками pyo3, rust-cpython и cffi'
|
||
homepage='https://github.com/PyO3/maturin'
|
||
maintainer='Evgeny Khramov <xpamych@yandex.ru>'
|
||
maintainer_ru='Евгений Храмов <xpamych@yandex.ru>'
|
||
architectures=('amd64')
|
||
license=('Apache-2.0 OR MIT')
|
||
provides=('maturin')
|
||
conflicts=('maturin')
|
||
|
||
deps=(
|
||
'bzip2'
|
||
'libgcc'
|
||
'glibc'
|
||
'openssl'
|
||
'rust'
|
||
)
|
||
|
||
deps_alt=(
|
||
'libbzip2'
|
||
'libgcc'
|
||
'glibc-core'
|
||
'openssl'
|
||
'rust'
|
||
)
|
||
deps_arch=(
|
||
'bzip2'
|
||
'gcc-libs'
|
||
'glibc'
|
||
'openssl'
|
||
'rust'
|
||
)
|
||
deps_debian=(
|
||
'libbz2-1.0'
|
||
'libgcc-s1'
|
||
'libc6'
|
||
'libssl3'
|
||
'rustc'
|
||
)
|
||
deps_fedora=("${deps[@]}")
|
||
deps_redos=("${deps[@]}")
|
||
deps_rhel=("${deps[@]}")
|
||
deps_rosa=("${deps[@]}")
|
||
|
||
build_deps=(
|
||
'bzip2'
|
||
'libgcc'
|
||
'git'
|
||
'glibc'
|
||
'python3-build'
|
||
'python3-installer'
|
||
'python3-setuptools'
|
||
'python3-setuptools-rust'
|
||
'python3-wheel'
|
||
'rust'
|
||
'cargo'
|
||
'openssl-devel'
|
||
)
|
||
|
||
build_deps_alt=(
|
||
'libbzip2'
|
||
'libgcc'
|
||
'git'
|
||
'glibc-core'
|
||
'python3-module-build'
|
||
'python3-module-installer'
|
||
'python3-module-setuptools'
|
||
'python3-module-setuptools-rust'
|
||
'python3-module-wheel'
|
||
'rust'
|
||
'cargo'
|
||
'openssl-devel'
|
||
)
|
||
build_deps_arch=(
|
||
'bzip2'
|
||
'gcc-libs'
|
||
'git'
|
||
'glibc'
|
||
'python-build'
|
||
'python-installer'
|
||
'python-setuptools'
|
||
'python-setuptools-rust'
|
||
'python-wheel'
|
||
'rust'
|
||
'cargo'
|
||
'openssl'
|
||
)
|
||
build_deps_debian=(
|
||
'libbz2-dev'
|
||
'libgcc-s1'
|
||
'git'
|
||
'libc6'
|
||
'python3-build'
|
||
'python3-installer'
|
||
'python3-setuptools'
|
||
'python3-setuptools-rust'
|
||
'python3-wheel'
|
||
'rustc'
|
||
'cargo'
|
||
'libssl-dev'
|
||
)
|
||
build_deps_fedora=("${build_deps[@]}")
|
||
build_deps_redos=("${build_deps[@]}")
|
||
build_deps_rhel=("${build_deps[@]}")
|
||
build_deps_rosa=("${build_deps[@]}")
|
||
options=(!lto)
|
||
sources=("https://github.com/PyO3/maturin/archive/v$version/$name-v$version.tar.gz")
|
||
checksums=('d2fa1522a0bd104b97ac14558ff74381ddfa128437784a5dadee670eec0e9b57')
|
||
|
||
_pick() {
|
||
local p="$1" f d; shift
|
||
for f; do
|
||
d="$srcdir/$p/${f#$pkgdir/}"
|
||
mkdir -p "$(dirname "$d")"
|
||
mv "$f" "$d"
|
||
rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
|
||
done
|
||
}
|
||
|
||
prepare() {
|
||
cd $name-$version
|
||
cargo fetch --locked --target "x86_64-unknown-linux-gnu"
|
||
}
|
||
|
||
build() {
|
||
cd $name-$version
|
||
MATURIN_SETUP_ARGS="--all-features" python -m build --wheel --no-isolation
|
||
}
|
||
|
||
package() {
|
||
cd $name-$version
|
||
python -m installer --destdir="$pkgdir" dist/*.whl
|
||
install -vDm 644 {Changelog,README}.md -t "$pkgdir/usr/share/doc/$pkgname/"
|
||
install-license license-mit ./maturin/LICENSE
|
||
|
||
(
|
||
cd "$pkgdir"
|
||
_pick python-name usr/lib
|
||
)
|
||
}
|
||
files() {
|
||
files-find-bin
|
||
files-find-lib
|
||
files-find-share
|
||
}
|