diff options
author | Markus Dittrich <markusle@gentoo.org> | 2007-10-18 14:17:11 +0000 |
---|---|---|
committer | Markus Dittrich <markusle@gentoo.org> | 2007-10-18 14:17:11 +0000 |
commit | 042717c802b37d33e649a11de4acc6701e0498e7 (patch) | |
tree | 0b4a8778256710ff932a02d6300d1556109e9140 /sci-libs | |
parent | Stable on amd64 wrt bug #196074 (diff) | |
download | gentoo-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/ChangeLog | 9 | ||||
-rw-r--r-- | sci-libs/scipy/files/digest-scipy-0.6.0-r2 | 3 | ||||
-rw-r--r-- | sci-libs/scipy/files/scipy-0.6.0-clapack-symbol-fix.patch | 102 | ||||
-rw-r--r-- | sci-libs/scipy/scipy-0.6.0-r2.ebuild | 128 |
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" +} |