commit:     453d46869ba0b852113fd5a207b98e46d2d9b8b5
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Jul  3 03:53:59 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Jul  3 03:53:59 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=453d4686

dev-python/scipy: Add a patch for Cython-3

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/scipy/files/scipy-1.11.1-cython-3.patch | 45 ++++++++++++++++++++++
 dev-python/scipy/scipy-1.11.1.ebuild               |  8 ++--
 2 files changed, 50 insertions(+), 3 deletions(-)

diff --git a/dev-python/scipy/files/scipy-1.11.1-cython-3.patch 
b/dev-python/scipy/files/scipy-1.11.1-cython-3.patch
new file mode 100644
index 000000000000..4b402b5c469d
--- /dev/null
+++ b/dev-python/scipy/files/scipy-1.11.1-cython-3.patch
@@ -0,0 +1,45 @@
+From d0dd5c957876300c33db303042dfa4888b1696f4 Mon Sep 17 00:00:00 2001
+From: Matus Valo <[email protected]>
+Date: Sun, 2 Jul 2023 23:12:51 +0200
+Subject: [PATCH 1/2] Add cython_optimize.pxd to _cython_tree
+
+---
+ scipy/optimize/meson.build | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/scipy/optimize/meson.build b/scipy/optimize/meson.build
+index 26458b05cd7..7c6097acf55 100644
+--- a/scipy/optimize/meson.build
++++ b/scipy/optimize/meson.build
+@@ -206,6 +206,10 @@ endif
+ 
+ _dummy_init_optimize = fs.copyfile('__init__.py')
+ 
++_cython_tree = [
++  fs.copyfile('cython_optimize.pxd'),
++]
++
+ opt_gen = generator(cython,
+   arguments : cython_args,
+   output : '@[email protected]',
+
+From b8621185fa61d6b3610e2cb62eae3b81434952c9 Mon Sep 17 00:00:00 2001
+From: Matus Valo <[email protected]>
+Date: Sun, 2 Jul 2023 23:28:41 +0200
+Subject: [PATCH 2/2] Use absolute import in cython_optimize.pxd
+
+---
+ scipy/optimize/cython_optimize.pxd | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scipy/optimize/cython_optimize.pxd 
b/scipy/optimize/cython_optimize.pxd
+index d5a0bdd758e..d35f8da68b3 100644
+--- a/scipy/optimize/cython_optimize.pxd
++++ b/scipy/optimize/cython_optimize.pxd
+@@ -7,5 +7,5 @@
+ # support. Changing it causes an ABI forward-compatibility break
+ # (gh-11793), so we currently leave it as is (no further cimport
+ # statements should be used in this file).
+-from .cython_optimize._zeros cimport (
++from scipy.optimize.cython_optimize._zeros cimport (
+     brentq, brenth, ridder, bisect, zeros_full_output)

diff --git a/dev-python/scipy/scipy-1.11.1.ebuild 
b/dev-python/scipy/scipy-1.11.1.ebuild
index 426e9b0827c1..df08d271714e 100644
--- a/dev-python/scipy/scipy-1.11.1.ebuild
+++ b/dev-python/scipy/scipy-1.11.1.ebuild
@@ -58,11 +58,8 @@ RDEPEND="
        ${DEPEND}
        dev-python/pillow[${PYTHON_USEDEP}]
 "
-# Cython-3 fails if scipy is already installed
-# https://github.com/scipy/scipy/issues/18792
 BDEPEND="
        dev-lang/swig
-       <dev-python/cython-3[${PYTHON_USEDEP}]
        >=dev-python/cython-0.29.35[${PYTHON_USEDEP}]
        >=dev-python/meson-python-0.12.1[${PYTHON_USEDEP}]
        >=dev-python/pybind11-2.10.4[${PYTHON_USEDEP}]
@@ -81,6 +78,11 @@ BDEPEND="
 
 distutils_enable_tests pytest
 
+PATCHES=(
+       # https://github.com/scipy/scipy/pull/18810
+       "${FILESDIR}/${P}-cython-3.patch"
+)
+
 src_unpack() {
        default
 

Reply via email to