summaryrefslogtreecommitdiff
path: root/dev-python/numpy
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-01-04 01:27:12 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-01-04 01:27:12 +0000
commit3517852e3b8a68d1e997770fc0650c5053bafc6c (patch)
tree44068672445b1418489aed82de58df3c470289e7 /dev-python/numpy
parent0f15659d48c193027158492acb726297501202c5 (diff)
gentoo resync : 04.01.2022
Diffstat (limited to 'dev-python/numpy')
-rw-r--r--dev-python/numpy/Manifest8
-rw-r--r--dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch2
-rw-r--r--dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch78
-rw-r--r--dev-python/numpy/numpy-1.22.0.ebuild162
4 files changed, 249 insertions, 1 deletions
diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index ddc1fba0eb7b..a12bcf7eed5a 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -1,22 +1,27 @@
-AUX numpy-1.21.0-no-hardcode-blasv2.patch 2671 BLAKE2B 78d7072241148874d746546ce50f7b451df4608aaf27bb469300893a0585b54f8da130e85995363b768d2dd3c8e6af10b106b3b2540ade2b53ec1a9c7b2c6e68 SHA512 f745f0e68ac6a8229b44b357a2cd45d7b606eef7e7ed43efea8d43cfd1f2670ba60cf145e9a34f858f266539164f97d7094b3b4abbd0a1bb79a5c1b2a979ae9a
+AUX numpy-1.21.0-no-hardcode-blasv2.patch 2839 BLAKE2B fcb8c6d538b00a1a5796ac58b06af2ee586200744e58fd8ba588f1ed4faba53fd3b4202a9469186db394eb3648b59240ab1304e233a6575d9f168e9d3e37b92c SHA512 8a88a34b8610771018cac7ac3fcad75b61a317a21423be7914473a4b9e2f40b18e80be486140da2e85c73544c2ed1cf030b23a1fbbd6815894a83b3536589125
AUX numpy-1.21.3-unaligned-array.patch 1787 BLAKE2B cbc8e231e04582965d5ce60d285ec3e9c23a685b6c78f65e2d32e6b1a9e838653ae1d3f1ad5bf602159d1a63d5ee2347153df11d5aeeade6bbe2a39dd71c1388 SHA512 e0f410838a88c7c6892c972b8084ea5153453e90bd65922fb83772fca8052798173c9b450a1384032c39e9a82e91572cef39e4dc006d44def125debb404d0fd6
AUX numpy-1.21.4-build-compiler-args-ceph.patch 2033 BLAKE2B 63aae1b73e41332d5179d822aeefd5da3289505e9d6f6d7755a34746af5506113fb81eaccc08f1582ac5820d6fb2a1d00ee4ba98ef482f4adc72c7288069c6d1 SHA512 ffad960980048603012c0d435013f0f3326a8ecd26eba8ad27c1287b3eb624733c53ddeb270108c1d26339fefc1cb8faaea233ec6e2ac7a072a023ddb12868d0
AUX numpy-1.21.4-copy-python-3.9.patch 1698 BLAKE2B 7274c22c38820a01b02ed899f45afce95a3e5fda74f0417809caab1bf28c1e56348785c9209233ad46b00138606364548a80b5b4120b2d96f0a8cccda0d5187f SHA512 92635f37f4de7992cce2c96861fc28151fe5b6adb979db4b6a4ec456c8a84d58a8bf3ab612c1b83a5a507d96b4084d250c5d7855d245057f6977bc6a899f5a14
+AUX numpy-1.22.0-no-hardcode-blasv2.patch 3903 BLAKE2B 94f9a3f5b53d843b9568c87c88755cdb910d3b1077f6e1c7210ca0a7757a82551f86da8b997fb50dbee3b61a3616a447a587d0fd50ffb488d19b71e99e44bade SHA512 74749cd71d9f24de49f16615a3b918a0aa24b67a317699608e6518b7f661c1cf56b4e8b70c2aeda0e3e030849f7a228d0d9caf8aa8d76553af504c021d5950f9
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-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-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-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
@@ -28,4 +33,5 @@ EBUILD numpy-1.21.3-r1.ebuild 3944 BLAKE2B 8c946e32d5743994a702b6887929b4709c462
EBUILD numpy-1.21.4-r2.ebuild 4300 BLAKE2B 57d1e35b092af83be85ea6983b9bd9e167f7abf727f7067d2472a8bf60183f6976db3610e74c0deec77af9bdad2a79648346db6f6df5676cf6b0d194047e589f SHA512 e3857a12a4878b1e0327878d91a6d6b891b00b97a61c6d11588b7508bb135b800543fc7afc107de3eecd92cc283983ee90d0de5d6b5445a34388c8f0aa84ba75
EBUILD numpy-1.21.4.ebuild 3902 BLAKE2B 52a370dc3c788eb51782b27c451ea5b96777f4cb1bb54d239bcdd807d5d944790429b904ccef1c7b131ad59ba61584c01903dffce06b899b0eb07e01e98e7af9 SHA512 ff3c0a57f5d3b7b2f74c4cb76fc6e39f045531ab754ac83c07894e3b71944f4e2c938a288227139073f5b495b14ba9c85c3ef8de321755509856a29bcd710fb6
EBUILD numpy-1.21.5.ebuild 4258 BLAKE2B d5a8b9f09593169b1e114e8c0e0cf49ef2291c8429a81b40921c3cd1c2cf81681677b01ee4b39a5f51d078341992a2289e65735fe4eb0de7dfb43156499bccfc SHA512 8d189ab55bf3b79d73fce583998ac27ba57b7b9e53d59f02f56cdd3ac21c5452908d728c92e270c835f01d434c2aa6d0df30571f72ae7bf7589781b65b06985b
+EBUILD numpy-1.22.0.ebuild 4230 BLAKE2B e21c2a042f4306ed70a68419da634b4c460a9dbcff51d96fed648893b2ab2c668ccffc3bf9e46e2ed2d49fafb6b5d3506ef12b523c36ab69f4af5bd1646546b4 SHA512 1f7cf483e6004f470fe8ef32dc7c0a17d824e1a1224fc12c1bde800d4e694311618db5b54333b17d6903c42177585bac17bf12fe0a2f9fe9e7b981f345bd270b
MISC metadata.xml 930 BLAKE2B 8731116ae6d997dc77539b6ff9a8aff2466986888e3fc2c2a77499522360ba5ba11ec61e4eb6756b7cdbb9d7dafe05a862708dcc0735260e8af038a42dea3419 SHA512 1db89ba1a99457bef29a9501e2d14c11904251163172604fe58001048beb477eba5b1e4784c8636d0eb6767614b80a7341823a9d264a5663cc055a5a2c437390
diff --git a/dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch b/dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch
index bc3fbda4bf29..73c5cae90d00 100644
--- a/dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch
+++ b/dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch
@@ -1,3 +1,5 @@
+Originally added in: https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-python/numpy/files?id=e5ce90a04e79f6413604e96e4803cb95ada7c859
+https://bugs.gentoo.org/567938
diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
index 82e864a5c..1d77e5854 100644
--- a/numpy/distutils/system_info.py
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
new file mode 100644
index 000000000000..7c9d7768607f
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.22.0-no-hardcode-blasv2.patch
@@ -0,0 +1,78 @@
+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
+@@ -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,
+ '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,
+@@ -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:
+ 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.22.0.ebuild b/dev-python/numpy/numpy-1.22.0.ebuild
new file mode 100644
index 000000000000..886b232fc2f1
--- /dev/null
+++ b/dev-python/numpy/numpy-1.22.0.ebuild
@@ -0,0 +1,162 @@
+# 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
+
+# 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
+)
+
+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
+}