summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Dittrich <markusle@gentoo.org>2007-10-18 14:17:11 +0000
committerMarkus Dittrich <markusle@gentoo.org>2007-10-18 14:17:11 +0000
commit042717c802b37d33e649a11de4acc6701e0498e7 (patch)
tree0b4a8778256710ff932a02d6300d1556109e9140 /sci-libs
parentStable on amd64 wrt bug #196074 (diff)
downloadgentoo-2-042717c802b37d33e649a11de4acc6701e0498e7.tar.gz
gentoo-2-042717c802b37d33e649a11de4acc6701e0498e7.tar.bz2
gentoo-2-042717c802b37d33e649a11de4acc6701e0498e7.zip
Added new revision to fix undefined lapack symbols (see bug #195619).
(Portage version: 2.1.3.13)
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/scipy/ChangeLog9
-rw-r--r--sci-libs/scipy/files/digest-scipy-0.6.0-r23
-rw-r--r--sci-libs/scipy/files/scipy-0.6.0-clapack-symbol-fix.patch102
-rw-r--r--sci-libs/scipy/scipy-0.6.0-r2.ebuild128
4 files changed, 241 insertions, 1 deletions
diff --git a/sci-libs/scipy/ChangeLog b/sci-libs/scipy/ChangeLog
index 12845b755b69..a0da35d21479 100644
--- a/sci-libs/scipy/ChangeLog
+++ b/sci-libs/scipy/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sci-libs/scipy
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/ChangeLog,v 1.24 2007/10/05 14:01:38 markusle Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/ChangeLog,v 1.25 2007/10/18 14:17:10 markusle Exp $
+
+*scipy-0.6.0-r2 (18 Oct 2007)
+
+ 18 Oct 2007; Markus Dittrich <markusle@gentoo.org>
+ +files/scipy-0.6.0-clapack-symbol-fix.patch,
+ +scipy-0.6.0-r2.ebuild:
+ Added new revision to fix undefined lapack symbols (see bug #195619).
*scipy-0.6.0-r1 (05 Oct 2007)
diff --git a/sci-libs/scipy/files/digest-scipy-0.6.0-r2 b/sci-libs/scipy/files/digest-scipy-0.6.0-r2
new file mode 100644
index 000000000000..aa28d16fa675
--- /dev/null
+++ b/sci-libs/scipy/files/digest-scipy-0.6.0-r2
@@ -0,0 +1,3 @@
+MD5 417adf3bfe03f4c23c9fb265018e545c scipy-0.6.0.tar.gz 6572954
+RMD160 391f2067f7dcc133e7e8622df93a2a0cd5ebbe5b scipy-0.6.0.tar.gz 6572954
+SHA256 5f70390963fb4e3ae8cf5effa301c160ef68c791098e2ea95b99380e298eac4f scipy-0.6.0.tar.gz 6572954
diff --git a/sci-libs/scipy/files/scipy-0.6.0-clapack-symbol-fix.patch b/sci-libs/scipy/files/scipy-0.6.0-clapack-symbol-fix.patch
new file mode 100644
index 000000000000..ff2d521363d2
--- /dev/null
+++ b/sci-libs/scipy/files/scipy-0.6.0-clapack-symbol-fix.patch
@@ -0,0 +1,102 @@
+diff -Naur scipy-0.6.0/scipy/linalg/generic_clapack.pyf scipy-0.6.0-new/scipy/linalg/generic_clapack.pyf
+--- scipy-0.6.0/scipy/linalg/generic_clapack.pyf 2007-09-22 03:56:25.000000000 -0400
++++ scipy-0.6.0-new/scipy/linalg/generic_clapack.pyf 2007-10-13 10:13:53.000000000 -0400
+@@ -20,7 +20,7 @@
+ ! U is unit upper diagonal triangular, L is lower triangular,
+ ! piv pivots columns.
+
+- fortranname clapack_<tchar=s,d,c,z>gesv
++ fortranname <tchar=s,d,c,z>gesv_
+ integer intent(c,hide) :: <tchar=s,d,c,z>gesv
+ callstatement <tchar=s,d,c,z>gesv_return_value = info = (*f2py_func)(102-rowmajor,n,nrhs,a,n,piv,b,n)
+ callprotoargument const int,const int,const int,<type_in_c>*,const int,int*,<type_in_c>*,const int
+@@ -44,7 +44,7 @@
+ ! Compute an LU factorization of a general M-by-N matrix A.
+ ! A * P = L * U
+ threadsafe
+- fortranname clapack_<tchar=s,d,c,z>getrf
++ fortranname <tchar=s,d,c,z>getrf_
+ integer intent(c,hide) :: <tchar=s,d,c,z>getrf
+ callstatement <tchar=s,d,c,z>getrf_return_value = info = (*f2py_func)(102-rowmajor,m,n,a,(rowmajor?n:m),piv)
+ callprotoargument const int,const int,const int,<type_in_c>*,const int,int*
+@@ -67,7 +67,7 @@
+ ! Solve A^H * X = B if trans=2
+ ! A * P = L * U
+
+- fortranname clapack_<tchar=s,d,c,z>getrs
++ fortranname <tchar=s,d,c,z>getrs_
+ integer intent(c,hide) :: <tchar=s,d,c,z>getrs
+ callstatement <tchar=s,d,c,z>getrs_return_value = info = (*f2py_func)(102-rowmajor,111+trans,n,nrhs,lu,n,piv,b,n)
+ callprotoargument const int,const int,const int,const int,<type_in_c>*,const int,int*,<type_in_c>*,const int
+@@ -91,7 +91,7 @@
+ ! Find A inverse A^-1.
+ ! A * P = L * U
+
+- fortranname clapack_<tchar=s,d,c,z>getri
++ fortranname <tchar=s,d,c,z>getri_
+ integer intent(c,hide) :: <tchar=s,d,c,z>getri
+ callstatement <tchar=s,d,c,z>getri_return_value = info = (*f2py_func)(102-rowmajor,n,lu,n,piv)
+ callprotoargument const int,const int,<type_in_c>*,const int,const int*
+@@ -115,7 +115,7 @@
+ ! A = L * L^T, C = L if lower = 1
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+
+- fortranname clapack_<tchar=s,d,c,z>posv
++ fortranname <tchar=s,d,c,z>posv_
+ integer intent(c,hide) :: <tchar=s,d,c,z>posv
+ callstatement <tchar=s,d,c,z>posv_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,nrhs,a,n,b,n)
+ callprotoargument const int,const int,const int,const int,<type_in_c>*,const int,<type_in_c>*,const int
+@@ -142,7 +142,7 @@
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+ ! clean==1 zeros strictly lower or upper parts of U or L, respectively
+
+- fortranname clapack_<tchar=s,d>potrf
++ fortranname <tchar=s,d>potrf_
+ integer intent(c,hide) :: <tchar=s,d>potrf
+ callstatement <tchar=s,d>potrf_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,a,n); if(clean){int i,j;if(lower){for(i=0;i<n;++i) for(j=i+1;j<n;++j) *(a+i*n+j)=0.0;} else {for(i=0;i<n;++i) for(j=i+1;j<n;++j) *(a+j*n+i)=0.0;}}
+ callprotoargument const int,const int,const int,<type_in_c>*,const int
+@@ -167,7 +167,7 @@
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+ ! clean==1 zeros strictly lower or upper parts of U or L, respectively
+
+- fortranname clapack_<tchar=c,z>potrf
++ fortranname <tchar=c,z>potrf_
+ integer intent(c,hide) :: <tchar=c,z>potrf
+ callstatement <tchar=c,z>potrf_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,a,n); if(clean){int i,j,k;if(lower){for(i=0;i<n;++i) for(j=i+1;j<n;++j) {k=i*n+j;(a+k)->r=(a+k)->i=0.0;}} else {for(i=0;i<n;++i) for(j=i+1;j<n;++j) {k=j*n+i;(a+k)->r=(a+k)->i=0.0;}}}
+ callprotoargument const int,const int,const int,<type_in_c>*,const int
+@@ -193,7 +193,7 @@
+ ! A = L * L^T, C = L if lower = 1
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+
+- fortranname clapack_<tchar=s,d,c,z>potrs
++ fortranname <tchar=s,d,c,z>potrs_
+ integer intent(c,hide) :: <tchar=s,d,c,z>potrs
+ callstatement <tchar=s,d,c,z>potrs_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,nrhs,c,n,b,n)
+ callprotoargument const int,const int,const int,const int,<type_in_c>*,const int,<type_in_c>*,const int
+@@ -219,7 +219,7 @@
+ ! A = L * L^T, C = L if lower = 1
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+
+- fortranname clapack_<tchar=s,d,c,z>potri
++ fortranname <tchar=s,d,c,z>potri_
+ integer intent(c,hide) :: <tchar=s,d,c,z>potri
+ callstatement <tchar=s,d,c,z>potri_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,c,n)
+ callprotoargument const int,const int,const int,<type_in_c>*,const int
+@@ -243,7 +243,7 @@
+ ! L * L^T, C = L if lower = 1
+ ! C is triangular matrix of the corresponding Cholesky decomposition.
+
+- fortranname clapack_<tchar=s,d,c,z>lauum
++ fortranname <tchar=s,d,c,z>lauum_
+ integer intent(c,hide) :: <tchar=s,d,c,z>lauum
+ callstatement <tchar=s,d,c,z>lauum_return_value = info = (*f2py_func)(102-rowmajor,121+lower,n,c,n)
+ callprotoargument const int,const int,const int,<type_in_c>*,const int
+@@ -267,7 +267,7 @@
+ ! C is non-unit triangular matrix if unitdiag = 0
+ ! C is unit triangular matrix if unitdiag = 1
+
+- fortranname clapack_<tchar=s,d,c,z>trtri
++ fortranname <tchar=s,d,c,z>trtri_
+ integer intent(c,hide) :: <tchar=s,d,c,z>trtri
+ callstatement <tchar=s,d,c,z>trtri_return_value = info = (*f2py_func)(102-rowmajor,121+lower,131+unitdiag,n,c,n)
+ callprotoargument const int,const int,const int,const int,<type_in_c>*,const int
diff --git a/sci-libs/scipy/scipy-0.6.0-r2.ebuild b/sci-libs/scipy/scipy-0.6.0-r2.ebuild
new file mode 100644
index 000000000000..2813e1abd714
--- /dev/null
+++ b/sci-libs/scipy/scipy-0.6.0-r2.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/scipy-0.6.0-r2.ebuild,v 1.1 2007/10/18 14:17:10 markusle Exp $
+
+NEED_PYTHON=2.3
+
+inherit eutils distutils fortran
+
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+DESCRIPTION="Scientific algorithms library for Python"
+HOMEPAGE="http://www.scipy.org/"
+LICENSE="BSD"
+
+SLOT="0"
+
+IUSE="fftw umfpack sandbox"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+
+DEPEND=">=dev-python/numpy-1.0.3.1
+ virtual/lapack
+ fftw? ( =sci-libs/fftw-2.1* )
+ umfpack? ( sci-libs/umfpack dev-lang/swig )
+ sandbox? ( >=sci-libs/netcdf-3.6 x11-libs/libX11 )"
+
+RDEPEND=">=dev-python/numpy-1.0.3.1
+ dev-python/imaging
+ virtual/lapack
+ fftw? ( =sci-libs/fftw-2.1* )
+ umfpack? ( sci-libs/umfpack )
+ sandbox? ( >=sci-libs/netcdf-3.6 x11-libs/libX11 )"
+
+# test still buggy on lapack with 2 failures on check_syevr
+# (lapack float). check every version bump.
+RESTRICT="test"
+
+DOCS="THANKS.txt DEVELOPERS.txt LATEST.txt TOCHANGE.txt FORMAT_GUIDELINES.txt"
+
+scipy_fortran_setup() {
+ FORTRAN="gfortran g77 ifc"
+ fortran_pkg_setup
+ local fc=
+ case ${FORTRANC} in
+ gfortran) fc=gnu95 ;;
+ g77) fc=gnu ;;
+ ifc|ifort)
+ if use ia64; then
+ fc=intele
+ elif use amd64; then
+ fc=intelem
+ else
+ fc=intel
+ fi
+ ;;
+ *) eerror "Unknown fortran compiler: ${FORTRANC}"
+ die "scipy_fortran_setup failed" ;;
+ esac
+
+ # when fortran flags are set, pic is removed.
+ use amd64 && [[ -n ${FFLAGS} ]] && FFLAGS="${FFLAGS} -fPIC"
+ export SCIPY_FCONFIG="config_fc --fcompiler=${fc}"
+}
+
+# see numpy ebuild about unsetting LDFLAGS
+LDFLAGS_sav="${LDFLAGS}"
+unset LDFLAGS
+
+pkg_setup() {
+ [[ -n ${LDFLAGS_sav} ]] && einfo "Ignoring LDFLAGS=${LDFLAGS_sav}"
+ if use umfpack && ! built_with_use dev-lang/swig python; then
+ eerror "With umfpack enabled you need"
+ eerror "dev-lang/swig with python enabled"
+ einfo "Please re-emerge swig with USE=python"
+ die "needs swig with python"
+ fi
+ # scipy automatically detects libraries by default
+ export FFTW=None FFTW3=None UMFPACK=None DJBFFT=None
+ use fftw && unset FFTW
+ use umfpack && unset UMFPACK
+ use sandbox && elog "Warning: using sandbox modules at your own risk!"
+ scipy_fortran_setup
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-randomkit.patch
+ epatch "${FILESDIR}"/${P}-cdf.patch
+ epatch "${FILESDIR}"/${P}-fftw-fix.patch
+ epatch "${FILESDIR}"/${P}-clapack-symbol-fix.patch
+
+ if use sandbox; then
+ cd scipy/sandbox
+ ls -1 */__init__.py \
+ | sed -e 's:/__init__.py::' \
+ | grep -v exmplpackage \
+ > enabled_packages.txt \
+ || die "sandbox listing failed"
+ fi
+}
+
+src_compile() {
+ distutils_src_compile ${SCIPY_FCONFIG}
+}
+
+src_test() {
+ "${python}" setup.py install \
+ --home="${S}"/test \
+ --no-compile \
+ ${SCIPY_FCONFIG} || die "install test failed"
+ pushd "${S}"/test/lib*/python
+ PYTHONPATH=. "${python}" -c \
+ "import scipy as s;import sys;sys.exit(s.test(10,3))" \
+ 2>&1 | tee test.log
+ grep -q OK test.log || die "test failed"
+ popd
+ rm -rf test
+}
+
+src_install() {
+ distutils_src_install ${SCIPY_FCONFIG}
+}
+
+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"
+}