Implemented proper compilation when using MPI. This fixes bug #108955. ebuild now...
authorMarkus Dittrich <markusle@gentoo.org>
Wed, 16 Nov 2005 06:17:51 +0000 (06:17 +0000)
committerMarkus Dittrich <markusle@gentoo.org>
Wed, 16 Nov 2005 06:17:51 +0000 (06:17 +0000)
Package-Manager: portage-2.0.51.22-r3

sci-mathematics/octave/ChangeLog
sci-mathematics/octave/Manifest
sci-mathematics/octave/files/digest-octave-2.1.71-r2 [new file with mode: 0644]
sci-mathematics/octave/octave-2.1.71-r2.ebuild [new file with mode: 0644]

index b6c70b197d3eb6cc2a6406241ee5eb75f80ea73a..4b463b11053b25d0216d5956889b6cebaf8a197d 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sci-mathematics/octave
 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.16 2005/11/13 05:34:47 ribosome Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.17 2005/11/16 06:17:51 markusle Exp $
+
+*octave-2.1.71-r2 (16 Nov 2005)
+
+  16 Nov 2005; Markus Dittrich <markusle@gentoo.org>
+  +octave-2.1.71-r2.ebuild:
+  Implemented proper compilation when using MPI. This fixes bug #108955.
 
 *octave-2.1.71-r1 (13 Nov 2005)
 
index 495e4c8847888bd561d00b5dfc9fb41ae523985c..e6816fcc8c44dd28d6f7299e3a4df8478be990d4 100644 (file)
@@ -1,10 +1,12 @@
 MD5 e7a66fad5a451fe4a902ee91bc6cd6a2 octave-2.1.71.ebuild 3546
+MD5 7eb32039c73bec938ee1bde83af5ea8c octave-2.1.71-r2.ebuild 3768
 MD5 bd2ed4dec06725b62ae2a8d1f97c196e octave-2.1.69.ebuild 3633
 MD5 a71b9b13b29a378bd8931963cefbc6b0 octave-2.1.71-r1.ebuild 3426
 MD5 62c4dfb1220dccc6624875121b80bbeb octave-2.1.57-r1.ebuild 3668
-MD5 3e6d495947a26bcd37aa865b0320f5cb ChangeLog 9019
+MD5 5b43e42c6acf35adfa515f9bd510bf72 ChangeLog 9207
 MD5 8c623e53daafa025137077c6b65815bd metadata.xml 156
 MD5 32c6cee1f5b42b8b20369c3722fb4db2 files/digest-octave-2.1.57-r1 67
 MD5 6582a298022b4c4301eca44791cb6da2 files/digest-octave-2.1.71-r1 67
+MD5 6582a298022b4c4301eca44791cb6da2 files/digest-octave-2.1.71-r2 67
 MD5 67d13a7bca35d1d0210394b7735fd073 files/digest-octave-2.1.69 67
 MD5 6582a298022b4c4301eca44791cb6da2 files/digest-octave-2.1.71 67
diff --git a/sci-mathematics/octave/files/digest-octave-2.1.71-r2 b/sci-mathematics/octave/files/digest-octave-2.1.71-r2
new file mode 100644 (file)
index 0000000..c5707c2
--- /dev/null
@@ -0,0 +1 @@
+MD5 2ab06912017c833549035111f0ab592f octave-2.1.71.tar.bz2 5784751
diff --git a/sci-mathematics/octave/octave-2.1.71-r2.ebuild b/sci-mathematics/octave/octave-2.1.71-r2.ebuild
new file mode 100644 (file)
index 0000000..2695986
--- /dev/null
@@ -0,0 +1,122 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-2.1.71-r2.ebuild,v 1.1 2005/11/16 06:17:51 markusle Exp $
+
+inherit flag-o-matic fortran
+
+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 tetex hdf5 mpi blas"
+KEYWORDS="~alpha ~amd64 ~ppc ~x86"
+
+DEPEND="virtual/libc
+       >=sys-libs/ncurses-5.2-r3
+       >=media-gfx/gnuplot-3.7.1-r3
+       >=sci-libs/fftw-2.1.3
+       >=dev-util/gperf-2.7.2
+       zlib? ( sys-libs/zlib )
+       hdf5? ( sci-libs/hdf5 )
+       tetex? ( virtual/tetex )
+       blas? ( virtual/blas )
+       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
+
+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 && LDFLAGS="${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
+               myconf="${myconf} --without-mpi"
+       fi
+
+
+       econf \
+               $(use_with hdf5) \
+               $(use_enable readline) \
+               ${myconf} \
+               LDFLAGS="${LDFLAGS}" \
+               CC="${CC}" CXX="${CXX}" || die "econf failed"
+
+       emake || die "emake failed"
+}
+
+src_install() {
+       make install DESTDIR="${D}" || die "make install failed"
+       if use tetex; 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
+}