summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/hdf5')
-rw-r--r--sci-libs/hdf5/ChangeLog13
-rw-r--r--sci-libs/hdf5/Manifest52
-rw-r--r--sci-libs/hdf5/files/digest-hdf5-1.6.63
-rw-r--r--sci-libs/hdf5/files/hdf5-mpich2.patch17
-rw-r--r--sci-libs/hdf5/hdf5-1.6.2.ebuild6
-rw-r--r--sci-libs/hdf5/hdf5-1.6.4.ebuild6
-rw-r--r--sci-libs/hdf5/hdf5-1.6.5-r1.ebuild6
-rw-r--r--sci-libs/hdf5/hdf5-1.6.5.ebuild6
-rw-r--r--sci-libs/hdf5/hdf5-1.6.6.ebuild202
9 files changed, 277 insertions, 34 deletions
diff --git a/sci-libs/hdf5/ChangeLog b/sci-libs/hdf5/ChangeLog
index 0d6263a9f406..a77bba8390e4 100644
--- a/sci-libs/hdf5/ChangeLog
+++ b/sci-libs/hdf5/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for sci-libs/hdf5
-# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/ChangeLog,v 1.18 2006/11/01 00:49:30 dberkholz Exp $
+# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/ChangeLog,v 1.19 2007/12/03 07:21:53 nerdboy Exp $
+
+*hdf5-1.6.6 (03 Dec 2007)
+
+ 03 Dec 2007; Steve Arnold <nerdboy@gentoo.org> +files/hdf5-mpich2.patch,
+ +hdf5-1.6.6.ebuild:
+ Updated to latest upstream release, with mpi fixes, however, this version
+ is locked to mpich2-1.0.6 due to pvfs2, however, sparc is dropped until
+ the parallel I/O thing is worked out with other MPI libs.
+ Tests work, including mpi (but needs testing in a real cluster).
01 Nov 2006; Donnie Berkholz <dberkholz@gentoo.org>; ChangeLog:
Update for my nick change spyderous -> dberkholz.
diff --git a/sci-libs/hdf5/Manifest b/sci-libs/hdf5/Manifest
index 497c6fa2d3be..d03255bcd93d 100644
--- a/sci-libs/hdf5/Manifest
+++ b/sci-libs/hdf5/Manifest
@@ -1,3 +1,7 @@
+AUX hdf5-mpich2.patch 488 RMD160 f8ab476eed88267c4b79cc56ae683dc485255921 SHA1 a3f7ee6a2f682982d8a562bcc117c7fc09b69224 SHA256 a154a32a7b6dbc8edac7c72f1a6100b9f0532d2f9591681f505e949b0db6a1e5
+MD5 05019b3fff26162d894cde6d380a1a8c files/hdf5-mpich2.patch 488
+RMD160 f8ab476eed88267c4b79cc56ae683dc485255921 files/hdf5-mpich2.patch 488
+SHA256 a154a32a7b6dbc8edac7c72f1a6100b9f0532d2f9591681f505e949b0db6a1e5 files/hdf5-mpich2.patch 488
AUX mpd.conf 48 RMD160 289de9bb40759e3f71229cf47e4d2af83703a85f SHA1 244eee76dbf4ff269e4489d5cc7c3577c6c1fa6b SHA256 ae740cacaf2cb798921cb2092f5af98de67445e27af3f88858f3e6d2bbb127f4
MD5 091e189d645e04506aeeafac4bf3faf6 files/mpd.conf 48
RMD160 289de9bb40759e3f71229cf47e4d2af83703a85f files/mpd.conf 48
@@ -5,26 +9,31 @@ SHA256 ae740cacaf2cb798921cb2092f5af98de67445e27af3f88858f3e6d2bbb127f4 files/mp
DIST hdf5-1.6.2.tar.gz 3879147 RMD160 75678e8859e783dbb274cdabee3d916724c46780 SHA1 1afa977b371c01e53dd6e0bd3a0d879a3f2ae5a2 SHA256 aabc23cb2c744c25b71416e25bdca3b9ca8dadb9248f22314330a33d91c599ba
DIST hdf5-1.6.4.tar.gz 4862437 RMD160 8175af3153bb0a5a1278c01af2d3940f4fd5084f SHA1 e419e81097b8093d16d96708b764bd85db053e86 SHA256 11ab0d81575f333067ae091d39c28fbf446c8ecafdfe70cf92b3c35ceffbfc97
DIST hdf5-1.6.5.tar.gz 4930666 RMD160 70db16a832f77aa6d0c97da517353665304b7b27 SHA1 c5b7b375c0eb23dcab0c66d39b1b06c263048546 SHA256 85b7cfc1e34db544fa93f5bf7effe189a5e1eb97f0cfa7b212adc11915a756b2
-EBUILD hdf5-1.6.2.ebuild 1845 RMD160 8e662160e1b42c5a58fbac00a0d95f7a507c7628 SHA1 1baade1e508ad95430addb3bbca07b3dbd71c0f5 SHA256 1a2a03a07b42dad381c56585d203fd64a9a10f7170687b9cad97725b4db3ee9a
-MD5 d9aef462922aeb7e41fb4025f683083a hdf5-1.6.2.ebuild 1845
-RMD160 8e662160e1b42c5a58fbac00a0d95f7a507c7628 hdf5-1.6.2.ebuild 1845
-SHA256 1a2a03a07b42dad381c56585d203fd64a9a10f7170687b9cad97725b4db3ee9a hdf5-1.6.2.ebuild 1845
-EBUILD hdf5-1.6.4.ebuild 2107 RMD160 1626d3e6f613df9a49803cce333e940a13e33f8b SHA1 e01aabc5f7f57005f22c5635bc8fa3ab35d6d8c7 SHA256 1f596b10233a5cb46dd87a0579753e0f2f60a2ee594316964ea0b90b0d585bc5
-MD5 4559222a350ee31d8cd987ee6ea373ed hdf5-1.6.4.ebuild 2107
-RMD160 1626d3e6f613df9a49803cce333e940a13e33f8b hdf5-1.6.4.ebuild 2107
-SHA256 1f596b10233a5cb46dd87a0579753e0f2f60a2ee594316964ea0b90b0d585bc5 hdf5-1.6.4.ebuild 2107
-EBUILD hdf5-1.6.5-r1.ebuild 6626 RMD160 fa57a7132e34a5ca27c7a29e6b84cad9be6b5a25 SHA1 7f49207c5ef3dd78762eb225fbf3481762b7d31e SHA256 1b6276f2ddba85a871dfa622875ca965cc101291717e21a73115ede2e9ae232d
-MD5 b9874db5056d64d24fe65ba57dd72225 hdf5-1.6.5-r1.ebuild 6626
-RMD160 fa57a7132e34a5ca27c7a29e6b84cad9be6b5a25 hdf5-1.6.5-r1.ebuild 6626
-SHA256 1b6276f2ddba85a871dfa622875ca965cc101291717e21a73115ede2e9ae232d hdf5-1.6.5-r1.ebuild 6626
-EBUILD hdf5-1.6.5.ebuild 2698 RMD160 7ca8f3454bafc54c65764a09f367860c3c940471 SHA1 61f0b5df781bc151a5c5fedc8992293498c3706e SHA256 5fe7ca91b17a45146f6757a2ed0b0efcdbffc28ce2d9982e224b9898555e4f6d
-MD5 8764309057359f4eda768482f52dccf4 hdf5-1.6.5.ebuild 2698
-RMD160 7ca8f3454bafc54c65764a09f367860c3c940471 hdf5-1.6.5.ebuild 2698
-SHA256 5fe7ca91b17a45146f6757a2ed0b0efcdbffc28ce2d9982e224b9898555e4f6d hdf5-1.6.5.ebuild 2698
-MISC ChangeLog 5561 RMD160 21693a620528aa1caa917948780c60f86889fa55 SHA1 4ac765a24c2838f5c83f43a7443dfaea31b7da40 SHA256 9682a547d24a7285f84d0262abccff09e0d88df8cb535887484d0b1a3ddcdb08
-MD5 9c46adae59fda67436693bac1355d3e3 ChangeLog 5561
-RMD160 21693a620528aa1caa917948780c60f86889fa55 ChangeLog 5561
-SHA256 9682a547d24a7285f84d0262abccff09e0d88df8cb535887484d0b1a3ddcdb08 ChangeLog 5561
+DIST hdf5-1.6.6.tar.gz 5299558 RMD160 e7cf3f8d6aa5f34ef10cabf650ed43d644e54f1b SHA1 c8a9ec598cf0debb694a1d7034fd85bbd67f173b SHA256 432d02f2d6988999d3d18caa6680af3cef14c8a7537c98e7adbaa8f873fba2a7
+EBUILD hdf5-1.6.2.ebuild 1837 RMD160 dc19248b3581fdd85f250b178223743079d7c42a SHA1 c58259dfc9af21fa58bfcc1042e589d90cf9b040 SHA256 3d241ee6611ff968a5aef20d27b7528f59a8723491fd877365a3bbfd9619cd5f
+MD5 3d378f01e7be934fd1a079a4dce3e548 hdf5-1.6.2.ebuild 1837
+RMD160 dc19248b3581fdd85f250b178223743079d7c42a hdf5-1.6.2.ebuild 1837
+SHA256 3d241ee6611ff968a5aef20d27b7528f59a8723491fd877365a3bbfd9619cd5f hdf5-1.6.2.ebuild 1837
+EBUILD hdf5-1.6.4.ebuild 2097 RMD160 eea04dbcc9243247a387f3d5306e1bc4a579b90f SHA1 8d5970786045cae9430f187f61c978b0cc1f7e61 SHA256 87757d752dea751ba8c6c46d2d42c1506dd1b5ef8032dd5886ebd9841fb196b0
+MD5 ebb83362a145afae87520e3572bd8bcc hdf5-1.6.4.ebuild 2097
+RMD160 eea04dbcc9243247a387f3d5306e1bc4a579b90f hdf5-1.6.4.ebuild 2097
+SHA256 87757d752dea751ba8c6c46d2d42c1506dd1b5ef8032dd5886ebd9841fb196b0 hdf5-1.6.4.ebuild 2097
+EBUILD hdf5-1.6.5-r1.ebuild 6618 RMD160 a5a61b718a1905b38d38fda2844c0ecb0db27165 SHA1 785554c4e997249c5f9c2d2ddb7185191867b550 SHA256 6dad26526d32af945ff043a34cc7b7d8ce80d269759a81d902d9913d22a4d1ba
+MD5 6f8acbd32bc438e6acf0dde1ed1f9a52 hdf5-1.6.5-r1.ebuild 6618
+RMD160 a5a61b718a1905b38d38fda2844c0ecb0db27165 hdf5-1.6.5-r1.ebuild 6618
+SHA256 6dad26526d32af945ff043a34cc7b7d8ce80d269759a81d902d9913d22a4d1ba hdf5-1.6.5-r1.ebuild 6618
+EBUILD hdf5-1.6.5.ebuild 2690 RMD160 fd2bcf1d4521324de6e8ef58238bbd029c88086e SHA1 9827e3563d7c3fb90635683bf354cb21a3391f65 SHA256 29c36aa242326eb365594b606c7733fc4b2edd03b65787da1b322f0be0bc730e
+MD5 467bb978b81e26fd2f50910fafb1cc64 hdf5-1.6.5.ebuild 2690
+RMD160 fd2bcf1d4521324de6e8ef58238bbd029c88086e hdf5-1.6.5.ebuild 2690
+SHA256 29c36aa242326eb365594b606c7733fc4b2edd03b65787da1b322f0be0bc730e hdf5-1.6.5.ebuild 2690
+EBUILD hdf5-1.6.6.ebuild 6209 RMD160 3a5e7b0ff86b220cef13d8eee2933042be3c333b SHA1 c9dc71423a37e6864c737bb93a34c29f374a98fb SHA256 a9bcbb2bca9fc87bf93f5f588f852bdf891eacd4a15ab70f0dfde9fddf270e46
+MD5 4c06bcb9600860f4c96e8baa36e87011 hdf5-1.6.6.ebuild 6209
+RMD160 3a5e7b0ff86b220cef13d8eee2933042be3c333b hdf5-1.6.6.ebuild 6209
+SHA256 a9bcbb2bca9fc87bf93f5f588f852bdf891eacd4a15ab70f0dfde9fddf270e46 hdf5-1.6.6.ebuild 6209
+MISC ChangeLog 5961 RMD160 f97658425101e783777f04b38accc21619249ef7 SHA1 b5f80dd6fe2483c125975ee0dc5ec2386beb645c SHA256 a9af4659fae8835d22552f7b9c99807f71e5d1a0d36d01db4ec47122bb7dbdb8
+MD5 949aefbbb71f3eea4fd7ca0e62db8ef3 ChangeLog 5961
+RMD160 f97658425101e783777f04b38accc21619249ef7 ChangeLog 5961
+SHA256 a9af4659fae8835d22552f7b9c99807f71e5d1a0d36d01db4ec47122bb7dbdb8 ChangeLog 5961
MISC metadata.xml 156 RMD160 dc078172bfebcb25d69bdf8731714f9cce9d3e36 SHA1 da2b240a255820145b7c83a5c48e45b96b7e9ee6 SHA256 5d22100902db7507a5b5493dd4a66cdb08025faf80a2c0b75e6392315c47f900
MD5 8c623e53daafa025137077c6b65815bd metadata.xml 156
RMD160 dc078172bfebcb25d69bdf8731714f9cce9d3e36 metadata.xml 156
@@ -41,3 +50,6 @@ SHA256 071675af191269049c93a5e66d02b04d567c97f01f0748896b156d6ea0a56097 files/di
MD5 11ef5245b9dbcdeb35123a3e68005b55 files/digest-hdf5-1.6.5-r1 235
RMD160 ca1a1b4fcb1908440dc0a52bba81d1e9abd5918a files/digest-hdf5-1.6.5-r1 235
SHA256 071675af191269049c93a5e66d02b04d567c97f01f0748896b156d6ea0a56097 files/digest-hdf5-1.6.5-r1 235
+MD5 5f4725d59ee348097169b3796482f22c files/digest-hdf5-1.6.6 235
+RMD160 ab54e47604a1479def0a07ef1b13b4adc49cb3a5 files/digest-hdf5-1.6.6 235
+SHA256 d032a5f8984f26c3e16aa60a6e69532578833a840c1176082101375d06b94cf7 files/digest-hdf5-1.6.6 235
diff --git a/sci-libs/hdf5/files/digest-hdf5-1.6.6 b/sci-libs/hdf5/files/digest-hdf5-1.6.6
new file mode 100644
index 000000000000..2e9897f5e920
--- /dev/null
+++ b/sci-libs/hdf5/files/digest-hdf5-1.6.6
@@ -0,0 +1,3 @@
+MD5 6c7fcc91f1579555d88bb10c6c9a33a9 hdf5-1.6.6.tar.gz 5299558
+RMD160 e7cf3f8d6aa5f34ef10cabf650ed43d644e54f1b hdf5-1.6.6.tar.gz 5299558
+SHA256 432d02f2d6988999d3d18caa6680af3cef14c8a7537c98e7adbaa8f873fba2a7 hdf5-1.6.6.tar.gz 5299558
diff --git a/sci-libs/hdf5/files/hdf5-mpich2.patch b/sci-libs/hdf5/files/hdf5-mpich2.patch
new file mode 100644
index 000000000000..3ed60bf264b0
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-mpich2.patch
@@ -0,0 +1,17 @@
+--- config/mpich.orig 2005-10-26 13:31:41.000000000 -0700
++++ config/mpich 2007-11-04 15:46:53.000000000 -0800
+@@ -31,11 +31,13 @@
+ # $CC is an MPICH compiler. Grab the version numbers.
+ ccversion=`echo $ccversion | cut -f3 -d' '`
+ case "$ccversion" in
+- 1.2.[0-5]*)
++ # modified for mpich2 versioning
++ 1.0.[0-5]*)
+ hdf5_mpi_complex_derived_datatype_works='no'
+ ;;
+ *)
+ # assume okay
++ hdf5_mpi_complex_derived_datatype_works='yes'
+ ;;
+ esac
+ fi
diff --git a/sci-libs/hdf5/hdf5-1.6.2.ebuild b/sci-libs/hdf5/hdf5-1.6.2.ebuild
index 62a3ceffbc5f..2f028a20d4e0 100644
--- a/sci-libs/hdf5/hdf5-1.6.2.ebuild
+++ b/sci-libs/hdf5/hdf5-1.6.2.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.2.ebuild,v 1.5 2006/05/21 21:44:41 nerdboy Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.2.ebuild,v 1.6 2007/12/03 07:21:53 nerdboy Exp $
inherit eutils
@@ -57,6 +57,6 @@ src_install() {
infodir=${D}/usr/share/info \
install || die "make install failed"
- dodoc README.txt COPYING MANIFEST
+ dodoc README.txt MANIFEST
dohtml doc/html/*
}
diff --git a/sci-libs/hdf5/hdf5-1.6.4.ebuild b/sci-libs/hdf5/hdf5-1.6.4.ebuild
index bebffd1bf7a8..3e53edefeb58 100644
--- a/sci-libs/hdf5/hdf5-1.6.4.ebuild
+++ b/sci-libs/hdf5/hdf5-1.6.4.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.4.ebuild,v 1.8 2007/06/26 02:43:01 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.4.ebuild,v 1.9 2007/12/03 07:21:53 nerdboy Exp $
inherit eutils
@@ -64,6 +64,6 @@ src_install() {
infodir=${D}/usr/share/info \
install || die "make install failed"
- dodoc README.txt COPYING MANIFEST
+ dodoc README.txt MANIFEST
dohtml doc/html/*
}
diff --git a/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild b/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild
index b27d51522c10..40d8049abec8 100644
--- a/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild
+++ b/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild,v 1.3 2006/07/13 05:05:56 nerdboy Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.5-r1.ebuild,v 1.4 2007/12/03 07:21:53 nerdboy Exp $
inherit fortran eutils toolchain-funcs
@@ -161,7 +161,7 @@ src_install() {
fi
dobin ${S}/bin/iostats || die "dobin failed"
- dodoc README.txt COPYING MANIFEST
+ dodoc README.txt MANIFEST
dohtml doc/html/*
if use mpi ; then
diff --git a/sci-libs/hdf5/hdf5-1.6.5.ebuild b/sci-libs/hdf5/hdf5-1.6.5.ebuild
index 1ce8ad82661f..4424e82e775e 100644
--- a/sci-libs/hdf5/hdf5-1.6.5.ebuild
+++ b/sci-libs/hdf5/hdf5-1.6.5.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.5.ebuild,v 1.3 2006/06/24 16:13:48 nerdboy Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.5.ebuild,v 1.4 2007/12/03 07:21:53 nerdboy Exp $
inherit eutils
@@ -77,7 +77,7 @@ src_install() {
dobin ${S}/bin/iostats || die "dobin failed"
- dodoc README.txt COPYING MANIFEST
+ dodoc README.txt MANIFEST
dohtml doc/html/*
if use mpi ; then
diff --git a/sci-libs/hdf5/hdf5-1.6.6.ebuild b/sci-libs/hdf5/hdf5-1.6.6.ebuild
new file mode 100644
index 000000000000..38f8b482e04a
--- /dev/null
+++ b/sci-libs/hdf5/hdf5-1.6.6.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.6.6.ebuild,v 1.1 2007/12/03 07:21:53 nerdboy Exp $
+
+inherit eutils flag-o-matic fortran toolchain-funcs
+
+DESCRIPTION="General purpose library and file format for storing scientific data"
+HOMEPAGE="http://hdf.ncsa.uiuc.edu/HDF5/"
+SRC_URI="ftp://ftp.hdfgroup.org/HDF5/current/src/${P}.tar.gz"
+
+LICENSE="NCSA-HDF"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+# need to update szip to get alpha, ia64, etc back in here,
+IUSE="cxx debug fortran mpi ssl szip threads zlib "
+
+DEPEND="mpi? ( >=sys-cluster/mpich2-1.0.6
+ net-fs/nfs-utils )
+ ssl? ( dev-libs/openssl )
+ szip? ( sci-libs/szip )
+ zlib? ( sys-libs/zlib )
+ threads? ( virtual/libc )
+ sys-devel/gcc
+ sys-apps/coreutils
+ sys-apps/which
+ sys-process/time"
+
+RDEPEND="${DEPEND}
+ dev-lang/perl"
+
+pkg_setup() {
+ # The above gcc dep is a hack to insure at least one Fortran 90
+ # compiler is installed if the user enables fortran support. Feel
+ # free to improve it...
+ if use fortran ; then
+ if [ $(gcc-major-version) -ge 4 ] \
+ && built_with_use sys-devel/gcc fortran ; then
+ FORTRAN="gfortran"
+ fortran_pkg_setup
+ export F9X="gfortran"
+ einfo "Configuring for GNU gfortran..."
+ elif
+ test -d /opt/intel/fortran90 ; then
+ FORTRAN="ifc"
+ fortran_pkg_setup
+ export F9X="ifc"
+ einfo "Configuring for Intel fortran..."
+ else
+ einfo "No F90 compiler found; please install either gcc 4 with"
+ einfo "fortran support or some other Fortran 90 compiler such"
+ einfo "as ifc or pgf90 (or disable fortran support)."
+ die "No usable Fortran 90 compiler found."
+ fi
+ fi
+ if use mpi && ! built_with_use sys-cluster/mpich2 pvfs2 ; then
+ ewarn "Your MPI library needs parallel IO support for HDF5. You"
+ ewarn "must re-emerge mpich2 with USE=pvfs2."
+ die "requires parallel IO support"
+ fi
+}
+
+src_unpack() {
+ unpack "${A}"
+ cd "${S}"
+
+ if use mpi; then
+ # this is required for mpich2, and should be safe otherwise
+ epatch "${FILESDIR}/${PN}-mpich2.patch" || die "mpich2 patch failed"
+ fi
+
+ sed -i -e "s/tail +/tail -n +/" "${S}"/bin/release \
+ "${S}"/tools/h5dump/testh5dump.sh.in
+
+}
+
+src_compile() {
+ local myconf="--with-pic --enable-shared"
+
+ if use cxx && ! use mpi ; then
+ myconf="${myconf} --enable-cxx"
+ elif use cxx && use mpi ; then
+ ewarn "C++ support is not compatible with the mpi interface."
+ die "Please disable either cxx or mpi."
+ else
+ myconf="${myconf} --disable-cxx"
+ fi
+
+ if use fortran && use mpi ; then
+ ewarn "Requires Fortran 90 support in your mpi library..."
+ myconf="${myconf} --enable-fortran --enable-parallel"
+ fi
+
+ use threads && myconf="${myconf} --with-pthread --enable-threadsafe"
+
+ if use debug; then
+ myconf="${myconf} --enable-debug=all"
+ else
+ myconf="${myconf} --enable-production"
+ fi
+
+ # NOTE: the hdf5 configure script has its own interpretation of
+ # the ARCH environment variable which conflicts with that of
+ # ebuild/emerge. As a work around, we save the ARCH variable as
+ # EBUILD_ARCH and restore it when we are done.
+ EBUILD_ARCH="${ARCH}"
+ unset ARCH
+
+ if use mpi ; then
+ export NPROCS=1
+ export CC="mpicc"
+ export F9X="mpif90"
+ export LIBS="$(sh pvfs2-config --libs) -lmpich"
+ if built_with_use sys-cluster/mpich2 mpe ; then
+ myconf="${myconf} --with-mpe=/usr/include,/usr/$(get_libdir)"
+ fi
+ append-ldflags "${LIBS}"
+ fi
+
+ ./configure --prefix=/usr "${myconf}" \
+ $(use_enable zlib) \
+ $(use_with ssl) \
+ --enable-linux-lfs \
+ --sysconfdir=/etc \
+ --infodir=/usr/share/info \
+ --libdir=/usr/$(get_libdir) \
+ --mandir=/usr/share/man || die "configure failed"
+
+ # restore the ARCH environment variable
+ ARCH="${EBUILD_ARCH}"
+
+ # emake has occasional segfaults
+ make || die "make failed"
+}
+
+src_test() {
+ # make test is not reliable, and the mpi tests have a weird failure
+ export HDF5_Make_Ignore=yes
+ if use mpi ; then
+ export HDF5_PARAPREFIX="${S}/testpar"
+ export CC="/usr/bin/mpicc"
+ install -g portage -o portage -m 0600 "${FILESDIR}"/mpd.conf "${HOME}"/.mpd.conf
+ /usr/bin/mpd --daemon
+ fi
+ make check || die "make test failed"
+ use mpi && /usr/bin/mpdallexit
+ export HDF5_Make_Ignore=no
+}
+
+src_install() {
+ make \
+ prefix="${D}"usr \
+ mandir="${D}"usr/share/man \
+ docdir="${D}"usr/share/doc/"${PF}" \
+ libdir="${D}"usr/$(get_libdir) \
+ infodir="${D}usr"/share/info \
+ install || die "make install failed"
+
+ dolib.a "${S}"/tools/lib/.libs/libh5tools.a \
+ "${S}"/test/.libs/libh5test.a || die "dolib.a failed"
+ insinto /usr/$(get_libdir)
+ doins "${S}"/tools/lib/libh5tools.la \
+ "${S}"/test/libh5test.la || die "doins failed"
+ dolib.so" ${S}"/test/.libs/lib*so* || die "dolib.so failed"
+
+ exeinto /usr/bin
+ newexe "${S}"/bin/iostats iostats.pl || die "newexe failed"
+
+ dodoc README.txt MANIFEST
+ dohtml doc/html/*
+
+ if use mpi ; then
+ mv "${D}"usr/bin/h5pcc "${D}"usr/bin/h5cc
+ fi
+ if use fortran ; then
+ mv "${D}"usr/bin/h5pfc "${D}"usr/bin/h5fc
+ fi
+ # change the SHLIB default for C
+ dosed "s/SHLIB:-no/SHLIB:-yes/g" "${D}"usr/bin/h5cc || die "dosed failed"
+}
+
+pkg_postinst() {
+ elog
+ elog "There are currently 2 non-fatal test errors in the mpi tests,"
+ elog "however, all C++, Fortran, and other tests pass successfully."
+ elog "The only expected failure is currently in the PHDF5 section"
+ elog "under MPI functionality tests. The second section using the"
+ elog "MPIPOSIX driver should work, along with all other tests."
+ elog
+ elog "Suggested USE flags for fortran and mpi support using gfortran:"
+ elog "USE=\"fortran mpi -cxx\""
+ elog
+ ewarn "Note 1: currently testing pvfs2 support (with mpi). Please"
+ ewarn "report any problems in the usual way."
+ elog
+ ewarn "Note 2: you'll need rawio support enabled in your kernel or"
+ ewarn "certain asynchronous IO operations will fail. Either enable"
+ ewarn "the RAW driver (under Character Devices) or patch your kernel"
+ ewarn "with the new PAIO drivers and use libposix-aio. See both:"
+ ewarn "http://sourceforge.net/projects/paiol and"
+ ewarn "http://www.bullopensource.org/posix for more info."
+ elog
+}