void-packages/srcpkgs/python3-adblock/template

47 lines
1.5 KiB
Bash

# Template file for 'python3-adblock'
pkgname=python3-adblock
version=0.4.2
revision=1
wrksrc="${pkgname/python3/python}-${version}"
build_style=python3-pep517
build_helper="rust"
hostmakedepends="maturin pkg-config cargo libressl-devel"
makedepends="libressl-devel python3-devel"
depends="python3"
checkdepends="python3-pytest"
short_desc="Brave's adblock library in Python"
maintainer="Andrew J. Hesford <ajh@sideband.org>"
license="Apache-2.0, MIT"
homepage="https://github.com/ArniDagur/python-adblock"
distfiles="${homepage}/archive/${version}.tar.gz"
checksum=06de6074e6cfe889fc0383cc929a5a2306570251c14e51abbfcedd328b83e0e9
case "$XBPS_TARGET_MACHINE" in
i686*) broken="compiler throws SIGABRT on the psl crate" ;;
esac
if [ "$CROSS_BUILD" ]; then
makedepends+=" rust-std"
export PYO3_CROSS_LIB_DIR="${XBPS_CROSS_BASE}/usr/lib"
export PYO3_CROSS_INCLUDE_DIR="${XBPS_CROSS_BASE}/usr/include"
fi
do_build() {
maturin build -o . --release --target "${RUST_TARGET}" --manylinux off
# Drop platform specifiers from the wheel; pip will refuse to install,
# e.g., an armv7l wheel on an aarch64 system even if the masterdir is
# armv7l. The wheel is correct; no need for name compatibility checks.
mv adblock-${version}-*.whl adblock-${version}-py3-none-any.whl
}
pre_check() {
# Tests require the compiled extension
cp target/${RUST_TARGET}/release/libadblock.so adblock/adblock.so
}
post_install() {
vlicense LICENSE-MIT
chmod 755 ${DESTDIR}/${py3_sitelib}/adblock/*.so
}