Add fix for changes in superlu-4.3, #392227
authorJustin Lecher <jlec@gentoo.org>
Tue, 13 Dec 2011 14:16:08 +0000 (14:16 +0000)
committerJustin Lecher <jlec@gentoo.org>
Tue, 13 Dec 2011 14:16:08 +0000 (14:16 +0000)
Package-Manager: portage-2.2.0_alpha80/cvs/Linux x86_64

sci-libs/scipy/ChangeLog
sci-libs/scipy/Manifest
sci-libs/scipy/files/scipy-0.9.0-superlu-4.3.patch [new file with mode: 0644]
sci-libs/scipy/scipy-0.9.0-r3.ebuild [new file with mode: 0644]

index 15aac03b867c9dbcda71c2b04c44c8fbaa9b8a05..bf5987956314b80f169695391a7b8c4b5abbec5e 100644 (file)
@@ -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.71 2011/10/07 15:38:28 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/scipy/ChangeLog,v 1.72 2011/12/13 14:16:08 jlec Exp $
+
+*scipy-0.9.0-r3 (13 Dec 2011)
+
+  13 Dec 2011; Justin Lecher <jlec@gentoo.org> +scipy-0.9.0-r3.ebuild,
+  +files/scipy-0.9.0-superlu-4.3.patch:
+  Add fix for changes in superlu-4.3, #392227
 
 *scipy-0.9.0-r2 (07 Oct 2011)
 
index 1331bfe687c7f2e259624dfa94e426450cb887ec..fe06928887832680c4485a85e2296b32a00daed0 100644 (file)
@@ -4,6 +4,7 @@ Hash: SHA512
 AUX scipy-0.6.0-stsci.patch 2209 RMD160 c7c21a23aef7fff9318f224ef2383f7970c1caf9 SHA1 4b86ad61346660959a61dce24b2b9f20595ea473 SHA256 69cec7cfedbc39a30f54ec12852a84017b5a256e966e60a64b4e891b497fd1be
 AUX scipy-0.8.0-python2.7.patch 826 RMD160 9c4cf8bb36e22dd1602fb14b4af5731692b43f9f SHA1 5b7f8a55c67d28448480a211d62379368c029df4 SHA256 cebe98b2a0f755516a154f43f99297a2a654b06b976d97db877b609d0ff0a346
 AUX scipy-0.9.0-qhull.patch 1672 RMD160 7b1d7ceb4cc330b141c993f4f37b2f52a7ffbb9c SHA1 a5180f6a80ad31585edf9da42dcd0751e0cc3a38 SHA256 adbcb54b569c48838df8500a416febbc1f704643874780e4dcf30a635efe6027
+AUX scipy-0.9.0-superlu-4.3.patch 712 RMD160 bd4f4205c61be7f207a5fd75a64103d39fc96b83 SHA1 21cd63a5df0010a2bd11c9cb32490c06c274a2f9 SHA256 3078e9b60534571a5765824cb1d5ae1f42497f5a4382f9ae201d59f1cf4dd8d2
 AUX scipy-0.9.0-superlu.patch 1526 RMD160 e9628e30466502aa9f708a082cca02fdf97e6bab SHA1 c17ff6d2da83b262bd898a4d91fa4db0269c6e02 SHA256 10b58353b0cdd6a8a6713ca7186cdb37c33c0ae4e42014322c5ad94465359e8f
 DIST scipy-0.8-html.zip 6570421 RMD160 718a919f095e619a3669c30b3b77816500687daa SHA1 4d9e8e3bc04a3d5aec54b77c4acf36be46af342a SHA256 fd4f0a268cb0c4ca7f1b03da0036e342c06cb2dacf3eda3b893cb759e6655f7e
 DIST scipy-0.8-ref.pdf 4561020 RMD160 e748733add18a452753d2a6ec1a1084024e87756 SHA1 0ccd530749b05f56ee1372e9461ebe99810d1472 SHA256 0715c01702ac7302487544600e16870ef12027c121af336c3ae9bae03e9fd41b
@@ -14,13 +15,14 @@ DIST scipy-0.9.0.tar.gz 6084552 RMD160 2aef8c3413ba9c7731d078b27eef1e03419de606
 EBUILD scipy-0.8.0.ebuild 4166 RMD160 5e3f45d0131da1e8c0dd6c17f308b2732d6a9f78 SHA1 9ff2da693c2eb833c8c2db1efd44c2e773e4fda4 SHA256 db014251fb60a79e789fbf76cbd4ce6b7b554e309badd95f55b4dcb36c1d2c9c
 EBUILD scipy-0.9.0-r1.ebuild 4258 RMD160 b5905f6f89d9042d5d45836d70370c8f05d5042c SHA1 7c0cb80a4c3f1695be0bb0bfdd23ab26738a3f03 SHA256 06c216262f320b85261b7cb686e687f8642438570059ee9a4b8dd7a0783d1f06
 EBUILD scipy-0.9.0-r2.ebuild 3782 RMD160 7e9ba6e5e0a65e5f8295c3b2ca77c996524125fd SHA1 41dd114595380a8f4553f0678d289dd942e8f32d SHA256 f298f2169fad2b7320325468b2e45cb17a109be4d0fa09b54e7593fcbf0203c3
+EBUILD scipy-0.9.0-r3.ebuild 3832 RMD160 eff59b93fdd1cbd28c4fcc1f27106efa99d000e9 SHA1 6bfb05ffbf0d3de5bbb407d87c9928f9b2a762a4 SHA256 5dd991102118d6bfb959e9d6050713fb3bfab3004be6647a1812f1c237f38691
 EBUILD scipy-0.9.0.ebuild 4091 RMD160 bb0e21dea2f099707065037ae13a43b4411f508b SHA1 5c0efbaef685314a54056c376f13269ffeccfb9e SHA256 f666d91d2896c126aa40f98fabced087c3341c2a4215c23f76161a28d43886f1
-MISC ChangeLog 14025 RMD160 e5ddf30b4435c54d2c1540f386edf0dc04c0c33c SHA1 78d2b42ea91695b515048cbd993aa94a6b7834e7 SHA256 8da7a3967958aa63cf328b71ff71d67ae0e7b5476309ecf8ae94c712088833b3
+MISC ChangeLog 14214 RMD160 5639e1b2dc00c639ca30ed3b866a115ef9f014d2 SHA1 2fac0d781e22a27961aa8767ef1c85acbe1a6931 SHA256 05fc360641c5b44789ffd1421da72ea32af042a92f124095eee065784ce5c426
 MISC metadata.xml 701 RMD160 7de26e871ba7b2eabf2fc82ba77e4083dc06ec5c SHA1 477a629e4d3a7fa7f5ccdf99e7082a87a2b5f55a SHA256 8f4674ae9fc4197903a15da51e7e4e3674edae1acf06a2db6644a3ae0ce332e6
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
-iEYEAREKAAYFAk6PHPoACgkQgAnW8HDreRYc7gCfcywXwbinyMIxSvEO1Dxmy5kd
-MLsAniLcrAHy9MbCC0IKMVPFQPIOmraf
-=HopK
+iEYEAREKAAYFAk7nXi0ACgkQgAnW8HDreRbNKgCfWs3BuJUQDpnjx29tujFwny2I
+QqcAn0m9PeGu75P7iaOBH3uaRqGGl5lr
+=xCze
 -----END PGP SIGNATURE-----
diff --git a/sci-libs/scipy/files/scipy-0.9.0-superlu-4.3.patch b/sci-libs/scipy/files/scipy-0.9.0-superlu-4.3.patch
new file mode 100644 (file)
index 0000000..c5b7176
--- /dev/null
@@ -0,0 +1,20 @@
+ scipy/sparse/linalg/dsolve/_superluobject.c |    6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/scipy/sparse/linalg/dsolve/_superluobject.c b/scipy/sparse/linalg/dsolve/_superluobject.c
+index e9ec0bd..2fde6cc 100644
+--- a/scipy/sparse/linalg/dsolve/_superluobject.c
++++ b/scipy/sparse/linalg/dsolve/_superluobject.c
+@@ -589,9 +589,9 @@ static int iterrefine_cvt(PyObject *input, IterRefine_t *value)
+ {
+     ENUM_CHECK_INIT;
+     ENUM_CHECK(NOREFINE);
+-    ENUM_CHECK(SINGLE);
+-    ENUM_CHECK(DOUBLE);
+-    ENUM_CHECK(EXTRA);
++    ENUM_CHECK(SLU_SINGLE);
++    ENUM_CHECK(SLU_DOUBLE);
++    ENUM_CHECK(SLU_EXTRA);
+     ENUM_CHECK_FINISH("invalid value for 'IterRefine' parameter");
+ }
diff --git a/sci-libs/scipy/scipy-0.9.0-r3.ebuild b/sci-libs/scipy/scipy-0.9.0-r3.ebuild
new file mode 100644 (file)
index 0000000..a200262
--- /dev/null
@@ -0,0 +1,132 @@
+# 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-r3.ebuild,v 1.1 2011/12/13 14:16:08 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-4.3
+       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}-superlu-4.3.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"
+}