diff options
Diffstat (limited to 'dev-python/multidict')
| -rw-r--r-- | dev-python/multidict/metadata.xml | 6 | ||||
| -rw-r--r-- | dev-python/multidict/multidict-6.0.4-r1.ebuild (renamed from dev-python/multidict/multidict-6.0.4.ebuild) | 16 |
2 files changed, 22 insertions, 0 deletions
diff --git a/dev-python/multidict/metadata.xml b/dev-python/multidict/metadata.xml index 7216aa3854f1..a8f3b05befde 100644 --- a/dev-python/multidict/metadata.xml +++ b/dev-python/multidict/metadata.xml @@ -10,5 +10,11 @@ <name>Python</name> </maintainer> + <use> + <flag name="native-extensions"> + Compile native C extensions (speedups, instead of using Python + fallback code). + </flag> + </use> <origin>gentoo-staging</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/multidict/multidict-6.0.4.ebuild b/dev-python/multidict/multidict-6.0.4-r1.ebuild index 5098f9b33a75..2c61d6281834 100644 --- a/dev-python/multidict/multidict-6.0.4.ebuild +++ b/dev-python/multidict/multidict-6.0.4-r1.ebuild @@ -22,6 +22,7 @@ SRC_URI=" LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" +IUSE="+native-extensions" distutils_enable_sphinx docs --no-autodoc distutils_enable_tests pytest @@ -32,3 +33,18 @@ python_prepare_all() { distutils-r1_python_prepare_all } + +python_compile() { + # the C extension segfaults on py3.12 + # https://github.com/aio-libs/multidict/issues/868 + if ! use native-extensions || [[ ${EPYTHON} == python3.12 ]]; then + local -x MULTIDICT_NO_EXTENSIONS=1 + fi + + distutils-r1_python_compile +} + +python_test() { + rm -rf multidict || die + epytest +} |
