summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2011-10-07 15:38:28 +0000
committerJustin Lecher <jlec@gentoo.org>2011-10-07 15:38:28 +0000
commit1944e79b2ab36906cad1764179656481896ba33b (patch)
tree58316d051179bfc621506bc10e2da640240e543f /sci-libs
parentFix for missing clapack_* symbols in scipy, #371099 (diff)
downloadgentoo-2-1944e79b2ab36906cad1764179656481896ba33b.tar.gz
gentoo-2-1944e79b2ab36906cad1764179656481896ba33b.tar.bz2
gentoo-2-1944e79b2ab36906cad1764179656481896ba33b.zip
Fix for missing clapack_* symbols in scipy, #371099; thanks Francois Bissey for the patches
(Portage version: 2.2.0_alpha62/cvs/Linux x86_64)
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/scipy/ChangeLog8
-rw-r--r--sci-libs/scipy/scipy-0.9.0-r2.ebuild130
2 files changed, 137 insertions, 1 deletions
diff --git a/sci-libs/scipy/ChangeLog b/sci-libs/scipy/ChangeLog
index 87bc6bccf371..15aac03b867c 100644
--- a/sci-libs/scipy/ChangeLog
+++ b/sci-libs/scipy/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-libs/scipy
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/ChangeLog,v 1.70 2011/10/05 19:30:26 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/ChangeLog,v 1.71 2011/10/07 15:38:28 jlec Exp $
+
+*scipy-0.9.0-r2 (07 Oct 2011)
+
+ 07 Oct 2011; Justin Lecher <jlec@gentoo.org> +scipy-0.9.0-r2.ebuild:
+ Fix for missing clapack_* symbols in scipy, #371099; thanks Francois Bissey
+ for the patches
05 Oct 2011; Justin Lecher <jlec@gentoo.org> scipy-0.9.0.ebuild,
scipy-0.9.0-r1.ebuild, metadata.xml:
diff --git a/sci-libs/scipy/scipy-0.9.0-r2.ebuild b/sci-libs/scipy/scipy-0.9.0-r2.ebuild
new file mode 100644
index 000000000000..c5cf62435dec
--- /dev/null
+++ b/sci-libs/scipy/scipy-0.9.0-r2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/scipy-0.9.0-r2.ebuild,v 1.1 2011/10/07 15:38:28 jlec Exp $
+
+EAPI="3"
+
+SUPPORT_PYTHON_ABIS="1"
+RESTRICT_PYTHON_ABIS="*-jython"
+
+inherit eutils fortran-2 distutils flag-o-matic toolchain-funcs versionator
+
+SP="${PN}-$(get_version_component_range 1-2)"
+
+DESCRIPTION="Scientific algorithms library for Python"
+HOMEPAGE="http://www.scipy.org/ http://pypi.python.org/pypi/scipy"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz
+ doc? (
+ http://docs.scipy.org/doc/${P}/${PN}-html.zip -> ${SP}-html.zip
+ http://docs.scipy.org/doc/${P}/${PN}-ref.pdf -> ${SP}-ref.pdf
+ )"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="doc umfpack"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+
+CDEPEND="
+ >=dev-python/numpy-1.5
+ media-libs/qhull
+ sci-libs/arpack
+ sci-libs/superlu
+ virtual/cblas
+ virtual/lapack
+ umfpack? ( sci-libs/umfpack )"
+
+DEPEND="${CDEPEND}
+ dev-util/pkgconfig
+ doc? ( app-arch/unzip )
+ umfpack? ( dev-lang/swig )"
+
+RDEPEND="
+ virtual/fortran
+ ${CDEPEND}
+ dev-python/imaging"
+
+# buggy test suite - still true for 0.9.0
+#RESTRICT="test"
+
+DOCS="THANKS.txt LATEST.txt TOCHANGE.txt"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ # scipy automatically detects libraries by default
+ export {FFTW,FFTW3,UMFPACK}=None
+ use umfpack && 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
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ if use doc; then
+ unzip -qo "${DISTDIR}"/${SP}-html.zip -d html || die
+ fi
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-superlu.patch \
+ "${FILESDIR}"/${P}-qhull.patch
+ rm -rf ./scipy/sparse/linalg/dsolve/SuperLU ./scipy/spatial/qhull
+ local libdir="${EPREFIX}"/usr/$(get_libdir)
+ cat >> site.cfg <<-EOF
+ [blas]
+ include_dirs = $(pkg-config --cflags-only-I \
+ cblas | sed -e 's/^-I//' -e 's/ -I/:/g')
+ library_dirs = $(pkg-config --libs-only-L \
+ cblas blas | sed -e 's/^-L//' -e 's/ -L/:/g' -e 's/ //g'):${libdir}
+ blas_libs = $(pkg-config --libs-only-l \
+ cblas blas | sed -e 's/^-l//' -e 's/ -l/, /g' -e 's/,.pthread//g')
+ [lapack]
+ library_dirs = $(pkg-config --libs-only-L \
+ lapack | sed -e 's/^-L//' -e 's/ -L/:/g' -e 's/ //g'):${libdir}
+ lapack_libs = $(pkg-config --libs-only-l \
+ lapack | sed -e 's/^-l//' -e 's/ -l/, /g' -e 's/,.pthread//g')
+ EOF
+}
+
+src_compile() {
+ distutils_src_compile ${SCIPY_FCONFIG}
+}
+
+src_test() {
+ testing() {
+ "$(PYTHON)" setup.py build -b "build-${PYTHON_ABI}" install \
+ --home="${S}/test-${PYTHON_ABI}" --no-compile ${SCIPY_FCONFIG} || die "install test failed"
+ pushd "${S}/test-${PYTHON_ABI}/"lib*/python > /dev/null
+ PYTHONPATH=. "$(PYTHON)" -c "import scipy; scipy.test('full')" 2>&1 | tee test.log
+ grep -q ^ERROR test.log && die "test failed"
+ popd > /dev/null
+ rm -fr test-${PYTHON_ABI}
+ }
+ python_execute_function testing
+}
+
+src_install() {
+ distutils_src_install ${SCIPY_FCONFIG}
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins -r "${WORKDIR}"/html || die
+ doins "${DISTDIR}"/${SP}*pdf || die
+ fi
+}
+
+pkg_postinst() {
+ distutils_pkg_postinst
+
+ elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER"
+ elog "to your prefered image viewer if you don't like the default one. Ex:"
+ elog "\t echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc"
+}