From 4cbcc855382a06088e2f016f62cafdbcb7e40665 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 20 Mar 2022 00:40:44 +0000 Subject: gentoo resync : 20.03.2022 --- dev-python/scipy/Manifest | 11 +- .../files/scipy-1.8.0-skip-build-revert.patch | 22 +++ dev-python/scipy/scipy-1.6.3.ebuild | 166 ------------------ dev-python/scipy/scipy-1.7.1-r1.ebuild | 185 -------------------- dev-python/scipy/scipy-1.7.3.ebuild | 4 +- dev-python/scipy/scipy-1.8.0.ebuild | 187 +++++++++++++++++++++ 6 files changed, 215 insertions(+), 360 deletions(-) create mode 100644 dev-python/scipy/files/scipy-1.8.0-skip-build-revert.patch delete mode 100644 dev-python/scipy/scipy-1.6.3.ebuild delete mode 100644 dev-python/scipy/scipy-1.7.1-r1.ebuild create mode 100644 dev-python/scipy/scipy-1.8.0.ebuild (limited to 'dev-python/scipy') diff --git a/dev-python/scipy/Manifest b/dev-python/scipy/Manifest index 55a25c6a280e..f824c25aac13 100644 --- a/dev-python/scipy/Manifest +++ b/dev-python/scipy/Manifest @@ -1,12 +1,9 @@ AUX scipy-1.7.1-pythran-tests-32-bit.patch 1201 BLAKE2B 5db911d23e45556cbcf84fec40a3abdaa3fd9859e2cb8cd08c77a8016aa798338b48dc7b4459b36702a94a94cb4d5ef3bf9ed35f7e4e6f97911a96a35e9e7179 SHA512 613db1a48864d6cd0d1c07c8e1fe898f0aa6db6030d843e2e7580e0d03d5c958be9b9341cd311e47a62f78c6f4114fa293d9beae9cb00042fe3894a98576359a -DIST scipy-1.6.3.tar.gz 27187987 BLAKE2B 30f7171ca0dc0842f254472f4b52c0b0ad4389964a140cc4b94f9d85437c5a7da238c082be503242d433f1d3c65c3fd4afeb2f7831eea39ce303077406e718df SHA512 10ff25da84ce09ae231e781873902d8040d79868721d75a3f9facee177e7f46f7c9c34374feee6fe2253ddd968716d2993658ce514c4ac0c98d255c06a6ef808 -DIST scipy-1.7.1.tar.gz 36102628 BLAKE2B 67a414d863c61bf419fa907b9bed53b57beedc20d71d0630fac9719f02e951ea79b893d0803b385936a7c04a6c2f723d3870f0498f71e3c210ccd6ee75a009dc SHA512 81fea7e4f5fbcd537d662273507b6ac75bd4cf900567da8083ac86fb06d9f96b010d01a1697db53211440f0fdb2d89510313bafd3d383284d0ab9a08311dd102 +AUX scipy-1.8.0-skip-build-revert.patch 712 BLAKE2B 3637bfe30dc1bc4caf9ed9c8eb24e8d92d6a715218ff472d72cb2ddef895309a95307e18f38524045ca8010c7ba2e0d5359c36e08d427244a5cc684accd89158 SHA512 3ca5fb6c44c5a20c09292b91aaf0a74464e4caaba628f97306a805a64aa2f5ef5bb4c1c5886735503d4859df9a1c30d4827d3359a1820f955ad992275a4dc306 DIST scipy-1.7.3.tar.gz 36102562 BLAKE2B 9a605a45d8f03aae3411a6fa92e32c7f6d10373455493ead847d4ad01429b55dbbc33c1a0309d6c9d76d3e9ab1a06772df59c08d393377896c4b534599f9eb9b SHA512 83fe00cf708a13a08d28af7022ec645d8976c177f2fefb56e0a47bfcbec726330b973d1f44364e23c939ae708e239a05904346f515ea1a37e8b70ad160b81cee -DIST scipy-html-1.6.2.zip 23947380 BLAKE2B e4616a157c037b0830fc32d23678fb7e8ebe023d1fd9f0f762695a0d93bc56e432e441e675ec3c7a7d6586a665f6127ce49d570f1716876e58afb402761f8e95 SHA512 119a2227a808c752a751bc7bec6463da739c68391ebac8d2451998d90ebe03b2af401adbf987f0b694244e715c0ef1fd86c2f4a36c48dbb1ff7cdf4d914875df +DIST scipy-1.8.0.tar.gz 38313602 BLAKE2B 3f071ad3dfa350bba7eaf8e06c8bdb660f9dc1ef0e0bfc1eb1be2c400f947b2b26d62066a4b0f603ae56244131aff6e4c5b7e87cfd2aa7b278e3071062a4bf02 SHA512 674652728ae76479d17189e6974895bb838a8e83b17b9fb91c5f86faebf2a1387e1466555ac5b51d05c293f9b31b9a72e634f5858105ea984ca94bd2f05bbb4c DIST scipy-html-1.7.1.zip 32435246 BLAKE2B fd8173da41aba95a14b1376f848bc668c4659bf1bbbdd0f87d926633d36f29c039957d38be145a5583010ebd83f6458090f75bdad773cc0f1591664e13c04c20 SHA512 ee59722878f6ef2d2319cdf4e6a60d3d1184f7c22752f9a8859eaa46fb677ebac9e8eef9c0826998e12bac9399e336799843341ef203224a82c9101347149672 -DIST scipy-ref-1.6.2.pdf 34599668 BLAKE2B 9ae3221c814eb0d1b1e9191e08000955af503f6448cf8b5841e400fad106c658670339219f4838bd312023601776fe0b0d123ebbd41460c478145da2ac3e9989 SHA512 9aecb7ca760805c470c41121268281c9547aef35ddf078816c5e48f7cf4912a67cf622e267152c6cc823df9d82be1f3a875d97469169d0d91d6219164c130c88 DIST scipy-ref-1.7.1.pdf 33542025 BLAKE2B 6c978f06b770805f0fae06db740e8596658d98bbbc93c865127eae909957503bb38e02a9c97319aed07608718f8f373374b1cf3a8c3bd624aa3143f1d21bc428 SHA512 45720dc299594bac5c7539f950a0ff135b125d86bfe9847032cbff1f294601fefd0a1ac3fd7e3928b2702390c318ae2f8adca6403ba06ea1ded705fcff94ab79 -EBUILD scipy-1.6.3.ebuild 4512 BLAKE2B 96b68f5c36a9e1f6b8bf9ed64e774255fd21523a214f4448a2a92ba34d07b5a900a3d29877070a9a16aa71d44d39880ede2ea134e78402ee08c98f30f21b47d6 SHA512 40ec0463a9803ef3d8d47a44f00dca0bb71db1e6c73d3f1c063eeea186edeee033b22894c7fe9243474b8c47118ff53d9c3917c69deaed2ed82205e511355667 -EBUILD scipy-1.7.1-r1.ebuild 5114 BLAKE2B e4ab68b449faedb3fee5693defe1e372c70655b0eeee89a0254e7256b10662d878c6f5cca3c65c17980f160dfc710a6ba4952cac0d8a2b7923b2e0ab80de1ffc SHA512 03abc027c171859b486c7f0d0c9beb76360ad831389d7f1a63948cda268dd5dd29f4a0c08ed2853326ce63558b2431b2f8c051112b24896c128fdaf471a31863 -EBUILD scipy-1.7.3.ebuild 5506 BLAKE2B e1bac0b145e3c0b6d29a68fefbc9e1404ac13bfd8cc31912543e4a4e9cd85dacf352d913d79e5fe4bb905529e382e33785585d3c208c2085df7c90ef725c2fec SHA512 248bc122c56a96fcd990ae92479448f14630658d22ff2f89ffb1544164b7daae27691f492f87b4dc1a5625c4e39e6adeb0ae7f2a7213440c51841783ba9be427 +EBUILD scipy-1.7.3.ebuild 5504 BLAKE2B 7ae97cc6ad67b52f498f142c1be014921409c660d4f424157dc520913027eb733bc76e25d63aae15b449dc0ec30319f7be88f3655f5f391f2e6d8eeed9cd936b SHA512 f3e37d183e960b0481522f40998d767d0a86e9068d87c3ab40dc33aeb269bd98981efba5f0494d153f86e28f43c7249edeab8b3a4e497407819e4171d2555fad +EBUILD scipy-1.8.0.ebuild 5274 BLAKE2B 46ae3b3682dbb8a8ac55a303c2b3d7caf44799ac3ffd325b37f3871c97601953a795257c2fb106276c3c6723350488bfce42355183cfdcccb60f78fefcf548b1 SHA512 bf775b08a8f0725ea50c328a93f1f34c18a5956c8719368fda95e18fc134d4f883d6cf6d8ac9a902148f0095fdd517c6e3d3d9c6a2e5faeae902d3d969768550 MISC metadata.xml 1127 BLAKE2B 6019c7fe056a0198db927c1b149d5a60bd583a523d749e57c86ad899a880fd83e688e040cb693ec3f34be63cae1e5b785d5f6f7a378b98e992d6cb9368ea1b2c SHA512 f7c45d801c3344b3d8de3fabad26a95814cfdf92b604e8215bfac2cfd1cfb181cc8a9a9fa46c0b95c7fb55a34e44bab51c2d1cd7a5adcf421cd965a755722e73 diff --git a/dev-python/scipy/files/scipy-1.8.0-skip-build-revert.patch b/dev-python/scipy/files/scipy-1.8.0-skip-build-revert.patch new file mode 100644 index 000000000000..caefc334a973 --- /dev/null +++ b/dev-python/scipy/files/scipy-1.8.0-skip-build-revert.patch @@ -0,0 +1,22 @@ +From 2b6392eeeb8ef5225ace15e8a1553fa87409272f Mon Sep 17 00:00:00 2001 +From: Ralf Gommers +Date: Wed, 29 Dec 2021 22:47:13 +0100 +Subject: [PATCH] Revert "BLD Respect the --skip-build flag in setup.py" + +--- + setup.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/setup.py b/setup.py +index 002531fcc00..d91916e5894 100755 +--- a/setup.py ++++ b/setup.py +@@ -488,8 +488,6 @@ def setup_package(): + if "--force" in sys.argv: + run_build = True + sys.argv.remove('--force') +- elif "--skip-build" in sys.argv: +- run_build = False + else: + # Raise errors for unsupported commands, improve help output, etc. + run_build = check_setuppy_command() diff --git a/dev-python/scipy/scipy-1.6.3.ebuild b/dev-python/scipy/scipy-1.6.3.ebuild deleted file mode 100644 index a77305830f4e..000000000000 --- a/dev-python/scipy/scipy-1.6.3.ebuild +++ /dev/null @@ -1,166 +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(+)" - -inherit fortran-2 distutils-r1 flag-o-matic toolchain-funcs - -# upstream is slacking forever with doc updates -DOC_PV=1.6.2 -DESCRIPTION="Scientific algorithms library for Python" -HOMEPAGE="https://www.scipy.org/" -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz - doc? ( - https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip - https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-ref-${DOC_PV}.pdf - )" - -LICENSE="BSD LGPL-2" -SLOT="0" -KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="doc sparse" - -DEPEND=" - >=dev-python/numpy-1.16.5[lapack,${PYTHON_USEDEP}] - sci-libs/arpack:0= - virtual/cblas - virtual/lapack - sparse? ( sci-libs/umfpack:0= )" -RDEPEND="${DEPEND} - dev-python/pillow[${PYTHON_USEDEP}]" -BDEPEND=" - dev-lang/swig - >=dev-python/cython-0.29.18[${PYTHON_USEDEP}] - dev-python/pybind11[${PYTHON_USEDEP}] - virtual/pkgconfig - doc? ( app-arch/unzip ) - test? ( - dev-python/nose[${PYTHON_USEDEP}] - )" - -DISTUTILS_IN_SOURCE_BUILD=1 - -distutils_enable_tests pytest - -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() { - # scipy automatically detects libraries by default - export {FFTW,FFTW3,UMFPACK}=None - use sparse && unset UMFPACK - # the missing symbols are in -lpythonX.Y, but since the version can - # differ, we just introduce the same scaryness as on Linux/ELF - [[ ${CHOST} == *-darwin* ]] \ - && append-ldflags -bundle "-undefined dynamic_lookup" \ - || append-ldflags -shared - [[ -z ${FC} ]] && export FC="$(tc-getFC)" - # hack to force F77 to be FC until bug #278772 is fixed - [[ -z ${F77} ]] && export F77="$(tc-getFC)" - export F90="${FC}" - export SCIPY_FCONFIG="config_fc --noopt --noarch" - append-fflags -fPIC - - 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 - cat >> setup.cfg <<-EOF || die - [options] - zip_safe = False - EOF - - # Drop hashes to force rebuild of cython based .c code - rm cythonize.dat || die - - # TODO - sed -e "s:== 'levy_stable':in ('levy_stable', 'crystalball', 'ncf'):" \ - -i scipy/stats/tests/test_continuous_basic.py || die - - # Skip broken test causing segfault, bug #743295 - sed -e 's:test_bisplev_integer_overflow:_&:' \ - -i scipy/interpolate/tests/test_fitpack.py || die - - if has_version ">=sci-libs/lapack-3.10"; then - sed -e 's:test_sort(:_&:' \ - -i scipy/linalg/tests/test_decomp.py || die - sed -e 's:test_solve_discrete_are:_&:' \ - -i scipy/linalg/tests/test_solvers.py || die - fi - - distutils-r1_python_prepare_all -} - -python_configure_all() { - # bug 721860 - test-flag-FC -fallow-argument-mismatch && - append-fflags -fallow-argument-mismatch -} - -python_compile() { - # FIXME: parallel python building fails, bug #614464 - export MAKEOPTS=-j1 - - ${EPYTHON} tools/cythonize.py || die - distutils-r1_python_compile \ - ${SCIPY_FCONFIG} -} - -python_test() { - # fails with bdist_egg. should it be fixed in distutils-r1 eclass? - distutils_install_for_testing ${SCIPY_FCONFIG} - cd "${TEST_DIR}/lib" || die "no ${TEST_DIR} available" - PYTHONPATH=. "${EPYTHON}" -c " -import scipy, sys -r = scipy.test('fast', verbose=2) -sys.exit(0 if r else 1)" || die "Tests fail with ${EPYTHON}" -} - -python_install_all() { - use doc && \ - local DOCS=( "${DISTDIR}"/${PN}-ref-${DOC_PV}.pdf ) \ - local HTML_DOCS=( "${WORKDIR}"/html/. ) - distutils-r1_python_install_all -} - -python_install() { - distutils-r1_python_install ${SCIPY_FCONFIG} - python_optimize -} - -pkg_postinst() { - elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER" - elog "to your prefered image viewer. Example:" - elog " echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc" -} diff --git a/dev-python/scipy/scipy-1.7.1-r1.ebuild b/dev-python/scipy/scipy-1.7.1-r1.ebuild deleted file mode 100644 index 4298215e701d..000000000000 --- a/dev-python/scipy/scipy-1.7.1-r1.ebuild +++ /dev/null @@ -1,185 +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(+)" - -inherit fortran-2 distutils-r1 flag-o-matic toolchain-funcs - -# upstream is slacking forever with doc updates -DOC_PV=1.6.2 -DESCRIPTION="Scientific algorithms library for Python" -HOMEPAGE="https://www.scipy.org/" -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz - doc? ( - https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip - https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-ref-${DOC_PV}.pdf - )" - -LICENSE="BSD LGPL-2" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~ia64 ppc64 ~riscv ~s390 ~sparc x86" -IUSE="doc +pythran sparse" - -DEPEND=" - >=dev-python/numpy-1.16.5[lapack,${PYTHON_USEDEP}] - sci-libs/arpack:0= - virtual/cblas - virtual/lapack - sparse? ( sci-libs/umfpack:0= )" -RDEPEND="${DEPEND} - dev-python/pillow[${PYTHON_USEDEP}]" -BDEPEND=" - dev-lang/swig - >=dev-python/cython-0.29.18[${PYTHON_USEDEP}] - dev-python/pybind11[${PYTHON_USEDEP}] - virtual/pkgconfig - doc? ( app-arch/unzip ) - pythran? ( dev-python/pythran[${PYTHON_USEDEP}] ) - test? ( - dev-python/nose[${PYTHON_USEDEP}] - )" - -DISTUTILS_IN_SOURCE_BUILD=1 - -distutils_enable_tests pytest - -PATCHES=( - "${FILESDIR}"/${P}-pythran-tests-32-bit.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() { - # scipy automatically detects libraries by default - export {FFTW,FFTW3,UMFPACK}=None - use sparse && unset UMFPACK - # the missing symbols are in -lpythonX.Y, but since the version can - # differ, we just introduce the same scaryness as on Linux/ELF - [[ ${CHOST} == *-darwin* ]] \ - && append-ldflags -bundle "-undefined dynamic_lookup" \ - || append-ldflags -shared - [[ -z ${FC} ]] && export FC="$(tc-getFC)" - # hack to force F77 to be FC until bug #278772 is fixed - [[ -z ${F77} ]] && export F77="$(tc-getFC)" - export F90="${FC}" - export SCIPY_FCONFIG="config_fc --noopt --noarch" - append-fflags -fPIC - - 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 - cat >> setup.cfg <<-EOF || die - [options] - zip_safe = False - EOF - - # TODO - sed -e "s:== 'levy_stable':in ('levy_stable', 'crystalball', 'ncf'):" \ - -i scipy/stats/tests/test_continuous_basic.py || die - - # Skip known-failing test. Broken on all versions in Gentoo for years. - # bug #743295 - sed -e 's:test_bisplev_integer_overflow:_&:' \ - -i scipy/interpolate/tests/test_fitpack.py || die - - # Skip a few 32-bit related failures - if use x86 ; then - # TODO: Tidy this up and switch to epytest - sed -i -e 's:test_nd_axis_m1:_&:' \ - -e 's:test_nd_axis_0:_&:' \ - -e 's:test_maxiter_worsening:_&:' \ - -e 's:test_pdist_jensenshannon_iris:_&:' \ - -e 's:test_align_vectors_single_vector:_&:' \ - scipy/signal/tests/test_spectral.py \ - scipy/sparse/linalg/isolve/tests/test_iterative.py \ - scipy/spatial/tests/test_distance.py \ - scipy/spatial/transform/tests/test_rotation.py || die - fi - - if has_version ">=sci-libs/lapack-3.10"; then - sed -e 's:test_sort(:_&:' \ - -i scipy/linalg/tests/test_decomp.py || die - sed -e 's:test_solve_discrete_are:_&:' \ - -i scipy/linalg/tests/test_solvers.py || die - fi - - distutils-r1_python_prepare_all -} - -python_configure_all() { - export SCIPY_USE_PYTHRAN=$(usex pythran 1 0) - - # bug 721860 - test-flag-FC -fallow-argument-mismatch && - append-fflags -fallow-argument-mismatch -} - -python_compile() { - # FIXME: parallel python building fails, bug #614464 - export MAKEOPTS=-j1 - - ${EPYTHON} tools/cythonize.py || die - distutils-r1_python_compile \ - ${SCIPY_FCONFIG} -} - -python_test() { - # fails with bdist_egg. should it be fixed in distutils-r1 eclass? - distutils_install_for_testing ${SCIPY_FCONFIG} - cd "${TEST_DIR}/lib" || die "no ${TEST_DIR} available" - PYTHONPATH=. "${EPYTHON}" -c " -import scipy, sys -r = scipy.test('fast', verbose=2) -sys.exit(0 if r else 1)" || die "Tests fail with ${EPYTHON}" -} - -python_install_all() { - use doc && \ - local DOCS=( "${DISTDIR}"/${PN}-ref-${DOC_PV}.pdf ) \ - local HTML_DOCS=( "${WORKDIR}"/html/. ) - distutils-r1_python_install_all -} - -python_install() { - distutils-r1_python_install ${SCIPY_FCONFIG} - python_optimize -} - -pkg_postinst() { - elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER" - elog "to your prefered image viewer. Example:" - elog " echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc" -} diff --git a/dev-python/scipy/scipy-1.7.3.ebuild b/dev-python/scipy/scipy-1.7.3.ebuild index f0ab5ba94350..3a3cfc929a8b 100644 --- a/dev-python/scipy/scipy-1.7.3.ebuild +++ b/dev-python/scipy/scipy-1.7.3.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 @@ -21,7 +21,7 @@ SRC_URI=" LICENSE="BSD LGPL-2" SLOT="0" -KEYWORDS="amd64 arm arm64 -hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="amd64 arm arm64 -hppa ~ia64 ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="doc +pythran sparse" DEPEND=" diff --git a/dev-python/scipy/scipy-1.8.0.ebuild b/dev-python/scipy/scipy-1.8.0.ebuild new file mode 100644 index 000000000000..4b24c3e9e009 --- /dev/null +++ b/dev-python/scipy/scipy-1.8.0.ebuild @@ -0,0 +1,187 @@ +# 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(+)" + +inherit fortran-2 distutils-r1 flag-o-matic multiprocessing toolchain-funcs + +# upstream is slacking forever with doc updates +DOC_PV=1.7.1 +DESCRIPTION="Scientific algorithms library for Python" +HOMEPAGE="https://www.scipy.org/" +SRC_URI=" + mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz + doc? ( + https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip + https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-ref-${DOC_PV}.pdf + )" + +LICENSE="BSD LGPL-2" +SLOT="0" +KEYWORDS="amd64 ~arm ~arm64 -hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +pythran sparse" + +DEPEND=" + >=dev-python/numpy-1.17.3[lapack,${PYTHON_USEDEP}] + sci-libs/arpack:0= + virtual/cblas + virtual/lapack + sparse? ( sci-libs/umfpack:0= )" +RDEPEND="${DEPEND} + dev-python/pillow[${PYTHON_USEDEP}]" +BDEPEND=" + dev-lang/swig + >=dev-python/cython-0.29.18[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + virtual/pkgconfig + doc? ( app-arch/unzip ) + pythran? ( dev-python/pythran[${PYTHON_USEDEP}] ) + test? ( + dev-python/nose[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + )" + +DISTUTILS_IN_SOURCE_BUILD=1 + +distutils_enable_tests pytest + +PATCHES=( + "${FILESDIR}"/${P}-skip-build-revert.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() { + # scipy automatically detects libraries by default + export {FFTW,FFTW3,UMFPACK}=None + use sparse && unset UMFPACK + # the missing symbols are in -lpythonX.Y, but since the version can + # differ, we just introduce the same scaryness as on Linux/ELF + [[ ${CHOST} == *-darwin* ]] \ + && append-ldflags -bundle "-undefined dynamic_lookup" \ + || append-ldflags -shared + [[ -z ${FC} ]] && export FC="$(tc-getFC)" + # hack to force F77 to be FC until bug #278772 is fixed + [[ -z ${F77} ]] && export F77="$(tc-getFC)" + export F90="${FC}" + export SCIPY_FCONFIG="config_fc --noopt --noarch" + append-fflags -fPIC + + 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 + cat >> setup.cfg <<-EOF || die + [options] + zip_safe = False + EOF + + # TODO + sed -e "s:== 'levy_stable':in ('levy_stable', 'crystalball', 'ncf'):" \ + -i scipy/stats/tests/test_continuous_basic.py || die + + # Skip known-failing test. Broken on all versions in Gentoo for years. + # bug #743295 + sed -e 's:test_bisplev_integer_overflow:_&:' \ + -i scipy/interpolate/tests/test_fitpack.py || die + + # Skip a few 32-bit related failures + if use x86 ; then + # TODO: Tidy this up and switch to epytest + sed -i -e 's:test_nd_axis_m1:_&:' \ + -e 's:test_nd_axis_0:_&:' \ + -e 's:test_maxiter_worsening:_&:' \ + -e 's:test_pdist_jensenshannon_iris:_&:' \ + -e 's:test_align_vectors_single_vector:_&:' \ + scipy/signal/tests/test_spectral.py \ + scipy/spatial/tests/test_distance.py \ + scipy/spatial/transform/tests/test_rotation.py || die + fi + + if has_version ">=sci-libs/lapack-3.10"; then + sed -e 's:test_sort(:_&:' \ + -i scipy/linalg/tests/test_decomp.py || die + sed -e 's:test_solve_discrete_are:_&:' \ + -i scipy/linalg/tests/test_solvers.py || die + fi + + distutils-r1_python_prepare_all +} + +python_configure_all() { + export SCIPY_USE_PYTHRAN=$(usex pythran 1 0) + + # bug 721860 + test-flag-FC -fallow-argument-mismatch && + append-fflags -fallow-argument-mismatch +} + +python_compile() { + # FIXME: parallel python building fails, bug #614464 + export ORIGINAL_MAKEOPTS="${MAKEOPTS}" + export MAKEOPTS=-j1 + + ${EPYTHON} tools/cythonize.py || die + distutils-r1_python_compile \ + ${SCIPY_FCONFIG} +} + +python_test() { + # fails with bdist_egg. should it be fixed in distutils-r1 eclass? + distutils_install_for_testing ${SCIPY_FCONFIG} + cd "${TEST_DIR}/lib" || die "no ${TEST_DIR} available" + + # Let's try using pytest again with xdist to speed things up. + # Note that using pytest is required to avoid dying b/c of a + # deprecation warning with distutils in Python 3.01. + epytest -n "$(makeopts_jobs "${ORIGINAL_MAKEOPTS}" "$(get_nproc)")" +} + +python_install_all() { + use doc && \ + local DOCS=( "${DISTDIR}"/${PN}-ref-${DOC_PV}.pdf ) \ + local HTML_DOCS=( "${WORKDIR}"/html/. ) + distutils-r1_python_install_all +} + +python_install() { + distutils-r1_python_install ${SCIPY_FCONFIG} + python_optimize +} + +pkg_postinst() { + elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER" + elog "to your prefered image viewer. Example:" + elog " echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc" +} -- cgit v1.2.3