17 |
17 |
https://github.com/numpy/numpy/
|
18 |
18 |
https://pypi.org/project/numpy/
|
19 |
19 |
"
|
20 |
|
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-1.25.2-patches.tar.xz"
|
21 |
20 |
|
22 |
21 |
LICENSE="BSD"
|
23 |
22 |
SLOT="0"
|
24 |
|
IUSE="lapack"
|
25 |
|
if [[ ${PV} != *_rc* ]] ; then
|
26 |
|
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
|
|
23 |
# +lapack because the internal fallbacks are pretty slow. Building without blas
|
|
24 |
# is barely supported anyway, see bug #914358.
|
|
25 |
IUSE="+lapack"
|
|
26 |
if [[ ${PV} != *_[rab]* ]] ; then
|
|
27 |
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
27 |
28 |
fi
|
28 |
29 |
|
29 |
30 |
RDEPEND="
|
... | ... | |
35 |
36 |
BDEPEND="
|
36 |
37 |
${RDEPEND}
|
37 |
38 |
>=dev-util/meson-1.1.0
|
38 |
|
>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
|
|
39 |
>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
|
39 |
40 |
lapack? (
|
40 |
41 |
virtual/pkgconfig
|
41 |
42 |
)
|
... | ... | |
50 |
51 |
)
|
51 |
52 |
"
|
52 |
53 |
|
53 |
|
PATCHES=(
|
54 |
|
"${WORKDIR}"/${PN}-1.25.2-patches
|
55 |
|
)
|
56 |
|
|
57 |
54 |
distutils_enable_tests pytest
|
58 |
55 |
|
59 |
56 |
python_prepare_all() {
|
60 |
57 |
append-flags -fno-strict-aliasing
|
61 |
58 |
|
62 |
59 |
distutils-r1_python_prepare_all
|
63 |
|
|
64 |
|
# TODO: Please drop once 1.25.2-meson-pyproject.toml.patch is gone
|
65 |
|
sed -i -e "s:version = \"2.0.0.dev0\":version = \"${PV}\":" pyproject.toml || die
|
66 |
60 |
}
|
67 |
61 |
|
68 |
62 |
python_configure_all() {
|
69 |
63 |
DISTUTILS_ARGS=(
|
|
64 |
-Dallow-noblas=$(usex !lapack true false)
|
70 |
65 |
-Dblas=$(usev lapack cblas)
|
71 |
66 |
-Dlapack=$(usev lapack lapack)
|
|
67 |
# TODO: cpu-* options
|
72 |
68 |
)
|
73 |
69 |
}
|
74 |
70 |
|
... | ... | |
85 |
81 |
# Runs the whole test suite recursively, that's just crazy
|
86 |
82 |
core/tests/test_mem_policy.py::test_new_policy
|
87 |
83 |
|
88 |
|
# XXX: I've no idea why this ends up being needed in deselect and not ignore
|
89 |
84 |
typing/tests/test_typing.py
|
90 |
85 |
# Uses huge amount of memory
|
91 |
86 |
core/tests/test_mem_overlap.py
|
92 |
|
)
|
93 |
|
|
94 |
|
if [[ ${EPYTHON} == python3.12 ]]; then
|
95 |
|
EPYTEST_DESELECT+=(
|
96 |
|
typing/tests/test_isfile.py::TestIsFile::test_isfile
|
97 |
|
tests/test_public_api.py::test_all_modules_are_expected_2
|
98 |
|
tests/test_public_api.py::test_api_importable
|
99 |
|
|
100 |
|
random/tests/test_extending.py
|
101 |
|
tests/test_ctypeslib.py
|
102 |
|
)
|
103 |
87 |
|
104 |
|
EPYTEST_IGNORE+=(
|
105 |
|
random/tests/test_extending.py
|
106 |
|
tests/test_ctypeslib.py
|
107 |
|
)
|
108 |
|
fi
|
109 |
|
|
110 |
|
if [[ ${EPYTHON} == pypy3 ]]; then
|
111 |
|
EPYTEST_DESELECT+=(
|
112 |
|
# TODO: crashed
|
113 |
|
lib/tests/test_histograms.py::TestHistogram::test_big_arrays
|
114 |
|
)
|
115 |
|
fi
|
|
88 |
# TODO: crashes
|
|
89 |
lib/tests/test_histograms.py::TestHistogram::test_big_arrays
|
|
90 |
)
|
116 |
91 |
|
117 |
92 |
if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
|
118 |
93 |
# Degenerate case of arm32 chroot on arm64, bug #774108
|
... | ... | |
161 |
136 |
core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
|
162 |
137 |
'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
|
163 |
138 |
'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
|
164 |
|
lib/tests/test_histograms.py::TestHistogram::test_big_arrays
|
165 |
139 |
)
|
166 |
140 |
;;
|
167 |
141 |
*)
|