summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/hdf5/hdf5-1.8.4-r1.ebuild')
-rw-r--r--sci-libs/hdf5/hdf5-1.8.4-r1.ebuild113
1 files changed, 113 insertions, 0 deletions
diff --git a/sci-libs/hdf5/hdf5-1.8.4-r1.ebuild b/sci-libs/hdf5/hdf5-1.8.4-r1.ebuild
new file mode 100644
index 0000000..b6b1b9f
--- /dev/null
+++ b/sci-libs/hdf5/hdf5-1.8.4-r1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.8.4-r1.ebuild,v 1.18 2011/07/06 15:00:48 xarthisius Exp $
+
+EAPI=3
+
+inherit autotools eutils fortran-2
+
+DESCRIPTION="General purpose library and file format for storing scientific data"
+HOMEPAGE="http://www.hdfgroup.org/HDF5/"
+SRC_URI="http://www.hdfgroup.org/ftp/HDF5/prev-releases/${P}/src/${P}.tar.gz"
+
+LICENSE="NCSA-HDF"
+SLOT="0"
+KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86"
+IUSE="cxx examples fortran mpi szip threads zlib"
+
+RDEPEND="
+ fortran? ( virtual/fortran )
+ mpi? ( || (
+ sys-cluster/openmpi[romio]
+ sys-cluster/mpich2[romio] ) )
+ szip? ( >=sci-libs/szip-2.1 )
+ zlib? ( sys-libs/zlib )"
+
+DEPEND="${RDEPEND}
+ sys-devel/libtool:2
+ sys-process/time"
+
+pkg_setup() {
+ use fortran && fortran-2_pkg_setup
+ if use mpi; then
+ if has_version 'sci-libs/hdf5[-mpi]'; then
+ ewarn "Installing hdf5 with mpi enabled with a previous hdf5 with mpi disabled may fail."
+ ewarn "Try to uninstall the current hdf5 prior to enabling mpi support."
+ fi
+ if use cxx; then
+ ewarn "Simultaneous mpi and cxx is not supported by ${PN}"
+ ewarn "Will disable cxx interface"
+ fi
+ export CC=mpicc
+ if use fortran; then
+ export FC=mpif90
+ fi
+ elif has_version 'sci-libs/hdf5[mpi]'; then
+ ewarn "Installing hdf5 with mpi disabled while having hdf5 installed with mpi enabled may fail."
+ ewarn "Try to uninstall the current hdf5 prior to disabling mpi support."
+ fi
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-1.8.3-as-needed.patch \
+ "${FILESDIR}"/${PN}-1.8.3-includes.patch \
+ "${FILESDIR}"/${PN}-1.8.3-noreturn.patch \
+ "${FILESDIR}"/${P}-gnutools.patch \
+ "${FILESDIR}"/${P}-scaleoffset.patch \
+ "${FILESDIR}"/${P}-sigbus.patch
+
+ # respect gentoo examples directory
+ sed \
+ -e 's:$(docdir)/hdf5:$(DESTDIR)/$(docdir):' \
+ -i $(find . -name Makefile.am) || die
+ sed \
+ -e '/docdir/d' \
+ -i config/commence.am || die
+ eautoreconf
+ # enable shared libs by default for h5cc config utility
+ sed -i -e "s/SHLIB:-no/SHLIB:-yes/g" tools/misc/h5cc.in \
+ || die "sed h5cc.in failed"
+}
+
+src_configure() {
+ # threadsafe incompatible with many options
+ local myconf="--disable-threadsafe"
+ use threads && ! use fortran && ! use cxx && ! use mpi \
+ && myconf="--enable-threadsafe"
+
+ if use mpi; then
+ myconf="${myconf} --disable-cxx"
+ else
+ # workaround for bug 285148
+ if use cxx; then
+ myconf="${myconf} $(use_enable cxx) CXX=$(tc-getCXX)"
+ fi
+ if use fortran; then
+ myconf="${myconf} FC=$(tc-getFC)"
+ fi
+ fi
+
+ econf \
+ --disable-sharedlib-rpath \
+ --enable-production \
+ --enable-strict-format-checks \
+ --docdir=/usr/share/doc/${PF} \
+ --enable-deprecated-symbols \
+ --enable-shared \
+ $(use_enable fortran) \
+ $(use_enable mpi parallel) \
+ $(use_with szip szlib) \
+ $(use_with threads pthread) \
+ $(use_with zlib) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc README.txt
+ if use examples; then
+ emake DESTDIR="${D}" install-examples \
+ || die "emake install examples failed"
+ fi
+}