PKGBUILDs/extra/python-awkward/PKGBUILD

84 lines
3 KiB
Bash
Raw Normal View History

2022-02-08 01:40:38 +00:00
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - remove cuda make/optdepends
2022-11-23 02:13:20 +00:00
# - move python-pyaml to makedepends
2022-03-24 00:47:04 +00:00
# - add python-setuptools to makedepends
2022-02-08 01:40:38 +00:00
_pkgname=awkward
2022-11-23 02:13:20 +00:00
pkgbase="python-${_pkgname}"
pkgname=("${pkgbase}" "${pkgbase}-docs")
pkgver=1.10.2
2023-05-03 19:04:43 +00:00
pkgrel=2
2022-02-08 01:40:38 +00:00
pkgdesc="Manipulate jagged, chunky, and/or bitmasked arrays as easily as Numpy"
2022-09-05 22:18:21 +00:00
url="https://github.com/scikit-hep/awkward"
2022-02-08 01:40:38 +00:00
license=('BSD')
arch=('x86_64')
2022-11-23 02:13:20 +00:00
depends=('python-numpy' 'python-packaging' 'python-importlib_resources')
optdepends=('python-pyarrow: pyArrow connector'
'python-numexpr: numexpr connector'
'python-pandas: pandas connector')
makedepends=('cmake' 'git' 'python-build' 'python-installer' 'python-wheel' 'doxygen' 'python-sphinx' 'python-sphinx_rtd_theme' 'python-pyaml' 'python-setuptools')
2022-03-24 00:47:04 +00:00
checkdepends=('python-pytest' 'python-pytest-cov' 'python-hist' 'python-pandas' 'python-numexpr' 'python-pyarrow' 'python-scikit-hep-testdata' 'python-vector'
'root' 'pybind11' 'rapidjson')
2022-02-08 01:40:38 +00:00
source=(
2022-09-05 22:18:21 +00:00
"${pkgname}::git+https://github.com/scikit-hep/${_pkgname}#tag=v${pkgver}"
2022-02-08 01:40:38 +00:00
"${pkgname}-dlpack::git+https://github.com/dmlc/dlpack.git"
"${pkgname}-rapidjson::git+https://github.com/Tencent/rapidjson.git"
"${pkgname}-pybind11::git+https://github.com/pybind/pybind11.git"
)
sha512sums=('SKIP'
'SKIP'
'SKIP'
'SKIP')
get_pyver () {
python -c 'import sys; print(str(sys.version_info[0]) + "." + str(sys.version_info[1]))'
}
prepare() {
2022-11-23 02:13:20 +00:00
cd "${srcdir}/${pkgbase}"
2022-02-08 01:40:38 +00:00
git submodule init
git config submodule."pybind11".url "${srcdir}/${pkgname}"-pybind11
git config submodule."rapidjson".url "${srcdir}/${pkgname}"-rapidjson
git config submodule."dlpack".url "${srcdir}/${pkgname}"-dlpack
2022-11-23 02:13:20 +00:00
git -c protocol.file.allow=always submodule update --init --recursive
2022-03-24 00:47:04 +00:00
sed '/cmake/d' -i pyproject.toml
sed \
-e 's/setuptools.extern.packaging.version.parse/packaging.version.parse/' \
-e 's/import setuptools/import packaging/' \
-i src/awkward/_v2/_util.py tests/test_0080-flatpandas-multiindex-rows-and-columns.py
2022-02-08 01:40:38 +00:00
}
build() {
2022-11-23 02:13:20 +00:00
cd "${srcdir}/${pkgbase}"
2022-03-24 00:47:04 +00:00
python -m build --wheel --no-isolation
2022-02-08 01:40:38 +00:00
}
check() {
2022-11-23 02:13:20 +00:00
cd "${srcdir}/${pkgbase}"
2022-09-05 22:18:21 +00:00
local python_version=$(python -c 'import sys; print("".join(map(str, sys.version_info[:2])))')
PYTHONPATH="$PWD/build/lib.linux-$CARCH-cpython-${python_version}" pytest || echo 'some tests fail'
2022-02-08 01:40:38 +00:00
}
2022-11-23 02:13:20 +00:00
package_python-awkward() {
optdepends+=("${pkgbase}-docs: docs")
cd "${srcdir}/${pkgbase}"
python -m installer --destdir="${pkgdir}" dist/*.whl
install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/"${pkgname}"/LICENSE
}
package_python-awkward-docs() {
cd "${srcdir}/${pkgbase}"
install -D LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -D README.md "${pkgdir}/usr/share/${pkgbase}/README.md"
install -d "${pkgdir}/usr/share/doc/${pkgbase}"
PYTHONPATH="${PWD}/build/lib" sphinx-build "${PWD}/docs-sphinx" "${pkgdir}/usr/share/doc/${pkgbase}"
2022-02-08 01:40:38 +00:00
}