summaryrefslogtreecommitdiff
path: root/dev-python/threadpoolctl
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/threadpoolctl')
-rw-r--r--dev-python/threadpoolctl/Manifest2
-rw-r--r--dev-python/threadpoolctl/threadpoolctl-3.6.0.ebuild65
2 files changed, 67 insertions, 0 deletions
diff --git a/dev-python/threadpoolctl/Manifest b/dev-python/threadpoolctl/Manifest
index e6899f0774cd..7bbbf6cce63d 100644
--- a/dev-python/threadpoolctl/Manifest
+++ b/dev-python/threadpoolctl/Manifest
@@ -1,3 +1,5 @@
DIST threadpoolctl-3.5.0.gh.tar.gz 37417 BLAKE2B 56b175afb96ce824286f42d0384c158823460b15f66c56b9b904c99e258629ed892906a16f15c3626908c293d25879cc0ca114d0578b1daff3610c2e9b38a3ed SHA512 6b24a6b3df3104b4222df5a20a8c7e321753dfa9ab0df872345a715d5f9ced2a577fe0d730dc4fd382e0ecfdb91a244eb28ba0b831d5db5af98f246f8f56228d
+DIST threadpoolctl-3.6.0.gh.tar.gz 37892 BLAKE2B 3b89180bbfdbb5aa027a5f828745ba1bd881533e6c2f5ff44fecf920618db4111fa9ef1b219e929485a327e54fe144f80cb9b78a4012d509dea7151f0892e5f8 SHA512 5c55f81bbff127cd7cdd62f390ed5a386c29c7d2806aa98a67b99b54fde0d0360ac78ce004125561486b7f5076c9085ea8dd52779aea1b9bc65b25cf166925e1
EBUILD threadpoolctl-3.5.0.ebuild 1939 BLAKE2B 689869b03ee7330b52896bce96211f0d20040ec83a3401ea911e1bf096df633b6cb952244925a22d74446dd9e6d0d91a3490b9574b10ce1256083ba210c81872 SHA512 52991ef84cd7eede9af59d5600b33bd1b29aaaa36cfe53b8c935abac0bffb02ffc69c47db4ea23d27691bdcc0875be3b6c12e18ddf68898853f56392ce3b798d
+EBUILD threadpoolctl-3.6.0.ebuild 1943 BLAKE2B f55b6dea517596d2882a8570e103ed30993fa21397ca0dfb3641531e5dd1e1be87661778326e8e2637c77a889f7effba523fed8f8f5e501e86aedc5d32c17a64 SHA512 44e81ef1dce4628003cc897e329beba3fe129f7630ca7061f5fab8f5d3a5b8b4fdb05dfb5012cc67cd6350e8b3d402b9898685a88766a97fd3c5a38b23527de4
MISC metadata.xml 489 BLAKE2B eba7a68832688f4c6cca1f30e188bae378c82347d87d7a0186fe3821dd04b75fdda2a7826785c3a59eda7362d1119d183be239b06c90ce14096e5a87459d2a29 SHA512 e14a5317dcfb8506a277d358ec227d276cf148e0293fc56b14751804a89fa20134b5be752fcc8beaffd12e246722d34120449a8f1ea0900e2918e42889c54dd8
diff --git a/dev-python/threadpoolctl/threadpoolctl-3.6.0.ebuild b/dev-python/threadpoolctl/threadpoolctl-3.6.0.ebuild
new file mode 100644
index 000000000000..409bd8778cf6
--- /dev/null
+++ b/dev-python/threadpoolctl/threadpoolctl-3.6.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 toolchain-funcs
+
+DESCRIPTION="Limit the number of threads used in native libs that have their own threadpool"
+HOMEPAGE="
+ https://github.com/joblib/threadpoolctl/
+ https://pypi.org/project/threadpoolctl/
+"
+SRC_URI="
+ https://github.com/joblib/threadpoolctl/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+
+BDEPEND="
+ test? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Asserts against a hardcoded list of CPUs. Either we skip it
+ # or file bugs about missing architectures until upstream realizes
+ # how bad idea that were.
+ tests/test_threadpoolctl.py::test_architecture
+ # This test fails if the Python executable (or any library that it
+ # links to) uses OpenMP. This can particularly be the case with
+ # CPython 3.12 that links to app-crypt/libb2.
+ # https://github.com/joblib/threadpoolctl/issues/146
+ tests/test_threadpoolctl.py::test_command_line_empty
+ )
+
+ # see continuous_integration/build_test_ext.sh
+ if [[ ! -f tests/_pyMylib/my_threaded_lib.so ]]; then
+ pushd tests/_pyMylib >/dev/null || die
+ $(tc-getCC) ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -fPIC -shared \
+ -o my_threaded_lib.so my_threaded_lib.c || die
+ popd >/dev/null || die
+ fi
+
+ pushd tests/_openmp_test_helper >/dev/null || die
+ "${EPYTHON}" setup_inner.py build_ext -i || die
+ "${EPYTHON}" setup_outer.py build_ext -i || die
+ "${EPYTHON}" setup_nested_prange_blas.py build_ext -i || die
+ popd >/dev/null || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}