commit:     0f29cb1a064d642e5d62882785e4772d78610dfc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 28 20:46:05 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jan 28 21:30:09 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f29cb1a

sci-libs/scipy-python2: Split from scipy

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

 sci-libs/scipy-python2/Manifest                   |   1 +
 sci-libs/scipy-python2/metadata.xml               |  23 ++++
 sci-libs/scipy-python2/scipy-python2-1.1.0.ebuild | 128 ++++++++++++++++++++++
 3 files changed, 152 insertions(+)

diff --git a/sci-libs/scipy-python2/Manifest b/sci-libs/scipy-python2/Manifest
new file mode 100644
index 00000000000..e9452548014
--- /dev/null
+++ b/sci-libs/scipy-python2/Manifest
@@ -0,0 +1 @@
+DIST scipy-1.1.0.tar.gz 15583560 BLAKE2B 
477753e622ee26a3bc8c2cb6829410152df84b29ce17a6d53a66348f5536f7993fedf5d32b782405b54b3af3feabf9bc91c381ed39546076849c2fdb71039404
 SHA512 
72fe32c6c009613cb78202598e5db14f8e630b3218839cfe18d43d40550d94cc5aa100c6f5d41f40e86ae148e9b6a13431bb91b0f9be44b0569ccd7b725fe973

diff --git a/sci-libs/scipy-python2/metadata.xml 
b/sci-libs/scipy-python2/metadata.xml
new file mode 100644
index 00000000000..2425e896a8a
--- /dev/null
+++ b/sci-libs/scipy-python2/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="project">
+    <email>s...@gentoo.org</email>
+    <name>Gentoo Science Project</name>
+  </maintainer>
+  <longdescription lang="en">
+    SciPy is an open source library of scientific tools for Python. SciPy
+    supplements the popular numpy module, gathering a variety of high level
+    science and engineering modules together as a single package.
+    SciPy includes modules for graphics and plotting, optimization,
+    integration, special functions, signal and image processing, genetic
+    algorithms, ODE solvers, and others.
+  </longdescription>
+  <use>
+    <flag name="sparse">Adds support for sparse solving with 
<pkg>sci-libs/umfpack</pkg></flag>
+  </use>
+  <upstream>
+    <remote-id type="pypi">scipy</remote-id>
+    <remote-id type="sourceforge">scipy</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/sci-libs/scipy-python2/scipy-python2-1.1.0.ebuild 
b/sci-libs/scipy-python2/scipy-python2-1.1.0.ebuild
new file mode 100644
index 00000000000..23d6871c6c3
--- /dev/null
+++ b/sci-libs/scipy-python2/scipy-python2-1.1.0.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit fortran-2 distutils-r1 flag-o-matic multiprocessing toolchain-funcs
+
+MY_PN=${PN/-python2}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Scientific algorithms library for Python (py2 version)"
+HOMEPAGE="https://www.scipy.org/";
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD LGPL-2"
+SLOT="0"
+IUSE="sparse test"
+RESTRICT="!test? ( test )"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos 
~x86-macos"
+
+CDEPEND="
+       || (
+               >=dev-python/numpy-python2-1.10[lapack,${PYTHON_USEDEP}]
+               >=dev-python/numpy-1.10[lapack,${PYTHON_USEDEP}]
+       )
+       sci-libs/arpack:0=
+       virtual/cblas
+       virtual/lapack
+       sparse? ( sci-libs/umfpack:0= )"
+DEPEND="${CDEPEND}
+       dev-lang/swig
+       >=dev-python/cython-0.22[${PYTHON_USEDEP}]
+       >=dev-python/setuptools-36[${PYTHON_USEDEP}]
+       virtual/pkgconfig
+       test? (
+               dev-python/nose[${PYTHON_USEDEP}]
+               dev-python/pytest[${PYTHON_USEDEP}]
+       )"
+RDEPEND="${CDEPEND}
+       !<sci-libs/scipy-1.4
+       dev-python/pillow[${PYTHON_USEDEP}]"
+
+DOCS=( HACKING.rst.txt THANKS.txt )
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+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
+
+       # Drop hashes to force rebuild of cython based .c code
+       rm cythonize.dat || die
+
+       distutils-r1_python_prepare_all
+}
+
+python_compile() {
+       # FIXME: parallel python building fails, bug #614464
+       ${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}" || die "no ${TEST_DIR} available"
+       "${PYTHON}" -c \
+               'import numpy as np; print("relaxed strides checking:", 
np.ones((10,1),order="C").flags.f_contiguous)' \
+               || die
+       "${EPYTHON}" -c \
+               "import scipy, sys; r = scipy.test('fast', verbose=2); 
sys.exit(r)" \
+               || die "Tests fail with ${EPYTHON}"
+}
+
+python_install() {
+       distutils-r1_python_install ${SCIPY_FCONFIG}
+}
+
+pkg_postinst() {
+       elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER"
+       elog "to your prefered image viewer. Example:"
+       elog "\t echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc"
+}

Reply via email to