summaryrefslogtreecommitdiff
path: root/dev-python/numpy
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-06-29 10:15:54 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-06-29 10:15:54 +0100
commit9aa80713372911cec499b3adb2cd746790920916 (patch)
treeb8e99dc5dd60ac2094a27cc52f74aada8df38f05 /dev-python/numpy
parentb4d43e8c611df4a8061b6f88d9e9f6b1e3c83903 (diff)
gentoo resync : 29.06.2021
Diffstat (limited to 'dev-python/numpy')
-rw-r--r--dev-python/numpy/Manifest6
-rw-r--r--dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch51
-rw-r--r--dev-python/numpy/numpy-1.21.0.ebuild139
3 files changed, 196 insertions, 0 deletions
diff --git a/dev-python/numpy/Manifest b/dev-python/numpy/Manifest
index 1c8c3c127e4f..64bf7cf8dfcf 100644
--- a/dev-python/numpy/Manifest
+++ b/dev-python/numpy/Manifest
@@ -2,14 +2,20 @@ AUX numpy-1.20.1-no-hardcode-blasv2.patch 2582 BLAKE2B 5057f925a12e6703ab5d9d4c3
AUX numpy-1.20.2-fix-ccompiler-tests.patch 1616 BLAKE2B 3e2796029854207187322b1061201e7f014472c64d8c66a2dd3f82ec2eed7311f5cc3351d98aeb4b8b75d95608853066a30394e5316bb91e443744f33d66966b SHA512 5ed01b466a0da96b5d7c56b78e420d6c589c48c20053b9da66344384fa93048f90e281d3ed5caa9325f6afe00ff48841b24abc926c75aacb8a6bd5418ed32117
AUX numpy-1.20.2-fix-popcnt-detection.patch 2852 BLAKE2B c7b97d54649e33fecfa9cdd7e79fbd6a0f599648edd9a923a4d8ff428f774813d81f045e82905e236828608f4c969e56d681a828ed0190f86f8731a2c22401d8 SHA512 cb0e461b4ec788812fcdb528be18dcc04222c1aedb9ecef96d8f0ccefd407640dfb7d10b2bd392e0e40054b016a0d023f4a397432904496b793c8a2f1fba8f74
AUX numpy-1.20.3-float-hashing-py310.patch 4677 BLAKE2B 410438f8b9ba7bc346cd9fbb4d3087d60af6cc54b7ba4a839a1d9559d5b09db623932089ca8c34a70d30622d6260f3bff13fd2d97c94f6af437502f2e5b3c27d SHA512 a7605bf4db0886f4e7d4edd65c7b46d6b47ccb43140555cc86b35c2f003cdf29e8704593d77f7cc551f3be1550af209e7910a95e1421fe45b5d0ea5716d62588
+AUX numpy-1.21.0-no-hardcode-blasv2.patch 2671 BLAKE2B 78d7072241148874d746546ce50f7b451df4608aaf27bb469300893a0585b54f8da130e85995363b768d2dd3c8e6af10b106b3b2540ade2b53ec1a9c7b2c6e68 SHA512 f745f0e68ac6a8229b44b357a2cd45d7b606eef7e7ed43efea8d43cfd1f2670ba60cf145e9a34f858f266539164f97d7094b3b4abbd0a1bb79a5c1b2a979ae9a
DIST numpy-1.20.2.zip 7756879 BLAKE2B 8b76942e04701e164029b145fed1747de72142ea4f5a8aa7472a01caeeed5e0b5b6d9e543106f9786e231df5a8afe3b7ad9256e69873e4f8876c659114bc494e SHA512 337a66d68c965da06f757a89b58d30b83ec0b2f3c7a3bb39496e5031e50fee6c4f2ec090202c3da9a20613864ea46d032ae75af1de5c33eebe515133ef37d40c
DIST numpy-1.20.3.zip 7761912 BLAKE2B a4da49f7c1aadca299acb1b6d92deb4f50b1881c4b131cd389524a88ffc70179b2acdc88235dccd1ffd09879893db45b16bf2f54ced9b9639b806e85f7346285 SHA512 897be1cd6f3880711149dcedd838357e2d937a3c5f36b2a0db6ceed341654acf96b8b775610e1b43bdb6eacb987bbc51aaa8906244ca02cc8c2eae359ccef405
+DIST numpy-1.21.0.zip 10252686 BLAKE2B 98f69855fae35f53a3bd467ca9bc0c06438519e6dc84808de829a4b1e41402b764c35ac4f94edba72496693241f85f488d6f91c81e7e5c3e33fdac264ce9ba56 SHA512 b4653ed78030d3c411fcafc08c6656072480704379810b7e3a4d907b55c255c27dcef6d519cdc0bb2dc79324c475baf0263248fb456be18a9ce80e3a2c5c7120
DIST numpy-html-1.16.4.zip 12097069 BLAKE2B db1f897342fbc80a761fbaee7b0eee3761dbfa04ef6c46a137bb2392caaec8256580467ce06498cceeada2639151a1ec75dafab484d64cb897c008727d6d32a5 SHA512 c44c5e1e0cb22f9dd46fe9e302030292d85e567456178fee296746a414271634e906509fb6665ac63fbfebdd13c5383574f0aa47b4fbc639063da31addc3316a
DIST numpy-html-1.20.3.zip 22936526 BLAKE2B 9c0bf4edea0c34640a2f2d84f117aa383f8690f5c99eb9c504aa27c07195c1e5a4219efc798398d8de709803b67d4a41a2739b1319b6dd7aeba3e70e817c2488 SHA512 181ff49fcde40f2d260e480d4a90bd8b439aecafef4ea581749b5a432c7e8c163b1714a97fd447c512b550d5bf3d9b104c575b4939eb5c8b7b70bbce1153982a
+DIST numpy-html-1.21.0.zip 24270531 BLAKE2B 8a7a531afa559aebeb7a7b7ef94b2248df60a60fdfc190ca002dda625003df8b432fed393d6dd0c0c00fafbeb5064a61e3d99bba1a6c41e1e6e34ce091a43c89 SHA512 a165b95729a13806a03464cf39c20a0e18cfcf7701f05cd7777cd115bfaf0972f7155d201c7bd8d4177c5761f8800c982b3e3c29729a5e9ed356059842a44dcc
DIST numpy-ref-1.16.4.pdf 5176571 BLAKE2B 9a875ebd1473b241d463d810a6d191581aef961158f2f82959671b554ace3ad482795e4f3e1cb7dd4632cff926c1e864c675a7624fb0f4e4f297948bf50f0564 SHA512 983ba0f34a70c011886bdbc9fd8f3f75a3a967ca29217acc76fa46e7da391296a5628c9a557ac76efb393271abfb8ee4f376d401c1cc1e5c30622e54b9325d09
DIST numpy-ref-1.20.3.pdf 7362241 BLAKE2B bf17564d7aea0db25ca9ef6b24dbbd25093c09e2a93bb60b69220d4e666024c50f3373fdb65aac510c06420dc415102d552fb0435e1986330ffdc41e9e356098 SHA512 316e645402125ca41d1e8b4da33374703f4379c31cf572c8ad429e0e89b6968776f480f9159bce53b9fdec918f03b82e5bb6446f127f43f138d6c0990191af5a
+DIST numpy-ref-1.21.0.pdf 7326979 BLAKE2B 3c1130a576c46e0705ca1f12e7a3345beb1acdd23de2a81448e4e9755636dec313e277a0d3167dc3b211332b3fc415ac0d96e7c99e859b51a16a589426814182 SHA512 5dd37ca03f1f098fffce80aa6a1a6eb8ec66df4322da1c620bd1f507e89ee2ceb222de32c9b7974f085ddf146f0a789ea8eb27d792a13c1aa8a893c00f94f75f
DIST numpy-user-1.16.4.pdf 596203 BLAKE2B da3ad1f0ec1c965d20656f73a970911cbb58efa73a5df89e2e6485e0dd763f483e35eea1395ac919bf35d496fb216cee954fc5d31edebc1796a24a2a7a2d12b9 SHA512 3083008547213bfa98ffa5cd8e2cea13f6947f42d83aef61502a2a852b0d5f27d727c76b42d281d7a2f4f76c78e88b12ee3d9b164b39fe1f0213ace7097357d6
DIST numpy-user-1.20.3.pdf 4977046 BLAKE2B 3548463cc878645bb169255d3332681685d0f05e02abf4cfcdd03773826d34f5a25c020240652839867a76258b25ca601ed292462f80bdf18b92ecfb46710487 SHA512 f6c37152228eac1fb69ddfc3a37454066ed678d57f12a587e0edcfe0adb390cc0b470384c2751033f7407bac44df9f69b0da4f3da1c300e6fc02231035ff634c
+DIST numpy-user-1.21.0.pdf 5142404 BLAKE2B d670f1eb0f060599a640c52bdeba53b1758007fc2090a5b8fb6e135e71114149a0085811e4bc21396eabb1123ffb9edd39f8192d0165ab42dd066a9747eb3a3f SHA512 dde264abff1787efd50e913b6facf83522b3344ed88fd15d6fe73ecd44c6a3db1e4ce4251c9674bbcb122f72ab86c64142b2f4f992a6449405041f8e1f5f1ace
EBUILD numpy-1.20.2-r1.ebuild 3789 BLAKE2B 04b13cd33ea2805716faf5c2d286e3f0928eeda592c0c6217501a1adbea30e614d940732041cb4236a89966db1cebae33b437ab55a309ff6be62e81bb6be5010 SHA512 9a2bb8e998e317e540b7a0fa70979a872db8b0a99cc1e6f72d1fa0ab1c11f26551be22eff1a84b2c25e9d39934246b955ea54fc72c25b2d89badc430bf048f38
EBUILD numpy-1.20.3-r1.ebuild 3730 BLAKE2B 7099a2b62a5d366b9a5b099fe7a8b675d1488659e48810d2e014526338ff67eec04b68577db68ce9f97b301de52dd58bd9a1df903b1b7492c6c157a34f61f274 SHA512 97c9046f0d2548cb7ff6f91c8f0d000f0e90caf9d748e9c723b957f28bdad3faad66d44b5bada93577f40cebd37fa2ad213069bec86eb925ae7c4d0b79e88cbf
+EBUILD numpy-1.21.0.ebuild 3567 BLAKE2B 8bfccf3046fa52a171d97bfe22385688d37a383a772310833fd59ead145d8ef7e1c45567ab664f3462e99595bac7411faddba01863143d553db30017f88f1225 SHA512 77e8d721c372f06aaab330c69d21eaf699cd0b04f91a1466878f9e2e89169a14979f7ec834c906ca0905ce909215f74c0b9c77f0e08b39dbbe34d07f275a83e9
MISC metadata.xml 934 BLAKE2B 948b9a948cddc46d20d672992bf73ddb1e59ba18f470acf805c78f561249e7bce2cec1cb1affe63aad447f2f0ad627147cf05ca04ac3c321781255357de92d63 SHA512 404bc31423a1093c19dd535aa3cd5a6b925f4ef1699f9991ae19b46495c46ac4ab3b0b1995f62ea8bc5de15889b975dfcdc416360978508b837d4d5d518dfeeb
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
new file mode 100644
index 000000000000..bc3fbda4bf29
--- /dev/null
+++ b/dev-python/numpy/files/numpy-1.21.0-no-hardcode-blasv2.patch
@@ -0,0 +1,51 @@
+diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
+index 82e864a5c..1d77e5854 100644
+--- a/numpy/distutils/system_info.py
++++ b/numpy/distutils/system_info.py
+@@ -501,33 +501,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
+- '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,
++ cl = {'flame': flame_info, # use lapack_opt instead
+ 'x11': x11_info,
+ 'fft_opt': fft_opt_info,
+ 'fftw': fftw_info,
+@@ -947,10 +921,7 @@ def get_libs(self, key, default):
+ 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.21.0.ebuild b/dev-python/numpy/numpy-1.21.0.ebuild
new file mode 100644
index 000000000000..d6940ebdf3aa
--- /dev/null
+++ b/dev-python/numpy/numpy-1.21.0.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..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
+)
+
+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() {
+ distutils_install_for_testing --single-version-externally-managed \
+ --record "${TMPDIR}/record.txt" ${NUMPY_FCONFIG}
+
+ cd "${TEST_DIR}/lib" || die
+ epytest
+}
+
+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
+}