blob: 68925afeb76db14e2ea3d525345ce917fe5a86f8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
# Maintainer: Anton Kudelin <kudelin at proton dot me>
_pyname=xgboost
pkgname=python-$_pyname
pkgver=2.1.3
pkgrel=1
pkgdesc="Gradient Boosting Library for Python"
arch=(x86_64 aarch64)
url="https://xgboost.ai"
license=(Apache-2.0)
depends=(
python-scikit-learn
python-pandas
python-matplotlib
python-pyarrow
python-graphviz
python-dask
python-hypothesis
python-distributed
)
makedepends=(
python-build
python-installer
python-wheel
python-hatchling
python-setuptools
cmake
ninja
git
)
checkdepends=(python-pytest)
optdepends=('apache-spark: Distributed XGBoost with PySpark')
source=($_pyname-$pkgver.tar.gz::https://github.com/dmlc/xgboost/archive/refs/tags/v$pkgver.tar.gz
git+https://github.com/dmlc/dmlc-core.git)
sha256sums=('ead4d588729a1dca39b29a07cc5b151a5af9d04bbe26eaa13bdbb05910ea2829'
'SKIP')
prepare() {
cd "$srcdir/$_pyname-$pkgver"
# Replacing the internal DMLC core with fresh one
rm -rf dmlc-core
ln -sf "$srcdir/dmlc-core" \
"$srcdir/$_pyname-$pkgver/dmlc-core"
}
build() {
cd "$srcdir"
cmake -B build -S $_pyname-$pkgver \
-D CMAKE_INSTALL_PREFIX=/usr \
-D Protobuf_PROTOC_EXECUTABLE=/usr/bin/protoc \
-D BUILD_DEPRECATED_CLI=ON \
-D PLUGIN_FEDERATED=ON \
-D USE_CXX14_IF_AVAILABLE=ON \
-D USE_OPENMP=ON \
-D USE_PARQUET=ON \
-G Ninja \
-W no-dev
cmake --build build
cd $_pyname-$pkgver/python-package
python \
-m build \
--wheel \
--no-isolation \
--skip-dependency-check
}
check() {
cd $_pyname-$pkgver
python -m venv --system-site-packages test-env
source test-env/bin/activate
python -m installer python-package/dist/*.whl
python -m pytest -v tests/python -k 'not test_rabit_ops_ipv6'
deactivate
}
package() {
cd "$srcdir/$_pyname-$pkgver/python-package"
python \
-m installer dist/*.whl \
--destdir="$pkgdir" \
--compile-bytecode=2
}
|