public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2015-12-16  8:49 Justin Lecher
  0 siblings, 0 replies; 26+ messages in thread
From: Justin Lecher @ 2015-12-16  8:49 UTC (permalink / raw
  To: gentoo-commits

commit:     e5ce90a04e79f6413604e96e4803cb95ada7c859
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 16 08:48:45 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Wed Dec 16 08:49:12 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5ce90a0

dev-python/numpy: Fix linking to cblas and update docs

Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=567938

Package-Manager: portage-2.2.26
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 dev-python/numpy/Manifest                          |  3 +
 .../files/numpy-1.10.2-no-hardcode-blas.patch      | 64 ++++++++++++++++++++++
 .../numpy/files/numpy-1.9.2-no-hardcode-blas.patch | 37 +++++++++++--
 ...{numpy-1.10.2.ebuild => numpy-1.10.2-r1.ebuild} | 10 +---
 4 files changed, 103 insertions(+), 11 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 2ec2993..b3a1d88 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -3,9 +3,12 @@ DIST numpy-1.10.2.tar.gz 4055005 SHA256 23a3befdf955db4d616f8bb77b324680a80a323e
 DIST numpy-1.8.2.tar.gz 3792998 SHA256 6d487fc724780d66746bde264ea71f5cd77d3a39e52ee2b073dcaed63bc669db SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c WHIRLPOOL 0d3a05b1e3c0a1ceb0a7b4818406dbb45506e5f25bc2727d4ff44cc0a0520e6556b3c68ae24dbca37ba9d67ae2defbb3ff9c906d4c2635b29ed44452d70e8311
 DIST numpy-1.9.2.tar.gz 3986067 SHA256 325e5f2b0b434ecb6e6882c7e1034cc6cdde3eeeea87dbc482575199a6aeef2a SHA512 70470ebb9afef5dfd0c83ceb7a9d5f1b7a072b1a9b54b04f04f5ed50fbaedd5b4906bd500472268d478f94df9e749a88698b1ff30f2d80258e7f3fec040617d9 WHIRLPOOL 59f5dc52cb95c7ce80fec3a7feac6cfda1d149596bf6d95c18bd8314e31a8df494b2b470c4cc3d8c296c9fc11c718d70d5b9b5344337175ca75496504c0fd201
 DIST numpy-1.9.3.tar.gz 3984430 SHA256 c3b74d3b9da4ceb11f66abd21e117da8cf584b63a0efbd01a9b7e91b693fbbd6 SHA512 32531cd8d1480a50812454ef8e3b68c0f84b2a4bc5de0df1457070db7f6fd94cdb50e6479a85fa4d1dc569a10d28f6864d5069fcf2a32fa20fa8803476a3df8c WHIRLPOOL a0235594e793625d5e3cef57956f4710587158885f39d7d1267c9845b12fb1d39fb9987ec095720c2d285c7c726383a15471f3629b739b77186470e2c40ba093
+DIST numpy-html-1.10.1.zip 9663942 SHA256 4af48eb5abf2551f01d85aea7e9a99a30096777f02937dc185b16bb72a110366 SHA512 9d1f3619b801c88604a0495290da4ae8cfb4800257d549214363c554c1dc09a736425d594ed88f492afee6ae7c68fe5c166b9b3a8f24637ea41d67fd23b9d9f9 WHIRLPOOL d6c93e31e31c832fb21f117d03719e0375ee3d27fb6f7975bfcd12469df4a2ed0a25a16bd09a0e2113407446efc220e5bff534f7cd76a715c3d7df26c02f07a1
 DIST numpy-html-1.8.1.zip 9703711 SHA256 f7fc3af4dba7b40deabd1828a86ea2e2eb5b9fa17c7ebddd73ee4cb8625105b1 SHA512 1d52c657931f4eebb5325159444aedd969b201f5098855058f1ef632dc8677372d632291154ebc3db9869cdb8abf7eb820eade1a9edba2d6be1ae918cb38c071 WHIRLPOOL e502b1416bad4b189773ba98035dfbeed0dc251d8f9b76e336450f14e8425caf92d55d2b1c2cc5ef9eb2d33eb2bf7cd55e720c1b265e45539b195fea1d7f046c
 DIST numpy-html-1.9.1.zip 9839137 SHA256 12a24937f8273fcf79090c99b6c4154a0ecfc378386498cf2afe727ea171407c SHA512 647a6be9f93995aca14185e283a2b412678c6e8080fe4f14e7cc9ee63c28eebb64dea6bbe28f30ef6850a5565dd1e06928fd660ac762e9a91454d309eff96ed4 WHIRLPOOL 68c367fd0416d27b1cf43edf7ca48bc8845c02856bbbacdf63c88fe8bbffd5dd86fb3e5cdea8f669dd78adf7bcc4d184953048783802df323126c1b22baf8e92
+DIST numpy-ref-1.10.1.pdf 5382006 SHA256 72ae03348d0375ff2f18056efd04e815cc1d27b738d0685c80f5204a496bc279 SHA512 25085eb7cb80343abffe04ee01ea93603427913ba4443fbfdaa1ef1ad07a8642c47259d0bb1cb91a9059f786c03395bba76f608c6f0a2fd26d1afec4847d885c WHIRLPOOL d904d9b2824bfb08a0eeffeb37f7d646d003c39230d950d387e2ddc8e475a117b8305a0ce3dc479be72f010b1a868f22ddfde17e6c4cd7c56630bbdf09afb90e
 DIST numpy-ref-1.8.1.pdf 5348248 SHA256 973851e66d0d5ab095f444f8aeb966fefe2dd544226395abbb110fc1b60f351d SHA512 340dd8f47430f24fea81bb3a8674e1a58f4290a9d1c5d64bac96d50b31a94a770e78381e42daf8b0a6a90cefe5cafe86b0c89f7cc7635a042a7e85eb74bdbdf5 WHIRLPOOL be13f88bb68944186c564a5c3789daededade240a26e7fb61c980a090249ab3a5b1f40805e97214168fbf0c099fb6b12d981ff313bace572f130023b29e7aaa7
 DIST numpy-ref-1.9.1.pdf 5318122 SHA256 3c8e5881a3460e1cc9da95fe2167044e8f832ab8e980c3606d1f353e7ac6dcee SHA512 5171bb22588117a53e0eac355520581f7817a7e7a099ae83bb73f2ac8248a60e139ae9719dc543b44f25ccf8319c9f149fec1bf5aa55d943fad06a8e6da0d9ba WHIRLPOOL 5c99daf3ae2e6bf235aed287682f1b96d5b6afc9d290f544a8baab892b39c9f6dd9f649abe3e103cc90c990d87e4d653d8157d774a8bd35eccc9cc6ac7a870f9
+DIST numpy-user-1.10.1.pdf 406114 SHA256 5180a5a1333365e474aabba9d6edd25276e79179fd708bb3989d95dc4e76215f SHA512 998bce3777944e7b366c619e968ac4b6cc4351cd2819d6ecba7f422e20b6cd4d7332a8dede4036cd12e85b24c4c3d973bd9ef2d407610369c2591fce990fa8f4 WHIRLPOOL 4b53256663840738d288d38c4151e01ecfb515ebd4f69bb4330f4c5589642b3392a0a300f3def53df6bee8746f127a3af0d284601f288f4c4292df8b6de39f71
 DIST numpy-user-1.8.1.pdf 408305 SHA256 be827f2d92ef86c3af7f59c623017e7bc23ee95c64f88e8c9871f3ad1f99b262 SHA512 9e646e89e7e67834fa596e43082b43842d1c59287d22fd8d20c9f0a1d3d56a518a08cc2c036de4972ad0d6d9d3c2f56e2210f76e7244d3f7547b5204d84d3c7c WHIRLPOOL bf4105093b208b35b1914e842821b8d289b46eb28f1fda110643f5970bbfafe801e9d148c5f535b43eba9a23e09d333e3aecd9a55b33e64827883d253477d19a
 DIST numpy-user-1.9.1.pdf 418111 SHA256 e1f6baed0b73f3d4b106c88924c083f9a519e860c1beb718830bf1aee1892232 SHA512 724302468a8e93daf70d379bb1ee7369953e297c40ea260f080b7aca3c9c81e619a81705bdfb2ea214da5b5325ec2b48e953eceeaa1d60c07593b00c35989f45 WHIRLPOOL f93ed20c5da7b379e3afcafab97c7eb60231ed4f73cebf18184e00b9a8a5a531fa32992f7f28f16d2714b3056c61153c29267c8c6b93cb100e06f53bced1bd6a

diff --git a/dev-python/numpy/files/numpy-1.10.2-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.10.2-no-hardcode-blas.patch
new file mode 100644
index 0000000..db4a47d
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.10.2-no-hardcode-blas.patch
@@ -0,0 +1,64 @@
+ numpy/distutils/system_info.py | 29 +++++------------------------
+ 1 file changed, 5 insertions(+), 24 deletions(-)
+
+diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
+index d7eb49e..aa62b09 100644
+--- a/numpy/distutils/system_info.py
++++ b/numpy/distutils/system_info.py
+@@ -306,26 +306,7 @@ def get_info(name, notfound_action=0):
+       1 - display warning message
+       2 - raise error
+     """
+-    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
+-          'atlas_threads': atlas_threads_info,                # ditto
+-          'atlas_blas': atlas_blas_info,
+-          'atlas_blas_threads': atlas_blas_threads_info,
+-          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
+-          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
+-          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
+-          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
+-          'atlas_3_10_blas': atlas_3_10_blas_info,
+-          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
+-          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
+-          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
+-          'mkl': mkl_info,
+-          # openblas which may or may not have embedded lapack
+-          'openblas': openblas_info,          # use blas_opt instead
+-          # openblas with embedded lapack
+-          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
+-          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
+-          'blas_mkl': blas_mkl_info,          # use blas_opt instead
+-          'x11': x11_info,
++    cl = {'x11': x11_info,
+           'fft_opt': fft_opt_info,
+           'fftw': fftw_info,
+           'fftw2': fftw2_info,
+@@ -1690,7 +1671,7 @@ class blas_info(system_info):
+             lib = self.has_cblas(info)
+             if lib is not None:
+                 info['language'] = 'c'
+-                info['libraries'] = [lib]
++                info['libraries'] = lib
+                 info['define_macros'] = [('HAVE_CBLAS', None)]
+         self.set_info(**info)
+ 
+@@ -1722,16 +1703,16 @@ class blas_info(system_info):
+                 # check for cblas lib, and if not present check for blas lib.
+                 try:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+-                                      libraries=["cblas"],
++                                      libraries=info["libraries"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "cblas"
++                    res = info["libraries"]
+                 except distutils.ccompiler.LinkError:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+                                       libraries=["blas"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "blas"
++                    res = ["blas"]
+             except distutils.ccompiler.CompileError:
+                 res = None
+         finally:

diff --git a/dev-python/numpy/files/numpy-1.9.2-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.9.2-no-hardcode-blas.patch
index 674dbfa..db4a47d 100644
--- a/dev-python/numpy/files/numpy-1.9.2-no-hardcode-blas.patch
+++ b/dev-python/numpy/files/numpy-1.9.2-no-hardcode-blas.patch
@@ -1,11 +1,11 @@
- numpy/distutils/system_info.py | 21 +--------------------
- 1 file changed, 1 insertion(+), 20 deletions(-)
+ numpy/distutils/system_info.py | 29 +++++------------------------
+ 1 file changed, 5 insertions(+), 24 deletions(-)
 
 diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
-index a050430..d0878a5 100644
+index d7eb49e..aa62b09 100644
 --- a/numpy/distutils/system_info.py
 +++ b/numpy/distutils/system_info.py
-@@ -303,26 +303,7 @@ def get_info(name, notfound_action=0):
+@@ -306,26 +306,7 @@ def get_info(name, notfound_action=0):
        1 - display warning message
        2 - raise error
      """
@@ -33,3 +33,32 @@ index a050430..d0878a5 100644
            'fft_opt': fft_opt_info,
            'fftw': fftw_info,
            'fftw2': fftw2_info,
+@@ -1690,7 +1671,7 @@ class blas_info(system_info):
+             lib = self.has_cblas(info)
+             if lib is not None:
+                 info['language'] = 'c'
+-                info['libraries'] = [lib]
++                info['libraries'] = lib
+                 info['define_macros'] = [('HAVE_CBLAS', None)]
+         self.set_info(**info)
+ 
+@@ -1722,16 +1703,16 @@ class blas_info(system_info):
+                 # check for cblas lib, and if not present check for blas lib.
+                 try:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+-                                      libraries=["cblas"],
++                                      libraries=info["libraries"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "cblas"
++                    res = info["libraries"]
+                 except distutils.ccompiler.LinkError:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+                                       libraries=["blas"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "blas"
++                    res = ["blas"]
+             except distutils.ccompiler.CompileError:
+                 res = None
+         finally:

diff --git a/dev-python/numpy/numpy-1.10.2.ebuild b/dev-python/numpy/numpy-1.10.2-r1.ebuild
similarity index 95%
rename from dev-python/numpy/numpy-1.10.2.ebuild
rename to dev-python/numpy/numpy-1.10.2-r1.ebuild
index 79f9a89..9dc68cd 100644
--- a/dev-python/numpy/numpy-1.10.2.ebuild
+++ b/dev-python/numpy/numpy-1.10.2-r1.ebuild
@@ -11,7 +11,7 @@ FORTRAN_NEEDED=lapack
 
 inherit distutils-r1 eutils flag-o-matic fortran-2 multilib multiprocessing toolchain-funcs versionator
 
-DOC_PV="1.9.1"
+DOC_PV="1.10.1"
 DOC_P="${PN}-${DOC_PV}"
 
 DESCRIPTION="Fast array and numerical python library"
@@ -40,7 +40,7 @@ DEPEND="${RDEPEND}
 DISTUTILS_IN_SOURCE_BUILD=1
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-1.9.2-no-hardcode-blas.patch
+	"${FILESDIR}"/${P}-no-hardcode-blas.patch
 )
 
 src_unpack() {
@@ -110,13 +110,9 @@ python_prepare_all() {
 
 	# we don't have f2py-3.3
 	sed \
-		-e "/f2py_cmd/s:'f2py'.*:'f2py':g" \
+		-e "/f2py_cmd/s:'f2py'.*:'f2py'\]:g" \
 		-i numpy/tests/test_scripts.py || die
 
-	sed \
-		-e "s:\"cblas\":\"$(pc_libs cblas)\":g" \
-		-i numpy/distutils/system_info.py || die
-
 	distutils-r1_python_prepare_all
 }
 


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2024-06-13  3:51 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2024-06-13  3:51 UTC (permalink / raw
  To: gentoo-commits

commit:     b8381995e544cd0f77b71c234c8afc59e62db82d
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 13 03:48:04 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jun 13 03:48:04 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8381995

dev-python/numpy: Remove old

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

 dev-python/numpy/Manifest                          |   3 -
 .../numpy/files/numpy-1.26.1-more-arches.patch     |  16 --
 dev-python/numpy/numpy-1.26.1.ebuild               | 163 -------------------
 dev-python/numpy/numpy-1.26.2.ebuild               | 172 ---------------------
 dev-python/numpy/numpy-1.26.3.ebuild               | 169 --------------------
 5 files changed, 523 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 43ebee2103a4..29c79a1f01ec 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,5 +1,2 @@
-DIST numpy-1.26.1.tar.gz 15651806 BLAKE2B 2b7fe13675b6f11b8f19c2dc671c84418fa959f403ff32c15ae6da37ae8137d062bb47db0180031c90f54451d69d640ec4ebfad0a4eefb32afc55df45c6824ab SHA512 abe5919029fc66961e8f44fdd503b54c291ce75b0d95e3f8bb61ee39a25d62142fbece5734fd7e9cbf65511f9d746fa61796f0d68e6dc2816c0e7747e286e505
-DIST numpy-1.26.2.tar.gz 15664248 BLAKE2B 006e511e27c009f27bf4bf6c8c30c84a4bf0e8b1ff53f4e031089f28c1cfd168ec0d037952fe8f377f9a1d6e1ab642a84c095edeee5696b18053fd5cb7550586 SHA512 9986cd34dda921fbc152c3be0e39f003035787ea1e055452b9259d02c423d413080a0c7e4e19fd38d9e28f66d428719d6ebe784c24ae17249ff56494950daf4b
-DIST numpy-1.26.3.tar.gz 15679696 BLAKE2B 4c063e1a495b187049b5604686c0411b056fd03a69b5044cff10693694a7f055c87a017334cf8d05aa4a4cb87896fdf9203f51742d3cf83dbaf611b0e6e4091a SHA512 25556b41e2db9cfc52c1dfa61b05e4fc1b7b6df3b169f365375575d1146857fdb5ff91ca1508b968c296b7a06e5c6d95e82c41cdc3561587a46d3aa178f6305d
 DIST numpy-1.26.4.tar.gz 15786129 BLAKE2B ee759d3a857111bc494d5e989a7b005375d942b2a89cda69be4a3bd7c6cb195003fd2a8a0535f1858d8977ff688b0ec36360dcba9c3160206eedce5e28f191ef SHA512 f7121ab4099fa0686f9c095d456baa4a5869d651d7b7a06385f885f329cf08f11024b5df5e7b4ee705970062a8102ec4f709512eabbfd5c9fccce4ef83b9c208
 DIST numpy-2.0.0rc2.tar.gz 18323588 BLAKE2B e2d5d03594d0cba360d4e85207818d15a0761f37cc3fb366f8f9f8bdd97743fe0cf0d09a34319c8b6af29b2bc1fc32a7f5be30a5fa2bdebffe455baff05caf7e SHA512 f86b27264c5274823aa11cbedf17c08f81f9acd05430bf40cccbbe8dcff523410629795ca5927d7f8e6c152272b274d777b64f547d23f50d11ae9fd656fd773d

diff --git a/dev-python/numpy/files/numpy-1.26.1-more-arches.patch b/dev-python/numpy/files/numpy-1.26.1-more-arches.patch
deleted file mode 100644
index a6f622517521..000000000000
--- a/dev-python/numpy/files/numpy-1.26.1-more-arches.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-https://github.com/numpy/numpy/pull/25078
-https://github.com/numpy/numpy/pull/25254
-
-diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py
-index f352bbaa2..d17b052f9 100755
---- a/numpy/f2py/crackfortran.py
-+++ b/numpy/f2py/crackfortran.py
-@@ -2452,7 +2452,7 @@ def _selected_real_kind_func(p, r=0, radix=0):
-     if p < 16:
-         return 8
-     machine = platform.machine().lower()
--    if machine.startswith(('aarch64', 'arm64', 'loongarch', 'power', 'ppc', 'riscv', 's390x', 'sparc')):
-+    if machine.startswith(('aarch64', 'alpha', 'arm64', 'loongarch', 'mips', 'power', 'ppc', 'riscv', 's390x', 'sparc')):
-         if p <= 33:
-             return 16
-     else:

diff --git a/dev-python/numpy/numpy-1.26.1.ebuild b/dev-python/numpy/numpy-1.26.1.ebuild
deleted file mode 100644
index 3165b7cbfc9c..000000000000
--- a/dev-python/numpy/numpy-1.26.1.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-# +lapack because the internal fallbacks are pretty slow. Building without blas
-# is barely supported anyway, see bug #914358.
-IUSE="+lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-build/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-1.26.1-more-arches.patch"
-)
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dallow-noblas=$(usex !lapack true false)
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then
-		# depends on importing numpy.random from system namespace
-		EPYTEST_DESELECT+=(
-			'random/tests/test_extending.py::test_cython'
-		)
-	fi
-
-	rm -rf numpy || die
-	epytest --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.26.2.ebuild b/dev-python/numpy/numpy-1.26.2.ebuild
deleted file mode 100644
index 6a6e3b2205a2..000000000000
--- a/dev-python/numpy/numpy-1.26.2.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-# +lapack because the internal fallbacks are pretty slow. Building without blas
-# is barely supported anyway, see bug #914358.
-IUSE="+lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-build/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-1.26.1-more-arches.patch"
-)
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dallow-noblas=$(usex !lapack true false)
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-
-		# likely a test problem
-		# https://github.com/numpy/numpy/issues/25135
-		core/tests/test_cython.py::test_conv_intp
-
-		# flaky
-		f2py/tests/test_crackfortran.py
-		f2py/tests/test_data.py::TestData{,F77}::test_crackedlines
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then
-		# depends on importing numpy.random from system namespace
-		EPYTEST_DESELECT+=(
-			'random/tests/test_extending.py::test_cython'
-		)
-	fi
-
-	rm -rf numpy || die
-	local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-	epytest --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.26.3.ebuild b/dev-python/numpy/numpy-1.26.3.ebuild
deleted file mode 100644
index 1bd624c00d92..000000000000
--- a/dev-python/numpy/numpy-1.26.3.ebuild
+++ /dev/null
@@ -1,169 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-# +lapack because the internal fallbacks are pretty slow. Building without blas
-# is barely supported anyway, see bug #914358.
-IUSE="+lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-build/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dallow-noblas=$(usex !lapack true false)
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-		'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-
-		# likely a test problem
-		# https://github.com/numpy/numpy/issues/25135
-		core/tests/test_cython.py::test_conv_intp
-
-		# flaky
-		f2py/tests/test_crackfortran.py
-		f2py/tests/test_data.py::TestData{,F77}::test_crackedlines
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	if ! has_version -b "~${CATEGORY}/${P}[${PYTHON_USEDEP}]" ; then
-		# depends on importing numpy.random from system namespace
-		EPYTEST_DESELECT+=(
-			'random/tests/test_extending.py::test_cython'
-		)
-	fi
-
-	rm -rf numpy || die
-	local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-	epytest --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2024-05-26 14:28 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2024-05-26 14:28 UTC (permalink / raw
  To: gentoo-commits

commit:     bb5fe8ba348915acb41d4e87722da7f012772a9f
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun May 26 13:58:54 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun May 26 13:58:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb5fe8ba

dev-python/numpy: Backport emitted code fix to fix scipy w/ GCC-14

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

 dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch | 23 ++++++++++++++++++++++
 ...-2.0.0_rc2.ebuild => numpy-2.0.0_rc2-r1.ebuild} |  5 +++++
 2 files changed, 28 insertions(+)

diff --git a/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch b/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch
new file mode 100644
index 000000000000..f3ed3727520d
--- /dev/null
+++ b/dev-python/numpy/files/numpy-2.0.0_rc2-gcc14.patch
@@ -0,0 +1,23 @@
+From f3bc38235bf39a630035920e29f2f883cae5fffe Mon Sep 17 00:00:00 2001
+From: Matti Picus <matti.picus@gmail.com>
+Date: Sun, 26 May 2024 11:25:43 +0300
+Subject: [PATCH 1/3] BUG: cast missing in PyPy-specific f2py code
+
+---
+ numpy/f2py/cb_rules.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/numpy/f2py/cb_rules.py b/numpy/f2py/cb_rules.py
+index 721e075b6c73..faf8dd401301 100644
+--- a/numpy/f2py/cb_rules.py
++++ b/numpy/f2py/cb_rules.py
+@@ -122,7 +122,7 @@
+ #setdims#
+ #ifdef PYPY_VERSION
+ #define CAPI_ARGLIST_SETITEM(idx, value) PyList_SetItem((PyObject *)capi_arglist_list, idx, value)
+-    capi_arglist_list = PySequence_List(capi_arglist);
++    capi_arglist_list = PySequence_List((PyObject *)capi_arglist);
+     if (capi_arglist_list == NULL) goto capi_fail;
+ #else
+ #define CAPI_ARGLIST_SETITEM(idx, value) PyTuple_SetItem((PyObject *)capi_arglist, idx, value)
+

diff --git a/dev-python/numpy/numpy-2.0.0_rc2.ebuild b/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild
similarity index 98%
rename from dev-python/numpy/numpy-2.0.0_rc2.ebuild
rename to dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild
index 0d97ca09f939..7cd370900a32 100644
--- a/dev-python/numpy/numpy-2.0.0_rc2.ebuild
+++ b/dev-python/numpy/numpy-2.0.0_rc2-r1.ebuild
@@ -52,6 +52,11 @@ EPYTEST_XDIST=1
 distutils_enable_tests pytest
 
 python_prepare_all() {
+	local PATCHES=(
+		# https://github.com/numpy/numpy/pull/26534
+		"${FILESDIR}/${P}-gcc14.patch"
+	)
+
 	append-flags -fno-strict-aliasing
 
 	distutils-r1_python_prepare_all


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-12-11 13:43 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2023-12-11 13:43 UTC (permalink / raw
  To: gentoo-commits

commit:     daa40a2707195cae8bfe8ae1d98a730bcfdd30bd
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 11 13:42:10 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Dec 11 13:43:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=daa40a27

dev-python/numpy: Update arches patch to cover mips as well

Bug: https://bugs.gentoo.org/908739
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 ...py-1.26.1-alpha.patch => numpy-1.26.1-more-arches.patch} | 13 ++-----------
 dev-python/numpy/numpy-1.26.1.ebuild                        |  5 ++++-
 dev-python/numpy/numpy-1.26.2.ebuild                        |  5 ++++-
 3 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/dev-python/numpy/files/numpy-1.26.1-alpha.patch b/dev-python/numpy/files/numpy-1.26.1-more-arches.patch
similarity index 59%
rename from dev-python/numpy/files/numpy-1.26.1-alpha.patch
rename to dev-python/numpy/files/numpy-1.26.1-more-arches.patch
index a0b2ca2eda91..a6f622517521 100644
--- a/dev-python/numpy/files/numpy-1.26.1-alpha.patch
+++ b/dev-python/numpy/files/numpy-1.26.1-more-arches.patch
@@ -1,14 +1,5 @@
-https://bugs.gentoo.org/909738
 https://github.com/numpy/numpy/pull/25078
-
-commit 43aaf2093d8dfb3c1fea5d409ea4aa1d0f77816f
-Author: matoro <matoro@users.noreply.github.com>
-Date:   Mon Nov 6 10:21:32 2023 -0500
-
-    BUG: alpha doesn't use REAL(10)
-    
-    Same as e.g. loongarch per gh-24904.  At this point seems like it should
-    be more of an exclude list than an include one...
+https://github.com/numpy/numpy/pull/25254
 
 diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py
 index f352bbaa2..d17b052f9 100755
@@ -19,7 +10,7 @@ index f352bbaa2..d17b052f9 100755
          return 8
      machine = platform.machine().lower()
 -    if machine.startswith(('aarch64', 'arm64', 'loongarch', 'power', 'ppc', 'riscv', 's390x', 'sparc')):
-+    if machine.startswith(('aarch64', 'alpha', 'arm64', 'loongarch', 'power', 'ppc', 'riscv', 's390x', 'sparc')):
++    if machine.startswith(('aarch64', 'alpha', 'arm64', 'loongarch', 'mips', 'power', 'ppc', 'riscv', 's390x', 'sparc')):
          if p <= 33:
              return 16
      else:

diff --git a/dev-python/numpy/numpy-1.26.1.ebuild b/dev-python/numpy/numpy-1.26.1.ebuild
index 25c71df50516..f31fdfc7dce1 100644
--- a/dev-python/numpy/numpy-1.26.1.ebuild
+++ b/dev-python/numpy/numpy-1.26.1.ebuild
@@ -49,7 +49,10 @@ BDEPEND="
 		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
 	)
 "
-PATCHES=( "${FILESDIR}/${PN}-1.26.1-alpha.patch" )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.26.1-more-arches.patch"
+)
 
 EPYTEST_XDIST=1
 distutils_enable_tests pytest

diff --git a/dev-python/numpy/numpy-1.26.2.ebuild b/dev-python/numpy/numpy-1.26.2.ebuild
index 845d598fd604..9af7c8427708 100644
--- a/dev-python/numpy/numpy-1.26.2.ebuild
+++ b/dev-python/numpy/numpy-1.26.2.ebuild
@@ -49,7 +49,10 @@ BDEPEND="
 		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
 	)
 "
-PATCHES=( "${FILESDIR}/${PN}-1.26.1-alpha.patch" )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.26.1-more-arches.patch"
+)
 
 EPYTEST_XDIST=1
 distutils_enable_tests pytest


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-09-30  8:40 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2023-09-30  8:40 UTC (permalink / raw
  To: gentoo-commits

commit:     57b70b8ebcfa25aa046ed35a55b63684d88fa5c6
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 30 08:33:08 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Sep 30 08:33:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57b70b8e

dev-python/numpy: Remove old

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

 dev-python/numpy/Manifest                          |   6 -
 .../files/numpy-1.22.0-no-hardcode-blasv2.patch    |  50 ---
 .../numpy/files/numpy-1.24.3-fix-c++-linkage.patch |  25 --
 ...y-1.25.0-skip-python3.12-irrelevant-tests.patch | 187 ----------
 .../numpy-1.25.0_rc1-meson-pyproject.toml.patch    | 392 ---------------------
 .../numpy/files/numpy-1.25.1-fix-scalartypes.patch |  69 ----
 .../files/numpy-1.26.0_beta1-npy_cast_info.patch   |  44 ---
 dev-python/numpy/files/replace_cpuflags.awk        |  14 -
 dev-python/numpy/numpy-1.24.0.ebuild               | 161 ---------
 dev-python/numpy/numpy-1.24.2.ebuild               | 166 ---------
 dev-python/numpy/numpy-1.24.4-r1.ebuild            | 187 ----------
 dev-python/numpy/numpy-1.24.4.ebuild               | 176 ---------
 dev-python/numpy/numpy-1.25.1-r3.ebuild            | 159 ---------
 dev-python/numpy/numpy-1.26.0_beta1-r1.ebuild      | 154 --------
 dev-python/numpy/numpy-1.26.0_beta1.ebuild         | 149 --------
 dev-python/numpy/numpy-1.26.0_rc1.ebuild           | 149 --------
 16 files changed, 2088 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 85c584125f58..854b68b844c1 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,9 +1,3 @@
-DIST numpy-1.24.0.tar.gz 10897101 BLAKE2B 59e2b913f90de76589d8fbb2f07e2d389012c7f6ce9bd641bc4837776465ce9c41c34f19f92bee55d4bae6245c1d2c84315b359ef0b089fd68d31cd7e7ec44b1 SHA512 3b4e6255b8d39e8504a50ecd3c2ba09d5b16d3f6c70b23b67e4dbf03d1fe390c55030f46090341d39a1ee8228c61ad6212fdc6e4579fcec9e26b4dbe70268661
-DIST numpy-1.24.2.tar.gz 10906862 BLAKE2B e48f65eab709f0c57ec378d813a7b65bcaca6d5960b559d6db1c60726e5cf12517f4b2e1636b0ff815a2109925edccba200270db5170fd0aff5fd635919165ac SHA512 145fd7fb3919a185f75076d51b92c54a7fb1b776b637752ca15fdee15b239d6a517ef1bb8cded7c92e059cf6cda0146c24943c042d19b791e81125bc0ad4b820
-DIST numpy-1.24.4.tar.gz 10911229 BLAKE2B 2f054b4ede249653707c3df8ccf6df31b747c0625891ae6e01134f84b02d1300e1d7a88b5741e0e0f05218673d95374f263e5bfddbf17c9510aa93bac002eafc SHA512 89eb90548ad4f38cfe0a5077eef426058eed08ca17633024887e4d0ff5bdfe98736b1ad6850fe643bc0035d55ac4cd39b5971895eea9dcf247b5ff186654ed68
-DIST numpy-1.25.1.tar.gz 10428993 BLAKE2B ee3edaf5416ac858b995f0cb8df75962af01619969a2c70fa10b4e0d0a1c96a3b441ee470a463cdb7c60910d8823af1c41d37933f87bcaa0a724655d052ed20a SHA512 69cc5426f657a21a6a1fb3bb043b8acec90b87969f90177abb6d7294ca96d04f723ddf90fa40822704b16147a390abafbcda9702e40405ea6b6e22377aade71d
 DIST numpy-1.25.2-patches.tar.xz 7212 BLAKE2B 718331b2d9f8380df239bf2ad9c24d79924e08797825d7c8655124a55e059790f96641633cdb42c597646764ca9efcaf277d5f5b75f042f533c28f2a81d5a5a8 SHA512 bcc0c55710b8d874e1dd9a57fad5698e09e3c96254922db32a8beeae9a5a54532cb0660d3ce43ca68e70fa7227bca9e0d12a0298aa6972ad2cbcecfe4aee3e85
 DIST numpy-1.25.2.tar.gz 10805282 BLAKE2B f138eaf237f3e8052cafbe9fc98b4b62fb0748079df8599fc0950624c856294157410a2ec6fe381eaa8386b1530a39f7037ae1887c9fcfe2e77a3d7ad1ca0171 SHA512 6846d558c227329b6e700965ffa4c7886a7ca5f35234a56d734bc8201d19f7ac87d8ea081094bca13685130dce7bfb98ee4aa3a9dbd538288f10f1d9d82fb699
 DIST numpy-1.26.0.tar.gz 15633455 BLAKE2B 9cd8693d1303bc9ac6d95a6cd57440839adbd648efae7052cf9b73f833eb8ebb2a0ad09fcc638e51b481b4c049a02304eeef34a7566609ae2cbab3278d033a97 SHA512 0d500c623b274a219740c78ae2febb32a2f167016a9ff529678526e6b3e89a5b732c41defa23460a5da6f7f89d4a7d827f44fa9a1334c78e204b00ce164fb40c
-DIST numpy-1.26.0b1.tar.gz 15632046 BLAKE2B 72991e0a1a9b63ac9a3014b78348aa0bc512c2e22c3959d5466f92e2df8649aea56dd949e8954921fc29302f84e38748665597319fa9baa8154a85b34527e12f SHA512 c099a61ad58e142b29eac891b746c93425a337912df8da5e5a6b36c53f9069f56dd7ee0807b1773eca23a7e39b355e6c13d419cbdd36d35c2ab0a77cb14bb5b5
-DIST numpy-1.26.0rc1.tar.gz 15634820 BLAKE2B db9d9d6288681c1a49d612599c206c6f0964010222f24e0507e500cdb34a504b07202b561d14cd7b06c587668b2ad46c8bb72ecfe0e64a86cd3bbb498c9c2b5a SHA512 1c0e3009d2a45b0cf65aa95e317510a200e7cf9a5b985bed428ad1d65180b6df37cc3a597039335c5147cad23770e56e0bfef8ebb920b7e62c4b75664189a234

diff --git a/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch b/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
deleted file mode 100644
index d87a16a4b6c9..000000000000
--- a/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-Originally added in: https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-python/numpy/files?id=e5ce90a04e79f6413604e96e4803cb95ada7c859
-https://bugs.gentoo.org/567938
---- a/numpy/distutils/system_info.py
-+++ b/numpy/distutils/system_info.py
-@@ -505,33 +505,7 @@ def get_info(name, notfound_action=0):
-           'blas_armpl': blas_armpl_info,
-           'lapack_armpl': lapack_armpl_info,
-           'fftw3_armpl': fftw3_armpl_info,
--          'atlas': atlas_info,  # use lapack_opt or blas_opt instead
--          'atlas_threads': atlas_threads_info,                # ditto
--          'atlas_blas': atlas_blas_info,
--          'atlas_blas_threads': atlas_blas_threads_info,
--          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
--          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
--          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
--          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
--          'atlas_3_10_blas': atlas_3_10_blas_info,
--          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
--          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
--          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
--          'flame': flame_info,          # use lapack_opt instead
--          'mkl': mkl_info,
--          # openblas which may or may not have embedded lapack
--          'openblas': openblas_info,          # use blas_opt instead
--          # openblas with embedded lapack
--          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
--          'openblas_clapack': openblas_clapack_info, # use blas_opt instead
--          'blis': blis_info,                  # use blas_opt instead
--          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
--          'blas_mkl': blas_mkl_info,          # use blas_opt instead
-           'accelerate': accelerate_info,      # use blas_opt instead
--          'openblas64_': openblas64__info,
--          'openblas64__lapack': openblas64__lapack_info,
--          'openblas_ilp64': openblas_ilp64_info,
--          'openblas_ilp64_lapack': openblas_ilp64_lapack_info,
-           'x11': x11_info,
-           'fft_opt': fft_opt_info,
-           'fftw': fftw_info,
-@@ -951,10 +925,7 @@ class system_info:
-         return [b for b in [a.strip() for a in libs.split(',')] if b]
- 
-     def get_libraries(self, key='libraries'):
--        if hasattr(self, '_lib_names'):
--            return self.get_libs(key, default=self._lib_names)
--        else:
--            return self.get_libs(key, '')
-+      return self.get_libs(key, '')
- 
-     def library_extensions(self):
-         c = customized_ccompiler()

diff --git a/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch b/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch
deleted file mode 100644
index ae7d5ba0ea49..000000000000
--- a/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-https://bugs.gentoo.org/893962
-https://github.com/numpy/numpy/issues/23122
-https://github.com/numpy/numpy/pull/23601
-
-From 0a0240bcdad5daa0b84781719b3f8a002ef0f82b Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Sun, 16 Apr 2023 22:23:38 +0100
-Subject: [PATCH] BLD: use the C++ linker to link `_multiarray_umath.so`
-
-This gets rid of undefined symbol issues for `assert`.
-
-Closes gh-23122
-Closes gh-23595
---- a/numpy/core/setup.py
-+++ b/numpy/core/setup.py
-@@ -1010,9 +1010,6 @@ def generate_umath_doc_header(ext, build_dir):
-         svml_objs.sort()
- 
-     config.add_extension('_multiarray_umath',
--                         # Forcing C language even though we have C++ sources.
--                         # It forces the C linker and don't link C++ runtime.
--                         language = 'c',
-                          sources=multiarray_src + umath_src +
-                                  common_src +
-                                  [generate_config_h,

diff --git a/dev-python/numpy/files/numpy-1.25.0-skip-python3.12-irrelevant-tests.patch b/dev-python/numpy/files/numpy-1.25.0-skip-python3.12-irrelevant-tests.patch
deleted file mode 100644
index cd829c5ef08e..000000000000
--- a/dev-python/numpy/files/numpy-1.25.0-skip-python3.12-irrelevant-tests.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-https://github.com/numpy/numpy/commit/515403f2c637cb58f8dc326d88dd6f768f027cf4
-https://github.com/numpy/numpy/commit/b0872b858e2e6ebc394e95c81a024dcf1573c690
-https://github.com/numpy/numpy/commit/e42fc93b54a6d41dab72d86921f96e5ebc4c4198
-https://github.com/numpy/numpy/commit/4552b6cb0083502f731794e961cd30b9b62ba2e3
-
-From 515403f2c637cb58f8dc326d88dd6f768f027cf4 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Sun, 18 Jun 2023 15:56:23 +0200
-Subject: [PATCH] TST: disable `test_new_policy` test for memory allocator.
-
-This is way too slow, running a large part of the test suite twice.
-Issue 23975 tracks changing how this feature is tested.
----
- numpy/core/tests/test_mem_policy.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/numpy/core/tests/test_mem_policy.py b/numpy/core/tests/test_mem_policy.py
-index b4e2f65916c..0855d60771a 100644
---- a/numpy/core/tests/test_mem_policy.py
-+++ b/numpy/core/tests/test_mem_policy.py
-@@ -359,7 +359,7 @@ def test_thread_locality(get_module):
-     assert np.core.multiarray.get_handler_name() == orig_policy_name
- 
- 
--@pytest.mark.slow
-+@pytest.mark.skip(reason="too slow, see gh-23975")
- def test_new_policy(get_module):
-     a = np.arange(10)
-     orig_policy_name = np.core.multiarray.get_handler_name(a)
-
-From b0872b858e2e6ebc394e95c81a024dcf1573c690 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 19 Jun 2023 11:07:19 +0200
-Subject: [PATCH] TST: skip refcount related tests on py312
-
-Python 3.12 has immortal refcounts; the initial and final
-values will be the same when accessing `sys.getrefcount` inside a
-test.
-
-Closes gh-23986
---- a/numpy/core/tests/test_dtype.py
-+++ b/numpy/core/tests/test_dtype.py
-@@ -755,6 +755,11 @@ def iter_struct_object_dtypes():
-     yield pytest.param(dt, p, 12, obj, id="<structured subarray 2>")
- 
- 
-+@pytest.mark.skipif(
-+    sys.version_info >= (3, 12),
-+    reason="Python 3.12 has immortal refcounts, this test will no longer "
-+           "work. See gh-23986"
-+)
- @pytest.mark.skipif(not HAS_REFCOUNT, reason="Python lacks refcounts")
- class TestStructuredObjectRefcounting:
-     """These tests cover various uses of complicated structured types which
---- a/numpy/core/tests/test_regression.py
-+++ b/numpy/core/tests/test_regression.py
-@@ -1465,6 +1465,10 @@ def test_structured_arrays_with_objects1(self):
-         x[x.nonzero()] = x.ravel()[:1]
-         assert_(x[0, 1] == x[0, 0])
- 
-+    @pytest.mark.skipif(
-+        sys.version_info >= (3, 12),
-+        reason="Python 3.12 has immortal refcounts, this test no longer works."
-+    )
-     @pytest.mark.skipif(not HAS_REFCOUNT, reason="Python lacks refcounts")
-     def test_structured_arrays_with_objects2(self):
-         # Ticket #1299 second test
-
-From e42fc93b54a6d41dab72d86921f96e5ebc4c4198 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 19 Jun 2023 11:14:38 +0200
-Subject: [PATCH] TST: skip memory allocator and `array_interface` tests on
- py312
-
-They require numpy.distutils, which isn't available on >=3.12
-The `numpy.testing.extbuild` utility will need changing to make this
-work again. Could either use plain `setuptools` or `meson`.
---- a/numpy/core/tests/test_array_interface.py
-+++ b/numpy/core/tests/test_array_interface.py
-@@ -128,6 +128,9 @@ def get_module(tmp_path):
-                                                more_init=more_init)
- 
- 
-+# FIXME: numpy.testing.extbuild uses `numpy.distutils`, so this won't work on
-+# Python 3.12 and up.
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- @pytest.mark.slow
- def test_cstruct(get_module):
- 
---- a/numpy/core/tests/test_mem_policy.py
-+++ b/numpy/core/tests/test_mem_policy.py
-@@ -9,6 +9,11 @@
- import sys
- 
- 
-+# FIXME: numpy.testing.extbuild uses `numpy.distutils`, so this won't work on
-+# Python 3.12 and up. It's an internal test utility, so for now we just skip
-+# these tests.
-+
-+
- @pytest.fixture
- def get_module(tmp_path):
-     """ Add a memory policy that returns a false pointer 64 bytes into the
-@@ -213,6 +218,7 @@ def get_module(tmp_path):
-                                                more_init=more_init)
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_set_policy(get_module):
- 
-     get_handler_name = np.core.multiarray.get_handler_name
-@@ -241,6 +247,7 @@ def test_set_policy(get_module):
-         assert get_handler_name() == orig_policy_name
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_default_policy_singleton(get_module):
-     get_handler_name = np.core.multiarray.get_handler_name
- 
-@@ -262,6 +269,7 @@ def test_default_policy_singleton(get_module):
-     assert def_policy_1 is def_policy_2 is get_module.get_default_policy()
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_policy_propagation(get_module):
-     # The memory policy goes hand-in-hand with flags.owndata
- 
-@@ -320,6 +328,7 @@ async def async_test_context_locality(get_module):
-     assert np.core.multiarray.get_handler_name() == orig_policy_name
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_context_locality(get_module):
-     if (sys.implementation.name == 'pypy'
-             and sys.pypy_version_info[:3] < (7, 3, 6)):
-@@ -341,6 +350,7 @@ def concurrent_thread2(get_module, event):
-     get_module.set_secret_data_policy()
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_thread_locality(get_module):
-     orig_policy_name = np.core.multiarray.get_handler_name()
- 
-@@ -359,6 +369,7 @@ def test_thread_locality(get_module):
-     assert np.core.multiarray.get_handler_name() == orig_policy_name
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- @pytest.mark.skip(reason="too slow, see gh-23975")
- def test_new_policy(get_module):
-     a = np.arange(10)
-@@ -388,6 +399,8 @@ def test_new_policy(get_module):
-     c = np.arange(10)
-     assert np.core.multiarray.get_handler_name(c) == orig_policy_name
- 
-+
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- @pytest.mark.xfail(sys.implementation.name == "pypy",
-                    reason=("bad interaction between getenv and "
-                            "os.environ inside pytest"))
-@@ -420,6 +433,8 @@ def test_switch_owner(get_module, policy):
-         else:
-             os.environ['NUMPY_WARN_IF_NO_MEM_POLICY'] = oldval
- 
-+
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="no numpy.distutils")
- def test_owner_is_base(get_module):
-     a = get_module.get_array_with_base()
-     with pytest.warns(UserWarning, match='warn_on_free'):
-
-
-From 4552b6cb0083502f731794e961cd30b9b62ba2e3 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 19 Jun 2023 12:07:32 +0200
-Subject: [PATCH] TST: skip test using `np.load` on py2-saved .npy file on
- py312
-
---- a/numpy/lib/tests/test_format.py
-+++ b/numpy/lib/tests/test_format.py
-@@ -527,6 +527,7 @@ def test_load_padded_dtype(tmpdir, dt):
-     assert_array_equal(arr, arr1)
- 
- 
-+@pytest.mark.skipif(sys.version_info >= (3, 12), reason="see gh-23988")
- @pytest.mark.xfail(IS_WASM, reason="Emscripten NODEFS has a buggy dup")
- def test_python2_python3_interoperability():
-     fname = 'win64python2.npy'

diff --git a/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch b/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch
deleted file mode 100644
index b42e6cec1c73..000000000000
--- a/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch
+++ /dev/null
@@ -1,392 +0,0 @@
-https://github.com/numpy/numpy/pull/23838
-
-From 669c1a16f9e905b5b33017aa1a17cc59716ccfc7 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 29 May 2023 16:16:41 +0200
-Subject: [PATCH 01/11] BLD: default to using meson-python as build backend
-
----
- pyproject.toml                 | 137 ++++++++++++++++-----------------
- 3 files changed, 66 insertions(+), 77 deletions(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index 759b538fb6e..9f03fa8d0e5 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -1,79 +1,72 @@
- [build-system]
--# Uncomment this line, the `meson-python` requires line, and the [project] and
--# [project.urls] tables below in order to build with Meson by default
--#build-backend = "mesonpy"
-+build-backend = "mesonpy"
- requires = [
--    # setuptools, wheel and Cython are needed for the setup.py based build
--    "setuptools==59.2.0",
--    # `wheel` is needed for non-isolated builds, given that `meson-python`
--    # doesn't list it as a runtime requirement (at least in 0.11.0) - it's
--    # likely to be removed as a dependency in meson-python 0.12.0.
--    "wheel==0.38.1",
--    "Cython>=0.29.34,<3.0",
--#    "meson-python>=0.10.0",
-+    "Cython>=0.29.34",
-+    "meson-python>=0.13.1",
- ]
- 
--#[project]
--#name = "numpy"
--#
--## Using https://peps.python.org/pep-0639/
--## which is still in draft
--#license = {text = "BSD-3-Clause"}
--## Note: needed for Meson, but setuptools errors on it. Uncomment once Meson is default.
--##license-files.paths = [
--##    "LICENSE.txt",
--##    "LICENSES_bundles.txt"
--##]
--#
--#description = "Fundamental package for array computing in Python"
--#authors = [{name = "Travis E. Oliphant et al."}]
--#maintainers = [
--#    {name = "NumPy Developers", email="numpy-discussion@python.org"},
--#]
--#requires-python = ">=3.9"
--#readme = "README.md"
--#classifiers = [
--#    'Development Status :: 5 - Production/Stable',
--#    'Intended Audience :: Science/Research',
--#    'Intended Audience :: Developers',
--#    'License :: OSI Approved :: BSD License',
--#    'Programming Language :: C',
--#    'Programming Language :: Python',
--#    'Programming Language :: Python :: 3',
--#    'Programming Language :: Python :: 3.9',
--#    'Programming Language :: Python :: 3.10',
--#    'Programming Language :: Python :: 3.11',
--#    'Programming Language :: Python :: 3 :: Only',
--#    'Programming Language :: Python :: Implementation :: CPython',
--#    'Topic :: Software Development',
--#    'Topic :: Scientific/Engineering',
--#    'Typing :: Typed',
--#    'Operating System :: Microsoft :: Windows',
--#    'Operating System :: POSIX',
--#    'Operating System :: Unix',
--#    'Operating System :: MacOS',
--#]
--#dynamic = ["version", "scripts"]
--#
--#[project.scripts]
--## Note: this is currently dynamic, see setup.py. Can we get rid of that?
--##       see commit f22a33b71 for rationale for dynamic behavior
--#'f2py = numpy.f2py.f2py2e:main'
--#'f2py3 = numpy.f2py.f2py2e:main'
--#'f2py3.MINOR_VERSION = numpy.f2py.f2py2e:main'
--#
--# When enabling this stanza, make sure to remove the meson-specific xfail from
--# numpy/tests/test_public_api.py
--#[project.entry-points]
--#'array_api': 'numpy = numpy.array_api'
--#'pyinstaller40': 'hook-dirs = numpy:_pyinstaller_hooks_dir'
--#
--#[project.urls]
--#homepage = "https://numpy.org"
--#documentation = "https://numpy.org/doc/"
--#source = "https://github.com/numpy/numpy"
--#download = "https://pypi.org/project/numpy/#files"
--#tracker = "https://github.com/numpy/numpy/issues"
-+[project]
-+name = "numpy"
-+version = "2.0.0.dev0"
-+
-+# Using https://peps.python.org/pep-0639/ which is still in draft
-+license = {text = "BSD-3-Clause"}
-+license-files.paths = [
-+    "LICENSE.txt",
-+    "LICENSES_bundles.txt"
-+]
-+
-+description = "Fundamental package for array computing in Python"
-+authors = [{name = "Travis E. Oliphant et al."}]
-+maintainers = [
-+    {name = "NumPy Developers", email="numpy-discussion@python.org"},
-+]
-+requires-python = ">=3.9"
-+readme = "README.md"
-+classifiers = [
-+    'Development Status :: 5 - Production/Stable',
-+    'Intended Audience :: Science/Research',
-+    'Intended Audience :: Developers',
-+    'License :: OSI Approved :: BSD License',
-+    'Programming Language :: C',
-+    'Programming Language :: Python',
-+    'Programming Language :: Python :: 3',
-+    'Programming Language :: Python :: 3.9',
-+    'Programming Language :: Python :: 3.10',
-+    'Programming Language :: Python :: 3.11',
-+    'Programming Language :: Python :: 3.12',
-+    'Programming Language :: Python :: 3 :: Only',
-+    'Programming Language :: Python :: Implementation :: CPython',
-+    'Topic :: Software Development',
-+    'Topic :: Scientific/Engineering',
-+    'Typing :: Typed',
-+    'Operating System :: Microsoft :: Windows',
-+    'Operating System :: POSIX',
-+    'Operating System :: Unix',
-+    'Operating System :: MacOS',
-+]
-+#dynamic = ["scripts"]
-+
-+[project.scripts]
-+# TODO: this is currently dynamic for minor version support. See also the same
-+# thing in setup.py. Can we get rid of that? see commit f22a33b71 for rationale
-+# for dynamic behavior.
-+f2py = 'numpy.f2py.f2py2e:main'
-+f2py3 = 'numpy.f2py.f2py2e:main'
-+#f2py3.MINOR_VERSION = 'numpy.f2py.f2py2e:main'
-+
-+[project.entry-points.array_api]
-+numpy = 'numpy.array_api'
-+
-+[project.entry-points.pyinstaller40]
-+hook-dirs = 'numpy:_pyinstaller_hooks_dir'
-+
-+[project.urls]
-+homepage = "https://numpy.org"
-+documentation = "https://numpy.org/doc/"
-+source = "https://github.com/numpy/numpy"
-+download = "https://pypi.org/project/numpy/#files"
-+tracker = "https://github.com/numpy/numpy/issues"
- 
- [tool.towncrier]
-     # Do no set this since it is hard to import numpy inside the source directory
-
-From 02cae331443d6955dba8ce5e981c24a7b6c01ec6 Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 29 May 2023 18:51:54 +0200
-Subject: [PATCH 04/11] BLD: fix bug with CMake fallback detection of
- BLAS/LAPACK
-
----
- numpy/meson.build | 11 +++++++----
- 1 file changed, 7 insertions(+), 4 deletions(-)
-
-diff --git a/numpy/meson.build b/numpy/meson.build
-index 7b85d8e92f5..ad1829a78db 100644
---- a/numpy/meson.build
-+++ b/numpy/meson.build
-@@ -198,10 +198,13 @@ foreach name, dep : dependency_map
-   if dep.found()
-     conf_data.set(name + '_VERSION', dep.version())
-     conf_data.set(name + '_TYPE_NAME', dep.type_name())
--    conf_data.set(name + '_INCLUDEDIR', dep.get_variable('includedir'))
--    conf_data.set(name + '_LIBDIR', dep.get_variable('libdir'))
--    conf_data.set(name + '_OPENBLAS_CONFIG', dep.get_variable('openblas_config'))
--    conf_data.set(name + '_PCFILEDIR', dep.get_variable('pcfiledir'))
-+    if dep.type_name() == 'pkgconfig'
-+      # CMake detection yields less info, so we need to leave it blank there
-+      conf_data.set(name + '_INCLUDEDIR', dep.get_variable('includedir'))
-+      conf_data.set(name + '_LIBDIR', dep.get_variable('libdir'))
-+      conf_data.set(name + '_OPENBLAS_CONFIG', dep.get_variable('openblas_config'))
-+      conf_data.set(name + '_PCFILEDIR', dep.get_variable('pcfiledir'))
-+    endif
-   endif
- endforeach
- 
-
-From 84bea46fab251edd31bee8d8eae174cf2cb9315b Mon Sep 17 00:00:00 2001
-From: Ralf Gommers <ralf.gommers@gmail.com>
-Date: Mon, 29 May 2023 19:15:29 +0200
-Subject: [PATCH 06/11] CI: keep the Emscripten/Pyodide job on a setup.py-based
- build
-
----
- pyproject.toml.setuppy           | 9 +++++++++
- 2 files changed, 14 insertions(+), 1 deletion(-)
- create mode 100644 pyproject.toml.setuppy
-
-diff --git a/pyproject.toml.setuppy b/pyproject.toml.setuppy
-new file mode 100644
-index 00000000000..b28d93c8d52
---- /dev/null
-+++ b/pyproject.toml.setuppy
-@@ -0,0 +1,9 @@
-+# pyproject.toml needed to build with setup.py
-+# This file is used temporarily to replace the main pyproject.toml when needing
-+# to avoid building with Meson (e.g., in the Emscripten/Pyodide CI job)
-+[build-system]
-+requires = [
-+    "setuptools==59.2.0",
-+    "wheel==0.38.1",
-+    "Cython>=0.29.34,<3.0",
-+]
-
-From 027de0ab6d24e6336682ef6fa150ae09f007a5da Mon Sep 17 00:00:00 2001
-From: mattip <matti.picus@gmail.com>
-Date: Sun, 11 Jun 2023 16:11:34 +0300
-Subject: [PATCH 07/11] use MSVC and force 64-bit OpenBLAS interfaces
-
----
- pyproject.toml | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index 9f03fa8d0e5..6cef90c6962 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -167,6 +167,11 @@ environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFL
- select = "*-win32"
- environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32" }
- 
-+[tool.meson-python.args]
-+setup = ['--vsenv']
-+# This should not be set on 32-bit builds...
-+compile = ['-DBLAS_SYMBOL_SUFFIX=64_']
-+
- [tool.spin]
- package = 'numpy'
- 
-
-From 9ce0d806a881c87a203efccf106cf5d3d6bb46e0 Mon Sep 17 00:00:00 2001
-From: mattip <matti.picus@gmail.com>
-Date: Sun, 11 Jun 2023 16:28:35 +0300
-Subject: [PATCH 08/11] drop rtools in wheel builds, do
- -DDBLAS_SYMBOL_SUFFIX=64_ differently
-
----
- pyproject.toml               |  8 +++-----
- 2 files changed, 3 insertions(+), 16 deletions(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index 6cef90c6962..a9d7f87b2b5 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
- manylinux-x86_64-image = "manylinux2014"
- manylinux-aarch64-image = "manylinux2014"
- musllinux-x86_64-image = "musllinux_1_1"
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
- 
- [tool.cibuildwheel.macos]
- # For universal2 wheels, we will need to fuse them manually
-@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing", LDFLAGS="-Wl,--strip-deb
- archs = "x86_64 arm64"
- test-skip = "*_universal2:arm64"
- # MACOS linker doesn't support stripping symbols
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
- 
- [tool.cibuildwheel.windows]
--environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="", LDFLAGS="" }
-+environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
- 
- [[tool.cibuildwheel.overrides]]
- select = "*-win32"
-@@ -169,8 +169,6 @@ environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFL
- 
- [tool.meson-python.args]
- setup = ['--vsenv']
--# This should not be set on 32-bit builds...
--compile = ['-DBLAS_SYMBOL_SUFFIX=64_']
- 
- [tool.spin]
- package = 'numpy'
-
-From 067e51454eeff3ce302144803baef92add308668 Mon Sep 17 00:00:00 2001
-From: mattip <matti.picus@gmail.com>
-Date: Sun, 11 Jun 2023 17:05:02 +0300
-Subject: [PATCH 09/11] typo, install pkg-config on windows
-
----
- pyproject.toml               | 6 +++---
- 2 files changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index a9d7f87b2b5..a0b645938d1 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
- manylinux-x86_64-image = "manylinux2014"
- manylinux-aarch64-image = "manylinux2014"
- musllinux-x86_64-image = "musllinux_1_1"
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
- 
- [tool.cibuildwheel.macos]
- # For universal2 wheels, we will need to fuse them manually
-@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_"
- archs = "x86_64 arm64"
- test-skip = "*_universal2:arm64"
- # MACOS linker doesn't support stripping symbols
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
- 
- [tool.cibuildwheel.windows]
--environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
-+environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
- 
- [[tool.cibuildwheel.overrides]]
- select = "*-win32"
-
-From 9999c3f3a8c7facef77dc9859a8a25f39f14f7fd Mon Sep 17 00:00:00 2001
-From: mattip <matti.picus@gmail.com>
-Date: Sun, 11 Jun 2023 22:18:57 +0300
-Subject: [PATCH 10/11] set PKG_CONFIG_PATH for windows, add CXXFLAGS
-
----
- pyproject.toml                    | 6 +++---
- 2 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index a0b645938d1..32bde348d7d 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
- manylinux-x86_64-image = "manylinux2014"
- manylinux-aarch64-image = "manylinux2014"
- musllinux-x86_64-image = "musllinux_1_1"
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS="-Wl,--strip-debug", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux"}
- 
- [tool.cibuildwheel.macos]
- # For universal2 wheels, we will need to fuse them manually
-@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_",
- archs = "x86_64 arm64"
- test-skip = "*_universal2:arm64"
- # MACOS linker doesn't support stripping symbols
--environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
-+environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS"}
- 
- [tool.cibuildwheel.windows]
--environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
-+environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS=""}
- 
- [[tool.cibuildwheel.overrides]]
- select = "*-win32"
-
-From ffcd334bd9da7ce4779e79636ecd047e2f20dd5b Mon Sep 17 00:00:00 2001
-From: mattip <matti.picus@gmail.com>
-Date: Sun, 11 Jun 2023 23:17:00 +0300
-Subject: [PATCH 11/11] disable pypy builds, move PKG_CONFIG_PATH for windows
-
----
- pyproject.toml                    | 4 ++--
- 3 files changed, 4 insertions(+), 5 deletions(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index 32bde348d7d..55065d1362f 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -161,11 +161,11 @@ test-skip = "*_universal2:arm64"
- environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS"}
- 
- [tool.cibuildwheel.windows]
--environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS=""}
-+environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS="", PKG_CONFIG_PATH="D:\\a\\numpy\\numpy\\openblas\\lib\\pkgconfig;"}
- 
- [[tool.cibuildwheel.overrides]]
- select = "*-win32"
--environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32" }
-+environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32", PKG_CONFIG_PATH="D:\\a\\numpy\\numpy\\openblas\\lib\\pkgconfig;"}
- 
- [tool.meson-python.args]
- setup = ['--vsenv']

diff --git a/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch b/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch
deleted file mode 100644
index aa381d243d88..000000000000
--- a/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-https://bugs.gentoo.org/910739
-https://github.com/numpy/numpy/issues/24239
-https://github.com/numpy/numpy/pull/24240
-https://github.com/numpy/numpy/commit/d9c0c96582373de0990908c89ed75ae16279e8e5
-
-From d9c0c96582373de0990908c89ed75ae16279e8e5 Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Sun, 23 Jul 2023 21:31:08 +0100
-Subject: [PATCH] BUG: Fix C types in scalartypes
-
-https://github.com/numpy/numpy/pull/23746 introduced a fast path for scalar
-int conversions, but the map between Python types and C types was subtly
-wrong.
-
-This fixes tests on at least ppc32 (big-endian).
-
-Many thanks to Sebastian Berg for debugging this with me and pointing out
-what needed to be fixed.
-
-Closes #24239.
-
-Fixes: 81caed6e3c34c4bf4b22b4f6167e816ba2a3f73c
---- a/numpy/core/src/multiarray/scalartypes.c.src
-+++ b/numpy/core/src/multiarray/scalartypes.c.src
-@@ -283,34 +283,34 @@ genint_type_str(PyObject *self)
-     void *val = scalar_value(self, descr);
-     switch (descr->type_num) {
-         case NPY_BYTE:
--            item = PyLong_FromLong(*(int8_t *)val);
-+            item = PyLong_FromLong(*(npy_byte *)val);
-             break;
-         case NPY_UBYTE:
--            item = PyLong_FromUnsignedLong(*(uint8_t *)val);
-+            item = PyLong_FromUnsignedLong(*(npy_ubyte *)val);
-             break;
-         case NPY_SHORT:
--            item = PyLong_FromLong(*(int16_t *)val);
-+            item = PyLong_FromLong(*(npy_short *)val);
-             break;
-         case NPY_USHORT:
--            item = PyLong_FromUnsignedLong(*(uint16_t *)val);
-+            item = PyLong_FromUnsignedLong(*(npy_ushort *)val);
-             break;
-         case NPY_INT:
--            item = PyLong_FromLong(*(int32_t *)val);
-+            item = PyLong_FromLong(*(npy_int *)val);
-             break;
-         case NPY_UINT:
--            item = PyLong_FromUnsignedLong(*(uint32_t *)val);
-+            item = PyLong_FromUnsignedLong(*(npy_uint *)val);
-             break;
-         case NPY_LONG:
--            item = PyLong_FromLong(*(int64_t *)val);
-+            item = PyLong_FromLong(*(npy_long *)val);
-             break;
-         case NPY_ULONG:
--            item = PyLong_FromUnsignedLong(*(uint64_t *)val);
-+            item = PyLong_FromUnsignedLong(*(npy_ulong *)val);
-             break;
-         case NPY_LONGLONG:
--            item = PyLong_FromLongLong(*(long long *)val);
-+            item = PyLong_FromLongLong(*(npy_longlong *)val);
-             break;
-         case NPY_ULONGLONG:
--            item = PyLong_FromUnsignedLongLong(*(unsigned long long *)val);
-+            item = PyLong_FromUnsignedLongLong(*(npy_ulonglong *)val);
-             break;
-         default:
-             item = gentype_generic_method(self, NULL, NULL, "item");

diff --git a/dev-python/numpy/files/numpy-1.26.0_beta1-npy_cast_info.patch b/dev-python/numpy/files/numpy-1.26.0_beta1-npy_cast_info.patch
deleted file mode 100644
index cd09573deb7f..000000000000
--- a/dev-python/numpy/files/numpy-1.26.0_beta1-npy_cast_info.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 9cfb416aad45260e1cc837029638d6b39cea9e38 Mon Sep 17 00:00:00 2001
-From: Nathan Goldbaum <nathan.goldbaum@gmail.com>
-Date: Mon, 21 Aug 2023 15:45:11 -0600
-Subject: [PATCH] BUG: fix NPY_cast_info error handling in choose
-
----
- numpy/core/src/multiarray/item_selection.c | 2 +-
- numpy/core/tests/test_multiarray.py        | 6 ++++++
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/numpy/core/src/multiarray/item_selection.c b/numpy/core/src/multiarray/item_selection.c
-index e935a27edb6..c1d4a950815 100644
---- a/numpy/core/src/multiarray/item_selection.c
-+++ b/numpy/core/src/multiarray/item_selection.c
-@@ -968,6 +968,7 @@ PyArray_Choose(PyArrayObject *ip, PyObject *op, PyArrayObject *out,
-     PyArrayObject **mps, *ap;
-     PyArrayMultiIterObject *multi = NULL;
-     npy_intp mi;
-+    NPY_cast_info cast_info = {.func = NULL};
-     ap = NULL;
- 
-     /*
-@@ -1045,7 +1046,6 @@ PyArray_Choose(PyArrayObject *ip, PyObject *op, PyArrayObject *out,
-     npy_intp transfer_strides[2] = {elsize, elsize};
-     npy_intp one = 1;
-     NPY_ARRAYMETHOD_FLAGS transfer_flags = 0;
--    NPY_cast_info cast_info = {.func = NULL};
-     if (PyDataType_REFCHK(dtype)) {
-         int is_aligned = IsUintAligned(obj);
-         PyArray_GetDTypeTransferFunction(
-diff --git a/numpy/core/tests/test_multiarray.py b/numpy/core/tests/test_multiarray.py
-index 966b75cc122..2836c8985c9 100644
---- a/numpy/core/tests/test_multiarray.py
-+++ b/numpy/core/tests/test_multiarray.py
-@@ -10043,3 +10043,9 @@ def test_gh_22683():
-     np.choose(np.zeros(10000, dtype=int), [a], out=a)
-     refc_end = sys.getrefcount(b)
-     assert refc_end - refc_start < 10
-+
-+
-+def test_gh_24459():
-+    a = np.zeros((50, 3), dtype=np.float64)
-+    with pytest.raises(TypeError):
-+        np.choose(a, [3, -1])

diff --git a/dev-python/numpy/files/replace_cpuflags.awk b/dev-python/numpy/files/replace_cpuflags.awk
deleted file mode 100644
index 11b8bd53b2c3..000000000000
--- a/dev-python/numpy/files/replace_cpuflags.awk
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/awk -f
-
-{
-    GENTOO_ENABLE=1;
-    if (match($0, /flags="([^"=]*)"/, cflags)) {
-        split(cflags[1], fields);
-        for (i in fields) {
-            if (match(fields[i], /-m([[:graph:]]*)/, inst)) {
-                if (!index(enabled_flags, inst[1])) {
-                    GENTOO_ENABLE=0;
-                }}}}
-    if (!GENTOO_ENABLE) { sub(cflags[1], "-mGENTOO_DISABLE"); }
-    print; 
-}

diff --git a/dev-python/numpy/numpy-1.24.0.ebuild b/dev-python/numpy/numpy-1.24.0.ebuild
deleted file mode 100644
index c1c0e7b5f49e..000000000000
--- a/dev-python/numpy/numpy-1.24.0.ebuild
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	# Allow use with setuptools 60.x
-	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
-	export SETUPTOOLS_USE_DISTUTILS=stdlib
-
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk- and memory-hungry
-		numpy/lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		numpy/core/tests/test_mem_policy.py::test_new_policy
-
-		# very slow, unlikely to be practically useful
-		numpy/typing/tests/test_typing.py
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		EPYTEST_DESELECT+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-	if use arm || use x86 ; then
-		EPYTEST_DESELECT+=(
-			# too large for 32-bit platforms
-			numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-		)
-	fi
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest -k "not _fuzz"
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.24.2.ebuild b/dev-python/numpy/numpy-1.24.2.ebuild
deleted file mode 100644
index 787da4ab6555..000000000000
--- a/dev-python/numpy/numpy-1.24.2.ebuild
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 pypi toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	# Allow use with setuptools 60.x
-	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
-	export SETUPTOOLS_USE_DISTUTILS=stdlib
-
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk- and memory-hungry
-		numpy/lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-		numpy/lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		numpy/core/tests/test_mem_policy.py::test_new_policy
-
-		# very slow, unlikely to be practically useful
-		numpy/typing/tests/test_typing.py
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		EPYTEST_DESELECT+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-	if use arm || use x86 ; then
-		EPYTEST_DESELECT+=(
-			# too large for 32-bit platforms
-			numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-		)
-	fi
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest -k "not _fuzz"
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.24.4-r1.ebuild b/dev-python/numpy/numpy-1.24.4-r1.ebuild
deleted file mode 100644
index 5db2ffe20ea8..000000000000
--- a/dev-python/numpy/numpy-1.24.4-r1.ebuild
+++ /dev/null
@@ -1,187 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-PYTHON_COMPAT=( python3_{9..11} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi
-inherit toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-CPU_FLAGS_X86=( avx avx2 avx512dq avx512f avx512vl f16c fma4 popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3 xop )
-IUSE="lapack $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	<dev-python/cython-3[${PYTHON_USEDEP}]
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/numpy-1.24.3-fix-c++-linkage.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	# Allow use with setuptools 60.x
-	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
-	export SETUPTOOLS_USE_DISTUTILS=stdlib
-
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# The following has no effect on architectures other than x86 and amd64.
-	local flag enabled_flags=()
-	for flag in "${CPU_FLAGS_X86[@]}"; do
-		use cpu_flags_x86_${flag} && enabled_flags+=( ${flag/_/.} )
-	done
-	gawk -i inplace -v "enabled_flags=${enabled_flags[*]}" \
-		-f "${FILESDIR}"/replace_cpuflags.awk \
-		numpy/distutils/ccompiler_opt.py || die
-	rm -f numpy/distutils/tests/test_ccompiler_opt.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	local -x MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk- and memory-hungry
-		numpy/lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-		numpy/lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		numpy/core/tests/test_mem_policy.py::test_new_policy
-
-		# very slow, unlikely to be practically useful
-		numpy/typing/tests/test_typing.py
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		EPYTEST_DESELECT+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-			)
-			;;
-		*)
-			;;
-	esac
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest -k "not _fuzz" -n "$(makeopts_jobs)"
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.24.4.ebuild b/dev-python/numpy/numpy-1.24.4.ebuild
deleted file mode 100644
index 91c4a9011068..000000000000
--- a/dev-python/numpy/numpy-1.24.4.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-PYTHON_COMPAT=( python3_{9..11} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi
-inherit toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	<dev-python/cython-3[${PYTHON_USEDEP}]
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/numpy-1.24.3-fix-c++-linkage.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	# Allow use with setuptools 60.x
-	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
-	export SETUPTOOLS_USE_DISTUTILS=stdlib
-
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	local -x MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk- and memory-hungry
-		numpy/lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-		numpy/lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		numpy/core/tests/test_mem_policy.py::test_new_policy
-
-		# very slow, unlikely to be practically useful
-		numpy/typing/tests/test_typing.py
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		EPYTEST_DESELECT+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-			)
-			;;
-		*)
-			;;
-	esac
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest -k "not _fuzz" -n "$(makeopts_jobs)"
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.25.1-r3.ebuild b/dev-python/numpy/numpy-1.25.1-r3.ebuild
deleted file mode 100644
index 1b46bf5e470b..000000000000
--- a/dev-python/numpy/numpy-1.25.1-r3.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="lapack"
-if [[ ${PV} != *_rc* ]] ; then
-	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-util/meson-1.1.0
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.25.0_rc1-meson-pyproject.toml.patch
-	"${FILESDIR}"/${PN}-1.25.0-skip-python3.12-irrelevant-tests.patch
-	"${FILESDIR}"/${PN}-1.25.1-fix-scalartypes.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-
-	# TODO: Please drop once 1.25.0_rc1-meson-pyproject.toml.patch is gone
-	sed -i -e "s:version = \"2.0.0.dev0\":version = \"${PV}\":" pyproject.toml || die
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk-and-memory-hungry
-		lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		# XXX: I've no idea why this ends up being needed in deselect and not ignore
-		typing/tests/test_typing.py
-	)
-
-	if [[ ${EPYTHON} == pypy3 ]]; then
-		EPYTEST_DESELECT+=(
-			# TODO: crashed
-			lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-		)
-	fi
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-				lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-			)
-			;;
-		*)
-			;;
-	esac
-
-	rm -rf numpy || die
-	epytest -n "$(makeopts_jobs)" --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.26.0_beta1-r1.ebuild b/dev-python/numpy/numpy-1.26.0_beta1-r1.ebuild
deleted file mode 100644
index 1072d42ba823..000000000000
--- a/dev-python/numpy/numpy-1.26.0_beta1-r1.ebuild
+++ /dev/null
@@ -1,154 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-util/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	local PATCHES=(
-		# https://github.com/numpy/numpy/pull/24484
-		"${FILESDIR}/${P}-npy_cast_info.patch"
-	)
-
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	rm -rf numpy || die
-	epytest -n "$(makeopts_jobs)" --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.26.0_beta1.ebuild b/dev-python/numpy/numpy-1.26.0_beta1.ebuild
deleted file mode 100644
index bc6646bd3079..000000000000
--- a/dev-python/numpy/numpy-1.26.0_beta1.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-util/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	rm -rf numpy || die
-	epytest -n "$(makeopts_jobs)" --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.26.0_rc1.ebuild b/dev-python/numpy/numpy-1.26.0_rc1.ebuild
deleted file mode 100644
index bc6646bd3079..000000000000
--- a/dev-python/numpy/numpy-1.26.0_rc1.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="lapack"
-if [[ ${PV} != *_[rab]* ]] ; then
-	KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-util/meson-1.1.0
-	>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-		# TODO: cpu-* options
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# Very disk-and-memory-hungry
-		lib/tests/test_io.py::TestSaveTxt::test_large_zip
-		lib/tests/test_io.py::TestSavezLoad::test_closing_fid
-		lib/tests/test_io.py::TestSavezLoad::test_closing_zipfile_after_load
-
-		# Precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# Runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-		# Uses huge amount of memory
-		core/tests/test_mem_overlap.py
-
-		# TODO: crashes
-		lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case of arm32 chroot on arm64, bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if use hppa ; then
-		EPYTEST_DESELECT+=(
-			# TODO: Get selectedrealkind updated!
-			# bug #907228
-			# https://github.com/numpy/numpy/issues/3424 (https://github.com/numpy/numpy/issues/3424#issuecomment-412369029)
-			# https://github.com/numpy/numpy/pull/21785
-			f2py/tests/test_kind.py::TestKind::test_real
-			f2py/tests/test_kind.py::TestKind::test_quad_precision
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-			f2py/tests/test_kind.py::TestKind::test_int
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-			)
-			;;
-		*)
-			;;
-	esac
-
-	rm -rf numpy || die
-	epytest -n "$(makeopts_jobs)" --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-07-26  4:55 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2023-07-26  4:55 UTC (permalink / raw
  To: gentoo-commits

commit:     e53e8134cdb194c1e3507127ee95988c83a30f7e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 26 04:54:28 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul 26 04:54:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e53e8134

dev-python/numpy: use upstream variant of fix-scalartypes.patch

Should be the same functionally but let's do this just in case (upstreamed
version handles a few more types & is a bit cleaner as using numpy typedefs too).

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../numpy/files/numpy-1.25.1-fix-scalartypes.patch |  45 ++++++-
 dev-python/numpy/numpy-1.25.1-r1.ebuild            | 146 ---------------------
 ...mpy-1.25.1-r2.ebuild => numpy-1.25.1-r3.ebuild} |   0
 3 files changed, 39 insertions(+), 152 deletions(-)

diff --git a/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch b/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch
index 845b41fef23a..aa381d243d88 100644
--- a/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch
+++ b/dev-python/numpy/files/numpy-1.25.1-fix-scalartypes.patch
@@ -1,8 +1,9 @@
 https://bugs.gentoo.org/910739
 https://github.com/numpy/numpy/issues/24239
 https://github.com/numpy/numpy/pull/24240
+https://github.com/numpy/numpy/commit/d9c0c96582373de0990908c89ed75ae16279e8e5
 
-From f5eb12cafc99bb33dad6535dacab2f592aafb2b0 Mon Sep 17 00:00:00 2001
+From d9c0c96582373de0990908c89ed75ae16279e8e5 Mon Sep 17 00:00:00 2001
 From: Sam James <sam@gentoo.org>
 Date: Sun, 23 Jul 2023 21:31:08 +0100
 Subject: [PATCH] BUG: Fix C types in scalartypes
@@ -21,16 +22,48 @@ Closes #24239.
 Fixes: 81caed6e3c34c4bf4b22b4f6167e816ba2a3f73c
 --- a/numpy/core/src/multiarray/scalartypes.c.src
 +++ b/numpy/core/src/multiarray/scalartypes.c.src
-@@ -301,10 +301,10 @@ genint_type_str(PyObject *self)
-             item = PyLong_FromUnsignedLong(*(uint32_t *)val);
+@@ -283,34 +283,34 @@ genint_type_str(PyObject *self)
+     void *val = scalar_value(self, descr);
+     switch (descr->type_num) {
+         case NPY_BYTE:
+-            item = PyLong_FromLong(*(int8_t *)val);
++            item = PyLong_FromLong(*(npy_byte *)val);
+             break;
+         case NPY_UBYTE:
+-            item = PyLong_FromUnsignedLong(*(uint8_t *)val);
++            item = PyLong_FromUnsignedLong(*(npy_ubyte *)val);
+             break;
+         case NPY_SHORT:
+-            item = PyLong_FromLong(*(int16_t *)val);
++            item = PyLong_FromLong(*(npy_short *)val);
+             break;
+         case NPY_USHORT:
+-            item = PyLong_FromUnsignedLong(*(uint16_t *)val);
++            item = PyLong_FromUnsignedLong(*(npy_ushort *)val);
+             break;
+         case NPY_INT:
+-            item = PyLong_FromLong(*(int32_t *)val);
++            item = PyLong_FromLong(*(npy_int *)val);
+             break;
+         case NPY_UINT:
+-            item = PyLong_FromUnsignedLong(*(uint32_t *)val);
++            item = PyLong_FromUnsignedLong(*(npy_uint *)val);
              break;
          case NPY_LONG:
 -            item = PyLong_FromLong(*(int64_t *)val);
-+            item = PyLong_FromLong(*(long *)val);
++            item = PyLong_FromLong(*(npy_long *)val);
              break;
          case NPY_ULONG:
 -            item = PyLong_FromUnsignedLong(*(uint64_t *)val);
-+            item = PyLong_FromUnsignedLong(*(unsigned long *)val);
++            item = PyLong_FromUnsignedLong(*(npy_ulong *)val);
              break;
          case NPY_LONGLONG:
-             item = PyLong_FromLongLong(*(long long *)val);
+-            item = PyLong_FromLongLong(*(long long *)val);
++            item = PyLong_FromLongLong(*(npy_longlong *)val);
+             break;
+         case NPY_ULONGLONG:
+-            item = PyLong_FromUnsignedLongLong(*(unsigned long long *)val);
++            item = PyLong_FromUnsignedLongLong(*(npy_ulonglong *)val);
+             break;
+         default:
+             item = gentype_generic_method(self, NULL, NULL, "item");

diff --git a/dev-python/numpy/numpy-1.25.1-r1.ebuild b/dev-python/numpy/numpy-1.25.1-r1.ebuild
deleted file mode 100644
index 82360199d958..000000000000
--- a/dev-python/numpy/numpy-1.25.1-r1.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=meson-python
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
-PYTHON_REQ_USE="threads(+)"
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi toolchain-funcs
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="
-	https://numpy.org/
-	https://github.com/numpy/numpy/
-	https://pypi.org/project/numpy/
-"
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="lapack"
-if [[ ${PV} != *_rc* ]] ; then
-	KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	>=dev-util/meson-1.1.0
-	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
-	lapack? (
-		virtual/pkgconfig
-	)
-	test? (
-		$(python_gen_cond_dep '
-			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-		' 'python*')
-		dev-python/charset-normalizer[${PYTHON_USEDEP}]
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		dev-python/pytest-xdist[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.25.0_rc1-meson-pyproject.toml.patch
-	"${FILESDIR}"/${PN}-1.25.0-skip-python3.12-irrelevant-tests.patch
-)
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	append-flags -fno-strict-aliasing
-
-	distutils-r1_python_prepare_all
-
-	# TODO: Please drop once 1.25.0_rc1-meson-pyproject.toml.patch is gone
-	sed -i -e "s:version = \"2.0.0.dev0\":version = \"${PV}\":" pyproject.toml || die
-}
-
-python_configure_all() {
-	DISTUTILS_ARGS=(
-		-Dblas=$(usev lapack cblas)
-		-Dlapack=$(usev lapack lapack)
-	)
-}
-
-python_test() {
-	local EPYTEST_DESELECT=(
-		# very disk-and-memory-hungry
-		lib/tests/test_io.py::test_large_zip
-
-		# precision problems
-		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
-
-		# runs the whole test suite recursively, that's just crazy
-		core/tests/test_mem_policy.py::test_new_policy
-
-		typing/tests/test_typing.py
-	)
-
-	if [[ ${EPYTHON} == pypy3 ]]; then
-		EPYTEST_DESELECT+=(
-			# TODO: crashed
-			lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-		)
-	fi
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		EPYTEST_DESELECT+=(
-			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		EPYTEST_DESELECT+=(
-			# https://github.com/numpy/numpy/issues/18388
-			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-			# more precision problems
-			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
-		)
-	fi
-
-	if [[ $(tc-endian) == "big" ]] ; then
-		# https://github.com/numpy/numpy/issues/11831 and bug #707116
-		EPYTEST_DESELECT+=(
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[t1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f90[s1]'
-			'f2py/tests/test_return_character.py::TestFReturnCharacter::test_all_f77[t1]'
-		)
-	fi
-
-	case "${ABI}" in
-		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-			EPYTEST_DESELECT+=(
-				# too large for 32-bit platforms
-				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[float64]'
-				'core/tests/test_multiarray.py::TestDot::test_huge_vectordot[complex128]'
-				lib/tests/test_histograms.py::TestHistogram::test_big_arrays
-			)
-			;;
-		*)
-			;;
-	esac
-
-	rm -rf numpy || die
-	epytest -n "$(makeopts_jobs)" --pyargs numpy
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.25.1-r2.ebuild b/dev-python/numpy/numpy-1.25.1-r3.ebuild
similarity index 100%
rename from dev-python/numpy/numpy-1.25.1-r2.ebuild
rename to dev-python/numpy/numpy-1.25.1-r3.ebuild


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-07-08 11:30 Benda XU
  0 siblings, 0 replies; 26+ messages in thread
From: Benda XU @ 2023-07-08 11:30 UTC (permalink / raw
  To: gentoo-commits

commit:     ea2987349ece6f07da01e1c2f3e9808455fa394c
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  8 11:13:18 2023 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Sat Jul  8 11:30:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea298734

dev-python/numpy: expose the CPU_FALGS_X86 switches.

This patch allows users to switch the CPU flags.  It saves
distutils-probing time and avoids build errors when distutils figures
out a wrong CPU-feature set.

I do not have a good understanding of the CPU flags in the new
dev-python/meson-python build system.  Therefore 1.25.0 is not
touched.

Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org>

 dev-python/numpy/files/replace_cpuflags.awk |  14 +++
 dev-python/numpy/numpy-1.24.4-r1.ebuild     | 186 ++++++++++++++++++++++++++++
 2 files changed, 200 insertions(+)

diff --git a/dev-python/numpy/files/replace_cpuflags.awk b/dev-python/numpy/files/replace_cpuflags.awk
new file mode 100644
index 000000000000..11b8bd53b2c3
--- /dev/null
+++ b/dev-python/numpy/files/replace_cpuflags.awk
@@ -0,0 +1,14 @@
+#!/usr/bin/awk -f
+
+{
+    GENTOO_ENABLE=1;
+    if (match($0, /flags="([^"=]*)"/, cflags)) {
+        split(cflags[1], fields);
+        for (i in fields) {
+            if (match(fields[i], /-m([[:graph:]]*)/, inst)) {
+                if (!index(enabled_flags, inst[1])) {
+                    GENTOO_ENABLE=0;
+                }}}}
+    if (!GENTOO_ENABLE) { sub(cflags[1], "-mGENTOO_DISABLE"); }
+    print; 
+}

diff --git a/dev-python/numpy/numpy-1.24.4-r1.ebuild b/dev-python/numpy/numpy-1.24.4-r1.ebuild
new file mode 100644
index 000000000000..2166e7e7a52d
--- /dev/null
+++ b/dev-python/numpy/numpy-1.24.4-r1.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{9..11} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi
+inherit toolchain-funcs
+
+DOC_PV=${PV}
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="
+	https://numpy.org/
+	https://github.com/numpy/numpy/
+	https://pypi.org/project/numpy/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+CPU_FLAGS_X86=( avx avx2 avx512dq avx512f avx512vl f16c fma4 popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3 xop )
+IUSE="lapack $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
+
+RDEPEND="
+	lapack? (
+		>=virtual/cblas-3.8
+		>=virtual/lapack-3.8
+	)
+"
+BDEPEND="
+	${RDEPEND}
+	<dev-python/cython-3[${PYTHON_USEDEP}]
+	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
+	lapack? (
+		virtual/pkgconfig
+	)
+	test? (
+		$(python_gen_cond_dep '
+			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+		' 'python*')
+		dev-python/charset-normalizer[${PYTHON_USEDEP}]
+		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+		dev-python/pytest-xdist[${PYTHON_USEDEP}]
+		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.24.3-fix-c++-linkage.patch
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	# Allow use with setuptools 60.x
+	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
+	export SETUPTOOLS_USE_DISTUTILS=stdlib
+
+	if use lapack; then
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			include_dirs = ${incdir}
+			library_dirs = ${libdir}
+			blas_libs = cblas,blas
+			[lapack]
+			library_dirs = ${libdir}
+			lapack_libs = lapack
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	# The following has no effect on architectures other than x86 and amd64.
+	local flag enabled_flags=()
+	for flag in "${CPU_FLAGS_X86[@]}"; do
+		use cpu_flags_x86_${flag} && enabled_flags+=( ${flag/_/.} )
+	done
+	gawk -i inplace -v "enabled_flags=${enabled_flags[*]}" \
+		-f "${FILESDIR}"/replace_cpuflags.awk \
+		numpy/distutils/ccompiler_opt.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	local -x MAKEOPTS=-j1 #660754
+
+	distutils-r1_python_compile ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	local EPYTEST_DESELECT=(
+		# very disk- and memory-hungry
+		numpy/lib/tests/test_histograms.py::TestHistogram::test_big_arrays
+		numpy/lib/tests/test_io.py::test_large_zip
+
+		# precision problems
+		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
+
+		# runs the whole test suite recursively, that's just crazy
+		numpy/core/tests/test_mem_policy.py::test_new_policy
+
+		# very slow, unlikely to be practically useful
+		numpy/typing/tests/test_typing.py
+	)
+
+	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
+		# Degenerate case. arm32 chroot on arm64.
+		# bug #774108
+		EPYTEST_DESELECT+=(
+			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
+		)
+	fi
+
+	if use x86 ; then
+		EPYTEST_DESELECT+=(
+			# https://github.com/numpy/numpy/issues/18388
+			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
+			# https://github.com/numpy/numpy/issues/18387
+			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
+			# more precision problems
+			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
+		)
+	fi
+
+	case "${ABI}" in
+		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
+			EPYTEST_DESELECT+=(
+				# too large for 32-bit platforms
+				numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
+			)
+			;;
+		*)
+			;;
+	esac
+
+	distutils_install_for_testing --single-version-externally-managed \
+		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TEST_DIR}/lib" || die
+	epytest -k "not _fuzz" -n "$(makeopts_jobs)"
+}
+
+python_install() {
+	# https://github.com/numpy/numpy/issues/16005
+	local mydistutilsargs=( build_src )
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+	python_optimize
+}
+
+python_install_all() {
+	local DOCS=( LICENSE.txt README.md THANKS.txt )
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-06-26 13:14 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2023-06-26 13:14 UTC (permalink / raw
  To: gentoo-commits

commit:     6e1f8eac3fc440fe8fe3de5d6f408e1a209df777
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 26 13:11:27 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 26 13:14:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e1f8eac

dev-python/numpy: backport long double check fix

Many thanks to matoro for this.

Closes: https://bugs.gentoo.org/908738
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/numpy-1.25.0-fix-long-double-check.patch | 151 +++++++++++++++++++++
 dev-python/numpy/numpy-1.25.0.ebuild               |   1 +
 2 files changed, 152 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.25.0-fix-long-double-check.patch b/dev-python/numpy/files/numpy-1.25.0-fix-long-double-check.patch
new file mode 100644
index 000000000000..4f3ef21c93b3
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.25.0-fix-long-double-check.patch
@@ -0,0 +1,151 @@
+https://github.com/numpy/numpy/commit/de0b2d5c6dee9303c4a055e7591978ed5a06e403
+
+From de0b2d5c6dee9303c4a055e7591978ed5a06e403 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Sun, 18 Jun 2023 19:39:06 -0400
+Subject: [PATCH] BLD: Port long double identification to C for meson
+
+This ports the old Python code for identifying the long double
+representation to C, so that it can be easily invoked by meson.  The
+original implementation is at https://github.com/numpy/numpy/blob/eead09a3d02c09374942cdc787c0b5e4fe9e7472/numpy/core/setup_common.py#L264-L434
+
+The C portion of the code has been tested and confirmed to work on
+systems with the following formats, either natively or via an
+alternative ABI:  INTEL_EXTENDED_16_BYTES_LE, IEEE_QUAD_BE,
+IEEE_QUAD_LE, IBM_DOUBLE_DOUBLE_BE, IBM_DOUBLE_DOUBLE_LE,
+IEEE_DOUBLE_BE, INTEL_EXTENDED_12_BYTES_LE.
+
+The original meson port includes an error condition with the comment
+"This should not be possible, 12 bits of "content" should still result
+in sizeof() being 16."  As far as I can tell this is incorrect, as
+compiling on an x86_64 system with 32-bit ABI (gcc -m32) does indeed
+have sizeof(long double)==12.  This is reflected in the C code.
+
+Closes gh-23972, closes
+https://github.com/mesonbuild/meson/issues/11068.
+---
+ numpy/core/meson.build | 110 ++++++++++++++++++++++++++++++++---------
+ 1 file changed, 87 insertions(+), 23 deletions(-)
+
+diff --git a/numpy/core/meson.build b/numpy/core/meson.build
+index 3427de408f1..92b393e4bc1 100644
+--- a/numpy/core/meson.build
++++ b/numpy/core/meson.build
+@@ -361,29 +361,93 @@ foreach intrin: optional_intrinsics
+   endif
+ endforeach
+ 
+-# long double representation detection (see setup_common.py)
+-# TODO: this is still incomplete, and different from how it's done in the
+-# numpy.distutils based build, see https://github.com/mesonbuild/meson/issues/11068
+-longdouble_size = cc.sizeof('long double')
+-if longdouble_size == 8
+-  if host_machine.endian() == 'little'
+-    longdouble_format = 'IEEE_DOUBLE_LE'
+-  else
+-    longdouble_format = 'IEEE_DOUBLE_BE'
+-  endif
+-elif longdouble_size == 12
+-  error('This should not be possible, 12 bits of "content" should still result in sizeof() being 16. Please report this error!'
+-  )
+-elif longdouble_size == 16
+-  if host_machine.endian() == 'little'
+-    # FIXME: this varies, there's multiple formats here! Not yet implemented.
+-    #        TBD how we deal with the mess of old long double formats.
+-    longdouble_format = 'INTEL_EXTENDED_16_BYTES_LE'
+-  else
+-    error('No idea what this is ....')
+-  endif
+-else
+-  error('Unknown long double size: ' + londouble_size)
++# This is a port of the old python code for identifying the long double
++# representation to C.  The old Python code is in this range:
++# https://github.com/numpy/numpy/blob/eead09a3d02c09374942cdc787c0b5e4fe9e7472/numpy/core/setup_common.py#L264-L434
++# This port is in service of solving gh-23972
++# as well as https://github.com/mesonbuild/meson/issues/11068
++longdouble_format = meson.get_compiler('c').run(
++'''
++#include <stdio.h>
++#include <string.h>
++
++#define repcmp(z) (memcmp((const char *)&foo.x, z, sizeof(foo.x)) == 0)
++
++const struct {
++  char before[16];
++  long double x;
++  char after[8];
++} foo = {{'\0'}, -123456789.0, {'\0'}};
++
++int main(void) {
++  switch (sizeof(foo.x)) {
++  case 8: {
++    if (repcmp(
++            ((const char[]){0000, 0000, 0000, 0124, 0064, 0157, 0235, 0301}))) {
++      fprintf(stdout, "IEEE_DOUBLE_LE");
++      return 0;
++    }
++    if (repcmp(
++            ((const char[]){0301, 0235, 0157, 0064, 0124, 0000, 0000, 0000}))) {
++      fprintf(stdout, "IEEE_DOUBLE_BE");
++      return 0;
++    }
++    fprintf(stdout, "UNKNOWN");
++    return 1;
++  }
++  case 12: {
++    if (repcmp(((const char[]){0000, 0000, 0000, 0000, 0240, 0242, 0171, 0353,
++                               0031, 0300, 0000, 0000}))) {
++      fprintf(stdout, "INTEL_EXTENDED_12_BYTES_LE");
++      return 0;
++    }
++    if (repcmp(((const char[]){0300, 0031, 0000, 0000, 0353, 0171, 0242, 0240,
++                               0000, 0000, 0000, 0000}))) {
++      fprintf(stdout, "MOTOROLA_EXTENDED_12_BYTES_BE");
++      return 0;
++    }
++    fprintf(stdout, "UNKNOWN");
++    return 1;
++  }
++  case 16: {
++    if (repcmp(
++            ((const char[]){0000, 0000, 0000, 0000, 0240, 0242, 0171, 0353,
++                            0031, 0300, 0000, 0000, 0000, 0000, 0000, 0000}))) {
++      fprintf(stdout, "INTEL_EXTENDED_16_BYTES_LE");
++      return 0;
++    }
++    if (repcmp(
++            ((const char[]){0300, 0031, 0326, 0363, 0105, 0100, 0000, 0000,
++                            0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000}))) {
++      fprintf(stdout, "IEEE_QUAD_BE");
++      return 0;
++    }
++    if (repcmp(
++            ((const char[]){0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000,
++                            0000, 0000, 0100, 0105, 0363, 0326, 0031, 0300}))) {
++      fprintf(stdout, "IEEE_QUAD_LE");
++      return 0;
++    }
++    if (repcmp(
++            ((const char[]){0000, 0000, 0000, 0124, 0064, 0157, 0235, 0301,
++                            0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000}))) {
++      fprintf(stdout, "IBM_DOUBLE_DOUBLE_LE");
++      return 0;
++    }
++    if (repcmp(
++            ((const char[]){0301, 0235, 0157, 0064, 0124, 0000, 0000, 0000,
++                            0000, 0000, 0000, 0000, 0000, 0000, 0000, 0000}))) {
++      fprintf(stdout, "IBM_DOUBLE_DOUBLE_BE");
++      return 0;
++    }
++    fprintf(stdout, "UNKNOWN");
++    return 1;
++  }
++  }
++}
++''').stdout()
++if longdouble_format == 'UNKNOWN' or longdouble_format == 'UNDEFINED'
++  error('Unknown long double format of size: ' + cc.sizeof('long double').to_string())
+ endif
+ cdata.set10('HAVE_LDOUBLE_' + longdouble_format, true)
+ 
+

diff --git a/dev-python/numpy/numpy-1.25.0.ebuild b/dev-python/numpy/numpy-1.25.0.ebuild
index fc0a38bcd8ac..46dd443d0758 100644
--- a/dev-python/numpy/numpy-1.25.0.ebuild
+++ b/dev-python/numpy/numpy-1.25.0.ebuild
@@ -53,6 +53,7 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}"/${PN}-1.25.0_rc1-meson-pyproject.toml.patch
 	"${FILESDIR}"/${PN}-1.25.0-skip-python3.12-irrelevant-tests.patch
+	"${FILESDIR}"/${PN}-1.25.0-fix-long-double-check.patch
 )
 
 distutils_enable_tests pytest


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-06-12 15:22 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2023-06-12 15:22 UTC (permalink / raw
  To: gentoo-commits

commit:     358874f189c9f8d2e1532ba9933ee57ac8942a95
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 12 15:20:37 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 12 15:21:15 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=358874f1

dev-python/numpy: add 1.25.0_rc1

Closes: https://bugs.gentoo.org/907309
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-python/numpy/Manifest                          |   1 +
 .../numpy-1.25.0_rc1-meson-pyproject.toml.patch    | 392 +++++++++++++++++++++
 dev-python/numpy/numpy-1.25.0_rc1.ebuild           | 127 +++++++
 3 files changed, 520 insertions(+)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 03f5af123481..19af51f0f374 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,3 +1,4 @@
 DIST numpy-1.24.0.tar.gz 10897101 BLAKE2B 59e2b913f90de76589d8fbb2f07e2d389012c7f6ce9bd641bc4837776465ce9c41c34f19f92bee55d4bae6245c1d2c84315b359ef0b089fd68d31cd7e7ec44b1 SHA512 3b4e6255b8d39e8504a50ecd3c2ba09d5b16d3f6c70b23b67e4dbf03d1fe390c55030f46090341d39a1ee8228c61ad6212fdc6e4579fcec9e26b4dbe70268661
 DIST numpy-1.24.2.tar.gz 10906862 BLAKE2B e48f65eab709f0c57ec378d813a7b65bcaca6d5960b559d6db1c60726e5cf12517f4b2e1636b0ff815a2109925edccba200270db5170fd0aff5fd635919165ac SHA512 145fd7fb3919a185f75076d51b92c54a7fb1b776b637752ca15fdee15b239d6a517ef1bb8cded7c92e059cf6cda0146c24943c042d19b791e81125bc0ad4b820
 DIST numpy-1.24.3.tar.gz 10909904 BLAKE2B 3b14f8b6a7bd484de43c3b0e57f161388d6226e05ed9bc3d1edfaafc713b9597c7574b9b9c20b4e3a6bd291d32a607d95c72d6e25fa346ffdaf97c94767bc315 SHA512 d4b5841cbe68ee6653f99018e4e0182f2e5519a1cd69c14e0a95aa180f878e6a6786ccf0a7c78bf0d511c53e7535d7144fee428572dec7a4b60b25c8a1c0c9e1
+DIST numpy-1.25.0rc1.tar.gz 10424626 BLAKE2B 3f95bfd2f5524c35bb054b06ea697d06d217ec12a22b477b1b9bb8ba9c8e47e0463b662bf3854caf729f5202791ae4bc40ca684cfeee870a9f4c3b372bf6a9b9 SHA512 0dd7805d642549b59f2496fb1feb132b1bfc9457d7cb7c088161c8b330d11825541668dd3fba20901d68a3dfb86baf28961988993ef3c5ff2a8ed39f6fba616c

diff --git a/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch b/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch
new file mode 100644
index 000000000000..b42e6cec1c73
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.25.0_rc1-meson-pyproject.toml.patch
@@ -0,0 +1,392 @@
+https://github.com/numpy/numpy/pull/23838
+
+From 669c1a16f9e905b5b33017aa1a17cc59716ccfc7 Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Mon, 29 May 2023 16:16:41 +0200
+Subject: [PATCH 01/11] BLD: default to using meson-python as build backend
+
+---
+ pyproject.toml                 | 137 ++++++++++++++++-----------------
+ 3 files changed, 66 insertions(+), 77 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 759b538fb6e..9f03fa8d0e5 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -1,79 +1,72 @@
+ [build-system]
+-# Uncomment this line, the `meson-python` requires line, and the [project] and
+-# [project.urls] tables below in order to build with Meson by default
+-#build-backend = "mesonpy"
++build-backend = "mesonpy"
+ requires = [
+-    # setuptools, wheel and Cython are needed for the setup.py based build
+-    "setuptools==59.2.0",
+-    # `wheel` is needed for non-isolated builds, given that `meson-python`
+-    # doesn't list it as a runtime requirement (at least in 0.11.0) - it's
+-    # likely to be removed as a dependency in meson-python 0.12.0.
+-    "wheel==0.38.1",
+-    "Cython>=0.29.34,<3.0",
+-#    "meson-python>=0.10.0",
++    "Cython>=0.29.34",
++    "meson-python>=0.13.1",
+ ]
+ 
+-#[project]
+-#name = "numpy"
+-#
+-## Using https://peps.python.org/pep-0639/
+-## which is still in draft
+-#license = {text = "BSD-3-Clause"}
+-## Note: needed for Meson, but setuptools errors on it. Uncomment once Meson is default.
+-##license-files.paths = [
+-##    "LICENSE.txt",
+-##    "LICENSES_bundles.txt"
+-##]
+-#
+-#description = "Fundamental package for array computing in Python"
+-#authors = [{name = "Travis E. Oliphant et al."}]
+-#maintainers = [
+-#    {name = "NumPy Developers", email="numpy-discussion@python.org"},
+-#]
+-#requires-python = ">=3.9"
+-#readme = "README.md"
+-#classifiers = [
+-#    'Development Status :: 5 - Production/Stable',
+-#    'Intended Audience :: Science/Research',
+-#    'Intended Audience :: Developers',
+-#    'License :: OSI Approved :: BSD License',
+-#    'Programming Language :: C',
+-#    'Programming Language :: Python',
+-#    'Programming Language :: Python :: 3',
+-#    'Programming Language :: Python :: 3.9',
+-#    'Programming Language :: Python :: 3.10',
+-#    'Programming Language :: Python :: 3.11',
+-#    'Programming Language :: Python :: 3 :: Only',
+-#    'Programming Language :: Python :: Implementation :: CPython',
+-#    'Topic :: Software Development',
+-#    'Topic :: Scientific/Engineering',
+-#    'Typing :: Typed',
+-#    'Operating System :: Microsoft :: Windows',
+-#    'Operating System :: POSIX',
+-#    'Operating System :: Unix',
+-#    'Operating System :: MacOS',
+-#]
+-#dynamic = ["version", "scripts"]
+-#
+-#[project.scripts]
+-## Note: this is currently dynamic, see setup.py. Can we get rid of that?
+-##       see commit f22a33b71 for rationale for dynamic behavior
+-#'f2py = numpy.f2py.f2py2e:main'
+-#'f2py3 = numpy.f2py.f2py2e:main'
+-#'f2py3.MINOR_VERSION = numpy.f2py.f2py2e:main'
+-#
+-# When enabling this stanza, make sure to remove the meson-specific xfail from
+-# numpy/tests/test_public_api.py
+-#[project.entry-points]
+-#'array_api': 'numpy = numpy.array_api'
+-#'pyinstaller40': 'hook-dirs = numpy:_pyinstaller_hooks_dir'
+-#
+-#[project.urls]
+-#homepage = "https://numpy.org"
+-#documentation = "https://numpy.org/doc/"
+-#source = "https://github.com/numpy/numpy"
+-#download = "https://pypi.org/project/numpy/#files"
+-#tracker = "https://github.com/numpy/numpy/issues"
++[project]
++name = "numpy"
++version = "2.0.0.dev0"
++
++# Using https://peps.python.org/pep-0639/ which is still in draft
++license = {text = "BSD-3-Clause"}
++license-files.paths = [
++    "LICENSE.txt",
++    "LICENSES_bundles.txt"
++]
++
++description = "Fundamental package for array computing in Python"
++authors = [{name = "Travis E. Oliphant et al."}]
++maintainers = [
++    {name = "NumPy Developers", email="numpy-discussion@python.org"},
++]
++requires-python = ">=3.9"
++readme = "README.md"
++classifiers = [
++    'Development Status :: 5 - Production/Stable',
++    'Intended Audience :: Science/Research',
++    'Intended Audience :: Developers',
++    'License :: OSI Approved :: BSD License',
++    'Programming Language :: C',
++    'Programming Language :: Python',
++    'Programming Language :: Python :: 3',
++    'Programming Language :: Python :: 3.9',
++    'Programming Language :: Python :: 3.10',
++    'Programming Language :: Python :: 3.11',
++    'Programming Language :: Python :: 3.12',
++    'Programming Language :: Python :: 3 :: Only',
++    'Programming Language :: Python :: Implementation :: CPython',
++    'Topic :: Software Development',
++    'Topic :: Scientific/Engineering',
++    'Typing :: Typed',
++    'Operating System :: Microsoft :: Windows',
++    'Operating System :: POSIX',
++    'Operating System :: Unix',
++    'Operating System :: MacOS',
++]
++#dynamic = ["scripts"]
++
++[project.scripts]
++# TODO: this is currently dynamic for minor version support. See also the same
++# thing in setup.py. Can we get rid of that? see commit f22a33b71 for rationale
++# for dynamic behavior.
++f2py = 'numpy.f2py.f2py2e:main'
++f2py3 = 'numpy.f2py.f2py2e:main'
++#f2py3.MINOR_VERSION = 'numpy.f2py.f2py2e:main'
++
++[project.entry-points.array_api]
++numpy = 'numpy.array_api'
++
++[project.entry-points.pyinstaller40]
++hook-dirs = 'numpy:_pyinstaller_hooks_dir'
++
++[project.urls]
++homepage = "https://numpy.org"
++documentation = "https://numpy.org/doc/"
++source = "https://github.com/numpy/numpy"
++download = "https://pypi.org/project/numpy/#files"
++tracker = "https://github.com/numpy/numpy/issues"
+ 
+ [tool.towncrier]
+     # Do no set this since it is hard to import numpy inside the source directory
+
+From 02cae331443d6955dba8ce5e981c24a7b6c01ec6 Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Mon, 29 May 2023 18:51:54 +0200
+Subject: [PATCH 04/11] BLD: fix bug with CMake fallback detection of
+ BLAS/LAPACK
+
+---
+ numpy/meson.build | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/numpy/meson.build b/numpy/meson.build
+index 7b85d8e92f5..ad1829a78db 100644
+--- a/numpy/meson.build
++++ b/numpy/meson.build
+@@ -198,10 +198,13 @@ foreach name, dep : dependency_map
+   if dep.found()
+     conf_data.set(name + '_VERSION', dep.version())
+     conf_data.set(name + '_TYPE_NAME', dep.type_name())
+-    conf_data.set(name + '_INCLUDEDIR', dep.get_variable('includedir'))
+-    conf_data.set(name + '_LIBDIR', dep.get_variable('libdir'))
+-    conf_data.set(name + '_OPENBLAS_CONFIG', dep.get_variable('openblas_config'))
+-    conf_data.set(name + '_PCFILEDIR', dep.get_variable('pcfiledir'))
++    if dep.type_name() == 'pkgconfig'
++      # CMake detection yields less info, so we need to leave it blank there
++      conf_data.set(name + '_INCLUDEDIR', dep.get_variable('includedir'))
++      conf_data.set(name + '_LIBDIR', dep.get_variable('libdir'))
++      conf_data.set(name + '_OPENBLAS_CONFIG', dep.get_variable('openblas_config'))
++      conf_data.set(name + '_PCFILEDIR', dep.get_variable('pcfiledir'))
++    endif
+   endif
+ endforeach
+ 
+
+From 84bea46fab251edd31bee8d8eae174cf2cb9315b Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Mon, 29 May 2023 19:15:29 +0200
+Subject: [PATCH 06/11] CI: keep the Emscripten/Pyodide job on a setup.py-based
+ build
+
+---
+ pyproject.toml.setuppy           | 9 +++++++++
+ 2 files changed, 14 insertions(+), 1 deletion(-)
+ create mode 100644 pyproject.toml.setuppy
+
+diff --git a/pyproject.toml.setuppy b/pyproject.toml.setuppy
+new file mode 100644
+index 00000000000..b28d93c8d52
+--- /dev/null
++++ b/pyproject.toml.setuppy
+@@ -0,0 +1,9 @@
++# pyproject.toml needed to build with setup.py
++# This file is used temporarily to replace the main pyproject.toml when needing
++# to avoid building with Meson (e.g., in the Emscripten/Pyodide CI job)
++[build-system]
++requires = [
++    "setuptools==59.2.0",
++    "wheel==0.38.1",
++    "Cython>=0.29.34,<3.0",
++]
+
+From 027de0ab6d24e6336682ef6fa150ae09f007a5da Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 11 Jun 2023 16:11:34 +0300
+Subject: [PATCH 07/11] use MSVC and force 64-bit OpenBLAS interfaces
+
+---
+ pyproject.toml | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 9f03fa8d0e5..6cef90c6962 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -167,6 +167,11 @@ environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFL
+ select = "*-win32"
+ environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32" }
+ 
++[tool.meson-python.args]
++setup = ['--vsenv']
++# This should not be set on 32-bit builds...
++compile = ['-DBLAS_SYMBOL_SUFFIX=64_']
++
+ [tool.spin]
+ package = 'numpy'
+ 
+
+From 9ce0d806a881c87a203efccf106cf5d3d6bb46e0 Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 11 Jun 2023 16:28:35 +0300
+Subject: [PATCH 08/11] drop rtools in wheel builds, do
+ -DDBLAS_SYMBOL_SUFFIX=64_ differently
+
+---
+ pyproject.toml               |  8 +++-----
+ 2 files changed, 3 insertions(+), 16 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 6cef90c6962..a9d7f87b2b5 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
+ manylinux-x86_64-image = "manylinux2014"
+ manylinux-aarch64-image = "manylinux2014"
+ musllinux-x86_64-image = "musllinux_1_1"
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
+ 
+ [tool.cibuildwheel.macos]
+ # For universal2 wheels, we will need to fuse them manually
+@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing", LDFLAGS="-Wl,--strip-deb
+ archs = "x86_64 arm64"
+ test-skip = "*_universal2:arm64"
+ # MACOS linker doesn't support stripping symbols
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
+ 
+ [tool.cibuildwheel.windows]
+-environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="", LDFLAGS="" }
++environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
+ 
+ [[tool.cibuildwheel.overrides]]
+ select = "*-win32"
+@@ -169,8 +169,6 @@ environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFL
+ 
+ [tool.meson-python.args]
+ setup = ['--vsenv']
+-# This should not be set on 32-bit builds...
+-compile = ['-DBLAS_SYMBOL_SUFFIX=64_']
+ 
+ [tool.spin]
+ package = 'numpy'
+
+From 067e51454eeff3ce302144803baef92add308668 Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 11 Jun 2023 17:05:02 +0300
+Subject: [PATCH 09/11] typo, install pkg-config on windows
+
+---
+ pyproject.toml               | 6 +++---
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index a9d7f87b2b5..a0b645938d1 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
+ manylinux-x86_64-image = "manylinux2014"
+ manylinux-aarch64-image = "manylinux2014"
+ musllinux-x86_64-image = "musllinux_1_1"
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
+ 
+ [tool.cibuildwheel.macos]
+ # For universal2 wheels, we will need to fuse them manually
+@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_"
+ archs = "x86_64 arm64"
+ test-skip = "*_universal2:arm64"
+ # MACOS linker doesn't support stripping symbols
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DDBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
+ 
+ [tool.cibuildwheel.windows]
+-environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DDBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
++environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
+ 
+ [[tool.cibuildwheel.overrides]]
+ select = "*-win32"
+
+From 9999c3f3a8c7facef77dc9859a8a25f39f14f7fd Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 11 Jun 2023 22:18:57 +0300
+Subject: [PATCH 10/11] set PKG_CONFIG_PATH for windows, add CXXFLAGS
+
+---
+ pyproject.toml                    | 6 +++---
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index a0b645938d1..32bde348d7d 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -147,7 +147,7 @@ test-command = "bash {project}/tools/wheels/cibw_test_command.sh {project}"
+ manylinux-x86_64-image = "manylinux2014"
+ manylinux-aarch64-image = "manylinux2014"
+ musllinux-x86_64-image = "musllinux_1_1"
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="-Wl,--strip-debug", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS="-Wl,--strip-debug", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", RUNNER_OS="Linux"}
+ 
+ [tool.cibuildwheel.macos]
+ # For universal2 wheels, we will need to fuse them manually
+@@ -158,10 +158,10 @@ environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_",
+ archs = "x86_64 arm64"
+ test-skip = "*_universal2:arm64"
+ # MACOS linker doesn't support stripping symbols
+-environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS" }
++environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS"}
+ 
+ [tool.cibuildwheel.windows]
+-environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_", LDFLAGS="" }
++environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS=""}
+ 
+ [[tool.cibuildwheel.overrides]]
+ select = "*-win32"
+
+From ffcd334bd9da7ce4779e79636ecd047e2f20dd5b Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 11 Jun 2023 23:17:00 +0300
+Subject: [PATCH 11/11] disable pypy builds, move PKG_CONFIG_PATH for windows
+
+---
+ pyproject.toml                    | 4 ++--
+ 3 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 32bde348d7d..55065d1362f 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -161,11 +161,11 @@ test-skip = "*_universal2:arm64"
+ environment = { CFLAGS="-std=c99 -fno-strict-aliasing -DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", OPENBLAS64_="/usr/local", NPY_USE_BLAS_ILP64="1", CC="clang", CXX = "clang++", RUNNER_OS="macOS"}
+ 
+ [tool.cibuildwheel.windows]
+-environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS=""}
++environment = { OPENBLAS64_="openblas", OPENBLAS="", NPY_USE_BLAS_ILP64="1", CFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", CXXFLAGS="-DBLAS_SYMBOL_SUFFIX=64_ -DHAVE_BLAS_ILP64", LDFLAGS="", PKG_CONFIG_PATH="D:\\a\\numpy\\numpy\\openblas\\lib\\pkgconfig;"}
+ 
+ [[tool.cibuildwheel.overrides]]
+ select = "*-win32"
+-environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32" }
++environment = { OPENBLAS64_="", OPENBLAS="openblas", NPY_USE_BLAS_ILP64="0", CFLAGS="-m32", LDFLAGS="-m32", PKG_CONFIG_PATH="D:\\a\\numpy\\numpy\\openblas\\lib\\pkgconfig;"}
+ 
+ [tool.meson-python.args]
+ setup = ['--vsenv']

diff --git a/dev-python/numpy/numpy-1.25.0_rc1.ebuild b/dev-python/numpy/numpy-1.25.0_rc1.ebuild
new file mode 100644
index 000000000000..2851cc764551
--- /dev/null
+++ b/dev-python/numpy/numpy-1.25.0_rc1.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="threads(+)"
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="
+	https://numpy.org/
+	https://github.com/numpy/numpy/
+	https://pypi.org/project/numpy/
+"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="doc lapack"
+if [[ ${PV} != *_rc* ]] ; then
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+fi
+
+RDEPEND="
+	lapack? (
+		>=virtual/cblas-3.8
+		>=virtual/lapack-3.8
+	)
+"
+BDEPEND="
+	${RDEPEND}
+	<dev-python/cython-3[${PYTHON_USEDEP}]
+	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
+	lapack? (
+		virtual/pkgconfig
+	)
+	test? (
+		$(python_gen_cond_dep '
+			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+		' 'python*')
+		dev-python/charset_normalizer[${PYTHON_USEDEP}]
+		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+		dev-python/pytest-xdist[${PYTHON_USEDEP}]
+		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.25.0_rc1-meson-pyproject.toml.patch
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	append-flags -fno-strict-aliasing
+
+	distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+	DISTUTILS_ARGS=(
+		-Dblas=$(usev lapack cblas)
+		-Dlapack=$(usev lapack lapack)
+	)
+}
+
+python_test() {
+	local EPYTEST_DESELECT=(
+		# very disk-and-memory-hungry
+		lib/tests/test_io.py::test_large_zip
+
+		# precision problems
+		core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
+
+		# runs the whole test suite recursively, that's just crazy
+		core/tests/test_mem_policy.py::test_new_policy
+
+		typing/tests/test_typing.py
+	)
+
+	local EPYTEST_IGNORE=(
+		# very slow, unlikely to be practically useful
+		#typing/tests/test_typing.py
+	)
+
+	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
+		# Degenerate case. arm32 chroot on arm64.
+		# bug #774108
+		EPYTEST_DESELECT+=(
+			core/tests/test_cpu_features.py::Test_ARM_Features::test_features
+		)
+	fi
+
+	if use x86 ; then
+		EPYTEST_DESELECT+=(
+			# https://github.com/numpy/numpy/issues/18388
+			core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
+			# https://github.com/numpy/numpy/issues/18387
+			random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
+			# more precision problems
+			core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
+		)
+	fi
+
+	case "${ABI}" in
+		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
+			EPYTEST_DESELECT+=(
+				# too large for 32-bit platforms
+				core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
+			)
+			;;
+		*)
+			;;
+	esac
+
+	rm -rf numpy || die
+	epytest -n "$(makeopts_jobs)" --pyargs numpy
+}
+
+python_install_all() {
+	local DOCS=( LICENSE.txt README.md THANKS.txt )
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2023-06-12  0:45 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2023-06-12  0:45 UTC (permalink / raw
  To: gentoo-commits

commit:     95bc234cf4f8d823d890a17571c7d517b42e6c4e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 12 00:44:01 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 12 00:44:06 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95bc234c

dev-python/numpy: fix build/link with libcxx

New revision as this pretty much only worked by chance before and could
affect the installed files as a result.

Closes: https://bugs.gentoo.org/893962
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../numpy/files/numpy-1.24.3-fix-c++-linkage.patch |  25 +++
 dev-python/numpy/numpy-1.24.3-r1.ebuild            | 176 +++++++++++++++++++++
 2 files changed, 201 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch b/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch
new file mode 100644
index 000000000000..ae7d5ba0ea49
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.24.3-fix-c++-linkage.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/893962
+https://github.com/numpy/numpy/issues/23122
+https://github.com/numpy/numpy/pull/23601
+
+From 0a0240bcdad5daa0b84781719b3f8a002ef0f82b Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Sun, 16 Apr 2023 22:23:38 +0100
+Subject: [PATCH] BLD: use the C++ linker to link `_multiarray_umath.so`
+
+This gets rid of undefined symbol issues for `assert`.
+
+Closes gh-23122
+Closes gh-23595
+--- a/numpy/core/setup.py
++++ b/numpy/core/setup.py
+@@ -1010,9 +1010,6 @@ def generate_umath_doc_header(ext, build_dir):
+         svml_objs.sort()
+ 
+     config.add_extension('_multiarray_umath',
+-                         # Forcing C language even though we have C++ sources.
+-                         # It forces the C linker and don't link C++ runtime.
+-                         language = 'c',
+                          sources=multiarray_src + umath_src +
+                                  common_src +
+                                  [generate_config_h,

diff --git a/dev-python/numpy/numpy-1.24.3-r1.ebuild b/dev-python/numpy/numpy-1.24.3-r1.ebuild
new file mode 100644
index 000000000000..7abf863915aa
--- /dev/null
+++ b/dev-python/numpy/numpy-1.24.3-r1.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{9..11} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 multiprocessing pypi
+inherit toolchain-funcs
+
+DOC_PV=${PV}
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="
+	https://numpy.org/
+	https://github.com/numpy/numpy/
+	https://pypi.org/project/numpy/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="lapack"
+
+RDEPEND="
+	lapack? (
+		>=virtual/cblas-3.8
+		>=virtual/lapack-3.8
+	)
+"
+BDEPEND="
+	${RDEPEND}
+	<dev-python/cython-3[${PYTHON_USEDEP}]
+	>=dev-python/cython-0.29.30[${PYTHON_USEDEP}]
+	lapack? (
+		virtual/pkgconfig
+	)
+	test? (
+		$(python_gen_cond_dep '
+			>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+		' 'python*')
+		dev-python/charset_normalizer[${PYTHON_USEDEP}]
+		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+		dev-python/pytest-xdist[${PYTHON_USEDEP}]
+		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.24.3-fix-c++-linkage.patch
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	# Allow use with setuptools 60.x
+	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
+	export SETUPTOOLS_USE_DISTUTILS=stdlib
+
+	if use lapack; then
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			include_dirs = ${incdir}
+			library_dirs = ${libdir}
+			blas_libs = cblas,blas
+			[lapack]
+			library_dirs = ${libdir}
+			lapack_libs = lapack
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	local -x MAKEOPTS=-j1 #660754
+
+	distutils-r1_python_compile ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	local EPYTEST_DESELECT=(
+		# very disk- and memory-hungry
+		numpy/lib/tests/test_histograms.py::TestHistogram::test_big_arrays
+		numpy/lib/tests/test_io.py::test_large_zip
+
+		# precision problems
+		numpy/core/tests/test_umath_accuracy.py::TestAccuracy::test_validate_transcendentals
+
+		# runs the whole test suite recursively, that's just crazy
+		numpy/core/tests/test_mem_policy.py::test_new_policy
+
+		# very slow, unlikely to be practically useful
+		numpy/typing/tests/test_typing.py
+	)
+
+	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
+		# Degenerate case. arm32 chroot on arm64.
+		# bug #774108
+		EPYTEST_DESELECT+=(
+			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
+		)
+	fi
+
+	if use x86 ; then
+		EPYTEST_DESELECT+=(
+			# https://github.com/numpy/numpy/issues/18388
+			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
+			# https://github.com/numpy/numpy/issues/18387
+			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
+			# more precision problems
+			numpy/core/tests/test_einsum.py::TestEinsum::test_einsum_sums_int16
+		)
+	fi
+
+	case "${ABI}" in
+		alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
+			EPYTEST_DESELECT+=(
+				# too large for 32-bit platforms
+				numpy/core/tests/test_ufunc.py::TestUfunc::test_identityless_reduction_huge_array
+			)
+			;;
+		*)
+			;;
+	esac
+
+	distutils_install_for_testing --single-version-externally-managed \
+		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TEST_DIR}/lib" || die
+	epytest -k "not _fuzz" -n "$(makeopts_jobs)"
+}
+
+python_install() {
+	# https://github.com/numpy/numpy/issues/16005
+	local mydistutilsargs=( build_src )
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+	python_optimize
+}
+
+python_install_all() {
+	local DOCS=( LICENSE.txt README.md THANKS.txt )
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2022-05-23  8:33 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2022-05-23  8:33 UTC (permalink / raw
  To: gentoo-commits

commit:     aba288aeb986c522c606de433288da3bd1ecb1a7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon May 23 08:10:50 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon May 23 08:33:21 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aba288ae

dev-python/numpy: Enable py3.11

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

 dev-python/numpy/files/numpy-1.22.4-py311.patch | 31 +++++++++++++++++++++++++
 dev-python/numpy/numpy-1.22.4.ebuild            | 10 ++++++--
 2 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/dev-python/numpy/files/numpy-1.22.4-py311.patch b/dev-python/numpy/files/numpy-1.22.4-py311.patch
new file mode 100644
index 000000000000..7af6431a5892
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.22.4-py311.patch
@@ -0,0 +1,31 @@
+From 42f3203a45231b338cf1a4c77fe81ca4b7fef4ef Mon Sep 17 00:00:00 2001
+From: Bas van Beek <43369155+BvB93@users.noreply.github.com>
+Date: Fri, 20 May 2022 02:42:37 +0200
+Subject: [PATCH] TST,TYP: Fix a python 3.11 failure for the `GenericAlias`
+ tests
+
+---
+ numpy/typing/tests/test_generic_alias.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/numpy/typing/tests/test_generic_alias.py b/numpy/typing/tests/test_generic_alias.py
+index 52d3deae4..267230a95 100644
+--- a/numpy/typing/tests/test_generic_alias.py
++++ b/numpy/typing/tests/test_generic_alias.py
+@@ -20,11 +20,11 @@
+ if sys.version_info >= (3, 9):
+     DType_ref = types.GenericAlias(np.dtype, (ScalarType,))
+     NDArray_ref = types.GenericAlias(np.ndarray, (Any, DType_ref))
+-    FuncType = Callable[[Union[_GenericAlias, types.GenericAlias]], Any]
++    FuncType = Callable[["_GenericAlias | types.GenericAlias"], Any]
+ else:
+     DType_ref = Any
+     NDArray_ref = Any
+-    FuncType = Callable[[_GenericAlias], Any]
++    FuncType = Callable[["_GenericAlias"], Any]
+ 
+ GETATTR_NAMES = sorted(set(dir(np.ndarray)) - _GenericAlias._ATTR_EXCEPTIONS)
+ 
+-- 
+2.35.1
+

diff --git a/dev-python/numpy/numpy-1.22.4.ebuild b/dev-python/numpy/numpy-1.22.4.ebuild
index f3f3c53c5eb8..4797c2585d6c 100644
--- a/dev-python/numpy/numpy-1.22.4.ebuild
+++ b/dev-python/numpy/numpy-1.22.4.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{8..11} )
 PYTHON_REQ_USE="threads(+)"
 
 FORTRAN_NEEDED=lapack
@@ -46,7 +46,8 @@ BDEPEND="
 "
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-1.22.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.22.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.22.4-py311.patch
 )
 
 distutils_enable_tests pytest
@@ -152,6 +153,11 @@ python_test() {
 		)
 	fi
 
+	[[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
+		# known problem
+		'numpy/typing/tests/test_generic_alias.py::TestGenericAlias::test_pass[__dir__-<lambda>]'
+	)
+
 	distutils_install_for_testing --single-version-externally-managed \
 		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
 


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2022-01-26  8:38 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2022-01-26  8:38 UTC (permalink / raw
  To: gentoo-commits

commit:     6ae5bfe71ff2b10e6ed07acaf2fa9af1830ac50c
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 26 08:36:22 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jan 26 08:37:57 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6ae5bfe7

dev-python/numpy: Remove old

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

 dev-python/numpy/Manifest                          |  16 --
 .../numpy/files/numpy-1.21.3-unaligned-array.patch |  45 ------
 .../numpy/files/numpy-1.21.4-copy-python-3.9.patch |  52 -------
 dev-python/numpy/numpy-1.21.1-r1.ebuild            | 144 ------------------
 dev-python/numpy/numpy-1.21.2-r1.ebuild            | 144 ------------------
 dev-python/numpy/numpy-1.21.3-r1.ebuild            | 152 -------------------
 dev-python/numpy/numpy-1.21.4-r2.ebuild            | 162 ---------------------
 dev-python/numpy/numpy-1.21.4.ebuild               | 151 -------------------
 8 files changed, 866 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 521499f96a7f..a38e2535662e 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,28 +1,12 @@
-DIST numpy-1.21.1.zip 10259878 BLAKE2B ba5d8eb2d294e199c86d8e96026d148098f5716398e730e0fdfee3b710fd01cb6e877973471d7751a2e558c2eaeb626fe9ce5ea4b03a7e4f8e5dc42b852d5b7c SHA512 694100915f4e2917d70a83e7fcdad30c85ffad8f5ad8d164c89287846c1b746c2b577233bacf53e8d8ca5147391f46065a2cabf100957bb8841dee4a042bc1f5
-DIST numpy-1.21.2.zip 10264801 BLAKE2B 2d88506faa5bc767a16c000f201559917d800fd205c75f30c1e61d4b34e214b376da9876e96186914f9fe23bf033a305bf9212f593841407e3bf4e516b5982a6 SHA512 ad08110d9a73a73ef1a546de5fcd6dfe600c17b396f629c3a19ade7b3f226688cf7524fed78c035fd4ddda135e2bcf9facb5e061fb59640b424da2ed070c4184
-DIST numpy-1.21.3.zip 10269351 BLAKE2B 60fc96d91e2c4e0b1c6ee409e02640686fe257f5addbb17229568f591551ea3c415c4aac97b7cdb161b88ce436e42a766b161bd5a82f8cb66fff6771c0097bd3 SHA512 8fbe4e8543b72ad5203d5b122eb3d875e48965682945898e54f4ce82cf790713dfd9185b8b12439aefa86bf25209ea25d04ec3ca2aa2b8d2f32d69358421b792
-DIST numpy-1.21.4.zip 10646392 BLAKE2B 6e2953c6ca8e35c99f5de5faaacfb2b76b351a5c9521ba27449fcdeca5614978ff7d71fc52ce3787d1c7506c4e8eb81b1a92d3bf6825de1cb1d304ea4de83820 SHA512 85575a009bf40a8e5acaaa949d2669545968825df34273e367c42af36fa882ebb0830ff7953b5617d34d3061b3877238524937c42470fac9464479dc33ae60ce
 DIST numpy-1.21.5.zip 10652289 BLAKE2B c5bded91e5d06670ea3ace51560411c61985dd89ff0455b833838320f1714cf788a21a60aefd7a0ff30ad0abb93c9d296f60e637944000efa090b6c259c1f47c SHA512 03affa9d0bbf42a8d35f5454f1527df28539e306dc2b313fa775625201a5fe9eb7376f443bba5d50e08567546708811beb7201819eeb2af5a0653b7d91249f78
 DIST numpy-1.22.0.zip 11291139 BLAKE2B 91cd2188aaa59d7be18761b74865295f400e309e34bf79067493221c5f0eb875a5c726dd8e322db84fa9714800347954b6a9896aadf914e87872497f7e65527c SHA512 dcea1a6cd257f6353caccc30b2adb1cf2e9d52191ec9f968839c85b1f776ebf8c5ac8bbf0751c2c6f292ae671e4006d26eb06691ca1504e4d65baf4cec3f9803
 DIST numpy-1.22.1.zip 11443674 BLAKE2B 3f2e5fbd449c078fd97670be14e87fd9bccc8418dc37f87199557642f0f951f5fd21b89eff938c30171eda3174c526db91e470e9e9cdc297b8abd9b4fe364ad5 SHA512 0d8b5ffb6f8377b3d6d6cb62fd7eef083f8a3b787542b7887e0d214c6fa78b63b6f726302bca554c0c11c57e4611926c8d8ff4abf5dd59842b8b58086391434d
 DIST numpy-html-1.21.0.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
-DIST numpy-html-1.21.1.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
-DIST numpy-html-1.21.2.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
-DIST numpy-html-1.21.3.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
-DIST numpy-html-1.21.4.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
 DIST numpy-html-1.21.5.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
 DIST numpy-html-1.22.1.zip 23724824 BLAKE2B 44ea3da0a703a024a629c8413dfffaf760458b185d19452da0e7e23c819e19833291e10ebd07bdda794077574b8852a368036dda8335c2753cd481740497502a SHA512 4077d9974bfd7f2c189025c3740350652e6f8e0b5727fbc9711a1c0118c1e4ecc281d4876baf1c6a5dc802d20178d6b04a2922f14e9c321cd3b68228b1e295c3
 DIST numpy-ref-1.21.0.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
-DIST numpy-ref-1.21.1.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
-DIST numpy-ref-1.21.2.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
-DIST numpy-ref-1.21.3.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
-DIST numpy-ref-1.21.4.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
 DIST numpy-ref-1.21.5.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
 DIST numpy-ref-1.22.1.pdf 7537013 BLAKE2B 702398fddde349901f9303f4788a3ae3cc4bb78b4d310e169fcc6193fd62b33947c89ede45ba9aaea55e74f6a6abc755d3d94428adce9a8163678c6718aec2da SHA512 c1617817f94ccdfe2bbdebdc9c6869beefa1369d5ab0897c1573d8fb5cb3de153f90d5588aae84a0f498fba57ad6bc5c0c5c2c3aefb119e2913e4ddf007cc8e1
 DIST numpy-user-1.21.0.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
-DIST numpy-user-1.21.1.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
-DIST numpy-user-1.21.2.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
-DIST numpy-user-1.21.3.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
-DIST numpy-user-1.21.4.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
 DIST numpy-user-1.21.5.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
 DIST numpy-user-1.22.1.pdf 3978348 BLAKE2B 87cc73cb1c406446eb9d86ea6cbaeac6ba13c7d2b2ffd47524483af1698c3efdfaafe61e987624c5ce01939494861413b271e9a96f49abbbe69d634b9be55c95 SHA512 8e04c0c90255038471de6ef0f8f4ed9e356d646b028bb16f667f3c59170eddaa0d86d48226462c5c17b8123b2a28a09982764979e9e76658b4e26cd0a976f3a1

diff --git a/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch b/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch
deleted file mode 100644
index 8d04cc0968dc..000000000000
--- a/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From d9bbd60d0f2896d1b1f865e6035dccb12db4b1a0 Mon Sep 17 00:00:00 2001
-From: Sebastian Berg <sebastian@sipsolutions.net>
-Date: Sat, 23 Oct 2021 22:54:21 -0500
-Subject: [PATCH] BUG: Do not use nonzero fastpath on unaligned arrays
-
-The fast-path does not handle unalgined access, previously only
-bools had a fast path (and bools are by definition always aligned
-since they are stored in a single byte/char).
-
-Closes gh-19592
----
- numpy/core/src/multiarray/item_selection.c | 19 +++++++------------
- 1 file changed, 7 insertions(+), 12 deletions(-)
-
-diff --git a/numpy/core/src/multiarray/item_selection.c b/numpy/core/src/multiarray/item_selection.c
-index ee66378a938..33d378c2b58 100644
---- a/numpy/core/src/multiarray/item_selection.c
-+++ b/numpy/core/src/multiarray/item_selection.c
-@@ -2398,19 +2398,14 @@ PyArray_CountNonzero(PyArrayObject *self)
-     npy_intp *strideptr, *innersizeptr;
-     NPY_BEGIN_THREADS_DEF;
- 
--    // Special low-overhead version specific to the boolean/int types
-     dtype = PyArray_DESCR(self);
--    switch(dtype->kind) {
--        case 'u':
--        case 'i':
--        case 'b':
--            if (dtype->elsize > 8) {
--                break;
--            }
--            return count_nonzero_int(
--                PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
--                PyArray_STRIDES(self), dtype->elsize
--            );
-+    /* Special low-overhead version specific to the boolean/int types */
-+    if (PyArray_ISALIGNED(self) && (
-+            PyDataType_ISBOOL(dtype) || PyDataType_ISINTEGER(dtype))) {
-+        return count_nonzero_int(
-+            PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
-+            PyArray_STRIDES(self), dtype->elsize
-+        );
-     }
- 
-     nonzero = PyArray_DESCR(self)->f->nonzero;

diff --git a/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch b/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch
deleted file mode 100644
index 81464151e753..000000000000
--- a/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-https://github.com/numpy/numpy/commit/50823973e857363f7d8052768276c2e86f004d61
-https://github.com/numpy/numpy/pull/20357
-
-From: Bas van Beek <b.f.van.beek@vu.nl>
-Date: Wed, 10 Nov 2021 15:36:00 +0100
-Subject: [PATCH] MAINT: Do not forward `__(deep)copy__` calls of
- `_GenericAlias` to the wrapped type
-
-Adapt to the python 3.9.8 changes made in bpo-45167.
---- a/numpy/typing/_generic_alias.py
-+++ b/numpy/typing/_generic_alias.py
-@@ -178,6 +178,8 @@ def __eq__(self, value: object) -> bool:
-         "__mro_entries__",
-         "__reduce__",
-         "__reduce_ex__",
-+        "__copy__",
-+        "__deepcopy__",
-     })
- 
-     def __getattribute__(self, name: str) -> Any:
---- a/numpy/typing/tests/test_generic_alias.py
-+++ b/numpy/typing/tests/test_generic_alias.py
-@@ -1,6 +1,7 @@
- from __future__ import annotations
- 
- import sys
-+import copy
- import types
- import pickle
- import weakref
-@@ -74,6 +75,21 @@ def test_pass(self, name: str, func: FuncType) -> None:
-             value_ref = func(NDArray_ref)
-             assert value == value_ref
- 
-+    @pytest.mark.parametrize("name,func", [
-+        ("__copy__", lambda n: n == copy.copy(n)),
-+        ("__deepcopy__", lambda n: n == copy.deepcopy(n)),
-+    ])
-+    def test_copy(self, name: str, func: FuncType) -> None:
-+        value = func(NDArray)
-+
-+        # xref bpo-45167
-+        GE_398 = (
-+            sys.version_info[:2] == (3, 9) and sys.version_info >= (3, 9, 8)
-+        )
-+        if GE_398 or sys.version_info >= (3, 10, 1):
-+            value_ref = func(NDArray_ref)
-+            assert value == value_ref
-+
-     def test_weakref(self) -> None:
-         """Test ``__weakref__``."""
-         value = weakref.ref(NDArray)()

diff --git a/dev-python/numpy/numpy-1.21.1-r1.ebuild b/dev-python/numpy/numpy-1.21.1-r1.ebuild
deleted file mode 100644
index b25c2008d413..000000000000
--- a/dev-python/numpy/numpy-1.21.1-r1.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="https://numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
-	)"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	app-arch/unzip
-	>=dev-python/cython-0.29.21[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/numpy-1.21.3-unaligned-array.patch
-)
-
-distutils_enable_tests pytest
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-python_prepare_all() {
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# disable fuzzed tests
-	find numpy/*/tests -name '*.py' -exec sed -i \
-		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
-	# very memory- and disk-hungry
-	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local deselect=(
-		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
-	)
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest ${deselect[@]/#/--deselect }
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-
-	if use doc; then
-		local HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.21.2-r1.ebuild b/dev-python/numpy/numpy-1.21.2-r1.ebuild
deleted file mode 100644
index 6d183c01e49b..000000000000
--- a/dev-python/numpy/numpy-1.21.2-r1.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="https://numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
-	)"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	app-arch/unzip
-	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/numpy-1.21.3-unaligned-array.patch
-)
-
-distutils_enable_tests pytest
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-python_prepare_all() {
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# disable fuzzed tests
-	find numpy/*/tests -name '*.py' -exec sed -i \
-		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
-	# very memory- and disk-hungry
-	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local deselect=(
-		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
-	)
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest ${deselect[@]/#/--deselect }
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-
-	if use doc; then
-		local HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.21.3-r1.ebuild b/dev-python/numpy/numpy-1.21.3-r1.ebuild
deleted file mode 100644
index 514a34b8e87a..000000000000
--- a/dev-python/numpy/numpy-1.21.3-r1.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="https://numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
-	)"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	app-arch/unzip
-	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/${P}-unaligned-array.patch
-)
-
-distutils_enable_tests pytest
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-python_prepare_all() {
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# disable fuzzed tests
-	find numpy/*/tests -name '*.py' -exec sed -i \
-		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
-	# very memory- and disk-hungry
-	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local deselect=(
-		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		deselect+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest ${deselect[@]/#/--deselect }
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-
-	if use doc; then
-		local HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.21.4-r2.ebuild b/dev-python/numpy/numpy-1.21.4-r2.ebuild
deleted file mode 100644
index c692fa77e87c..000000000000
--- a/dev-python/numpy/numpy-1.21.4-r2.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="https://numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
-	)"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	app-arch/unzip
-	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
-	"${FILESDIR}"/numpy-1.21.4-build-compiler-args-ceph.patch
-	"${FILESDIR}"/numpy-1.21.4-copy-python-3.9.patch
-)
-
-distutils_enable_tests pytest
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-python_prepare_all() {
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# disable fuzzed tests
-	find numpy/*/tests -name '*.py' -exec sed -i \
-		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
-	# very memory- and disk-hungry
-	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local deselect=(
-		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		deselect+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	if use x86 ; then
-		deselect+=(
-			# https://github.com/numpy/numpy/issues/18388
-			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
-			# https://github.com/numpy/numpy/issues/18387
-			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
-		)
-	fi
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest ${deselect[@]/#/--deselect }
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-
-	if use doc; then
-		local HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-}

diff --git a/dev-python/numpy/numpy-1.21.4.ebuild b/dev-python/numpy/numpy-1.21.4.ebuild
deleted file mode 100644
index 114e5f17f876..000000000000
--- a/dev-python/numpy/numpy-1.21.4.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
-
-DOC_PV=${PV}
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="https://numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
-		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
-	)"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack"
-
-RDEPEND="
-	lapack? (
-		>=virtual/cblas-3.8
-		>=virtual/lapack-3.8
-	)
-"
-BDEPEND="
-	${RDEPEND}
-	app-arch/unzip
-	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? (
-		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
-		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
-)
-
-distutils_enable_tests pytest
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-python_prepare_all() {
-	if use lapack; then
-		local incdir="${EPREFIX}"/usr/include
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = ${incdir}
-			library_dirs = ${libdir}
-			blas_libs = cblas,blas
-			[lapack]
-			library_dirs = ${libdir}
-			lapack_libs = lapack
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# disable fuzzed tests
-	find numpy/*/tests -name '*.py' -exec sed -i \
-		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
-	# very memory- and disk-hungry
-	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	export MAKEOPTS=-j1 #660754
-
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	local deselect=(
-		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
-	)
-
-	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
-		# Degenerate case. arm32 chroot on arm64.
-		# bug #774108
-		deselect+=(
-			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
-		)
-	fi
-
-	distutils_install_for_testing --single-version-externally-managed \
-		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TEST_DIR}/lib" || die
-	epytest ${deselect[@]/#/--deselect }
-}
-
-python_install() {
-	# https://github.com/numpy/numpy/issues/16005
-	local mydistutilsargs=( build_src )
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-	python_optimize
-}
-
-python_install_all() {
-	local DOCS=( LICENSE.txt README.md THANKS.txt )
-
-	if use doc; then
-		local HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2022-01-14 20:32 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2022-01-14 20:32 UTC (permalink / raw
  To: gentoo-commits

commit:     6e99b3b25a0a1bdd5b706e494b4cedb044f101fe
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 14 20:32:47 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 14 20:32:47 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e99b3b2

dev-python/numpy: add 1.22.1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-python/numpy/Manifest                          |   1 +
 ...umpy-1.22.1-revert-setuptools-upper-bound.patch |  22 +++
 dev-python/numpy/numpy-1.22.1.ebuild               | 167 +++++++++++++++++++++
 3 files changed, 190 insertions(+)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 993f73add007..ee195e3420ad 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -4,6 +4,7 @@ DIST numpy-1.21.3.zip 10269351 BLAKE2B 60fc96d91e2c4e0b1c6ee409e02640686fe257f5a
 DIST numpy-1.21.4.zip 10646392 BLAKE2B 6e2953c6ca8e35c99f5de5faaacfb2b76b351a5c9521ba27449fcdeca5614978ff7d71fc52ce3787d1c7506c4e8eb81b1a92d3bf6825de1cb1d304ea4de83820 SHA512 85575a009bf40a8e5acaaa949d2669545968825df34273e367c42af36fa882ebb0830ff7953b5617d34d3061b3877238524937c42470fac9464479dc33ae60ce
 DIST numpy-1.21.5.zip 10652289 BLAKE2B c5bded91e5d06670ea3ace51560411c61985dd89ff0455b833838320f1714cf788a21a60aefd7a0ff30ad0abb93c9d296f60e637944000efa090b6c259c1f47c SHA512 03affa9d0bbf42a8d35f5454f1527df28539e306dc2b313fa775625201a5fe9eb7376f443bba5d50e08567546708811beb7201819eeb2af5a0653b7d91249f78
 DIST numpy-1.22.0.zip 11291139 BLAKE2B 91cd2188aaa59d7be18761b74865295f400e309e34bf79067493221c5f0eb875a5c726dd8e322db84fa9714800347954b6a9896aadf914e87872497f7e65527c SHA512 dcea1a6cd257f6353caccc30b2adb1cf2e9d52191ec9f968839c85b1f776ebf8c5ac8bbf0751c2c6f292ae671e4006d26eb06691ca1504e4d65baf4cec3f9803
+DIST numpy-1.22.1.zip 11443674 BLAKE2B 3f2e5fbd449c078fd97670be14e87fd9bccc8418dc37f87199557642f0f951f5fd21b89eff938c30171eda3174c526db91e470e9e9cdc297b8abd9b4fe364ad5 SHA512 0d8b5ffb6f8377b3d6d6cb62fd7eef083f8a3b787542b7887e0d214c6fa78b63b6f726302bca554c0c11c57e4611926c8d8ff4abf5dd59842b8b58086391434d
 DIST numpy-html-1.21.0.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
 DIST numpy-html-1.21.1.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
 DIST numpy-html-1.21.2.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc

diff --git a/dev-python/numpy/files/numpy-1.22.1-revert-setuptools-upper-bound.patch b/dev-python/numpy/files/numpy-1.22.1-revert-setuptools-upper-bound.patch
new file mode 100644
index 000000000000..a2bc9c939aea
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.22.1-revert-setuptools-upper-bound.patch
@@ -0,0 +1,22 @@
+Revert https://github.com/numpy/numpy/commit/eb6be7c4765665724cd12431bfefb050ba0f2d4b.
+
+See also:
+https://github.com/pypa/setuptools/issues/2372
+https://github.com/numpy/numpy/issues/20692
+
+In the ebuild, we're forcing SETUPTOOLS_USE_DISTUTILS=stdlib which uses
+the distutils version from within Python (which will be removed in 3.11)
+rather than the bundled-in-setuptools-60 version which breaks numpy.
+--- a/setup.py
++++ b/setup.py
+@@ -80,10 +80,6 @@ if os.path.exists('MANIFEST'):
+ # so that it is in sys.modules
+ import numpy.distutils.command.sdist
+ import setuptools
+-if int(setuptools.__version__.split('.')[0]) >= 60:
+-    raise RuntimeError(
+-        "Setuptools version is '{}', version < '60.0.0' is required. "
+-        "See pyproject.toml".format(setuptools.__version__))
+ 
+ # Initialize cmdclass from versioneer
+ from numpy.distutils.core import numpy_cmdclass

diff --git a/dev-python/numpy/numpy-1.22.1.ebuild b/dev-python/numpy/numpy-1.22.1.ebuild
new file mode 100644
index 000000000000..485fd90e0cdf
--- /dev/null
+++ b/dev-python/numpy/numpy-1.22.1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
+
+# Not ready yet
+#DOC_PV=${PV}
+DOC_PV=1.21.0
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="https://numpy.org/"
+SRC_URI="
+	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
+	doc? (
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
+	)"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack"
+
+RDEPEND="
+	lapack? (
+		>=virtual/cblas-3.8
+		>=virtual/lapack-3.8
+	)
+"
+BDEPEND="
+	${RDEPEND}
+	app-arch/unzip
+	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
+	lapack? ( virtual/pkgconfig )
+	test? (
+		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.22.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/${PN}-1.22.1-revert-setuptools-upper-bound.patch
+)
+
+distutils_enable_tests pytest
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+python_prepare_all() {
+	# Allow use with setuptools 60.x
+	# See numpy-1.22.1-revert-setuptools-upper-bound.patch for details
+	export SETUPTOOLS_USE_DISTUTILS=stdlib
+
+	if use lapack; then
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			include_dirs = ${incdir}
+			library_dirs = ${libdir}
+			blas_libs = cblas,blas
+			[lapack]
+			library_dirs = ${libdir}
+			lapack_libs = lapack
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	# disable fuzzed tests
+	find numpy/*/tests -name '*.py' -exec sed -i \
+		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
+	# very memory- and disk-hungry
+	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	export MAKEOPTS=-j1 #660754
+
+	distutils-r1_python_compile ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	local deselect=(
+		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
+	)
+
+	if use arm && [[ $(uname -m || echo "unknown") == "armv8l" ]] ; then
+		# Degenerate case. arm32 chroot on arm64.
+		# bug #774108
+		deselect+=(
+			numpy/core/tests/test_cpu_features.py::Test_ARM_Features::test_features
+		)
+	fi
+
+	if use x86 ; then
+		deselect+=(
+			# https://github.com/numpy/numpy/issues/18388
+			numpy/core/tests/test_umath.py::TestRemainder::test_float_remainder_overflow
+			# https://github.com/numpy/numpy/issues/18387
+			numpy/random/tests/test_generator_mt19937.py::TestRandomDist::test_pareto
+		)
+	fi
+
+	distutils_install_for_testing --single-version-externally-managed \
+		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TEST_DIR}/lib" || die
+	epytest ${deselect[@]/#/--deselect }
+}
+
+python_install() {
+	# https://github.com/numpy/numpy/issues/16005
+	local mydistutilsargs=( build_src )
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+	python_optimize
+}
+
+python_install_all() {
+	local DOCS=( LICENSE.txt README.md THANKS.txt )
+
+	if use doc; then
+		local HTML_DOCS=( "${WORKDIR}"/html/. )
+		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
+	fi
+
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2022-01-06 16:31 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2022-01-06 16:31 UTC (permalink / raw
  To: gentoo-commits

commit:     23970fddef65b3360224902f232eaa6d54357ed2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  6 16:31:17 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan  6 16:31:39 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23970fdd

dev-python/numpy: fix blas patch

Closes: https://bugs.gentoo.org/830630
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/numpy-1.22.0-no-hardcode-blasv2.patch    | 40 ++++------------------
 ...{numpy-1.22.0.ebuild => numpy-1.22.0-r1.ebuild} |  2 +-
 2 files changed, 7 insertions(+), 35 deletions(-)

diff --git a/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch b/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
index 7c9d7768607f..d87a16a4b6c9 100644
--- a/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
+++ b/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
@@ -2,12 +2,9 @@ Originally added in: https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-python
 https://bugs.gentoo.org/567938
 --- a/numpy/distutils/system_info.py
 +++ b/numpy/distutils/system_info.py
-@@ -502,36 +502,7 @@ def get_info(name, notfound_action=0):
-       2 - raise error
-     """
-     cl = {'armpl': armpl_info,
--          'blas_armpl': blas_armpl_info,
--          'lapack_armpl': lapack_armpl_info,
+@@ -505,33 +505,7 @@ def get_info(name, notfound_action=0):
+           'blas_armpl': blas_armpl_info,
+           'lapack_armpl': lapack_armpl_info,
            'fftw3_armpl': fftw3_armpl_info,
 -          'atlas': atlas_info,  # use lapack_opt or blas_opt instead
 -          'atlas_threads': atlas_threads_info,                # ditto
@@ -31,7 +28,7 @@ https://bugs.gentoo.org/567938
 -          'blis': blis_info,                  # use blas_opt instead
 -          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
 -          'blas_mkl': blas_mkl_info,          # use blas_opt instead
--          'accelerate': accelerate_info,      # use blas_opt instead
+           'accelerate': accelerate_info,      # use blas_opt instead
 -          'openblas64_': openblas64__info,
 -          'openblas64__lapack': openblas64__lapack_info,
 -          'openblas_ilp64': openblas_ilp64_info,
@@ -39,32 +36,7 @@ https://bugs.gentoo.org/567938
            'x11': x11_info,
            'fft_opt': fft_opt_info,
            'fftw': fftw_info,
-@@ -543,24 +514,12 @@ def get_info(name, notfound_action=0):
-           'dfftw_threads': dfftw_threads_info,
-           'sfftw_threads': sfftw_threads_info,
-           'djbfft': djbfft_info,
--          'blas': blas_info,                  # use blas_opt instead
--          'lapack': lapack_info,              # use lapack_opt instead
--          'lapack_src': lapack_src_info,
--          'blas_src': blas_src_info,
-           'numpy': numpy_info,
-           'f2py': f2py_info,
-           'Numeric': Numeric_info,
-           'numeric': Numeric_info,
-           'numarray': numarray_info,
-           'numerix': numerix_info,
--          'lapack_opt': lapack_opt_info,
--          'lapack_ilp64_opt': lapack_ilp64_opt_info,
--          'lapack_ilp64_plain_opt': lapack_ilp64_plain_opt_info,
--          'lapack64__opt': lapack64__opt_info,
--          'blas_opt': blas_opt_info,
--          'blas_ilp64_opt': blas_ilp64_opt_info,
--          'blas_ilp64_plain_opt': blas_ilp64_plain_opt_info,
--          'blas64__opt': blas64__opt_info,
-           'boost_python': boost_python_info,
-           'agg2': agg2_info,
-           'wx': wx_info,
-@@ -951,10 +910,7 @@ class system_info:
+@@ -951,10 +925,7 @@ class system_info:
          return [b for b in [a.strip() for a in libs.split(',')] if b]
  
      def get_libraries(self, key='libraries'):
@@ -72,7 +44,7 @@ https://bugs.gentoo.org/567938
 -            return self.get_libs(key, default=self._lib_names)
 -        else:
 -            return self.get_libs(key, '')
-+        return self.get_libs(key, '')
++      return self.get_libs(key, '')
  
      def library_extensions(self):
          c = customized_ccompiler()

diff --git a/dev-python/numpy/numpy-1.22.0.ebuild b/dev-python/numpy/numpy-1.22.0-r1.ebuild
similarity index 99%
rename from dev-python/numpy/numpy-1.22.0.ebuild
rename to dev-python/numpy/numpy-1.22.0-r1.ebuild
index 886b232fc2f1..6037152ed67b 100644
--- a/dev-python/numpy/numpy-1.22.0.ebuild
+++ b/dev-python/numpy/numpy-1.22.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2021-11-24  1:49 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2021-11-24  1:49 UTC (permalink / raw
  To: gentoo-commits

commit:     84cb8926349b289d6886e92d15cf6c355253e555
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 24 01:48:45 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 24 01:48:45 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84cb8926

dev-python/numpy: backport python3.9+ test fix

Possible runtime repercussions so revbumping.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../numpy/files/numpy-1.21.4-copy-python-3.9.patch | 52 ++++++++++++++++++++++
 ...mpy-1.21.4-r1.ebuild => numpy-1.21.4-r2.ebuild} |  1 +
 2 files changed, 53 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch b/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch
new file mode 100644
index 000000000000..81464151e753
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.21.4-copy-python-3.9.patch
@@ -0,0 +1,52 @@
+https://github.com/numpy/numpy/commit/50823973e857363f7d8052768276c2e86f004d61
+https://github.com/numpy/numpy/pull/20357
+
+From: Bas van Beek <b.f.van.beek@vu.nl>
+Date: Wed, 10 Nov 2021 15:36:00 +0100
+Subject: [PATCH] MAINT: Do not forward `__(deep)copy__` calls of
+ `_GenericAlias` to the wrapped type
+
+Adapt to the python 3.9.8 changes made in bpo-45167.
+--- a/numpy/typing/_generic_alias.py
++++ b/numpy/typing/_generic_alias.py
+@@ -178,6 +178,8 @@ def __eq__(self, value: object) -> bool:
+         "__mro_entries__",
+         "__reduce__",
+         "__reduce_ex__",
++        "__copy__",
++        "__deepcopy__",
+     })
+ 
+     def __getattribute__(self, name: str) -> Any:
+--- a/numpy/typing/tests/test_generic_alias.py
++++ b/numpy/typing/tests/test_generic_alias.py
+@@ -1,6 +1,7 @@
+ from __future__ import annotations
+ 
+ import sys
++import copy
+ import types
+ import pickle
+ import weakref
+@@ -74,6 +75,21 @@ def test_pass(self, name: str, func: FuncType) -> None:
+             value_ref = func(NDArray_ref)
+             assert value == value_ref
+ 
++    @pytest.mark.parametrize("name,func", [
++        ("__copy__", lambda n: n == copy.copy(n)),
++        ("__deepcopy__", lambda n: n == copy.deepcopy(n)),
++    ])
++    def test_copy(self, name: str, func: FuncType) -> None:
++        value = func(NDArray)
++
++        # xref bpo-45167
++        GE_398 = (
++            sys.version_info[:2] == (3, 9) and sys.version_info >= (3, 9, 8)
++        )
++        if GE_398 or sys.version_info >= (3, 10, 1):
++            value_ref = func(NDArray_ref)
++            assert value == value_ref
++
+     def test_weakref(self) -> None:
+         """Test ``__weakref__``."""
+         value = weakref.ref(NDArray)()

diff --git a/dev-python/numpy/numpy-1.21.4-r1.ebuild b/dev-python/numpy/numpy-1.21.4-r2.ebuild
similarity index 98%
rename from dev-python/numpy/numpy-1.21.4-r1.ebuild
rename to dev-python/numpy/numpy-1.21.4-r2.ebuild
index 144d2a9d4574..27db26c49415 100644
--- a/dev-python/numpy/numpy-1.21.4-r1.ebuild
+++ b/dev-python/numpy/numpy-1.21.4-r2.ebuild
@@ -46,6 +46,7 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
 	"${FILESDIR}"/numpy-1.21.4-build-compiler-args-ceph.patch
+	"${FILESDIR}"/numpy-1.21.4-copy-python-3.9.patch
 )
 
 distutils_enable_tests pytest


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2021-11-17 23:13 Sam James
  0 siblings, 0 replies; 26+ messages in thread
From: Sam James @ 2021-11-17 23:13 UTC (permalink / raw
  To: gentoo-commits

commit:     aeb4bf89ff38ff18c17f51d8c9d0d19cae1c349d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 17 23:12:39 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 17 23:13:04 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aeb4bf89

dev-python/numpy: add upstream patch for compiler args (fix Ceph build failure)

Bug: https://bugs.gentoo.org/802150
Thanks-to: Hector Martin <marcan <AT> marcan.st>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../numpy-1.21.4-build-compiler-args-ceph.patch    |  49 +++++++
 dev-python/numpy/numpy-1.21.4-r1.ebuild            | 144 +++++++++++++++++++++
 2 files changed, 193 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.21.4-build-compiler-args-ceph.patch b/dev-python/numpy/files/numpy-1.21.4-build-compiler-args-ceph.patch
new file mode 100644
index 000000000000..6a31d2efe970
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.21.4-build-compiler-args-ceph.patch
@@ -0,0 +1,49 @@
+https://github.com/numpy/numpy/commit/689d905f501b7abbddf0fdef241fa586a83e5cd6
+https://github.com/numpy/numpy/pull/20116
+https://bugs.gentoo.org/802150
+
+From 7dcf62379f41407d8f9583d1c2016e3d8ec48384 Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Thu, 14 Oct 2021 14:58:52 +0900
+Subject: [PATCH] MAINT: Fix issue with C compiler args containing spaces
+
+Instead of doing a dumb string split, use shlex to make sure args
+containing spaces are handled properly.
+---
+ numpy/distutils/unixccompiler.py | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/numpy/distutils/unixccompiler.py b/numpy/distutils/unixccompiler.py
+index 733a9fc5094..4884960fdf2 100644
+--- a/numpy/distutils/unixccompiler.py
++++ b/numpy/distutils/unixccompiler.py
+@@ -5,6 +5,7 @@
+ import os
+ import sys
+ import subprocess
++import shlex
+ 
+ from distutils.errors import CompileError, DistutilsExecError, LibError
+ from distutils.unixccompiler import UnixCCompiler
+@@ -30,15 +31,15 @@ def UnixCCompiler__compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts
+     if 'OPT' in os.environ:
+         # XXX who uses this?
+         from sysconfig import get_config_vars
+-        opt = " ".join(os.environ['OPT'].split())
+-        gcv_opt = " ".join(get_config_vars('OPT')[0].split())
+-        ccomp_s = " ".join(self.compiler_so)
++        opt = shlex.join(shlex.split(os.environ['OPT']))
++        gcv_opt = shlex.join(shlex.split(get_config_vars('OPT')[0]))
++        ccomp_s = shlex.join(self.compiler_so)
+         if opt not in ccomp_s:
+             ccomp_s = ccomp_s.replace(gcv_opt, opt)
+-            self.compiler_so = ccomp_s.split()
+-        llink_s = " ".join(self.linker_so)
++            self.compiler_so = shlex.split(ccomp_s)
++        llink_s = shlex.join(self.linker_so)
+         if opt not in llink_s:
+-            self.linker_so = llink_s.split() + opt.split()
++            self.linker_so = self.linker_so + shlex.split(opt)
+ 
+     display = '%s: %s' % (os.path.basename(self.compiler_so[0]), src)
+ 

diff --git a/dev-python/numpy/numpy-1.21.4-r1.ebuild b/dev-python/numpy/numpy-1.21.4-r1.ebuild
new file mode 100644
index 000000000000..df96b10fdb70
--- /dev/null
+++ b/dev-python/numpy/numpy-1.21.4-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 toolchain-funcs
+
+DOC_PV=${PV}
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="https://numpy.org/"
+SRC_URI="
+	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
+	doc? (
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
+	)"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack"
+
+RDEPEND="
+	lapack? (
+		>=virtual/cblas-3.8
+		>=virtual/lapack-3.8
+	)
+"
+BDEPEND="
+	${RDEPEND}
+	app-arch/unzip
+	>=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
+	lapack? ( virtual/pkgconfig )
+	test? (
+		>=dev-python/hypothesis-5.8.0[${PYTHON_USEDEP}]
+		>=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+		>=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.21.4-build-compiler-args-ceph.patch
+)
+
+distutils_enable_tests pytest
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+python_prepare_all() {
+	if use lapack; then
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			include_dirs = ${incdir}
+			library_dirs = ${libdir}
+			blas_libs = cblas,blas
+			[lapack]
+			library_dirs = ${libdir}
+			lapack_libs = lapack
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	# disable fuzzed tests
+	find numpy/*/tests -name '*.py' -exec sed -i \
+		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
+	# very memory- and disk-hungry
+	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	export MAKEOPTS=-j1 #660754
+
+	distutils-r1_python_compile ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	local deselect=(
+		numpy/typing/tests/test_typing.py::test_reveal[arrayterator.py]
+	)
+
+	distutils_install_for_testing --single-version-externally-managed \
+		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TEST_DIR}/lib" || die
+	epytest ${deselect[@]/#/--deselect }
+}
+
+python_install() {
+	# https://github.com/numpy/numpy/issues/16005
+	local mydistutilsargs=( build_src )
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+	python_optimize
+}
+
+python_install_all() {
+	local DOCS=( LICENSE.txt README.md THANKS.txt )
+
+	if use doc; then
+		local HTML_DOCS=( "${WORKDIR}"/html/. )
+		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
+	fi
+
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2021-10-24 20:52 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2021-10-24 20:52 UTC (permalink / raw
  To: gentoo-commits

commit:     fb1e7ebd3b199eadab7869aca983bc5e8b3ead85
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 24 20:50:38 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Oct 24 20:52:01 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fb1e7ebd

dev-python/numpy: Backport unaligned access fix

Closes: https://bugs.gentoo.org/805974
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 .../numpy/files/numpy-1.21.3-unaligned-array.patch | 45 ++++++++++++++++++++++
 ...{numpy-1.21.1.ebuild => numpy-1.21.1-r1.ebuild} |  1 +
 ...{numpy-1.21.3.ebuild => numpy-1.21.2-r1.ebuild} |  1 +
 ...{numpy-1.21.2.ebuild => numpy-1.21.3-r1.ebuild} |  1 +
 4 files changed, 48 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch b/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch
new file mode 100644
index 00000000000..8d04cc0968d
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.21.3-unaligned-array.patch
@@ -0,0 +1,45 @@
+From d9bbd60d0f2896d1b1f865e6035dccb12db4b1a0 Mon Sep 17 00:00:00 2001
+From: Sebastian Berg <sebastian@sipsolutions.net>
+Date: Sat, 23 Oct 2021 22:54:21 -0500
+Subject: [PATCH] BUG: Do not use nonzero fastpath on unaligned arrays
+
+The fast-path does not handle unalgined access, previously only
+bools had a fast path (and bools are by definition always aligned
+since they are stored in a single byte/char).
+
+Closes gh-19592
+---
+ numpy/core/src/multiarray/item_selection.c | 19 +++++++------------
+ 1 file changed, 7 insertions(+), 12 deletions(-)
+
+diff --git a/numpy/core/src/multiarray/item_selection.c b/numpy/core/src/multiarray/item_selection.c
+index ee66378a938..33d378c2b58 100644
+--- a/numpy/core/src/multiarray/item_selection.c
++++ b/numpy/core/src/multiarray/item_selection.c
+@@ -2398,19 +2398,14 @@ PyArray_CountNonzero(PyArrayObject *self)
+     npy_intp *strideptr, *innersizeptr;
+     NPY_BEGIN_THREADS_DEF;
+ 
+-    // Special low-overhead version specific to the boolean/int types
+     dtype = PyArray_DESCR(self);
+-    switch(dtype->kind) {
+-        case 'u':
+-        case 'i':
+-        case 'b':
+-            if (dtype->elsize > 8) {
+-                break;
+-            }
+-            return count_nonzero_int(
+-                PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
+-                PyArray_STRIDES(self), dtype->elsize
+-            );
++    /* Special low-overhead version specific to the boolean/int types */
++    if (PyArray_ISALIGNED(self) && (
++            PyDataType_ISBOOL(dtype) || PyDataType_ISINTEGER(dtype))) {
++        return count_nonzero_int(
++            PyArray_NDIM(self), PyArray_BYTES(self), PyArray_DIMS(self),
++            PyArray_STRIDES(self), dtype->elsize
++        );
+     }
+ 
+     nonzero = PyArray_DESCR(self)->f->nonzero;

diff --git a/dev-python/numpy/numpy-1.21.1.ebuild b/dev-python/numpy/numpy-1.21.1-r1.ebuild
similarity index 98%
rename from dev-python/numpy/numpy-1.21.1.ebuild
rename to dev-python/numpy/numpy-1.21.1-r1.ebuild
index 080c7b210c9..b25c2008d41 100644
--- a/dev-python/numpy/numpy-1.21.1.ebuild
+++ b/dev-python/numpy/numpy-1.21.1-r1.ebuild
@@ -45,6 +45,7 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.21.3-unaligned-array.patch
 )
 
 distutils_enable_tests pytest

diff --git a/dev-python/numpy/numpy-1.21.3.ebuild b/dev-python/numpy/numpy-1.21.2-r1.ebuild
similarity index 98%
rename from dev-python/numpy/numpy-1.21.3.ebuild
rename to dev-python/numpy/numpy-1.21.2-r1.ebuild
index cd54f4bc4a6..be58d11ab9f 100644
--- a/dev-python/numpy/numpy-1.21.3.ebuild
+++ b/dev-python/numpy/numpy-1.21.2-r1.ebuild
@@ -45,6 +45,7 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/numpy-1.21.3-unaligned-array.patch
 )
 
 distutils_enable_tests pytest

diff --git a/dev-python/numpy/numpy-1.21.2.ebuild b/dev-python/numpy/numpy-1.21.3-r1.ebuild
similarity index 98%
rename from dev-python/numpy/numpy-1.21.2.ebuild
rename to dev-python/numpy/numpy-1.21.3-r1.ebuild
index cd54f4bc4a6..d9b1d09193d 100644
--- a/dev-python/numpy/numpy-1.21.2.ebuild
+++ b/dev-python/numpy/numpy-1.21.3-r1.ebuild
@@ -45,6 +45,7 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}"/numpy-1.21.0-no-hardcode-blasv2.patch
+	"${FILESDIR}"/${P}-unaligned-array.patch
 )
 
 distutils_enable_tests pytest


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2020-04-16 17:44 Mike Gilbert
  0 siblings, 0 replies; 26+ messages in thread
From: Mike Gilbert @ 2020-04-16 17:44 UTC (permalink / raw
  To: gentoo-commits

commit:     ec5de2845d7ccd00188c7a46a32e5a992d7ef03d
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 16 17:43:42 2020 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Thu Apr 16 17:43:42 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec5de284

dev-python/numpy: fix build with recent distutils-r1 change

Closes: https://bugs.gentoo.org/717706
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 ...-1.16.5-setup.py-install-skip-build-fails.patch | 23 ++++++++++++++++++++++
 dev-python/numpy/numpy-1.16.5.ebuild               |  1 +
 2 files changed, 24 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.16.5-setup.py-install-skip-build-fails.patch b/dev-python/numpy/files/numpy-1.16.5-setup.py-install-skip-build-fails.patch
new file mode 100644
index 00000000000..aa141de27f4
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.16.5-setup.py-install-skip-build-fails.patch
@@ -0,0 +1,23 @@
+From b8e741c66f71071c3406e592e1537570731bcb35 Mon Sep 17 00:00:00 2001
+From: mattip <matti.picus@gmail.com>
+Date: Sun, 26 May 2019 08:55:53 +0300
+Subject: [PATCH] BUG: setup.py install --skip-build fails
+
+---
+ numpy/distutils/command/install_clib.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/numpy/distutils/command/install_clib.py b/numpy/distutils/command/install_clib.py
+index 662aa00bda9..6a73f7e3308 100644
+--- a/numpy/distutils/command/install_clib.py
++++ b/numpy/distutils/command/install_clib.py
+@@ -19,6 +19,9 @@ def finalize_options(self):
+ 
+     def run (self):
+         build_clib_cmd = get_cmd("build_clib")
++        if not build_clib_cmd.build_clib:
++            # can happen if the user specified `--skip-build`
++            build_clib_cmd.finalize_options()
+         build_dir = build_clib_cmd.build_clib
+ 
+         # We need the compiler to get the library name -> filename association

diff --git a/dev-python/numpy/numpy-1.16.5.ebuild b/dev-python/numpy/numpy-1.16.5.ebuild
index c76742829cb..a0a04127fa0 100644
--- a/dev-python/numpy/numpy-1.16.5.ebuild
+++ b/dev-python/numpy/numpy-1.16.5.ebuild
@@ -41,6 +41,7 @@ BDEPEND="app-arch/unzip
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-1.15.4-no-hardcode-blas.patch
+	"${FILESDIR}"/numpy-1.16.5-setup.py-install-skip-build-fails.patch
 )
 
 src_unpack() {


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2019-12-29 16:11 罗百科
  0 siblings, 0 replies; 26+ messages in thread
From: 罗百科 @ 2019-12-29 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     817df86ab2fc967c40f1d2abe50a43bab24917df
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 29 15:44:26 2019 +0000
Commit:     罗百科 <patrick <AT> gentoo <DOT> org>
CommitDate: Sun Dec 29 16:10:55 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=817df86a

dev-python/numpy: Fix build failures in 1.17.4

Fixes #700848

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>

 .../files/numpy-1.17.4-no-hardcode-blasv2.patch    |  47 +++++++
 dev-python/numpy/numpy-1.17.4-r1.ebuild            | 154 +++++++++++++++++++++
 2 files changed, 201 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.17.4-no-hardcode-blasv2.patch b/dev-python/numpy/files/numpy-1.17.4-no-hardcode-blasv2.patch
new file mode 100644
index 00000000000..850f70f4551
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.17.4-no-hardcode-blasv2.patch
@@ -0,0 +1,47 @@
+diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
+index ba2b1f46c..09db18e69 100644
+--- a/numpy/distutils/system_info.py
++++ b/numpy/distutils/system_info.py
+@@ -374,28 +374,7 @@ def get_info(name, notfound_action=0):
+       1 - display warning message
+       2 - raise error
+     """
+-    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
+-          'atlas_threads': atlas_threads_info,                # ditto
+-          'atlas_blas': atlas_blas_info,
+-          'atlas_blas_threads': atlas_blas_threads_info,
+-          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
+-          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
+-          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
+-          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
+-          'atlas_3_10_blas': atlas_3_10_blas_info,
+-          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
+-          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
+-          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
+-          'flame': flame_info,          # use lapack_opt instead
+-          'mkl': mkl_info,
+-          # openblas which may or may not have embedded lapack
+-          'openblas': openblas_info,          # use blas_opt instead
+-          # openblas with embedded lapack
+-          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
+-          'openblas_clapack': openblas_clapack_info, # use blas_opt instead
+-          'blis': blis_info,                  # use blas_opt instead
+-          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
+-          'blas_mkl': blas_mkl_info,          # use blas_opt instead
++    cl = {'flame': flame_info,          # use lapack_opt instead
+           'accelerate': accelerate_info,      # use blas_opt instead
+           'x11': x11_info,
+           'fft_opt': fft_opt_info,
+@@ -796,10 +775,7 @@ class system_info(object):
+         return [b for b in [a.strip() for a in libs.split(',')] if b]
+ 
+     def get_libraries(self, key='libraries'):
+-        if hasattr(self, '_lib_names'):
+-            return self.get_libs(key, default=self._lib_names)
+-        else:
+-            return self.get_libs(key, '')
++        return self.get_libs(key, '')
+ 
+     def library_extensions(self):
+         c = customized_ccompiler()
+ 

diff --git a/dev-python/numpy/numpy-1.17.4-r1.ebuild b/dev-python/numpy/numpy-1.17.4-r1.ebuild
new file mode 100644
index 00000000000..9219c98dfec
--- /dev/null
+++ b/dev-python/numpy/numpy-1.17.4-r1.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7,8} )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs
+
+DOC_PV="1.16.4"
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="https://www.numpy.org"
+SRC_URI="
+	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
+	doc? (
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-html.zip -> numpy-html-${DOC_PV}.zip
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-ref.pdf -> numpy-ref-${DOC_PV}.pdf
+		https://numpy.org/doc/$(ver_cut 1-2 ${DOC_PV})/numpy-user.pdf -> numpy-user-${DOC_PV}.pdf
+	)"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	lapack? (
+		virtual/cblas
+		virtual/lapack
+	)"
+DEPEND="${RDEPEND}"
+BDEPEND="app-arch/unzip
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	lapack? ( virtual/pkgconfig )
+	test? (
+		dev-python/pytest[${PYTHON_USEDEP}]
+	)"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.17.4-no-hardcode-blasv2.patch
+)
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/numpy-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+pc_incdir() {
+	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
+		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libdir() {
+	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
+		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libs() {
+	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
+		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
+		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
+		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
+}
+
+python_prepare_all() {
+	if use lapack; then
+		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			blas_libs = $(pc_libs cblas blas)
+			[lapack]
+			lapack_libs = $(pc_libs lapack)
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	# disable fuzzed tests
+	find numpy/*/tests -name '*.py' -exec sed -i \
+		-e 's:def \(.*_fuzz\):def _\1:' {} + || die
+	# very memory- and disk-hungry
+	sed -i -e 's:test_large_zip:_&:' numpy/lib/tests/test_io.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	export MAKEOPTS=-j1 #660754
+
+	local python_makeopts_jobs=""
+	python_is_python3 || python_makeopts_jobs="-j $(makeopts_jobs)"
+	distutils-r1_python_compile \
+		${python_makeopts_jobs} \
+		${NUMPY_FCONFIG}
+}
+
+python_test() {
+	distutils_install_for_testing --single-version-externally-managed \
+		--record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TMPDIR}" || die
+
+	"${EPYTHON}" -c "
+import numpy, sys
+r = numpy.test(label='full', verbose=3)
+sys.exit(0 if r else 1)" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+	python_optimize
+}
+
+python_install_all() {
+	local DOCS=( THANKS.txt )
+
+	if use doc; then
+		local HTML_DOCS=( "${WORKDIR}"/html/. )
+		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
+	fi
+
+	distutils-r1_python_install_all
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2019-06-24  4:31 Benda XU
  0 siblings, 0 replies; 26+ messages in thread
From: Benda XU @ 2019-06-24  4:31 UTC (permalink / raw
  To: gentoo-commits

commit:     052af06fde103f99aa77499bd5b76dc3ae95b933
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 24 04:30:36 2019 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Mon Jun 24 04:31:11 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=052af06f

dev-python/numpy: add back numpy-1.8.2.

  It is a reverse dependency of dev-python/scientificpython and
  sci-libs/mmtk.

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org>

 dev-python/numpy/Manifest                          |   4 +
 .../numpy/files/numpy-1.8.0-no-hardcode-blas.patch |  25 ++++
 dev-python/numpy/numpy-1.8.2.ebuild                | 146 +++++++++++++++++++++
 3 files changed, 175 insertions(+)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index f080e969086..7df64371849 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,12 +1,16 @@
 DIST numpy-1.14.5.zip 4904624 BLAKE2B 14d266bf1139b9539e39d08a6537e2b772e80bf46a0769cbb06b63ba54858c9284f6d0e8a19627a4d99f2c2638e9a4031bf4d4aaf773eaf34b7203d131636dc0 SHA512 e131f9fa815084e334b59c5d9abd8de0088ad1dfefecf8615ad7deca0b54b0dfa0446c8de99c90670ea9fcabea9980bd171618a5b9032c1937b597a5ce363c5b
 DIST numpy-1.15.4.zip 4473522 BLAKE2B c030ef4a06c84091eec11b6602422468bd0674489a2c7fea1230132cd3a3ca1b10ec87eeb6788f2f263943f9ac43026dc1e7f0f5f1d52e9d1cc6934a5d361090 SHA512 9e0516da04368f0353fb7e3cc2c72e1ec936042908309732a298405bd7111e712899627b82f3674295b611e0ebfd74ef91d693f065fe9cb03dc7de23d1e72676
 DIST numpy-1.16.1.zip 5070040 BLAKE2B 0429d27d88ec97e207822c9c7fa759453bbef97d1d5fdf3e68dab21ca098a6321e2e57d85561dd99084d190b8ed6fce20f00b421c8d14a249fc45dc1ea09569e SHA512 e4adce4f40a3cb6ac482f82db9fcd079179b03b0e878920cfc7d98b9f622adab997c68af892b209f417d5f31b4123a1c5ff5c07cf5b0aaa496d8be6c8354bde8
+DIST numpy-1.8.2.tar.gz 3792998 BLAKE2B 00d22c72ab6f919626d3fba0edc477fb9c19f9c299f78cff6102e1860e3d1baec8f3b17aa23be797e9a34630428174de3f3b630c3f05c5340024dc6314fad8cd SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c
 DIST numpy-html-1.14.5.zip 11197881 BLAKE2B 00cac3c5be07f644328acd9ed155a6fc07ed7d7380584732bb3ac03562c8705cd152612f461d5dc251dabe0be4ba45593165a961496e351110e1aa7598c37370 SHA512 578d31660de4e1f57310b3a2137cefea17228f40046eef1689fb6d9302f0fe0fda5aaf473c3b8c69ae781049950022321593ec891a5640e3c36c886ab3bf4383
 DIST numpy-html-1.15.4.zip 11158615 BLAKE2B eb264cd51fd61b389e858300d96be63f8e2eeaa0b7346beac571b62d96867d6820c19d5043a6f81088dc52b1e4d7f3f295e02ff5ff90351b0feccf657ce90001 SHA512 1cad60013f374f456bbb1fb6161545a94e252205c28054f9b33cde65330772ab243339289517a8825957a21e210455d33bcc0b9c588052c49c88257b1b04facb
 DIST numpy-html-1.16.1.zip 12132467 BLAKE2B 050a8cba160e36a4c547f1b67b8ab2b9220c9841a9f8343dce6f3221313505530a1687efa2116384a03d3bc9172a0298b4ea5ece2f423841d595e45f565ccbc2 SHA512 5af356313363e00f05db560902cc7578162c7d2ab9c1ef0f3713854682b63d76297d55eb9aac0dfc7f4b687ccea93a53462e2082ef1270e29e19680e1222b34d
+DIST numpy-html-1.8.1.zip 9703711 BLAKE2B 1f9d9cb4e65fc2f03d07da9bc34de9c8c4f93f5267689abccb0e2383b23babfed52ae6c3969738e78eeca7b32f49c90f9f7bb92dd432a6b87e082b67c1f214a5 SHA512 1d52c657931f4eebb5325159444aedd969b201f5098855058f1ef632dc8677372d632291154ebc3db9869cdb8abf7eb820eade1a9edba2d6be1ae918cb38c071
 DIST numpy-ref-1.14.5.pdf 4855150 BLAKE2B aa924542346bd06b1aa8b11ceb8eb5de936cfdccc10a8339720a297e27b5b34961044eb8db8dd7b9a19ba93b3cbf76ec278a9a50724653aafd2b9d57a00007f2 SHA512 717f58fcb1aa66ecc5f5d4c11c9923d2beb21a1b1a0ca1e46f3622c69f1122fd0547b7f7abaf6de008e2aa988b2453af3c2590877f5596fb6642479ece651746
 DIST numpy-ref-1.15.4.pdf 4843444 BLAKE2B 26154930a8c881f49e7eb7d9540d1deba27baed1acb15dbacd42a659c05f50605cd44b63b2474e66d1d22851145cc65b3e3f26302f8966e141cbd2afc666c654 SHA512 aebff74389e785bd588ccc287329aea4dbc3ef51b46fbffdf088853342fea724f79f712733e453877949e756a52e89de3b257e5feba86e830df84ed8f9bb0e30
 DIST numpy-ref-1.16.1.pdf 5175448 BLAKE2B 5cd692a0fc825216560dbbf48738a49b794973d4539bd778f0f9a2f7f72b32d3061675f9a76db4cbfbb38eec0793c70046180fcb07e23ffc6177dee76b16bb92 SHA512 6cad03e30d7c2204fb899f4e4d1167fefade60d20dedf0ea87ac15c70139fbcca8789cdf17af5a2d221ba06eb78e9376b4b542621f9d78772041c83ab2405d1a
+DIST numpy-ref-1.8.1.pdf 5348248 BLAKE2B f087fbbd3c789adebd2902db0a2acc8a8748ccbb5a1e7e064effdc91e92c7dcf087ae36436fc52d7afa12a12ca2fc0f5f5617177bcd8b9745a7155acd10d71fc SHA512 340dd8f47430f24fea81bb3a8674e1a58f4290a9d1c5d64bac96d50b31a94a770e78381e42daf8b0a6a90cefe5cafe86b0c89f7cc7635a042a7e85eb74bdbdf5
 DIST numpy-user-1.14.5.pdf 574418 BLAKE2B 80738f1760932fa74b07334d1a355ba3ce319e0b03fe1428d0b3497466fa1164ccbad84969cb7bc8daebb5525094f0d0c7710e1d661b1c6bbaca0669bfcbf875 SHA512 fb00305408c56ee203ed71ac042474592e7e933f14a639f6dce0f6dc80206c13b844c2425a919f9072a114c7af2c2f9f85b78a07ba3874259e5d173290e51a13
 DIST numpy-user-1.15.4.pdf 596191 BLAKE2B 1387b7aac9cccba4b7ce259391f56372959db35c4ddce111afb9949347ebcf3290e7d3fb5b1b2d2e7850911259cddb07edfe104c1396ae8e31a58a81e9293f16 SHA512 2089753b48412f094b279c378be1d221ec9b171957171a4e26b4589d594e00b4f66b6f8a88a7eb665e8c3fa3e6ed505d63da80d4d01ced041544b97ea56fe212
 DIST numpy-user-1.16.1.pdf 592508 BLAKE2B 88ef7aac2998fd8eeebc3ab92df9ad9ba139b67ab0442cd4ed91cdc7b1cd72acf7905468118df25634640b709106758455c7d316539b941d7760010b8135fafa SHA512 d089b4c663f92c38aa075c37974df757bdc457f75980737477a4477f67311d28149bc4c20f5d1cd0877221a78e5a9ff10702b1ebcc8ab062d328cdda4087d0f7
+DIST numpy-user-1.8.1.pdf 408305 BLAKE2B 2956e42ebad45b021f72c7e71d357d953ea8a26639b4c6e81dbe1718052304ac5ce1a7f96646d94ad48bf737ddc6962fcbc304e31dfce32b85cb8165b0ada6e0 SHA512 9e646e89e7e67834fa596e43082b43842d1c59287d22fd8d20c9f0a1d3d56a518a08cc2c036de4972ad0d6d9d3c2f56e2210f76e7244d3f7547b5204d84d3c7c

diff --git a/dev-python/numpy/files/numpy-1.8.0-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.8.0-no-hardcode-blas.patch
new file mode 100644
index 00000000000..eaf30dd8e13
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.8.0-no-hardcode-blas.patch
@@ -0,0 +1,25 @@
+patch to allow any blas (c or f77) to simulate the
+special treatment atlas libs have in numpy.
+2013: numpy.distutils still horrendous code
+
+--- numpy/distutils/system_info.py.orig	2013-11-25 19:54:45.760217851 -0800
++++ numpy/distutils/system_info.py	2013-11-25 20:00:26.575310888 -0800
+@@ -293,17 +293,7 @@
+       1 - display warning message
+       2 - raise error
+     """
+-    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
+-          'atlas_threads': atlas_threads_info,                # ditto
+-          'atlas_blas': atlas_blas_info,
+-          'atlas_blas_threads': atlas_blas_threads_info,
+-          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
+-          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
+-          'mkl': mkl_info,
+-          'openblas': openblas_info,          # use blas_opt instead
+-          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
+-          'blas_mkl': blas_mkl_info,          # use blas_opt instead
+-          'x11': x11_info,
++    cl = {'x11': x11_info,
+           'fft_opt': fft_opt_info,
+           'fftw': fftw_info,
+           'fftw2': fftw2_info,

diff --git a/dev-python/numpy/numpy-1.8.2.ebuild b/dev-python/numpy/numpy-1.8.2.ebuild
new file mode 100644
index 00000000000..e9e6e79381b
--- /dev/null
+++ b/dev-python/numpy/numpy-1.8.2.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 eutils flag-o-matic fortran-2 multilib toolchain-funcs versionator
+
+DOC_PV="1.8.1"
+DOC_P="${PN}-${DOC_PV}"
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="https://www.numpy.org"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+	doc? (
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
+	)"
+# It appears the docs haven't been upgraded, still @ 1.8.1
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack test"
+
+RDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+	lapack? ( virtual/cblas virtual/lapack )"
+DEPEND="${RDEPEND}
+	doc? ( app-arch/unzip )
+	lapack? ( virtual/pkgconfig )
+	test? ( dev-python/nose[${PYTHON_USEDEP}] )"
+
+# Uses distutils.command.config.
+DISTUTILS_IN_SOURCE_BUILD=1
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.8.0-no-hardcode-blas.patch
+)
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+pc_incdir() {
+	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
+		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libdir() {
+	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
+		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libs() {
+	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
+		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
+		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
+		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
+}
+
+python_prepare_all() {
+	if use lapack; then
+		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
+		local incdir="${EPREFIX}"/usr/include
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		# make sure _dotblas.so gets built
+		sed -i -e '/NO_ATLAS_INFO/,+1d' numpy/core/setup.py || die
+		cat >> site.cfg <<-EOF
+			[blas]
+			include_dirs = $(pc_incdir cblas):${incdir}
+			library_dirs = $(pc_libdir cblas blas):${libdir}
+			blas_libs = $(pc_libs cblas blas)
+			[lapack]
+			library_dirs = $(pc_libdir lapack):${libdir}
+			lapack_libs = $(pc_libs lapack)
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s:+os\.path.*$::' numpy/f2py/setup.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	distutils-r1_python_compile ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	distutils_install_for_testing ${NUMPY_FCONFIG}
+
+	cd "${TMPDIR}" || die
+	${EPYTHON} -c "
+import numpy, sys
+r = numpy.test(label='full', verbose=3)
+sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	dodoc COMPATIBILITY DEV_README.txt THANKS.txt
+
+	if use doc; then
+		dohtml -r "${WORKDIR}"/html/*
+		dodoc "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf
+	fi
+
+	docinto f2py
+	dodoc numpy/f2py/docs/*.txt
+	doman numpy/f2py/f2py.1
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2018-01-05 13:26 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2018-01-05 13:26 UTC (permalink / raw
  To: gentoo-commits

commit:     edefded33b0e0d86587430294dcf407557b3d588
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Jan  5 12:50:00 2018 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Jan  5 13:26:09 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=edefded3

dev-python/numpy: Clean old up

 dev-python/numpy/Manifest                          |   5 -
 .../files/numpy-1.11.2-blas_rec_inc_dir.patch      |  24 ---
 dev-python/numpy/numpy-1.12.1.ebuild               | 164 --------------------
 dev-python/numpy/numpy-1.13.1.ebuild               | 165 ---------------------
 4 files changed, 358 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index bbb19d3fac9..d608a1d2cd4 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,21 +1,16 @@
 DIST numpy-1.10.4.tar.gz 4069996 BLAKE2B 9f315d1fca4415b148d4b3bff6f223930bab3d0cb9e19fc5790d71218549c9f0031355e8a95eae9c866ceaf6391a3aa41206bf3f48477b6cabbbc52e0287c246 SHA512 57ace46e357d49be0efd904e5ceb9862c626c916987c8798a12de7ae1e06816ad8483439ac4619792a04889631b5998f2397dc601c78dea33a784b4831c19c79
-DIST numpy-1.12.1.zip 4824784 BLAKE2B 3b5b44f5cdef5f3cf063c7524e8c18ba4c0661f67e74817619685cdb5ee9ae2cd8f31e9ddd8a4e83d014f0371d4caf2ea6d5e3595ab3aba8f4ee4c101c4f3ae4 SHA512 156319821e4f0cf8d820e977da704aab274b7a4a4b792f6e40d7c0f2827700c990f55f1ca9650523c62c9e937f0e75f336d091d46ca47aaa9875c68fe32bac2a
-DIST numpy-1.13.1.zip 5012881 BLAKE2B 865f5423ff0c20dac531cdeb3adbbba760632aba4f0183f4b44ae93fd6bd12c8bf78abec3fb47969b45f86b72c928330142d8897e201adb7236b2c6f76ba0089 SHA512 bfa97ca4f958b04c158a4bcaa366ec2645c972654bd65fb20c287806f40fb7a04b8cc1f1cefb350d477488a93029d75a9f06d01c300cfb1805dd10819a631c43
 DIST numpy-1.13.3.zip 5021189 BLAKE2B 5a2890a8e08425a2d537667cb2c621a57e1d442951d0b06aee2a9a153bf76652e9c4cbaa11716697a85c580e1f30043d5eef10fc24245074e6431a873ff80c34 SHA512 b77969372c8463879b452dc54830afabb719e6814a2bb1ee0062b463155ac709d1cd48839b28b74aacaee8aced7ee35870ba43d59293ff54f90bc0f717ca7737
 DIST numpy-1.8.2.tar.gz 3792998 BLAKE2B 00d22c72ab6f919626d3fba0edc477fb9c19f9c299f78cff6102e1860e3d1baec8f3b17aa23be797e9a34630428174de3f3b630c3f05c5340024dc6314fad8cd SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c
 DIST numpy-1.9.2.tar.gz 3986067 BLAKE2B e5ae6717badac01186a5b0f36729c1c01dda1fb4238978858c778f08f17512c5d1f3902d551cb0c67a77c1246ce238e588556188e7e6466c27ebdde09879782d SHA512 70470ebb9afef5dfd0c83ceb7a9d5f1b7a072b1a9b54b04f04f5ed50fbaedd5b4906bd500472268d478f94df9e749a88698b1ff30f2d80258e7f3fec040617d9
 DIST numpy-html-1.10.1.zip 9663942 BLAKE2B 436ab4185212f8eeaa3d61e29c2c547c9f24bf0869984cc674e66a7360177e999cc70a6573316711e478db62057d5cee90f85b978d095c6b47f1dc3832ffbdf7 SHA512 9d1f3619b801c88604a0495290da4ae8cfb4800257d549214363c554c1dc09a736425d594ed88f492afee6ae7c68fe5c166b9b3a8f24637ea41d67fd23b9d9f9
-DIST numpy-html-1.11.0.zip 9879611 BLAKE2B 01f9fefcb71fe22d694af6a117da19e79c983c0f68f9e81fd060f4cb6dec6d13ba8e2354ed6040da58796a05c5a05dbecc595fbae2d578191ab4bb22f0dace4d SHA512 7bf416030c273c767a98d0f23adef0e5fd05f96f6bb911e32ec88821a5bc7c47a2799d33fb0706cb2d391ea6e47b3e0eef0d789eb1c0d81c982cfaa991a09822
 DIST numpy-html-1.13.0.zip 10324817 BLAKE2B e16357e615b30249a4c41582b46b194e2c3113996260f0ff60e5b64ce9b344a05a5f372095a9f1187e8474bda4078f41ad8372c801637278d3478176de455eaa SHA512 2dd769ec0d4967ba1797339170b0f9bf694a0a304cffb8482a037ba043a3bd3a9207e63a1ffed2d7ae96205d3a1a72fa1b15eeac4bd2e565544363dd9742f542
 DIST numpy-html-1.8.1.zip 9703711 BLAKE2B 1f9d9cb4e65fc2f03d07da9bc34de9c8c4f93f5267689abccb0e2383b23babfed52ae6c3969738e78eeca7b32f49c90f9f7bb92dd432a6b87e082b67c1f214a5 SHA512 1d52c657931f4eebb5325159444aedd969b201f5098855058f1ef632dc8677372d632291154ebc3db9869cdb8abf7eb820eade1a9edba2d6be1ae918cb38c071
 DIST numpy-html-1.9.1.zip 9839137 BLAKE2B 84b4c15ee20d8a1e6514baf47b96ac770690357278ff22b48c427509534c41df9e14165483f625955a7c6c087b0b5e13e68bf3d06951352a8511d6e03cc65d9f SHA512 647a6be9f93995aca14185e283a2b412678c6e8080fe4f14e7cc9ee63c28eebb64dea6bbe28f30ef6850a5565dd1e06928fd660ac762e9a91454d309eff96ed4
 DIST numpy-ref-1.10.1.pdf 5382006 BLAKE2B c360d40c6ac3d2975a760dcf32ed312f30e9ee6b096020e0513bb22af600de62f5f72309603414b3bbcaf02a1aacd79e84545a6e5d50611bfdabafa9f6441a10 SHA512 25085eb7cb80343abffe04ee01ea93603427913ba4443fbfdaa1ef1ad07a8642c47259d0bb1cb91a9059f786c03395bba76f608c6f0a2fd26d1afec4847d885c
-DIST numpy-ref-1.11.0.pdf 5310792 BLAKE2B 068e6fed91fe15dc9a77bcc50b32b8727fb98ead513f50d4938bc5c09b1c5bcd4e9fd9701cd1b9bf38656692d15f1b98b07801f8b73e1782a8e216f7e15773b8 SHA512 a6bed225428645382846fcd60bc7961a44b0dc24cbfab3b4d0a1cee53092860f9db6226faf6597241ad6b9d6034837aace11214e0fc0c338702a574a9acf28df
 DIST numpy-ref-1.13.0.pdf 5047809 BLAKE2B c7e2734311918c6faa46b008c4802bb090a728ca22337695755e885a7d7d341ba76d5e489c9c56cf89a9d0545bc9b24787e193c4bc1af2631a368b812fe74083 SHA512 0fe28be029602f8b8dc12987da273581b42f123a9d605321084d4c05233cd31ccff0efb17b99c3e8cbfec5f8de11252a99c1ee5c43d37aa5fa57d712f4bb4aca
 DIST numpy-ref-1.8.1.pdf 5348248 BLAKE2B f087fbbd3c789adebd2902db0a2acc8a8748ccbb5a1e7e064effdc91e92c7dcf087ae36436fc52d7afa12a12ca2fc0f5f5617177bcd8b9745a7155acd10d71fc SHA512 340dd8f47430f24fea81bb3a8674e1a58f4290a9d1c5d64bac96d50b31a94a770e78381e42daf8b0a6a90cefe5cafe86b0c89f7cc7635a042a7e85eb74bdbdf5
 DIST numpy-ref-1.9.1.pdf 5318122 BLAKE2B a893be075c823ab1a6ad3b2e38e8c05aad20cc2abf9307af9dac87b12f029fe07b535b1f385a4315bcc9590fedb79e25bc5e1659885ad61cf010d2f45ae6edf5 SHA512 5171bb22588117a53e0eac355520581f7817a7e7a099ae83bb73f2ac8248a60e139ae9719dc543b44f25ccf8319c9f149fec1bf5aa55d943fad06a8e6da0d9ba
 DIST numpy-user-1.10.1.pdf 406114 BLAKE2B 88d43e87071eb88223c84720001671677c6f8c1e745b4434331434a9c48cee4591e67740ef102e49e839e4b2aa690798a5415fa25eaa79d823dbcfa29780fa85 SHA512 998bce3777944e7b366c619e968ac4b6cc4351cd2819d6ecba7f422e20b6cd4d7332a8dede4036cd12e85b24c4c3d973bd9ef2d407610369c2591fce990fa8f4
-DIST numpy-user-1.11.0.pdf 555403 BLAKE2B c659a0d8d0587396c9bbf8fbe3ebaf5cb7311f46e99f0e0944efc96e9c38dd3c60fef6346ae1662b923c39955e0c662ec1993b0b2904f04888b2b3d0009b044b SHA512 8287acea5f6981119dfe223ff9cd2fd14f504b9a70418426ab716b80aea670b30249fbd727664ebf72d6d0660a84a57ff027a42cfe67946a7737a4308eebd786
 DIST numpy-user-1.13.0.pdf 580593 BLAKE2B dcf86d0a87ceb7062b8fb339d37bfe3c3fd5e166f3079a079d50f6afb51bde9754d050c97b3e4aec237aaf797d70a2458fe0f26beeeeaf1594330e08c07e181a SHA512 d3891d449b72c2d97af28182e0bcb12559abc114f8dbf0e0c68362c1af50e6aeab565b31b4aa44ab079e8d47f550081a79a4066c37fc52a1c70c05be45eb5c11
 DIST numpy-user-1.8.1.pdf 408305 BLAKE2B 2956e42ebad45b021f72c7e71d357d953ea8a26639b4c6e81dbe1718052304ac5ce1a7f96646d94ad48bf737ddc6962fcbc304e31dfce32b85cb8165b0ada6e0 SHA512 9e646e89e7e67834fa596e43082b43842d1c59287d22fd8d20c9f0a1d3d56a518a08cc2c036de4972ad0d6d9d3c2f56e2210f76e7244d3f7547b5204d84d3c7c
 DIST numpy-user-1.9.1.pdf 418111 BLAKE2B 683ed35ca9e123387a08a88047ad0cfd8bf3698efee7c17c3b57941f57f86297798787f13b142a1bf806f775e70bc116109decb281ab82959c08932c06aa1f3d SHA512 724302468a8e93daf70d379bb1ee7369953e297c40ea260f080b7aca3c9c81e619a81705bdfb2ea214da5b5325ec2b48e953eceeaa1d60c07593b00c35989f45

diff --git a/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch b/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch
deleted file mode 100644
index 9a934cc2a40..00000000000
--- a/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-commit 61e9159569a601315b67c30b6e26bbb2149c0bfa
-Author: Benda Xu <heroxbd@gentoo.org>
-Date:   Wed Feb 15 11:17:05 2017 +0900
-
-    BUG: blas_info should record include_dirs
-    
-      blas specified in site.cfg could have non-standard include dirs.
-      It should be read and saved in distutils/__config__.py
-
-PR: https://github.com/numpy/numpy/pull/8619
-
-diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
-index b8520ac..0fba865 100644
---- a/numpy/distutils/system_info.py
-+++ b/numpy/distutils/system_info.py
-@@ -1667,6 +1667,8 @@ class blas_info(system_info):
-         info = self.check_libs(lib_dirs, blas_libs, [])
-         if info is None:
-             return
-+        else:
-+            info['include_dirs'] = self.get_include_dirs()
-         if platform.system() == 'Windows':
-             # The check for windows is needed because has_cblas uses the
-             # same compiler that was used to compile Python and msvc is

diff --git a/dev-python/numpy/numpy-1.12.1.ebuild b/dev-python/numpy/numpy-1.12.1.ebuild
deleted file mode 100644
index 923ecd5f7c4..00000000000
--- a/dev-python/numpy/numpy-1.12.1.ebuild
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs versionator
-
-DOC_PV="1.11.0"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://www.numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.11.0
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	doc? ( app-arch/unzip )
-	lapack? ( virtual/pkgconfig )
-	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-no-hardcode-blas.patch
-	"${FILESDIR}"/${PN}-1.11.2-blas_rec_inc_dir.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# we don't have f2py-3.3
-	sed \
-		-e 's:test_f2py:_&:g' \
-		-i numpy/tests/test_scripts.py || die
-
-	# QA bug 590464
-	# The .py files from numpy/core/tests are just added, instead
-	# of being bytecode compiled as a proper subdir package.
-	# We trick the buildsystem into accepting it as a bytecode
-	# package by adding a setup.py and an empty __init__.py
-	#cp numpy/{compat/setup.py,core/tests} || die
-	#touch numpy/core/tests/__init__.py || die
-	#sed \
-	#	-e 's:compat:tests:' \
-	#	-i numpy/core/tests/setup.py || die
-	#sed \
-	#	-e "s:config\.add_data_dir('tests'):config\.add_subpackage('tests'):" \
-	#	-i numpy/core/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	distutils-r1_python_compile \
-		$(usex python_targets_python3_5 "" "-j $(makeopts_jobs)") \
-		${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing --single-version-externally-managed --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	DOCS+=( THANKS.txt )
-
-	if use doc; then
-		HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-
-	docinto f2py
-	dodoc doc/f2py/*.txt
-	doman doc/f2py/f2py.1
-}

diff --git a/dev-python/numpy/numpy-1.13.1.ebuild b/dev-python/numpy/numpy-1.13.1.ebuild
deleted file mode 100644
index 3fde5c7bc3d..00000000000
--- a/dev-python/numpy/numpy-1.13.1.ebuild
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs versionator
-
-DOC_PV="1.13.0"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://www.numpy.org/"
-SRC_URI="
-	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.11.0
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	app-arch/unzip
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	lapack? ( virtual/pkgconfig )
-	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.12.1-no-hardcode-blas.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# we don't have f2py-3.3
-	sed \
-		-e 's:test_f2py:_&:g' \
-		-i numpy/tests/test_scripts.py || die
-
-	# QA bug 590464
-	# The .py files from numpy/core/tests are just added, instead
-	# of being bytecode compiled as a proper subdir package.
-	# We trick the buildsystem into accepting it as a bytecode
-	# package by adding a setup.py and an empty __init__.py
-	#cp numpy/{compat/setup.py,core/tests} || die
-	#touch numpy/core/tests/__init__.py || die
-	#sed \
-	#	-e 's:compat:tests:' \
-	#	-i numpy/core/tests/setup.py || die
-	#sed \
-	#	-e "s:config\.add_data_dir('tests'):config\.add_subpackage('tests'):" \
-	#	-i numpy/core/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	local python_makeopts_jobs=""
-	python_is_python3 || python_makeopts_jobs="-j $(makeopts_jobs)"
-	distutils-r1_python_compile \
-		${python_makeopts_jobs} \
-		${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing --single-version-externally-managed --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	DOCS+=( THANKS.txt )
-
-	if use doc; then
-		HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-
-	docinto f2py
-	dodoc doc/f2py/*.txt
-	doman doc/f2py/f2py.1
-}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2017-05-03  7:37 Michał Górny
  0 siblings, 0 replies; 26+ messages in thread
From: Michał Górny @ 2017-05-03  7:37 UTC (permalink / raw
  To: gentoo-commits

commit:     13d21eda13dce88e6914445befdd9c6d2511ad8a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed May  3 07:20:38 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed May  3 07:37:40 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=13d21eda

dev-python/numpy: Clean old versions up

 dev-python/numpy/Manifest                          |   4 -
 .../numpy/files/numpy-1.10.1-backport-1.patch      | 127 ----------------
 .../numpy/files/numpy-1.10.1-backport-2.patch      |  73 ---------
 .../files/numpy-1.11.1-no-hardcode-blas.patch      |  71 ---------
 .../files/numpy-1.11.2-import-module-fix.patch     |  27 ----
 dev-python/numpy/numpy-1.10.1-r1.ebuild            | 152 -------------------
 dev-python/numpy/numpy-1.10.2-r2.ebuild            | 149 ------------------
 dev-python/numpy/numpy-1.11.2-r1.ebuild            | 166 ---------------------
 dev-python/numpy/numpy-1.9.3.ebuild                | 146 ------------------
 9 files changed, 915 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 856d490efce..fb2e3d0f0c8 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,11 +1,7 @@
-DIST numpy-1.10.1.tar.gz 4048478 SHA256 8b9f453f29ce96a14e625100d3dcf8926301d36c5f622623bf8820e748510858 SHA512 ea717bac913a8e63bf93822bddbfe7701a3de00051bf3c7020f5e22756987becb5a2f96a6a52a36fc7c2b856815a782e450099688ce86b21fa94b0076b9ef376 WHIRLPOOL 7671368bec55c7f53ffa78a509946acc998e6f4223da4f3429b82a5a38b5e0277a0f89773ec2335f8e46b5c695620a4119af5ab59734184054c31b11841de44b
-DIST numpy-1.10.2.tar.gz 4055005 SHA256 23a3befdf955db4d616f8bb77b324680a80a323e0c42a7e8d7388ef578d8ffa9 SHA512 040db49593f3c53c9b43301eacffc3b5817310f1dbb91fd650efcf5ba65ce7e217549dc5268bc56846f19f1a03dd19470989005aa176531af44d602b3546b007 WHIRLPOOL 30c4b365aac6623241afd72fc30d3a543183205eb23db1366937e39fc50dee862923dd249775fee67cce0199940a57ec1423f1cb0e65ff7c65764c7969d7a76f
 DIST numpy-1.10.4.tar.gz 4069996 SHA256 7356e98fbcc529e8d540666f5a919912752e569150e9a4f8d869c686f14c720b SHA512 57ace46e357d49be0efd904e5ceb9862c626c916987c8798a12de7ae1e06816ad8483439ac4619792a04889631b5998f2397dc601c78dea33a784b4831c19c79 WHIRLPOOL 76946c2543b1cade06d71f83fd507bd818c1090baa9c3ddda7d1f48d48ed23672c5d9de76db890df990c6d8b7b26b71d3ce733c448943ad4177374a957360d1c
-DIST numpy-1.11.2.tar.gz 4178447 SHA256 04db2fbd64e2e7c68e740b14402b25af51418fc43a59d9e54172b38b906b0f69 SHA512 c1818de5c8b92cc2a673149f090cc863b484afd29e8a014ffcf8d0f5e70cf8886c7662dbe45847712dec8ae0412d1cb48b13cceefe3e4ec0e85bb20e4beaa46e WHIRLPOOL 668acc8ada165b57e1b2ab76969affa0098a5746c4ca21ae88cd189c5e6f79bde9d05bf951604d0c0f7400174f1e58f17fa0d662029f0b91cff78118fe3cdb0d
 DIST numpy-1.12.1.zip 4824784 SHA256 a65266a4ad6ec8936a1bc85ce51f8600634a31a258b722c9274a80ff189d9542 SHA512 156319821e4f0cf8d820e977da704aab274b7a4a4b792f6e40d7c0f2827700c990f55f1ca9650523c62c9e937f0e75f336d091d46ca47aaa9875c68fe32bac2a WHIRLPOOL 1ecd1df77d2a64bc6db1910446f60b477ebf5a1cf33ec2e1fced56dbbf1a7df5fef004c7f84f0dccb0ca20ea7ab73c384e4d247eb9700159a18c9a4a51e4db6d
 DIST numpy-1.8.2.tar.gz 3792998 SHA256 6d487fc724780d66746bde264ea71f5cd77d3a39e52ee2b073dcaed63bc669db SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c WHIRLPOOL 0d3a05b1e3c0a1ceb0a7b4818406dbb45506e5f25bc2727d4ff44cc0a0520e6556b3c68ae24dbca37ba9d67ae2defbb3ff9c906d4c2635b29ed44452d70e8311
 DIST numpy-1.9.2.tar.gz 3986067 SHA256 325e5f2b0b434ecb6e6882c7e1034cc6cdde3eeeea87dbc482575199a6aeef2a SHA512 70470ebb9afef5dfd0c83ceb7a9d5f1b7a072b1a9b54b04f04f5ed50fbaedd5b4906bd500472268d478f94df9e749a88698b1ff30f2d80258e7f3fec040617d9 WHIRLPOOL 59f5dc52cb95c7ce80fec3a7feac6cfda1d149596bf6d95c18bd8314e31a8df494b2b470c4cc3d8c296c9fc11c718d70d5b9b5344337175ca75496504c0fd201
-DIST numpy-1.9.3.tar.gz 3984430 SHA256 c3b74d3b9da4ceb11f66abd21e117da8cf584b63a0efbd01a9b7e91b693fbbd6 SHA512 32531cd8d1480a50812454ef8e3b68c0f84b2a4bc5de0df1457070db7f6fd94cdb50e6479a85fa4d1dc569a10d28f6864d5069fcf2a32fa20fa8803476a3df8c WHIRLPOOL a0235594e793625d5e3cef57956f4710587158885f39d7d1267c9845b12fb1d39fb9987ec095720c2d285c7c726383a15471f3629b739b77186470e2c40ba093
 DIST numpy-html-1.10.1.zip 9663942 SHA256 4af48eb5abf2551f01d85aea7e9a99a30096777f02937dc185b16bb72a110366 SHA512 9d1f3619b801c88604a0495290da4ae8cfb4800257d549214363c554c1dc09a736425d594ed88f492afee6ae7c68fe5c166b9b3a8f24637ea41d67fd23b9d9f9 WHIRLPOOL d6c93e31e31c832fb21f117d03719e0375ee3d27fb6f7975bfcd12469df4a2ed0a25a16bd09a0e2113407446efc220e5bff534f7cd76a715c3d7df26c02f07a1
 DIST numpy-html-1.11.0.zip 9879611 SHA256 0244bff4b585ab417be963f492e69129e54bb83d630b463591f9e89c62807d85 SHA512 7bf416030c273c767a98d0f23adef0e5fd05f96f6bb911e32ec88821a5bc7c47a2799d33fb0706cb2d391ea6e47b3e0eef0d789eb1c0d81c982cfaa991a09822 WHIRLPOOL d7e81340aa1ec46c2b0d36b76e7a1e11ba7d1b39177a8168efe734936e1622808c8997a8cc22f773b9c3e17b51f5861e11eaf7fa89e9b0c61cae937ee7b5fdba
 DIST numpy-html-1.8.1.zip 9703711 SHA256 f7fc3af4dba7b40deabd1828a86ea2e2eb5b9fa17c7ebddd73ee4cb8625105b1 SHA512 1d52c657931f4eebb5325159444aedd969b201f5098855058f1ef632dc8677372d632291154ebc3db9869cdb8abf7eb820eade1a9edba2d6be1ae918cb38c071 WHIRLPOOL e502b1416bad4b189773ba98035dfbeed0dc251d8f9b76e336450f14e8425caf92d55d2b1c2cc5ef9eb2d33eb2bf7cd55e720c1b265e45539b195fea1d7f046c

diff --git a/dev-python/numpy/files/numpy-1.10.1-backport-1.patch b/dev-python/numpy/files/numpy-1.10.1-backport-1.patch
deleted file mode 100644
index 77a3c010371..00000000000
--- a/dev-python/numpy/files/numpy-1.10.1-backport-1.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From 3a816a4db9b498eb64eb837fdcca0fa8ddbe063e Mon Sep 17 00:00:00 2001
-From: Allan Haldane <allan.haldane@gmail.com>
-Date: Sat, 17 Oct 2015 14:00:36 -0400
-Subject: [PATCH] BUG: recarrays viewed as subarrays don't convert to np.record
- type
-
-Record array views were updated in #5943 to return np.record dtype
-where possible, but forgot about the case of sub-arrays.
-
-That's fixed here, so accessing subarray fields by attribute or index
-works sensibly, as well as viewing a record array as a subarray dtype,
-and printing subarrays.
-
-This also happens to fix #6459, since it affects the same lines.
-
-Fixes #6497 #6459
----
- numpy/core/records.py            | 30 +++++++++++++++++++-----------
- numpy/core/tests/test_records.py | 23 +++++++++++++++++++++++
- 2 files changed, 42 insertions(+), 11 deletions(-)
-
-diff --git a/numpy/core/records.py b/numpy/core/records.py
-index 4a99553..4ce3fe9 100644
---- a/numpy/core/records.py
-+++ b/numpy/core/records.py
-@@ -448,12 +448,14 @@ def __getattribute__(self, attr):
- 
-         # At this point obj will always be a recarray, since (see
-         # PyArray_GetField) the type of obj is inherited. Next, if obj.dtype is
--        # non-structured, convert it to an ndarray. If obj is structured leave
--        # it as a recarray, but make sure to convert to the same dtype.type (eg
--        # to preserve numpy.record type if present), since nested structured
--        # fields do not inherit type.
-+        # non-structured, convert it to an ndarray. Then if obj is structured
-+        # with void type convert it to the same dtype.type (eg to preserve
-+        # numpy.record type if present), since nested structured fields do not
-+        # inherit type. Don't do this for non-void structures though.
-         if obj.dtype.fields:
--            return obj.view(dtype=(self.dtype.type, obj.dtype.fields))
-+            if issubclass(obj.dtype.type, nt.void):
-+                return obj.view(dtype=(self.dtype.type, obj.dtype))
-+            return obj
-         else:
-             return obj.view(ndarray)
- 
-@@ -463,8 +465,9 @@ def __getattribute__(self, attr):
-     # Thus, you can't create attributes on-the-fly that are field names.
-     def __setattr__(self, attr, val):
- 
--        # Automatically convert (void) dtypes to records.
--        if attr == 'dtype' and issubclass(val.type, nt.void):
-+        # Automatically convert (void) structured types to records
-+        # (but not non-void structures, subarrays, or non-structured voids)
-+        if attr == 'dtype' and issubclass(val.type, nt.void) and val.fields:
-             val = sb.dtype((record, val))
- 
-         newattr = attr not in self.__dict__
-@@ -499,7 +502,9 @@ def __getitem__(self, indx):
-         # we might also be returning a single element
-         if isinstance(obj, ndarray):
-             if obj.dtype.fields:
--                return obj.view(dtype=(self.dtype.type, obj.dtype.fields))
-+                if issubclass(obj.dtype.type, nt.void):
-+                    return obj.view(dtype=(self.dtype.type, obj.dtype))
-+                return obj
-             else:
-                 return obj.view(type=ndarray)
-         else:
-@@ -519,11 +524,14 @@ def __repr__(self):
-             # If this is a full record array (has numpy.record dtype),
-             # or if it has a scalar (non-void) dtype with no records,
-             # represent it using the rec.array function. Since rec.array
--            # converts dtype to a numpy.record for us, use only dtype.descr,
--            # not repr(dtype).
-+            # converts dtype to a numpy.record for us, convert back
-+            # to non-record before printing
-+            plain_dtype = self.dtype
-+            if plain_dtype.type is record:
-+                plain_dtype = sb.dtype((nt.void, plain_dtype))
-             lf = '\n'+' '*len("rec.array(")
-             return ('rec.array(%s, %sdtype=%s)' %
--                          (lst, lf, repr(self.dtype.descr)))
-+                          (lst, lf, plain_dtype))
-         else:
-             # otherwise represent it using np.array plus a view
-             # This should only happen if the user is playing
-diff --git a/numpy/core/tests/test_records.py b/numpy/core/tests/test_records.py
-index 7a18f29..290bc4f 100644
---- a/numpy/core/tests/test_records.py
-+++ b/numpy/core/tests/test_records.py
-@@ -121,6 +121,23 @@ def test_recarray_views(self):
-         assert_equal(type(rv), np.recarray)
-         assert_equal(rv.dtype.type, np.record)
- 
-+        # check that accessing nested structures keep record type, but
-+        # not for subarrays, non-void structures, non-structured voids
-+        test_dtype = [('a', 'f4,f4'), ('b', 'V8'), ('c', ('f4',2)),
-+                      ('d', ('i8', 'i4,i4'))]
-+        r = np.rec.array([((1,1), b'11111111', [1,1], 1),
-+                          ((1,1), b'11111111', [1,1], 1)], dtype=test_dtype)
-+        assert_equal(r.a.dtype.type, np.record)
-+        assert_equal(r.b.dtype.type, np.void)
-+        assert_equal(r.c.dtype.type, np.float32)
-+        assert_equal(r.d.dtype.type, np.int64)
-+        # check the same, but for views
-+        r = np.rec.array(np.ones(4, dtype='i4,i4'))
-+        assert_equal(r.view('f4,f4').dtype.type, np.record)
-+        assert_equal(r.view(('i4',2)).dtype.type, np.int32)
-+        assert_equal(r.view('V8').dtype.type, np.void)
-+        assert_equal(r.view(('i8', 'i4,i4')).dtype.type, np.int64)
-+
-         #check that we can undo the view
-         arrs = [np.ones(4, dtype='f4,i4'), np.ones(4, dtype='f8')]
-         for arr in arrs:
-@@ -135,6 +152,12 @@ def test_recarray_repr(self):
-         a = np.array(np.ones(4, dtype='f8'))
-         assert_(repr(np.rec.array(a)).startswith('rec.array'))
- 
-+        # check that the 'np.record' part of the dtype isn't shown
-+        a = np.rec.array(np.ones(3, dtype='i4,i4'))
-+        assert_equal(repr(a).find('numpy.record'), -1)
-+        a = np.rec.array(np.ones(3, dtype='i4'))
-+        assert_(repr(a).find('dtype=int32') != -1)
-+
-     def test_recarray_from_names(self):
-         ra = np.rec.array([
-             (1, 'abc', 3.7000002861022949, 0),

diff --git a/dev-python/numpy/files/numpy-1.10.1-backport-2.patch b/dev-python/numpy/files/numpy-1.10.1-backport-2.patch
deleted file mode 100644
index 9c33704f8e2..00000000000
--- a/dev-python/numpy/files/numpy-1.10.1-backport-2.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From 0d25dc4175e00cdaf9545e8b1b1a5b879cf67248 Mon Sep 17 00:00:00 2001
-From: Ethan Kruse <eakruse@uw.edu>
-Date: Mon, 19 Oct 2015 13:29:01 -0700
-Subject: [PATCH 1/2] Potential fix for #6462
-
----
- numpy/lib/function_base.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
-index 555d083..fef69df 100644
---- a/numpy/lib/function_base.py
-+++ b/numpy/lib/function_base.py
-@@ -3339,7 +3339,7 @@ def _median(a, axis=None, out=None, overwrite_input=False):
-         indexer[axis] = slice(index-1, index+1)
- 
-     # Check if the array contains any nan's
--    if np.issubdtype(a.dtype, np.inexact):
-+    if np.issubdtype(a.dtype, np.inexact) and sz > 0:
-         # warn and return nans like mean would
-         rout = mean(part[indexer], axis=axis, out=out)
-         part = np.rollaxis(part, axis, part.ndim)
-
-From 59d859fb2160950ac93267d7461ad952145c8724 Mon Sep 17 00:00:00 2001
-From: Ethan Kruse <eakruse@uw.edu>
-Date: Tue, 20 Oct 2015 11:40:49 -0700
-Subject: [PATCH 2/2] Added tests for median of empty arrays
-
----
- numpy/lib/tests/test_function_base.py | 30 ++++++++++++++++++++++++++++++
- 1 file changed, 30 insertions(+)
-
-diff --git a/numpy/lib/tests/test_function_base.py b/numpy/lib/tests/test_function_base.py
-index 4516c92..aa41c1f 100644
---- a/numpy/lib/tests/test_function_base.py
-+++ b/numpy/lib/tests/test_function_base.py
-@@ -2597,6 +2597,36 @@ def test_nan_behavior(self):
-             assert_equal(np.median(a, (0, 2)), b)
-             assert_equal(len(w), 1)
- 
-+    def test_empty(self):
-+        # empty arrays
-+        a = np.array([], dtype=float)
-+        with warnings.catch_warnings(record=True) as w:
-+            warnings.filterwarnings('always', '', RuntimeWarning)
-+            assert_equal(np.median(a), np.nan)
-+            assert_(w[0].category is RuntimeWarning)
-+
-+        # multiple dimensions
-+        a = np.array([], dtype=float, ndmin=3)
-+        # no axis
-+        with warnings.catch_warnings(record=True) as w:
-+            warnings.filterwarnings('always', '', RuntimeWarning)
-+            assert_equal(np.median(a), np.nan)
-+            assert_(w[0].category is RuntimeWarning)
-+
-+        # axis 0 and 1
-+        b = np.array([], dtype=float, ndmin=2)
-+        with warnings.catch_warnings(record=True) as w:
-+            warnings.filterwarnings('always', '', RuntimeWarning)
-+            assert_equal(np.median(a, axis=0), b)
-+            assert_equal(np.median(a, axis=1), b)
-+
-+        # axis 2
-+        b = np.array(np.nan, dtype=float, ndmin=2)
-+        with warnings.catch_warnings(record=True) as w:
-+            warnings.filterwarnings('always', '', RuntimeWarning)
-+            assert_equal(np.median(a, axis=2), b)
-+            assert_(w[0].category is RuntimeWarning)
-+
-     def test_object(self):
-         o = np.arange(7.)
-         assert_(type(np.median(o.astype(object))), float)

diff --git a/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch
deleted file mode 100644
index 1f6f9c4c096..00000000000
--- a/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch
+++ /dev/null
@@ -1,71 +0,0 @@
---- numpy-1.11.1/numpy/distutils/system_info.py
-+++ numpy-1.11.1/numpy/distutils/system_info.py
-@@ -312,26 +312,7 @@
-       1 - display warning message
-       2 - raise error
-     """
--    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
--          'atlas_threads': atlas_threads_info,                # ditto
--          'atlas_blas': atlas_blas_info,
--          'atlas_blas_threads': atlas_blas_threads_info,
--          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
--          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
--          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
--          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
--          'atlas_3_10_blas': atlas_3_10_blas_info,
--          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
--          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
--          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
--          'mkl': mkl_info,
--          # openblas which may or may not have embedded lapack
--          'openblas': openblas_info,          # use blas_opt instead
--          # openblas with embedded lapack
--          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
--          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
--          'blas_mkl': blas_mkl_info,          # use blas_opt instead
--          'x11': x11_info,
-+    cl = {'x11': x11_info,
-           'fft_opt': fft_opt_info,
-           'fftw': fftw_info,
-           'fftw2': fftw2_info,
-@@ -669,10 +650,7 @@
-         return [b for b in [a.strip() for a in libs.split(',')] if b]
- 
-     def get_libraries(self, key='libraries'):
--        if hasattr(self, '_lib_names'):
--            return self.get_libs(key, default=self._lib_names)
--        else:
--            return self.get_libs(key, '')
-+        return self.get_libs(key, '')
- 
-     def library_extensions(self):
-         static_exts = ['.a']
-@@ -1685,7 +1663,7 @@
-             lib = self.has_cblas(info)
-             if lib is not None:
-                 info['language'] = 'c'
--                info['libraries'] = [lib]
-+                info['libraries'] = lib
-                 info['define_macros'] = [('HAVE_CBLAS', None)]
-         self.set_info(**info)
- 
-@@ -1718,16 +1696,16 @@
-                 # check for cblas lib, and if not present check for blas lib.
-                 try:
-                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
--                                      libraries=["cblas"],
-+                                      libraries=info["libraries"],
-                                       library_dirs=info['library_dirs'],
-                                       extra_postargs=info.get('extra_link_args', []))
--                    res = "cblas"
-+                    res = info["libraries"]
-                 except distutils.ccompiler.LinkError:
-                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
-                                       libraries=["blas"],
-                                       library_dirs=info['library_dirs'],
-                                       extra_postargs=info.get('extra_link_args', []))
--                    res = "blas"
-+                    res = ["blas"]
-             except distutils.ccompiler.CompileError:
-                 res = None
-         finally:

diff --git a/dev-python/numpy/files/numpy-1.11.2-import-module-fix.patch b/dev-python/numpy/files/numpy-1.11.2-import-module-fix.patch
deleted file mode 100644
index 80b710b5b53..00000000000
--- a/dev-python/numpy/files/numpy-1.11.2-import-module-fix.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 5d0ce36e5be134bb5ead03cab1edeaa60fa355aa Mon Sep 17 00:00:00 2001
-From: Jonathan Helmus <jjhelmus@gmail.com>
-Date: Wed, 12 Oct 2016 13:07:42 -0500
-Subject: [PATCH] BUG: import full module path in npy_load_module
-
-Use the full module path when importing importlib.machinery for use in the
-npy_load_module function. Just importing importlib is not sufficient in certain
-cases, for example Python 3.4.
-
-closes #8147
----
- numpy/compat/py3k.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/numpy/compat/py3k.py b/numpy/compat/py3k.py
-index 25cc535..d5bb2e4 100644
---- a/numpy/compat/py3k.py
-+++ b/numpy/compat/py3k.py
-@@ -118,7 +118,7 @@ def npy_load_module(name, fn, info=None):
-         mod : module
- 
-         """
--        import importlib
-+        import importlib.machinery
-         return importlib.machinery.SourceFileLoader(name, fn).load_module()
- else:
-     def npy_load_module(name, fn, info=None):

diff --git a/dev-python/numpy/numpy-1.10.1-r1.ebuild b/dev-python/numpy/numpy-1.10.1-r1.ebuild
deleted file mode 100644
index 822c5cb22f2..00000000000
--- a/dev-python/numpy/numpy-1.10.1-r1.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 eutils flag-o-matic fortran-2 multilib multiprocessing toolchain-funcs versionator
-
-DOC_PV="1.9.1"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://www.numpy.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.8.1
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	doc? ( app-arch/unzip )
-	lapack? ( virtual/pkgconfig )
-	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
-
-# Uses distutils.command.config.
-DISTUTILS_IN_SOURCE_BUILD=1
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.9.2-no-hardcode-blas.patch
-	"${FILESDIR}"/${P}-backport-1.patch
-	"${FILESDIR}"/${P}-backport-2.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s:+os\.path.*$::' numpy/f2py/setup.py || die
-
-	# we don't have f2py-3.3
-	sed \
-		-e "/f2py_cmd/s:'f2py'.*:'f2py':g" \
-		-i numpy/tests/test_scripts.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	distutils-r1_python_compile -j $(makeopts_jobs) ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	dodoc COMPATIBILITY DEV_README.txt THANKS.txt
-
-	if use doc; then
-		dohtml -r "${WORKDIR}"/html/*
-		dodoc "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf
-	fi
-
-	# absent in 1.9
-	#docinto f2py
-	#dodoc numpy/f2py/docs/*.txt
-	#doman numpy/f2py/f2py.1
-}

diff --git a/dev-python/numpy/numpy-1.10.2-r2.ebuild b/dev-python/numpy/numpy-1.10.2-r2.ebuild
deleted file mode 100644
index 9aade7307f8..00000000000
--- a/dev-python/numpy/numpy-1.10.2-r2.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 eutils flag-o-matic fortran-2 multilib multiprocessing toolchain-funcs versionator
-
-DOC_PV="1.10.1"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://www.numpy.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.8.1
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	doc? ( app-arch/unzip )
-	lapack? ( virtual/pkgconfig )
-	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
-
-# Uses distutils.command.config.
-DISTUTILS_IN_SOURCE_BUILD=1
-
-PATCHES=(
-	"${FILESDIR}"/${P}-no-hardcode-blas.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-#	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-#	# we don't have f2py-3.3
-	sed \
-		-e 's:test_f2py:_&:g' \
-		-i numpy/tests/test_scripts.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	distutils-r1_python_compile -j $(makeopts_jobs) ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	DOCS+=( COMPATIBILITY DEV_README.txt THANKS.txt )
-
-	if use doc; then
-		HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-
-	docinto f2py
-	dodoc doc/f2py/*.txt
-	doman doc/f2py/f2py.1
-}

diff --git a/dev-python/numpy/numpy-1.11.2-r1.ebuild b/dev-python/numpy/numpy-1.11.2-r1.ebuild
deleted file mode 100644
index 7d10708997c..00000000000
--- a/dev-python/numpy/numpy-1.11.2-r1.ebuild
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs versionator
-
-DOC_PV="1.11.0"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://www.numpy.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.11.0
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	doc? ( app-arch/unzip )
-	lapack? ( virtual/pkgconfig )
-	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.11.1-no-hardcode-blas.patch
-	"${FILESDIR}"/${PN}-1.11.2-blas_rec_inc_dir.patch
-	# This has been fixed upstream but no new release yet
-	# https://github.com/numpy/numpy/commit/5d0ce36e5be134bb5ead03cab1edeaa60fa355aa
-	"${FILESDIR}"/${P}-import-module-fix.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		cat >> site.cfg <<-EOF || die
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
-
-	# we don't have f2py-3.3
-	sed \
-		-e 's:test_f2py:_&:g' \
-		-i numpy/tests/test_scripts.py || die
-
-	# QA bug 590464
-	# The .py files from numpy/core/tests are just added, instead
-	# of being bytecode compiled as a proper subdir package.
-	# We trick the buildsystem into accepting it as a bytecode
-	# package by adding a setup.py and an empty __init__.py
-	#cp numpy/{compat/setup.py,core/tests} || die
-	#touch numpy/core/tests/__init__.py || die
-	#sed \
-	#	-e 's:compat:tests:' \
-	#	-i numpy/core/tests/setup.py || die
-	#sed \
-	#	-e "s:config\.add_data_dir('tests'):config\.add_subpackage('tests'):" \
-	#	-i numpy/core/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	distutils-r1_python_compile \
-		$(usex python_targets_python3_5 "" "-j $(makeopts_jobs)") \
-		${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing --single-version-externally-managed --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	DOCS+=( THANKS.txt )
-
-	if use doc; then
-		HTML_DOCS=( "${WORKDIR}"/html/. )
-		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
-	fi
-
-	distutils-r1_python_install_all
-
-	docinto f2py
-	dodoc doc/f2py/*.txt
-	doman doc/f2py/f2py.1
-}

diff --git a/dev-python/numpy/numpy-1.9.3.ebuild b/dev-python/numpy/numpy-1.9.3.ebuild
deleted file mode 100644
index 30c02d23dd6..00000000000
--- a/dev-python/numpy/numpy-1.9.3.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
-PYTHON_REQ_USE="threads(+)"
-
-FORTRAN_NEEDED=lapack
-
-inherit distutils-r1 eutils flag-o-matic fortran-2 multilib toolchain-funcs versionator
-
-DOC_PV="1.9.1"
-DOC_P="${PN}-${DOC_PV}"
-
-DESCRIPTION="Fast array and numerical python library"
-HOMEPAGE="http://numpy.scipy.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
-	doc? (
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
-		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
-	)"
-# It appears the docs haven't been upgraded, still @ 1.8.1
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc lapack test"
-
-RDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
-	lapack? ( virtual/cblas virtual/lapack )"
-DEPEND="${RDEPEND}
-	doc? ( app-arch/unzip )
-	lapack? ( virtual/pkgconfig )
-	test? ( dev-python/nose[${PYTHON_USEDEP}] )"
-
-# Uses distutils.command.config.
-DISTUTILS_IN_SOURCE_BUILD=1
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-1.9.2-no-hardcode-blas.patch
-)
-
-src_unpack() {
-	default
-	if use doc; then
-		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
-	fi
-}
-
-pc_incdir() {
-	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
-		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libdir() {
-	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
-		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
-}
-
-pc_libs() {
-	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
-		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
-		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
-		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
-}
-
-python_prepare_all() {
-	if use lapack; then
-		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
-		local libdir="${EPREFIX}"/usr/$(get_libdir)
-		# make sure _dotblas.so gets built
-		sed -i -e '/NO_ATLAS_INFO/,+1d' numpy/core/setup.py || die
-		cat >> site.cfg <<-EOF
-			[blas]
-			include_dirs = $(pc_incdir cblas)
-			library_dirs = $(pc_libdir cblas blas):${libdir}
-			blas_libs = $(pc_libs cblas blas)
-			[lapack]
-			library_dirs = $(pc_libdir lapack):${libdir}
-			lapack_libs = $(pc_libs lapack)
-		EOF
-	else
-		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
-	fi
-
-	export CC="$(tc-getCC) ${CFLAGS}"
-
-	append-flags -fno-strict-aliasing
-
-	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
-	# with the subtle difference that we don't want to break Darwin where
-	# -shared is not a valid linker argument
-	if [[ ${CHOST} != *-darwin* ]]; then
-		append-ldflags -shared
-	fi
-
-	# only one fortran to link with:
-	# linking with cblas and lapack library will force
-	# autodetecting and linking to all available fortran compilers
-	append-fflags -fPIC
-	if use lapack; then
-		NUMPY_FCONFIG="config_fc --noopt --noarch"
-		# workaround bug 335908
-		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
-	fi
-
-	# don't version f2py, we will handle it.
-	sed -i -e '/f2py_exe/s:+os\.path.*$::' numpy/f2py/setup.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	distutils-r1_python_compile ${NUMPY_FCONFIG}
-}
-
-python_test() {
-	distutils_install_for_testing ${NUMPY_FCONFIG}
-
-	cd "${TMPDIR}" || die
-	${EPYTHON} -c "
-import numpy, sys
-r = numpy.test(label='full', verbose=3)
-sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
-}
-
-python_install() {
-	distutils-r1_python_install ${NUMPY_FCONFIG}
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	dodoc COMPATIBILITY DEV_README.txt THANKS.txt
-
-	if use doc; then
-		dohtml -r "${WORKDIR}"/html/*
-		dodoc "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf
-	fi
-
-	# absent in 1.9
-	#docinto f2py
-	#dodoc numpy/f2py/docs/*.txt
-	#doman numpy/f2py/f2py.1
-}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2017-04-14 19:34 Justin Lecher
  0 siblings, 0 replies; 26+ messages in thread
From: Justin Lecher @ 2017-04-14 19:34 UTC (permalink / raw
  To: gentoo-commits

commit:     65d331f931f54d7c099446acf1eb1796e61ce990
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 14 19:34:39 2017 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Fri Apr 14 19:34:39 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65d331f9

dev-python/numpy: Version Bump

Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=607914
Package-Manager: Portage-2.3.5, Repoman-2.3.2
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 dev-python/numpy/Manifest                          |   1 +
 .../files/numpy-1.12.1-no-hardcode-blas.patch      |  72 +++++++++
 dev-python/numpy/numpy-1.12.1.ebuild               | 164 +++++++++++++++++++++
 3 files changed, 237 insertions(+)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 7c95901d637..856d490efce 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -2,6 +2,7 @@ DIST numpy-1.10.1.tar.gz 4048478 SHA256 8b9f453f29ce96a14e625100d3dcf8926301d36c
 DIST numpy-1.10.2.tar.gz 4055005 SHA256 23a3befdf955db4d616f8bb77b324680a80a323e0c42a7e8d7388ef578d8ffa9 SHA512 040db49593f3c53c9b43301eacffc3b5817310f1dbb91fd650efcf5ba65ce7e217549dc5268bc56846f19f1a03dd19470989005aa176531af44d602b3546b007 WHIRLPOOL 30c4b365aac6623241afd72fc30d3a543183205eb23db1366937e39fc50dee862923dd249775fee67cce0199940a57ec1423f1cb0e65ff7c65764c7969d7a76f
 DIST numpy-1.10.4.tar.gz 4069996 SHA256 7356e98fbcc529e8d540666f5a919912752e569150e9a4f8d869c686f14c720b SHA512 57ace46e357d49be0efd904e5ceb9862c626c916987c8798a12de7ae1e06816ad8483439ac4619792a04889631b5998f2397dc601c78dea33a784b4831c19c79 WHIRLPOOL 76946c2543b1cade06d71f83fd507bd818c1090baa9c3ddda7d1f48d48ed23672c5d9de76db890df990c6d8b7b26b71d3ce733c448943ad4177374a957360d1c
 DIST numpy-1.11.2.tar.gz 4178447 SHA256 04db2fbd64e2e7c68e740b14402b25af51418fc43a59d9e54172b38b906b0f69 SHA512 c1818de5c8b92cc2a673149f090cc863b484afd29e8a014ffcf8d0f5e70cf8886c7662dbe45847712dec8ae0412d1cb48b13cceefe3e4ec0e85bb20e4beaa46e WHIRLPOOL 668acc8ada165b57e1b2ab76969affa0098a5746c4ca21ae88cd189c5e6f79bde9d05bf951604d0c0f7400174f1e58f17fa0d662029f0b91cff78118fe3cdb0d
+DIST numpy-1.12.1.zip 4824784 SHA256 a65266a4ad6ec8936a1bc85ce51f8600634a31a258b722c9274a80ff189d9542 SHA512 156319821e4f0cf8d820e977da704aab274b7a4a4b792f6e40d7c0f2827700c990f55f1ca9650523c62c9e937f0e75f336d091d46ca47aaa9875c68fe32bac2a WHIRLPOOL 1ecd1df77d2a64bc6db1910446f60b477ebf5a1cf33ec2e1fced56dbbf1a7df5fef004c7f84f0dccb0ca20ea7ab73c384e4d247eb9700159a18c9a4a51e4db6d
 DIST numpy-1.8.2.tar.gz 3792998 SHA256 6d487fc724780d66746bde264ea71f5cd77d3a39e52ee2b073dcaed63bc669db SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c WHIRLPOOL 0d3a05b1e3c0a1ceb0a7b4818406dbb45506e5f25bc2727d4ff44cc0a0520e6556b3c68ae24dbca37ba9d67ae2defbb3ff9c906d4c2635b29ed44452d70e8311
 DIST numpy-1.9.2.tar.gz 3986067 SHA256 325e5f2b0b434ecb6e6882c7e1034cc6cdde3eeeea87dbc482575199a6aeef2a SHA512 70470ebb9afef5dfd0c83ceb7a9d5f1b7a072b1a9b54b04f04f5ed50fbaedd5b4906bd500472268d478f94df9e749a88698b1ff30f2d80258e7f3fec040617d9 WHIRLPOOL 59f5dc52cb95c7ce80fec3a7feac6cfda1d149596bf6d95c18bd8314e31a8df494b2b470c4cc3d8c296c9fc11c718d70d5b9b5344337175ca75496504c0fd201
 DIST numpy-1.9.3.tar.gz 3984430 SHA256 c3b74d3b9da4ceb11f66abd21e117da8cf584b63a0efbd01a9b7e91b693fbbd6 SHA512 32531cd8d1480a50812454ef8e3b68c0f84b2a4bc5de0df1457070db7f6fd94cdb50e6479a85fa4d1dc569a10d28f6864d5069fcf2a32fa20fa8803476a3df8c WHIRLPOOL a0235594e793625d5e3cef57956f4710587158885f39d7d1267c9845b12fb1d39fb9987ec095720c2d285c7c726383a15471f3629b739b77186470e2c40ba093

diff --git a/dev-python/numpy/files/numpy-1.12.1-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.12.1-no-hardcode-blas.patch
new file mode 100644
index 00000000000..81d6084be3d
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.12.1-no-hardcode-blas.patch
@@ -0,0 +1,72 @@
+--- numpy-1.11.1/numpy/distutils/system_info.py
++++ numpy-1.11.1/numpy/distutils/system_info.py
+@@ -312,27 +312,7 @@
+       1 - display warning message
+       2 - raise error
+     """
+-    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
+-          'atlas_threads': atlas_threads_info,                # ditto
+-          'atlas_blas': atlas_blas_info,
+-          'atlas_blas_threads': atlas_blas_threads_info,
+-          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
+-          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
+-          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
+-          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
+-          'atlas_3_10_blas': atlas_3_10_blas_info,
+-          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
+-          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
+-          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
+-          'mkl': mkl_info,
+-          # openblas which may or may not have embedded lapack
+-          'openblas': openblas_info,          # use blas_opt instead
+-          # openblas with embedded lapack
+-          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
+-          'blis': blis_info,                  # use blas_opt instead
+-          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
+-          'blas_mkl': blas_mkl_info,          # use blas_opt instead
+-          'x11': x11_info,
++    cl = {'x11': x11_info,
+           'fft_opt': fft_opt_info,
+           'fftw': fftw_info,
+           'fftw2': fftw2_info,
+@@ -669,10 +650,7 @@
+         return [b for b in [a.strip() for a in libs.split(',')] if b]
+ 
+     def get_libraries(self, key='libraries'):
+-        if hasattr(self, '_lib_names'):
+-            return self.get_libs(key, default=self._lib_names)
+-        else:
+-            return self.get_libs(key, '')
++        return self.get_libs(key, '')
+ 
+     def library_extensions(self):
+         static_exts = ['.a']
+@@ -1685,7 +1663,7 @@
+             lib = self.has_cblas(info)
+             if lib is not None:
+                 info['language'] = 'c'
+-                info['libraries'] = [lib]
++                info['libraries'] = lib
+                 info['define_macros'] = [('HAVE_CBLAS', None)]
+         self.set_info(**info)
+ 
+@@ -1718,16 +1696,16 @@
+                 # check for cblas lib, and if not present check for blas lib.
+                 try:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+-                                      libraries=["cblas"],
++                                      libraries=info["libraries"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "cblas"
++                    res = info["libraries"]
+                 except distutils.ccompiler.LinkError:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+                                       libraries=["blas"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "blas"
++                    res = ["blas"]
+             except distutils.ccompiler.CompileError:
+                 res = None
+         finally:

diff --git a/dev-python/numpy/numpy-1.12.1.ebuild b/dev-python/numpy/numpy-1.12.1.ebuild
new file mode 100644
index 00000000000..923ecd5f7c4
--- /dev/null
+++ b/dev-python/numpy/numpy-1.12.1.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+PYTHON_REQ_USE="threads(+)"
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 flag-o-matic fortran-2 multiprocessing toolchain-funcs versionator
+
+DOC_PV="1.11.0"
+DOC_P="${PN}-${DOC_PV}"
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="http://www.numpy.org/"
+SRC_URI="
+	mirror://pypi/${PN:0:1}/${PN}/${P}.zip
+	doc? (
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
+	)"
+# It appears the docs haven't been upgraded, still @ 1.11.0
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack test"
+
+RDEPEND="lapack? ( virtual/cblas virtual/lapack )"
+DEPEND="${RDEPEND}
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	doc? ( app-arch/unzip )
+	lapack? ( virtual/pkgconfig )
+	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-no-hardcode-blas.patch
+	"${FILESDIR}"/${PN}-1.11.2-blas_rec_inc_dir.patch
+)
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+pc_incdir() {
+	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
+		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libdir() {
+	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
+		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libs() {
+	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
+		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
+		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
+		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
+}
+
+python_prepare_all() {
+	if use lapack; then
+		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		cat >> site.cfg <<-EOF || die
+			[blas]
+			include_dirs = $(pc_incdir cblas)
+			library_dirs = $(pc_libdir cblas blas):${libdir}
+			blas_libs = $(pc_libs cblas blas)
+			[lapack]
+			library_dirs = $(pc_libdir lapack):${libdir}
+			lapack_libs = $(pc_libs lapack)
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s: + os\.path.*$::' numpy/f2py/setup.py || die
+
+	# we don't have f2py-3.3
+	sed \
+		-e 's:test_f2py:_&:g' \
+		-i numpy/tests/test_scripts.py || die
+
+	# QA bug 590464
+	# The .py files from numpy/core/tests are just added, instead
+	# of being bytecode compiled as a proper subdir package.
+	# We trick the buildsystem into accepting it as a bytecode
+	# package by adding a setup.py and an empty __init__.py
+	#cp numpy/{compat/setup.py,core/tests} || die
+	#touch numpy/core/tests/__init__.py || die
+	#sed \
+	#	-e 's:compat:tests:' \
+	#	-i numpy/core/tests/setup.py || die
+	#sed \
+	#	-e "s:config\.add_data_dir('tests'):config\.add_subpackage('tests'):" \
+	#	-i numpy/core/setup.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	distutils-r1_python_compile \
+		$(usex python_targets_python3_5 "" "-j $(makeopts_jobs)") \
+		${NUMPY_FCONFIG}
+}
+
+python_test() {
+	distutils_install_for_testing --single-version-externally-managed --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+	cd "${TMPDIR}" || die
+
+	${EPYTHON} -c "
+import numpy, sys
+r = numpy.test(label='full', verbose=3)
+sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+}
+
+python_install_all() {
+	DOCS+=( THANKS.txt )
+
+	if use doc; then
+		HTML_DOCS=( "${WORKDIR}"/html/. )
+		DOCS+=( "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf )
+	fi
+
+	distutils-r1_python_install_all
+
+	docinto f2py
+	dodoc doc/f2py/*.txt
+	doman doc/f2py/f2py.1
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2017-02-15  2:38 Benda XU
  0 siblings, 0 replies; 26+ messages in thread
From: Benda XU @ 2017-02-15  2:38 UTC (permalink / raw
  To: gentoo-commits

commit:     24fe73b1ff793e8a9170b0c2f71335d8bd20a258
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 15 02:37:58 2017 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Wed Feb 15 02:38:14 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24fe73b1

dev-python/numpy: record include_dirs of blas

  We specify blas in site.cfg, which could have non-standard
  include dirs.  sci-libs/scikits_learn, for example,
  relies on this information to find cblas.

Upstream: https://github.com/numpy/numpy/pull/8619

Package-Manager: portage-2.3.3

 .../files/numpy-1.11.2-blas_rec_inc_dir.patch      | 24 ++++++++++++++++++++++
 dev-python/numpy/numpy-1.11.2-r1.ebuild            |  2 +-
 2 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch b/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch
new file mode 100644
index 0000000000..9a934cc2a4
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.11.2-blas_rec_inc_dir.patch
@@ -0,0 +1,24 @@
+commit 61e9159569a601315b67c30b6e26bbb2149c0bfa
+Author: Benda Xu <heroxbd@gentoo.org>
+Date:   Wed Feb 15 11:17:05 2017 +0900
+
+    BUG: blas_info should record include_dirs
+    
+      blas specified in site.cfg could have non-standard include dirs.
+      It should be read and saved in distutils/__config__.py
+
+PR: https://github.com/numpy/numpy/pull/8619
+
+diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
+index b8520ac..0fba865 100644
+--- a/numpy/distutils/system_info.py
++++ b/numpy/distutils/system_info.py
+@@ -1667,6 +1667,8 @@ class blas_info(system_info):
+         info = self.check_libs(lib_dirs, blas_libs, [])
+         if info is None:
+             return
++        else:
++            info['include_dirs'] = self.get_include_dirs()
+         if platform.system() == 'Windows':
+             # The check for windows is needed because has_cblas uses the
+             # same compiler that was used to compile Python and msvc is

diff --git a/dev-python/numpy/numpy-1.11.2-r1.ebuild b/dev-python/numpy/numpy-1.11.2-r1.ebuild
index 87da9bf152..803872d816 100644
--- a/dev-python/numpy/numpy-1.11.2-r1.ebuild
+++ b/dev-python/numpy/numpy-1.11.2-r1.ebuild
@@ -37,7 +37,7 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-1.11.1-no-hardcode-blas.patch
-
+	"${FILESDIR}"/${PN}-1.11.2-blas_rec_inc_dir.patch
 	# This has been fixed upstream but no new release yet
 	# https://github.com/numpy/numpy/commit/5d0ce36e5be134bb5ead03cab1edeaa60fa355aa
 	"${FILESDIR}"/${P}-import-module-fix.patch


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2016-08-30 17:26 David Seifert
  0 siblings, 0 replies; 26+ messages in thread
From: David Seifert @ 2016-08-30 17:26 UTC (permalink / raw
  To: gentoo-commits

commit:     80b2e1b4def977bee9743d7bc52c01acf19fbb9a
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 17:24:34 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 17:26:33 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80b2e1b4

dev-python/numpy: Version bump

Gentoo-bug: 590464, 591936
* Re-add py3.3 support to prevent depgraph breakage
* Fix QA bug installing non-compiled files #590464
* Fix linking due to adding unnecessary -lblas to
  build system #591936
* Move dev-python/setuptools to DEPEND instead of
  RDEPEND

Package-Manager: portage-2.3.0

 dev-python/numpy/Manifest                          |  2 +-
 .../files/numpy-1.11.1-no-hardcode-blas.patch      | 71 ++++++++++++++++++++++
 .../{numpy-1.11.0.ebuild => numpy-1.11.1.ebuild}   | 25 ++++++--
 3 files changed, 91 insertions(+), 7 deletions(-)

diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 3f571f7..23b6502 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,7 +1,7 @@
 DIST numpy-1.10.1.tar.gz 4048478 SHA256 8b9f453f29ce96a14e625100d3dcf8926301d36c5f622623bf8820e748510858 SHA512 ea717bac913a8e63bf93822bddbfe7701a3de00051bf3c7020f5e22756987becb5a2f96a6a52a36fc7c2b856815a782e450099688ce86b21fa94b0076b9ef376 WHIRLPOOL 7671368bec55c7f53ffa78a509946acc998e6f4223da4f3429b82a5a38b5e0277a0f89773ec2335f8e46b5c695620a4119af5ab59734184054c31b11841de44b
 DIST numpy-1.10.2.tar.gz 4055005 SHA256 23a3befdf955db4d616f8bb77b324680a80a323e0c42a7e8d7388ef578d8ffa9 SHA512 040db49593f3c53c9b43301eacffc3b5817310f1dbb91fd650efcf5ba65ce7e217549dc5268bc56846f19f1a03dd19470989005aa176531af44d602b3546b007 WHIRLPOOL 30c4b365aac6623241afd72fc30d3a543183205eb23db1366937e39fc50dee862923dd249775fee67cce0199940a57ec1423f1cb0e65ff7c65764c7969d7a76f
 DIST numpy-1.10.4.tar.gz 4069996 SHA256 7356e98fbcc529e8d540666f5a919912752e569150e9a4f8d869c686f14c720b SHA512 57ace46e357d49be0efd904e5ceb9862c626c916987c8798a12de7ae1e06816ad8483439ac4619792a04889631b5998f2397dc601c78dea33a784b4831c19c79 WHIRLPOOL 76946c2543b1cade06d71f83fd507bd818c1090baa9c3ddda7d1f48d48ed23672c5d9de76db890df990c6d8b7b26b71d3ce733c448943ad4177374a957360d1c
-DIST numpy-1.11.0.tar.gz 4169494 SHA256 a1d1268d200816bfb9727a7a27b78d8e37ecec2e4d5ebd33eb64e2789e0db43e SHA512 92c1889397ad013e25da3a0657fc01e787d528fc19c29cc2acd286c3f07d41b984252583457b1b9259fc303afbe9694565cdcf5752eb4ecb950cc7a99ec1ad8b WHIRLPOOL 192c998f10e1642582f152392999436495cc153af9fe529cc67fe6f6f05b574db6659cb540341be25c5ff404afb79bf5c1a0b3f219943c8d366d927568016b9e
+DIST numpy-1.11.1.tar.gz 4171162 SHA256 dc4082c43979cc856a2bf352a8297ea109ccb3244d783ae067eb2ee5b0d577cd SHA512 4df9247c651b4fdeb51e94910d97cfceaa81e5acb81cb761dae6ccf8e78891ebe0ca67ed095b11d66fe52d64e6ea5328e72c124e5dcd8d6a7a98007ef60c55b2 WHIRLPOOL 18d9f63f228b18ea20a5aed77248af2055e13b9229d34cc1c22862e4c369c4b45a9a9d9271af623f0b6bd861a4544c9ad812070254e0d21ca5d523eb05c3aabb
 DIST numpy-1.8.2.tar.gz 3792998 SHA256 6d487fc724780d66746bde264ea71f5cd77d3a39e52ee2b073dcaed63bc669db SHA512 996e6b8e2d42f223e44660f56bf73eb8ab124f400d89218f8f5e4d7c9860ada44a4d7c54526137b0695c7a10f36e8834fbf0d42b7cb20bcdb5d5c245d673385c WHIRLPOOL 0d3a05b1e3c0a1ceb0a7b4818406dbb45506e5f25bc2727d4ff44cc0a0520e6556b3c68ae24dbca37ba9d67ae2defbb3ff9c906d4c2635b29ed44452d70e8311
 DIST numpy-1.9.2.tar.gz 3986067 SHA256 325e5f2b0b434ecb6e6882c7e1034cc6cdde3eeeea87dbc482575199a6aeef2a SHA512 70470ebb9afef5dfd0c83ceb7a9d5f1b7a072b1a9b54b04f04f5ed50fbaedd5b4906bd500472268d478f94df9e749a88698b1ff30f2d80258e7f3fec040617d9 WHIRLPOOL 59f5dc52cb95c7ce80fec3a7feac6cfda1d149596bf6d95c18bd8314e31a8df494b2b470c4cc3d8c296c9fc11c718d70d5b9b5344337175ca75496504c0fd201
 DIST numpy-1.9.3.tar.gz 3984430 SHA256 c3b74d3b9da4ceb11f66abd21e117da8cf584b63a0efbd01a9b7e91b693fbbd6 SHA512 32531cd8d1480a50812454ef8e3b68c0f84b2a4bc5de0df1457070db7f6fd94cdb50e6479a85fa4d1dc569a10d28f6864d5069fcf2a32fa20fa8803476a3df8c WHIRLPOOL a0235594e793625d5e3cef57956f4710587158885f39d7d1267c9845b12fb1d39fb9987ec095720c2d285c7c726383a15471f3629b739b77186470e2c40ba093

diff --git a/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch b/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch
new file mode 100644
index 00000000..1f6f9c4
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.11.1-no-hardcode-blas.patch
@@ -0,0 +1,71 @@
+--- numpy-1.11.1/numpy/distutils/system_info.py
++++ numpy-1.11.1/numpy/distutils/system_info.py
+@@ -312,26 +312,7 @@
+       1 - display warning message
+       2 - raise error
+     """
+-    cl = {'atlas': atlas_info,  # use lapack_opt or blas_opt instead
+-          'atlas_threads': atlas_threads_info,                # ditto
+-          'atlas_blas': atlas_blas_info,
+-          'atlas_blas_threads': atlas_blas_threads_info,
+-          'lapack_atlas': lapack_atlas_info,  # use lapack_opt instead
+-          'lapack_atlas_threads': lapack_atlas_threads_info,  # ditto
+-          'atlas_3_10': atlas_3_10_info,  # use lapack_opt or blas_opt instead
+-          'atlas_3_10_threads': atlas_3_10_threads_info,                # ditto
+-          'atlas_3_10_blas': atlas_3_10_blas_info,
+-          'atlas_3_10_blas_threads': atlas_3_10_blas_threads_info,
+-          'lapack_atlas_3_10': lapack_atlas_3_10_info,  # use lapack_opt instead
+-          'lapack_atlas_3_10_threads': lapack_atlas_3_10_threads_info,  # ditto
+-          'mkl': mkl_info,
+-          # openblas which may or may not have embedded lapack
+-          'openblas': openblas_info,          # use blas_opt instead
+-          # openblas with embedded lapack
+-          'openblas_lapack': openblas_lapack_info, # use blas_opt instead
+-          'lapack_mkl': lapack_mkl_info,      # use lapack_opt instead
+-          'blas_mkl': blas_mkl_info,          # use blas_opt instead
+-          'x11': x11_info,
++    cl = {'x11': x11_info,
+           'fft_opt': fft_opt_info,
+           'fftw': fftw_info,
+           'fftw2': fftw2_info,
+@@ -669,10 +650,7 @@
+         return [b for b in [a.strip() for a in libs.split(',')] if b]
+ 
+     def get_libraries(self, key='libraries'):
+-        if hasattr(self, '_lib_names'):
+-            return self.get_libs(key, default=self._lib_names)
+-        else:
+-            return self.get_libs(key, '')
++        return self.get_libs(key, '')
+ 
+     def library_extensions(self):
+         static_exts = ['.a']
+@@ -1685,7 +1663,7 @@
+             lib = self.has_cblas(info)
+             if lib is not None:
+                 info['language'] = 'c'
+-                info['libraries'] = [lib]
++                info['libraries'] = lib
+                 info['define_macros'] = [('HAVE_CBLAS', None)]
+         self.set_info(**info)
+ 
+@@ -1718,16 +1696,16 @@
+                 # check for cblas lib, and if not present check for blas lib.
+                 try:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+-                                      libraries=["cblas"],
++                                      libraries=info["libraries"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "cblas"
++                    res = info["libraries"]
+                 except distutils.ccompiler.LinkError:
+                     c.link_executable(obj, os.path.join(tmpdir, "a.out"),
+                                       libraries=["blas"],
+                                       library_dirs=info['library_dirs'],
+                                       extra_postargs=info.get('extra_link_args', []))
+-                    res = "blas"
++                    res = ["blas"]
+             except distutils.ccompiler.CompileError:
+                 res = None
+         finally:

diff --git a/dev-python/numpy/numpy-1.11.0.ebuild b/dev-python/numpy/numpy-1.11.1.ebuild
similarity index 83%
rename from dev-python/numpy/numpy-1.11.0.ebuild
rename to dev-python/numpy/numpy-1.11.1.ebuild
index 09d81ec..6ac6c96 100644
--- a/dev-python/numpy/numpy-1.11.0.ebuild
+++ b/dev-python/numpy/numpy-1.11.1.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=6
 
-PYTHON_COMPAT=( python2_7 python3_{4,5} )
+PYTHON_COMPAT=( python2_7 python3_{3,4,5} )
 PYTHON_REQ_USE="threads(+)"
 
 FORTRAN_NEEDED=lapack
@@ -22,22 +22,21 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
 		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
 		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
 	)"
-# It appears the docs haven't been upgraded, still @ 1.8.1
+# It appears the docs haven't been upgraded, still @ 1.11.0
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
 IUSE="doc lapack test"
 
-RDEPEND="
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	lapack? ( virtual/cblas virtual/lapack )"
+RDEPEND="lapack? ( virtual/cblas virtual/lapack )"
 DEPEND="${RDEPEND}
+	dev-python/setuptools[${PYTHON_USEDEP}]
 	doc? ( app-arch/unzip )
 	lapack? ( virtual/pkgconfig )
 	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
 
 PATCHES=(
-	"${FILESDIR}"/${PN}-1.10.2-no-hardcode-blas.patch
+	"${FILESDIR}"/${PN}-1.11.1-no-hardcode-blas.patch
 )
 
 src_unpack() {
@@ -110,6 +109,20 @@ python_prepare_all() {
 		-e 's:test_f2py:_&:g' \
 		-i numpy/tests/test_scripts.py || die
 
+	# QA bug 590464
+	# The .py files from numpy/core/tests are just added, instead
+	# of being bytecode compiled as a proper subdir package.
+	# We trick the buildsystem into accepting it as a bytecode
+	# package by adding a setup.py and an empty __init__.py
+	cp numpy/{compat/setup.py,core/tests} || die
+	touch numpy/core/tests/__init__.py || die
+	sed \
+		-e 's:compat:tests:' \
+		-i numpy/core/tests/setup.py || die
+	sed \
+		-e "s:config\.add_data_dir('tests'):config\.add_subpackage('tests'):" \
+		-i numpy/core/setup.py || die
+
 	distutils-r1_python_prepare_all
 }
 


^ permalink raw reply related	[flat|nested] 26+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/
@ 2015-10-21 13:41 Justin Lecher
  0 siblings, 0 replies; 26+ messages in thread
From: Justin Lecher @ 2015-10-21 13:41 UTC (permalink / raw
  To: gentoo-commits

commit:     bb027200ad8cf7ae8453902a014b367456586a61
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 20 19:24:34 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Wed Oct 21 13:40:24 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb027200

dev-python/numpy: Backport several fixes from 0.10.2

fixing regression in pandas, statsmodel and bottleneck

Package-Manager: portage-2.2.23
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 .../numpy/files/numpy-1.10.1-backport-1.patch      | 127 +++++++++++++++++
 .../numpy/files/numpy-1.10.1-backport-2.patch      |  73 ++++++++++
 dev-python/numpy/numpy-1.10.1-r1.ebuild            | 154 +++++++++++++++++++++
 3 files changed, 354 insertions(+)

diff --git a/dev-python/numpy/files/numpy-1.10.1-backport-1.patch b/dev-python/numpy/files/numpy-1.10.1-backport-1.patch
new file mode 100644
index 0000000..77a3c01
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.10.1-backport-1.patch
@@ -0,0 +1,127 @@
+From 3a816a4db9b498eb64eb837fdcca0fa8ddbe063e Mon Sep 17 00:00:00 2001
+From: Allan Haldane <allan.haldane@gmail.com>
+Date: Sat, 17 Oct 2015 14:00:36 -0400
+Subject: [PATCH] BUG: recarrays viewed as subarrays don't convert to np.record
+ type
+
+Record array views were updated in #5943 to return np.record dtype
+where possible, but forgot about the case of sub-arrays.
+
+That's fixed here, so accessing subarray fields by attribute or index
+works sensibly, as well as viewing a record array as a subarray dtype,
+and printing subarrays.
+
+This also happens to fix #6459, since it affects the same lines.
+
+Fixes #6497 #6459
+---
+ numpy/core/records.py            | 30 +++++++++++++++++++-----------
+ numpy/core/tests/test_records.py | 23 +++++++++++++++++++++++
+ 2 files changed, 42 insertions(+), 11 deletions(-)
+
+diff --git a/numpy/core/records.py b/numpy/core/records.py
+index 4a99553..4ce3fe9 100644
+--- a/numpy/core/records.py
++++ b/numpy/core/records.py
+@@ -448,12 +448,14 @@ def __getattribute__(self, attr):
+ 
+         # At this point obj will always be a recarray, since (see
+         # PyArray_GetField) the type of obj is inherited. Next, if obj.dtype is
+-        # non-structured, convert it to an ndarray. If obj is structured leave
+-        # it as a recarray, but make sure to convert to the same dtype.type (eg
+-        # to preserve numpy.record type if present), since nested structured
+-        # fields do not inherit type.
++        # non-structured, convert it to an ndarray. Then if obj is structured
++        # with void type convert it to the same dtype.type (eg to preserve
++        # numpy.record type if present), since nested structured fields do not
++        # inherit type. Don't do this for non-void structures though.
+         if obj.dtype.fields:
+-            return obj.view(dtype=(self.dtype.type, obj.dtype.fields))
++            if issubclass(obj.dtype.type, nt.void):
++                return obj.view(dtype=(self.dtype.type, obj.dtype))
++            return obj
+         else:
+             return obj.view(ndarray)
+ 
+@@ -463,8 +465,9 @@ def __getattribute__(self, attr):
+     # Thus, you can't create attributes on-the-fly that are field names.
+     def __setattr__(self, attr, val):
+ 
+-        # Automatically convert (void) dtypes to records.
+-        if attr == 'dtype' and issubclass(val.type, nt.void):
++        # Automatically convert (void) structured types to records
++        # (but not non-void structures, subarrays, or non-structured voids)
++        if attr == 'dtype' and issubclass(val.type, nt.void) and val.fields:
+             val = sb.dtype((record, val))
+ 
+         newattr = attr not in self.__dict__
+@@ -499,7 +502,9 @@ def __getitem__(self, indx):
+         # we might also be returning a single element
+         if isinstance(obj, ndarray):
+             if obj.dtype.fields:
+-                return obj.view(dtype=(self.dtype.type, obj.dtype.fields))
++                if issubclass(obj.dtype.type, nt.void):
++                    return obj.view(dtype=(self.dtype.type, obj.dtype))
++                return obj
+             else:
+                 return obj.view(type=ndarray)
+         else:
+@@ -519,11 +524,14 @@ def __repr__(self):
+             # If this is a full record array (has numpy.record dtype),
+             # or if it has a scalar (non-void) dtype with no records,
+             # represent it using the rec.array function. Since rec.array
+-            # converts dtype to a numpy.record for us, use only dtype.descr,
+-            # not repr(dtype).
++            # converts dtype to a numpy.record for us, convert back
++            # to non-record before printing
++            plain_dtype = self.dtype
++            if plain_dtype.type is record:
++                plain_dtype = sb.dtype((nt.void, plain_dtype))
+             lf = '\n'+' '*len("rec.array(")
+             return ('rec.array(%s, %sdtype=%s)' %
+-                          (lst, lf, repr(self.dtype.descr)))
++                          (lst, lf, plain_dtype))
+         else:
+             # otherwise represent it using np.array plus a view
+             # This should only happen if the user is playing
+diff --git a/numpy/core/tests/test_records.py b/numpy/core/tests/test_records.py
+index 7a18f29..290bc4f 100644
+--- a/numpy/core/tests/test_records.py
++++ b/numpy/core/tests/test_records.py
+@@ -121,6 +121,23 @@ def test_recarray_views(self):
+         assert_equal(type(rv), np.recarray)
+         assert_equal(rv.dtype.type, np.record)
+ 
++        # check that accessing nested structures keep record type, but
++        # not for subarrays, non-void structures, non-structured voids
++        test_dtype = [('a', 'f4,f4'), ('b', 'V8'), ('c', ('f4',2)),
++                      ('d', ('i8', 'i4,i4'))]
++        r = np.rec.array([((1,1), b'11111111', [1,1], 1),
++                          ((1,1), b'11111111', [1,1], 1)], dtype=test_dtype)
++        assert_equal(r.a.dtype.type, np.record)
++        assert_equal(r.b.dtype.type, np.void)
++        assert_equal(r.c.dtype.type, np.float32)
++        assert_equal(r.d.dtype.type, np.int64)
++        # check the same, but for views
++        r = np.rec.array(np.ones(4, dtype='i4,i4'))
++        assert_equal(r.view('f4,f4').dtype.type, np.record)
++        assert_equal(r.view(('i4',2)).dtype.type, np.int32)
++        assert_equal(r.view('V8').dtype.type, np.void)
++        assert_equal(r.view(('i8', 'i4,i4')).dtype.type, np.int64)
++
+         #check that we can undo the view
+         arrs = [np.ones(4, dtype='f4,i4'), np.ones(4, dtype='f8')]
+         for arr in arrs:
+@@ -135,6 +152,12 @@ def test_recarray_repr(self):
+         a = np.array(np.ones(4, dtype='f8'))
+         assert_(repr(np.rec.array(a)).startswith('rec.array'))
+ 
++        # check that the 'np.record' part of the dtype isn't shown
++        a = np.rec.array(np.ones(3, dtype='i4,i4'))
++        assert_equal(repr(a).find('numpy.record'), -1)
++        a = np.rec.array(np.ones(3, dtype='i4'))
++        assert_(repr(a).find('dtype=int32') != -1)
++
+     def test_recarray_from_names(self):
+         ra = np.rec.array([
+             (1, 'abc', 3.7000002861022949, 0),

diff --git a/dev-python/numpy/files/numpy-1.10.1-backport-2.patch b/dev-python/numpy/files/numpy-1.10.1-backport-2.patch
new file mode 100644
index 0000000..9c33704
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.10.1-backport-2.patch
@@ -0,0 +1,73 @@
+From 0d25dc4175e00cdaf9545e8b1b1a5b879cf67248 Mon Sep 17 00:00:00 2001
+From: Ethan Kruse <eakruse@uw.edu>
+Date: Mon, 19 Oct 2015 13:29:01 -0700
+Subject: [PATCH 1/2] Potential fix for #6462
+
+---
+ numpy/lib/function_base.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
+index 555d083..fef69df 100644
+--- a/numpy/lib/function_base.py
++++ b/numpy/lib/function_base.py
+@@ -3339,7 +3339,7 @@ def _median(a, axis=None, out=None, overwrite_input=False):
+         indexer[axis] = slice(index-1, index+1)
+ 
+     # Check if the array contains any nan's
+-    if np.issubdtype(a.dtype, np.inexact):
++    if np.issubdtype(a.dtype, np.inexact) and sz > 0:
+         # warn and return nans like mean would
+         rout = mean(part[indexer], axis=axis, out=out)
+         part = np.rollaxis(part, axis, part.ndim)
+
+From 59d859fb2160950ac93267d7461ad952145c8724 Mon Sep 17 00:00:00 2001
+From: Ethan Kruse <eakruse@uw.edu>
+Date: Tue, 20 Oct 2015 11:40:49 -0700
+Subject: [PATCH 2/2] Added tests for median of empty arrays
+
+---
+ numpy/lib/tests/test_function_base.py | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+
+diff --git a/numpy/lib/tests/test_function_base.py b/numpy/lib/tests/test_function_base.py
+index 4516c92..aa41c1f 100644
+--- a/numpy/lib/tests/test_function_base.py
++++ b/numpy/lib/tests/test_function_base.py
+@@ -2597,6 +2597,36 @@ def test_nan_behavior(self):
+             assert_equal(np.median(a, (0, 2)), b)
+             assert_equal(len(w), 1)
+ 
++    def test_empty(self):
++        # empty arrays
++        a = np.array([], dtype=float)
++        with warnings.catch_warnings(record=True) as w:
++            warnings.filterwarnings('always', '', RuntimeWarning)
++            assert_equal(np.median(a), np.nan)
++            assert_(w[0].category is RuntimeWarning)
++
++        # multiple dimensions
++        a = np.array([], dtype=float, ndmin=3)
++        # no axis
++        with warnings.catch_warnings(record=True) as w:
++            warnings.filterwarnings('always', '', RuntimeWarning)
++            assert_equal(np.median(a), np.nan)
++            assert_(w[0].category is RuntimeWarning)
++
++        # axis 0 and 1
++        b = np.array([], dtype=float, ndmin=2)
++        with warnings.catch_warnings(record=True) as w:
++            warnings.filterwarnings('always', '', RuntimeWarning)
++            assert_equal(np.median(a, axis=0), b)
++            assert_equal(np.median(a, axis=1), b)
++
++        # axis 2
++        b = np.array(np.nan, dtype=float, ndmin=2)
++        with warnings.catch_warnings(record=True) as w:
++            warnings.filterwarnings('always', '', RuntimeWarning)
++            assert_equal(np.median(a, axis=2), b)
++            assert_(w[0].category is RuntimeWarning)
++
+     def test_object(self):
+         o = np.arange(7.)
+         assert_(type(np.median(o.astype(object))), float)

diff --git a/dev-python/numpy/numpy-1.10.1-r1.ebuild b/dev-python/numpy/numpy-1.10.1-r1.ebuild
new file mode 100644
index 0000000..91cea12
--- /dev/null
+++ b/dev-python/numpy/numpy-1.10.1-r1.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{3,4,5} )
+
+FORTRAN_NEEDED=lapack
+
+inherit distutils-r1 eutils flag-o-matic fortran-2 multilib multiprocessing toolchain-funcs versionator
+
+DOC_PV="1.9.1"
+DOC_P="${PN}-${DOC_PV}"
+
+DESCRIPTION="Fast array and numerical python library"
+HOMEPAGE="http://www.numpy.org/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+	doc? (
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-html-${DOC_PV}.zip
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-ref-${DOC_PV}.pdf
+		http://docs.scipy.org/doc/${DOC_P}/${PN}-user-${DOC_PV}.pdf
+	)"
+# It appears the docs haven't been upgraded, still @ 1.8.1
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc lapack test"
+
+RDEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	lapack? ( virtual/cblas virtual/lapack )"
+DEPEND="${RDEPEND}
+	doc? ( app-arch/unzip )
+	lapack? ( virtual/pkgconfig )
+	test? ( >=dev-python/nose-1.0[${PYTHON_USEDEP}] )"
+
+# Uses distutils.command.config.
+DISTUTILS_IN_SOURCE_BUILD=1
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.9.2-no-hardcode-blas.patch
+	"${FILESDIR}"/${P}-backport-1.patch
+	"${FILESDIR}"/${P}-backport-2.patch
+)
+
+src_unpack() {
+	default
+	if use doc; then
+		unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+	fi
+}
+
+pc_incdir() {
+	$(tc-getPKG_CONFIG) --cflags-only-I $@ | \
+		sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libdir() {
+	$(tc-getPKG_CONFIG) --libs-only-L $@ | \
+		sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libs() {
+	$(tc-getPKG_CONFIG) --libs-only-l $@ | \
+		sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
+		-e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
+		| tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
+}
+
+python_prepare_all() {
+	if use lapack; then
+		append-ldflags "$($(tc-getPKG_CONFIG) --libs-only-other cblas lapack)"
+		local libdir="${EPREFIX}"/usr/$(get_libdir)
+		# make sure _dotblas.so gets built
+		sed -i -e '/NO_ATLAS_INFO/,+1d' numpy/core/setup.py || die
+		cat >> site.cfg <<-EOF
+			[blas]
+			include_dirs = $(pc_incdir cblas)
+			library_dirs = $(pc_libdir cblas blas):${libdir}
+			blas_libs = $(pc_libs cblas blas)
+			[lapack]
+			library_dirs = $(pc_libdir lapack):${libdir}
+			lapack_libs = $(pc_libs lapack)
+		EOF
+	else
+		export {ATLAS,PTATLAS,BLAS,LAPACK,MKL}=None
+	fi
+
+	export CC="$(tc-getCC) ${CFLAGS}"
+
+	append-flags -fno-strict-aliasing
+
+	# See progress in http://projects.scipy.org/scipy/numpy/ticket/573
+	# with the subtle difference that we don't want to break Darwin where
+	# -shared is not a valid linker argument
+	if [[ ${CHOST} != *-darwin* ]]; then
+		append-ldflags -shared
+	fi
+
+	# only one fortran to link with:
+	# linking with cblas and lapack library will force
+	# autodetecting and linking to all available fortran compilers
+	append-fflags -fPIC
+	if use lapack; then
+		NUMPY_FCONFIG="config_fc --noopt --noarch"
+		# workaround bug 335908
+		[[ $(tc-getFC) == *gfortran* ]] && NUMPY_FCONFIG+=" --fcompiler=gnu95"
+	fi
+
+	# don't version f2py, we will handle it.
+	sed -i -e '/f2py_exe/s:+os\.path.*$::' numpy/f2py/setup.py || die
+
+	# we don't have f2py-3.3
+	sed \
+		-e "/f2py_cmd/s:'f2py'.*:'f2py':g" \
+		-i numpy/tests/test_scripts.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	distutils-r1_python_compile -j $(makeopts_jobs) ${NUMPY_FCONFIG}
+}
+
+python_test() {
+	distutils_install_for_testing ${NUMPY_FCONFIG}
+
+	cd "${TMPDIR}" || die
+	${EPYTHON} -c "
+import numpy, sys
+r = numpy.test(label='full', verbose=3)
+sys.exit(0 if r.wasSuccessful() else 1)" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+	distutils-r1_python_install ${NUMPY_FCONFIG}
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	dodoc COMPATIBILITY DEV_README.txt THANKS.txt
+
+	if use doc; then
+		dohtml -r "${WORKDIR}"/html/*
+		dodoc "${DISTDIR}"/${PN}-{user,ref}-${DOC_PV}.pdf
+	fi
+
+	# absent in 1.9
+	#docinto f2py
+	#dodoc numpy/f2py/docs/*.txt
+	#doman numpy/f2py/f2py.1
+}


^ permalink raw reply related	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2024-06-13  3:51 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-16  8:49 [gentoo-commits] repo/gentoo:master commit in: dev-python/numpy/files/, dev-python/numpy/ Justin Lecher
  -- strict thread matches above, loose matches on Subject: below --
2024-06-13  3:51 Michał Górny
2024-05-26 14:28 Michał Górny
2023-12-11 13:43 Michał Górny
2023-09-30  8:40 Michał Górny
2023-07-26  4:55 Sam James
2023-07-08 11:30 Benda XU
2023-06-26 13:14 Sam James
2023-06-12 15:22 Sam James
2023-06-12  0:45 Sam James
2022-05-23  8:33 Michał Górny
2022-01-26  8:38 Michał Górny
2022-01-14 20:32 Sam James
2022-01-06 16:31 Sam James
2021-11-24  1:49 Sam James
2021-11-17 23:13 Sam James
2021-10-24 20:52 Michał Górny
2020-04-16 17:44 Mike Gilbert
2019-12-29 16:11 罗百科
2019-06-24  4:31 Benda XU
2018-01-05 13:26 Michał Górny
2017-05-03  7:37 Michał Górny
2017-04-14 19:34 Justin Lecher
2017-02-15  2:38 Benda XU
2016-08-30 17:26 David Seifert
2015-10-21 13:41 Justin Lecher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox