diff --git a/maturin/alr.sh b/maturin/alr.sh new file mode 100644 index 0000000..028c852 --- /dev/null +++ b/maturin/alr.sh @@ -0,0 +1,67 @@ +name='maturin' +version='1.7.4' +release='1' +desc='Build and publish crates with pyo3, rust-cpython and cffi bindings.' +homepage='https://github.com/PyO3/maturin' +maintainer_ru='Евгений Храмов ' +architectures=('amd64') +license=('Apache-2.0 OR MIT') +provides=('maturin') +conflicts=('maturin') + +depends=( + 'bzip2' + 'libgcc' + 'glibc' + 'openssl' + 'rust' +) +build_deps=( + 'bzip2' + 'libgcc' + 'git' + 'glibc' + 'python3-build' + 'python3-installer' + 'python3-setuptools' + 'python3-setuptools-rust' + 'python3-wheel' + 'rust' + 'openssl-devel' +) + +options=(!lto) +sources=("https://github.com/PyO3/maturin/archive/v$version/$name-v$version.tar.gz") +checksums=('SKIP') + +_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 + ) +} diff --git a/python3-maturin/alr.sh b/python3-maturin/alr.sh new file mode 100644 index 0000000..5bd19a9 --- /dev/null +++ b/python3-maturin/alr.sh @@ -0,0 +1,59 @@ +name='python3-maturin' +version='1.7.4' +release='1' +desc='Build and publish crates with pyo3, rust-cpython and cffi bindings - Python bindings.' +homepage='https://github.com/PyO3/maturin' +maintainer_ru='Евгений Храмов ' +architectures=('amd64') +license=('Apache-2.0 OR MIT') +provides=('python3-maturin') +conflicts=('python3-maturin') + +deps=( + 'maturin' + 'python' +) +build_deps=( + 'bzip2' + 'libgcc' + 'git' + 'glibc' + 'python3-build' + 'python3-installer' + 'python3-setuptools' + 'python3-setuptools-rust' + 'python3-wheel' + 'rust' +) + +options=(!lto) +sources=("https://github.com/PyO3/maturin/archive/v$version/maturin-v$version.tar.gz") +checksums=('SKIP') + + +_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 maturin-$version + cargo fetch --locked --target "x86_64-unknown-linux-gnu" +} + +build() { + cd maturin-$version + MATURIN_SETUP_ARGS="--all-features" python -m build --wheel --no-isolation +} + +package() { + cd maturin-$version + mv -v maturin/* "$pkgdir" + + install-license ./license-mit ./python3-maturin/LICENSE +} diff --git a/python3-orjson/alr.sh b/python3-orjson/alr.sh new file mode 100644 index 0000000..114852a --- /dev/null +++ b/python3-orjson/alr.sh @@ -0,0 +1,51 @@ +_name='orjson' +name='python3-orjson' +version='3.10.7' +release=1 +desc="Fast, correct Python JSON library supporting dataclasses and datetimes" +homepage="https://github.com/ijl/orjson" +architectures=('amd64') +license=( + 'Apache-2.0' + 'MIT' +) +deps=( + 'gcc-libs' + 'glibc' + 'python' +) +build_deps=( + 'maturin' + 'python3-maturin' + 'python3-installer' + 'rust' + 'python3-arrow' + 'python3-pendulum' + 'python3-psutil' + 'python3-pytest' + 'python3-pytz' + 'python3-xxhash' +) +sources=(https://github.com/ijl/orjson/archive/version/$_name-version.tar.gz) +checksums=('SKIP') + +build() { + cd $_name-version + maturin build --release --strip +} + +check() { + local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])") + + cd $_name-version + python -m installer --destdir=test_dir target/wheels/*.whl + export PYTHONPATH="test_dir/$_site_packages:$PYTHONPATH" + pytest -vv +} + +package() { + cd $_name-version + python -m installer --destdir="$pkgdir" target/wheels/*.whl + install -vDm 644 {CHANGELOG,README}.md -t "$pkgdir/usr/share/doc/$name/" + install -vDm 644 LICENSE-* -t "$pkgdir/usr/share/licenses/$name/" +}