From: Markus Dittrich Date: Wed, 13 Dec 2006 02:44:55 +0000 (+0000) Subject: Several users have reported problems with octave's internal lapack and blas routines... X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=fd908dbf286c5452ac862fff75d5d1bed758a975;p=gentoo.git Several users have reported problems with octave's internal lapack and blas routines. Hence, removed the blas USE flag and forced the use of external blas and lapack. Package-Manager: portage-2.1.2_rc3-r2 --- diff --git a/sci-mathematics/octave/ChangeLog b/sci-mathematics/octave/ChangeLog index 6802de649f43..5fd8e6cdd243 100644 --- a/sci-mathematics/octave/ChangeLog +++ b/sci-mathematics/octave/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for sci-mathematics/octave # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.43 2006/11/13 13:42:06 fmccor Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.44 2006/12/13 02:44:55 markusle Exp $ + +*octave-2.1.73-r2 (12 Dec 2006) + + 12 Dec 2006; Markus Dittrich + +octave-2.1.73-r2.ebuild: + Several users have reported problems with octave's internal lapack + and blas routines. Hence, removed the blas USE flag and forced the + use of external blas and lapack. 13 Nov 2006; Ferris McCormick octave-2.1.73-r1.ebuild: Stable on sparc --- Bug #141446 --- I am bypassing 2.1.73 for 2.1.73-r1 diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest index 053b4bf01954..b0d3d32a573d 100644 --- a/sci-mathematics/octave/Manifest +++ b/sci-mathematics/octave/Manifest @@ -39,14 +39,18 @@ EBUILD octave-2.1.73-r1.ebuild 4036 RMD160 f119ef4a6da309f75168f91589af28560d1bc MD5 81f89fbae4ca6f13cfa48522bc6383f5 octave-2.1.73-r1.ebuild 4036 RMD160 f119ef4a6da309f75168f91589af28560d1bc1b2 octave-2.1.73-r1.ebuild 4036 SHA256 bf778f3f0af55e304999a5e1dbff0f051554c44fe6f40cbfddfd42111f9cd0bf octave-2.1.73-r1.ebuild 4036 +EBUILD octave-2.1.73-r2.ebuild 4140 RMD160 ed07375bf5c1fd27c63e4fec5d9e748e2d86d687 SHA1 280d091f926e3ea976a3007b048e8730d1da2385 SHA256 de6aeca9898bc12489ef5d47ae0b7ec307c08b6b86ed76994a065492d8c99b86 +MD5 1c47a5767888b9a053e6e5e638fbf93b octave-2.1.73-r2.ebuild 4140 +RMD160 ed07375bf5c1fd27c63e4fec5d9e748e2d86d687 octave-2.1.73-r2.ebuild 4140 +SHA256 de6aeca9898bc12489ef5d47ae0b7ec307c08b6b86ed76994a065492d8c99b86 octave-2.1.73-r2.ebuild 4140 EBUILD octave-2.1.73.ebuild 3879 RMD160 63e64c4d07c22372d0b2891a96431e7d4bce65f1 SHA1 fc99da35582332d6f0ebc3eb1d1750ecb8553373 SHA256 38b01d98104be55d60e468869e321db796806fa1cfc695be940af29f91f3722c MD5 abefbfaf466e5014729b23ee8c6aa422 octave-2.1.73.ebuild 3879 RMD160 63e64c4d07c22372d0b2891a96431e7d4bce65f1 octave-2.1.73.ebuild 3879 SHA256 38b01d98104be55d60e468869e321db796806fa1cfc695be940af29f91f3722c octave-2.1.73.ebuild 3879 -MISC ChangeLog 13612 RMD160 20cd34fc39fdbc815d83df6c4b2466e590df9e51 SHA1 dc89784298b0f7cd740a94aa9fb92f30df6671cb SHA256 8c100c73657ac7a3055eabf3f649771f0a9693d6a77fb1f670d52c854be272e5 -MD5 12d582805b8f13437a81b4d09a505549 ChangeLog 13612 -RMD160 20cd34fc39fdbc815d83df6c4b2466e590df9e51 ChangeLog 13612 -SHA256 8c100c73657ac7a3055eabf3f649771f0a9693d6a77fb1f670d52c854be272e5 ChangeLog 13612 +MISC ChangeLog 13902 RMD160 9b38c7c7aedb2850f3afc045ce9fc5353cbe9aff SHA1 709f73d7937bbcada64e7961d45f33b66663e448 SHA256 75c3b846ce9728e2511a81890b9b3558f668d332c313969536f1075754cb96b1 +MD5 5fa85972a66f58d4d4388e5def8b6fb6 ChangeLog 13902 +RMD160 9b38c7c7aedb2850f3afc045ce9fc5353cbe9aff ChangeLog 13902 +SHA256 75c3b846ce9728e2511a81890b9b3558f668d332c313969536f1075754cb96b1 ChangeLog 13902 MISC metadata.xml 304 RMD160 9bf8d3764f2f605704497eb920cf7d496ac77fa1 SHA1 f6b8d455b85f4b18b68d152c3e8179b7d6defe60 SHA256 7de312597cc9f943d78b63b27600b43a55cedc90557552f88dc0d73462c2921a MD5 235d4f760824f15143cfe730fc1710a8 metadata.xml 304 RMD160 9bf8d3764f2f605704497eb920cf7d496ac77fa1 metadata.xml 304 @@ -69,3 +73,6 @@ SHA256 f550c0e9363b790830b2eff525d52c4382e65eab89715973c7938df31c65da1f files/di MD5 13da45398b2ad0d71c6289ff6a97d651 files/digest-octave-2.1.73-r1 247 RMD160 f9d3dc093a685264e10f8550380e3882cd20714b files/digest-octave-2.1.73-r1 247 SHA256 f550c0e9363b790830b2eff525d52c4382e65eab89715973c7938df31c65da1f files/digest-octave-2.1.73-r1 247 +MD5 13da45398b2ad0d71c6289ff6a97d651 files/digest-octave-2.1.73-r2 247 +RMD160 f9d3dc093a685264e10f8550380e3882cd20714b files/digest-octave-2.1.73-r2 247 +SHA256 f550c0e9363b790830b2eff525d52c4382e65eab89715973c7938df31c65da1f files/digest-octave-2.1.73-r2 247 diff --git a/sci-mathematics/octave/files/digest-octave-2.1.73-r2 b/sci-mathematics/octave/files/digest-octave-2.1.73-r2 new file mode 100644 index 000000000000..c9d5dd4b570b --- /dev/null +++ b/sci-mathematics/octave/files/digest-octave-2.1.73-r2 @@ -0,0 +1,3 @@ +MD5 c356475aa06d81a10f8bf27f1a1d27a0 octave-2.1.73.tar.bz2 5790133 +RMD160 d34c6ecd8f84c728ad7687d9568b9d69ade6f5db octave-2.1.73.tar.bz2 5790133 +SHA256 8ccaee227c6cad3b5633a904414f17ce73de8eab2abd4d2e6a3972dd878ffbc3 octave-2.1.73.tar.bz2 5790133 diff --git a/sci-mathematics/octave/octave-2.1.73-r2.ebuild b/sci-mathematics/octave/octave-2.1.73-r2.ebuild new file mode 100644 index 000000000000..2f66dfb986bd --- /dev/null +++ b/sci-mathematics/octave/octave-2.1.73-r2.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-2.1.73-r2.ebuild,v 1.1 2006/12/13 02:44:55 markusle Exp $ + +inherit flag-o-matic fortran autotools + +DESCRIPTION="GNU Octave is a high-level language (MatLab compatible) intended for numerical computations" +LICENSE="GPL-2" +HOMEPAGE="http://www.octave.org/" +SRC_URI="ftp://ftp.octave.org/pub/octave/bleeding-edge/${P}.tar.bz2 + ftp://ftp.math.uni-hamburg.de/pub/soft/math/octave/${P}.tar.bz2" + +SLOT="0" +IUSE="emacs static readline zlib doc hdf5 mpi" +KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86" + +DEPEND="virtual/libc + dev-util/dejagnu + >=sys-libs/ncurses-5.2-r3 + >=sci-visualization/gnuplot-3.7.1-r3 + >=sci-libs/fftw-2.1.3 + >=dev-util/gperf-2.7.2 + virtual/blas + virtual/lapack + zlib? ( sys-libs/zlib ) + hdf5? ( sci-libs/hdf5 ) + doc? ( virtual/tetex ) + mpi? ( virtual/mpi ) + !=app-text/texi2html-1.70" + +# NOTE: octave supports blas/lapack from intel but this is not open +# source nor is it free (as in beer OR speech) Check out... +# http://developer.intel.com/software/products/mkl/mkl52/index.htm for +# more information +FORTRAN="gfortran g77 f2c" + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/${P}-gcc4.1-gentoo.patch + epatch "${FILESDIR}"/${PN}-example-fix.patch + epatch "${FILESDIR}"/${P}-f2c-fix.patch + eautoconf +} + + +src_compile() { + filter-flags -ffast-math + + local myconf="--localstatedir=/var/state/octave --enable-rpath" + myconf="${myconf} --enable-lite-kernel" + use static || myconf="${myconf} --disable-static --enable-shared --enable-dl" + # Only add -lz to LDFLAGS if we have zlib in USE ! + # BUG #52604 + # Danny van Dyk 2004/08/26 + use zlib && append-ldflags -lz + + # MPI requires the use of gcc/g++ wrappers + # mpicc/mpic++ + # octave links agains -lmpi by default + # mpich needs -lmpich instead + if use mpi; then + CC="mpicc" && CXX="mpiCC" + if has_version 'sys-cluster/mpich'; then + myconf="${myconf} --with-mpi=mpich" + else + myconf="${myconf} --with-mpi=mpi" + fi + else + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + myconf="${myconf} --without-mpi" + fi + + # force use of external blas and lapack + myconf="${myconf} --with-blas=blas --with-lapack=lapack" + + CC="${CC}" CXX="${CXX}" \ + econf \ + $(use_with hdf5) \ + $(use_enable readline) \ + ${myconf} \ + || die "econf failed" + + emake || die "emake failed" +} + +src_install() { + make install DESTDIR="${D}" || die "make install failed" + if use doc; then + octave-install-doc || die "Octave doc install failed" + fi + if use emacs; then + cd emacs + exeinto /usr/bin + doexe otags || die + doman otags.1 || die + for emacsdir in /usr/share/emacs/site-lisp /usr/lib/xemacs/site-lisp; do + insinto ${emacsdir} + doins *.el || die + done + cd .. + fi + dodir /etc/env.d || die + echo "LDPATH=/usr/lib/octave-${PV}" > "${D}"/etc/env.d/99octave || die + + # Fixes ls-R files to remove /var/tmp/portage references. + sed -i -e "s:${D}::g" "${D}"/usr/libexec/${PN}/ls-R || die + sed -i -e "s:${D}::g" "${D}"/usr/share/${PN}/ls-R || die +} + +pkg_postinst() { + echo + einfo "Some users have reported failures at running simple tests if" + einfo "octave was built with agressive optimisations. You can check if" + einfo "your setup is affected by this bug by running the following test" + einfo "(inside the octave interpreter):" + einfo + einfo "octave:1> y = [1 3 4 2 1 5 3 5 6 7 4 5 7 10 11 3];" + einfo "octave:2> g = [1 1 1 1 1 1 1 1 2 2 2 2 2 3 3 3];" + einfo "octave:3> anova(y, g)" + einfo + einfo "If these commands complete successfully with no error message," + einfo "your installation should be ok. Otherwise, try recompiling" + einfo "octave using less agressive \"CFLAGS\" (combining \"-O3\" and" + einfo "\"-march=pentium4\" is known to cause problems)." + echo +} + +octave-install-doc() { + echo "Installing documentation..." + insinto /usr/share/doc/${PF} + doins doc/faq/Octave-FAQ.dvi || die + doins doc/interpreter/octave.dvi || die + doins doc/liboctave/liboctave.dvi || die + doins doc/refcard/refcard-a4.dvi || die + doins doc/refcard/refcard-legal.dvi || die + doins doc/refcard/refcard-letter.dvi || die +}