summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2009-08-18 21:14:37 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2009-08-18 21:14:37 +0000
commit465c0468409145da5b1861ecdbeb7b12192134d6 (patch)
treed62ccad7b1919f1f868571728c90878673e959fc /sci-libs/hdf5
parentFixing quoted (diff)
downloadhistorical-465c0468409145da5b1861ecdbeb7b12192134d6.tar.gz
historical-465c0468409145da5b1861ecdbeb7b12192134d6.tar.bz2
historical-465c0468409145da5b1861ecdbeb7b12192134d6.zip
Version bump. Many fixes and cleanups, rewrote ebuild from scratch, merging from science overlay
Package-Manager: portage-2.2_rc38/cvs/Linux x86_64
Diffstat (limited to 'sci-libs/hdf5')
-rw-r--r--sci-libs/hdf5/ChangeLog14
-rw-r--r--sci-libs/hdf5/Manifest22
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-as-needed.patch31
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-destdir.patch39
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-gnutools.patch35
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-includes.patch11
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-noreturn.patch92
-rw-r--r--sci-libs/hdf5/files/hdf5-1.8.3-signal.patch65
-rw-r--r--sci-libs/hdf5/hdf5-1.8.3.ebuild84
-rw-r--r--sci-libs/hdf5/metadata.xml6
10 files changed, 395 insertions, 4 deletions
diff --git a/sci-libs/hdf5/ChangeLog b/sci-libs/hdf5/ChangeLog
index 17a508526d74..de8886eff6fd 100644
--- a/sci-libs/hdf5/ChangeLog
+++ b/sci-libs/hdf5/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for sci-libs/hdf5
-# Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/ChangeLog,v 1.33 2009/02/04 13:46:26 patrick Exp $
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/ChangeLog,v 1.34 2009/08/18 21:14:37 bicatali Exp $
+
+*hdf5-1.8.3 (18 Aug 2009)
+
+ 18 Aug 2009; SĂ©bastien Fabbro <bicatali@gentoo.org> +hdf5-1.8.3.ebuild,
+ +files/hdf5-1.8.3-as-needed.patch, +files/hdf5-1.8.3-destdir.patch,
+ +files/hdf5-1.8.3-gnutools.patch, +files/hdf5-1.8.3-includes.patch,
+ +files/hdf5-1.8.3-noreturn.patch, +files/hdf5-1.8.3-signal.patch,
+ metadata.xml:
+ Version bump. Many fixes and cleanups, rewrote ebuild from scratch,
+ merging from science overlay
04 Feb 2009; Patrick Lauer <patrick@gentoo.org>
+files/hdf5-gcc4.3.3-fix.patch, hdf5-1.6.7.ebuild:
diff --git a/sci-libs/hdf5/Manifest b/sci-libs/hdf5/Manifest
index 975343bb1ffe..88283e7cddbe 100644
--- a/sci-libs/hdf5/Manifest
+++ b/sci-libs/hdf5/Manifest
@@ -1,4 +1,13 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX hdf5-1.6.6-gcc4.3.patch 355 RMD160 109811c4e4d434bfa09ea156e67623e50b0f89a5 SHA1 c0fe43c262723e117572b687d9f3c94910e4fddc SHA256 ca1a16f1df4c58410001ca4b06886f9df47b475100078c5e9208ff7a21ca22c1
+AUX hdf5-1.8.3-as-needed.patch 1378 RMD160 b62ceac589fc688354aa449ae9c4364c5b3a67d3 SHA1 26de66dffb9082c4bb29b715ad2d3ebe369feae3 SHA256 e50f220e74f34c40f855495c15760ab14518b77e54a07707aad3354f5bdc596b
+AUX hdf5-1.8.3-destdir.patch 1754 RMD160 2b0130b12bff2c74c9e65766f0afcd5d422022e1 SHA1 98a91a52ceaab919d6a6b3af8b1c6dc017e40296 SHA256 693002516df4d1026833d629a5b647fea57314b9c62f655e631629b5c19cb602
+AUX hdf5-1.8.3-gnutools.patch 1352 RMD160 a0a51a484f1ab926f13618093c809b6582da8e7f SHA1 e4121383f2876dea4ba09356ca7d233fe6ac5b2e SHA256 0e6720e736d7103f39edcf8d3fb4a14f40bbee67363e8f167d9b594ef348f197
+AUX hdf5-1.8.3-includes.patch 398 RMD160 5112dd05bebbc702f24fa22aeebc67209a4e6611 SHA1 339137d04a803e25a0cafaa4f4d167a4cbc9a7ae SHA256 cd82d8b3817d83d59054a2a32ce44aca060157095875f6e91c560ab830b32561
+AUX hdf5-1.8.3-noreturn.patch 3222 RMD160 39285ba18447b0f8db22a5f8e9d51a3cd8a8e91e SHA1 c5d8f7528fbe5c0bde0cb0ac5c1dd189559ac140 SHA256 d902cfbda0382b8998506ea765d0795937485c44d8824051275ad668bcbd6565
+AUX hdf5-1.8.3-signal.patch 2226 RMD160 afe0ea8ad24fd84bed4642436c972fb5e492045e SHA1 5251a4520140b29ef0cb62d916732c9dd4089dd4 SHA256 0d07d222802005df65d42493dac16897865954755e4a59e681fa043e370a0f71
AUX hdf5-gcc4.3.3-fix.patch 412 RMD160 ee46bae5cb81382cc8d04f6d0f31bec37d88987d SHA1 a9ad925bd4107809e45faf44cd6ee88b13ca2b8a SHA256 1583e143c57181608cd34c9accc8830d665aaf01124994ef6642aead5e22bff5
AUX hdf5-mpich2.patch 488 RMD160 f8ab476eed88267c4b79cc56ae683dc485255921 SHA1 a3f7ee6a2f682982d8a562bcc117c7fc09b69224 SHA256 a154a32a7b6dbc8edac7c72f1a6100b9f0532d2f9591681f505e949b0db6a1e5
AUX mpd.conf 48 RMD160 289de9bb40759e3f71229cf47e4d2af83703a85f SHA1 244eee76dbf4ff269e4489d5cc7c3577c6c1fa6b SHA256 ae740cacaf2cb798921cb2092f5af98de67445e27af3f88858f3e6d2bbb127f4
@@ -7,10 +16,19 @@ DIST hdf5-1.6.4.tar.gz 4862437 RMD160 8175af3153bb0a5a1278c01af2d3940f4fd5084f S
DIST hdf5-1.6.5.tar.gz 4930666 RMD160 70db16a832f77aa6d0c97da517353665304b7b27 SHA1 c5b7b375c0eb23dcab0c66d39b1b06c263048546 SHA256 85b7cfc1e34db544fa93f5bf7effe189a5e1eb97f0cfa7b212adc11915a756b2
DIST hdf5-1.6.6.tar.gz 5299558 RMD160 e7cf3f8d6aa5f34ef10cabf650ed43d644e54f1b SHA1 c8a9ec598cf0debb694a1d7034fd85bbd67f173b SHA256 432d02f2d6988999d3d18caa6680af3cef14c8a7537c98e7adbaa8f873fba2a7
DIST hdf5-1.6.7.tar.gz 5299219 RMD160 2dbbcccd32986dcd66ce804c5e90ac6c949b71f6 SHA1 9c26fe09cdad269c9a6757933f70ca164a47b8e8 SHA256 9d9a98204f8c7d82f767f27f84db2520c04f5c73a4a6348c781a0d91a296e9a2
+DIST hdf5-1.8.3.tar.gz 7175884 RMD160 7b279306b5458f39dc7343c14a7c7c88459823a3 SHA1 0bf66eb5d964472eae4b6c2bb26e669dcd188140 SHA256 2e124dfd59ca00dee693c06cf2517d14b361769e65edbc1c3940063437d0a5e3
EBUILD hdf5-1.6.2.ebuild 1837 RMD160 2c7e527ade607fd3d98222787db400bc86c28d37 SHA1 a1b5e54d886d09074665512428c7a1ea23f28437 SHA256 612db1a50d632dd5b0d1c63d557888c4e5765a0debf774552443cdb1dde3a49c
EBUILD hdf5-1.6.4.ebuild 2098 RMD160 348a6f05d7677e372688ca5ecdcdea36c90df7c9 SHA1 aaeed445389bad0630f518e0778f900af9614fb1 SHA256 469176113ea60bc95a7efa63ca24e6d53baeab71660a44eaa23088fedfd911af
EBUILD hdf5-1.6.5-r1.ebuild 6638 RMD160 b19d0ec9f56fa0ba1423a494798ab79bccc1380d SHA1 ca0a6106c94fd1745e6852b89f4e119d7d10f461 SHA256 c59e90e1383173906eb59d78bb48a57acebc94530e596501db8f6d5ee8268226
EBUILD hdf5-1.6.6.ebuild 7810 RMD160 784379ad99dc84c2e28d16a87ff7fb3c295638a9 SHA1 e2a8e1a58f51746a0bf0983b4ae8ec5042becf11 SHA256 1c80d372ddefb8308ec0282f36a5f430dec2096fee79eb23af94a11d244cc0d6
EBUILD hdf5-1.6.7.ebuild 7861 RMD160 f7acc2f9e8b64811856c000e018a3ae31bccff1d SHA1 1e56894462731de702e29bb023648d72c08104e4 SHA256 ff78a5067744a4be5703589f2cd8f79df27082877b349e91682fbbb90a05218e
-MISC ChangeLog 8277 RMD160 7cf7c0e69dae2e66bd650ee5855de19f86ee4e81 SHA1 eb64abb8b8d1de57ca6c50b8048b44b8c4caefa1 SHA256 bd83e1f8b213fbdbf59351e607bb277e61dc10935864b789c1ae9afc4d152346
-MISC metadata.xml 360 RMD160 a2917233c5a10f6639fb8c4a295609852c2be473 SHA1 6629277bccaaeb0a3bec1720cd1641afb5570e56 SHA256 a6024d09f6d50aba588c4d121e1dcc16659fc4c5df28f9667f0e32b9809b809c
+EBUILD hdf5-1.8.3.ebuild 2169 RMD160 9d498a8a26f91d01d99339c890a8d50531df3563 SHA1 9fd17ea1e9957515874818a6a5ab0ff49fe2dfcb SHA256 bad484fda008cf7ef96fcaae17afabade900f2a68c13f67565c63a39188fa2cb
+MISC ChangeLog 8706 RMD160 e34eebe5082a92f037a1279b880340537b116d66 SHA1 bfdf4afda55904e052bce9c5b4a7ff44c9a21624 SHA256 3788dbc94b5848d235899fc840c5950937b389b0e1087beca2877e58c82c4722
+MISC metadata.xml 649 RMD160 1b9a1fca35d2d3f57bd4295590a195d2e185ac7b SHA1 3f660a0e5cbad641be13c544a3ef115121c590fb SHA256 108e74754b00646a4e0196b4c305711e210beb91f64ab3ef188369037bc2eea2
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.11 (GNU/Linux)
+
+iEYEARECAAYFAkqLGcYACgkQ1ycZbhPLE2AkeQCeNgU7oCY1dCuM48W2TbgzXOEi
+6p8An1Y7NJCg0EvIUv75Yi5lfZRhzrZp
+=60SL
+-----END PGP SIGNATURE-----
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-as-needed.patch b/sci-libs/hdf5/files/hdf5-1.8.3-as-needed.patch
new file mode 100644
index 000000000000..42962d66181a
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-as-needed.patch
@@ -0,0 +1,31 @@
+--- hdf5-1.8.3.orig/fortran/src/Makefile.am 2009-04-15 19:10:01.053733251 +0100
++++ hdf5-1.8.3/fortran/src/Makefile.am 2009-04-15 19:12:49.874557795 +0100
+@@ -66,6 +66,8 @@
+ H5If.c H5Lf.c H5Of.c H5Pf.c H5Rf.c H5Sf.c H5Tf.c H5Zf.c \
+ $(PARALLEL_COND_SRC)
+
++libhdf5_fortran_la_LIBADD = $(top_builddir)/src/libhdf5.la
++
+ # h5fc is generated during configure.
+ # Remove it only when distclean.
+ DISTCLEANFILES=h5fc
+--- hdf5-1.8.3.orig/hl/fortran/src/Makefile.am 2009-04-15 19:10:01.245748616 +0100
++++ hdf5-1.8.3/hl/fortran/src/Makefile.am 2009-04-15 19:30:56.042226227 +0100
+@@ -43,6 +43,7 @@
+
+ libhdf5hl_fortran_la_SOURCES=H5LTfc.c H5IMfc.c H5IMcc.c H5TBfc.c H5LTff.f90 \
+ H5IMff.f90 H5TBff.f90
++libhdf5hl_fortran_la_LIBADD=$(top_builddir)/hl/src/libhdf5_hl.la
+
+ # Fortran module files can have different extensions and different names
+ # (e.g., different capitalizations) on different platforms. Write rules
+--- hdf5-1.8.3.orig/hl/c++/src/Makefile.am 2009-04-15 19:10:01.249750013 +0100
++++ hdf5-1.8.3/hl/c++/src/Makefile.am 2009-04-15 20:16:08.812068687 +0100
+@@ -35,6 +35,7 @@
+ # Source files for the library
+ # At the moment, only the H5PT Packet Table has a C++ API.
+ libhdf5_hl_cpp_la_SOURCES=H5PacketTable.cpp
++libhdf5_hl_cpp_la_LIBADD=$(top_builddir)/hl/src/libhdf5_hl.la
+
+ # Public headers
+ include_HEADERS=H5PacketTable.h
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-destdir.patch b/sci-libs/hdf5/files/hdf5-1.8.3-destdir.patch
new file mode 100644
index 000000000000..41cf505f1658
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-destdir.patch
@@ -0,0 +1,39 @@
+--- hdf5-1.8.3.orig/config/examples.am 2009-04-15 19:10:01.037732972 +0100
++++ hdf5-1.8.3/config/examples.am 2009-04-16 15:02:45.983768491 +0100
+@@ -51,7 +51,7 @@
+
+ # How to create EXAMPLEDIR if it doesn't already exist
+ $(EXAMPLEDIR):
+- -$(top_srcdir)/bin/mkdirs $@
++ -$(top_srcdir)/bin/mkdirs $(DESTDIR)$@
+
+ # Install and uninstall rules. We install the source files, not the
+ # example programs themselves.
+@@ -63,13 +63,13 @@
+ install-examples: $(EXAMPLEDIR) $(INSTALL_FILES)
+ @for f in X $(INSTALL_FILES); do \
+ if test $$f != X; then \
+- (set -x; $(INSTALL) $(srcdir)/$$f $(EXAMPLEDIR)/. || exit 1);\
++ (set -x; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(EXAMPLEDIR)/. || exit 1);\
+ fi; \
+ done
+
+ uninstall-examples:
+- @if test -n "$(INSTALL_FILES)" -a -d $(EXAMPLEDIR); then \
+- set -x; cd $(EXAMPLEDIR) && $(RM) $(INSTALL_FILES); \
++ @if test -n "$(INSTALL_FILES)" -a -d $(DESTDIR)$(EXAMPLEDIR); then \
++ set -x; cd $(DESTDIR)$(EXAMPLEDIR) && $(RM) $(INSTALL_FILES); \
+ fi
+
+ installcheck-local:
+--- hdf5-1.8.3.orig/config/commence.am 2009-04-15 19:10:01.037732972 +0100
++++ hdf5-1.8.3/config/commence.am 2009-04-16 15:40:53.810412317 +0100
+@@ -42,8 +42,6 @@
+ LIBH5F_HL=$(top_builddir)/hl/fortran/src/libhdf5hl_fortran.la
+ LIBH5CPP_HL=$(top_builddir)/hl/c++/src/libhdf5_hl_cpp.la
+
+-# Install directories that automake doesn't know about
+-docdir = $(exec_prefix)/doc
+
+ # Scripts used to build examples
+ # If only shared libraries have been installed, have h5cc build examples with
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-gnutools.patch b/sci-libs/hdf5/files/hdf5-1.8.3-gnutools.patch
new file mode 100644
index 000000000000..55654123718a
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-gnutools.patch
@@ -0,0 +1,35 @@
+--- hdf5-1.8.3.orig/config/linux-gnulibc1 2009-04-15 19:10:01.037732972 +0100
++++ hdf5-1.8.3/config/linux-gnulibc1 2009-04-16 09:58:54.132299149 +0100
+@@ -39,8 +39,8 @@
+ if test "X-" = "X-$FC"; then
+ case $CC_BASENAME in
+ gcc*)
+- FC=g95
+- FC_BASENAME=g95
++ FC=gfortran
++ FC_BASENAME=gfortran
+ ;;
+ pgcc*)
+ FC=pgf90
+--- hdf5-1.8.3.orig/src/Makefile.am 2009-04-15 19:10:01.113738280 +0100
++++ hdf5-1.8.3/src/Makefile.am 2009-04-16 11:07:46.221186334 +0100
+@@ -27,7 +27,7 @@
+ # a long time to compile it with any optimization on. H5detect is used
+ # to generate H5Tinit.c once. So, optimization is not critical.
+ noinst_PROGRAMS = H5detect
+-H5detect_CFLAGS = -g
++H5detect_CFLAGS = -g -O0
+
+ # Our main target, the HDF5 library
+ lib_LTLIBRARIES=libhdf5.la
+--- hdf5-1.8.3.orig/configure.in 2009-04-15 19:10:01.345757835 +0100
++++ hdf5-1.8.3/configure.in 2009-04-16 12:40:53.698868563 +0100
+@@ -355,7 +355,7 @@
+ dnl --------------------------------------------------------------------
+ dnl Check for a Fortran 9X compiler and how to include modules.
+ dnl
+- AC_PROG_FC([f90 pgf90 slf90 f95 g95 xlf95 efc ifort ftn],)
++ AC_PROG_FC([gfortran f90 pgf90 slf90 f95 g95 xlf95 efc ifort ftn],)
+ AC_F9X_MODS
+
+ dnl It seems that libtool (as of Libtool 1.5.14) is trying to
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-includes.patch b/sci-libs/hdf5/files/hdf5-1.8.3-includes.patch
new file mode 100644
index 000000000000..5e87f6c97a5b
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-includes.patch
@@ -0,0 +1,11 @@
+--- hdf5-1.8.3.orig/src/H5E.c 2009-04-15 19:10:01.081735486 +0100
++++ hdf5-1.8.3/src/H5E.c 2009-04-15 20:02:06.708712912 +0100
+@@ -54,6 +54,8 @@
+ /***********/
+ /* Headers */
+ /***********/
++#define _GNU_SOURCE
++#include <stdio.h>
+ #include "H5private.h" /* Generic Functions */
+ #include "H5Iprivate.h" /* IDs */
+ #include "H5Epkg.h" /* Error handling */
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-noreturn.patch b/sci-libs/hdf5/files/hdf5-1.8.3-noreturn.patch
new file mode 100644
index 000000000000..27b6f9b32a62
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-noreturn.patch
@@ -0,0 +1,92 @@
+diff -Nur hdf5-1.8.3.orig/c++/src/H5AbstractDs.cpp hdf5-1.8.3/c++/src/H5AbstractDs.cpp
+--- hdf5-1.8.3.orig/c++/src/H5AbstractDs.cpp 2009-04-15 19:10:01.061734089 +0100
++++ hdf5-1.8.3/c++/src/H5AbstractDs.cpp 2009-04-16 10:10:56.263885963 +0100
+@@ -85,6 +85,8 @@
+ else if (fromClass() == "Attribute")
+ throw DataTypeIException("Attribute::getTypeClass", "H5Tget_class returns H5T_NO_CLASS");
+ }
++
++ return (type_class);
+ }
+
+ //--------------------------------------------------------------------------
+diff -Nur hdf5-1.8.3.orig/hl/src/H5LTanalyze.c hdf5-1.8.3/hl/src/H5LTanalyze.c
+--- hdf5-1.8.3.orig/hl/src/H5LTanalyze.c 2009-04-15 19:10:01.221747499 +0100
++++ hdf5-1.8.3/hl/src/H5LTanalyze.c 2009-04-16 10:10:56.267887639 +0100
+@@ -2329,7 +2329,7 @@
+ return ret;
+ }
+
+-int H5LTyyerror(char *msg)
++void H5LTyyerror(char *msg)
+ {
+ printf("ERROR: %s before \"%s\".\n", msg, yytext);
+ }
+diff -Nur hdf5-1.8.3.orig/hl/src/H5LTanalyze.l hdf5-1.8.3/hl/src/H5LTanalyze.l
+--- hdf5-1.8.3.orig/hl/src/H5LTanalyze.l 2009-04-15 19:10:01.221747499 +0100
++++ hdf5-1.8.3/hl/src/H5LTanalyze.l 2009-04-16 10:10:56.267887639 +0100
+@@ -181,7 +181,7 @@
+ return ret;
+ }
+
+-int H5LTyyerror(char *msg)
++void H5LTyyerror(char *msg)
+ {
+ printf("ERROR: %s before \"%s\".\n", msg, yytext);
+ }
+diff -Nur hdf5-1.8.3.orig/hl/src/H5LTparse.c hdf5-1.8.3/hl/src/H5LTparse.c
+--- hdf5-1.8.3.orig/hl/src/H5LTparse.c 2009-04-15 19:10:01.221747499 +0100
++++ hdf5-1.8.3/hl/src/H5LTparse.c 2009-04-16 10:10:56.267887639 +0100
+@@ -64,7 +64,7 @@
+ #include<hdf5.h>
+
+ extern int yylex();
+-extern int yyerror(char *);
++extern void yyerror(char *);
+
+ #define STACK_SIZE 16
+
+diff -Nur hdf5-1.8.3.orig/test/dt_arith.c hdf5-1.8.3/test/dt_arith.c
+--- hdf5-1.8.3.orig/test/dt_arith.c 2009-04-15 19:10:01.121739118 +0100
++++ hdf5-1.8.3/test/dt_arith.c 2009-04-16 10:10:56.271887918 +0100
+@@ -3408,6 +3408,7 @@
+ else if(run_test==TEST_DENORM || run_test==TEST_SPECIAL)
+ return 1;
+ #endif
++ return 1;
+ }
+
+
+diff -Nur hdf5-1.8.3.orig/tools/h5dump/h5dump.c hdf5-1.8.3/tools/h5dump/h5dump.c
+--- hdf5-1.8.3.orig/tools/h5dump/h5dump.c 2009-04-15 19:10:01.141740794 +0100
++++ hdf5-1.8.3/tools/h5dump/h5dump.c 2009-04-16 10:10:56.275888757 +0100
+@@ -602,6 +602,7 @@
+ *
+ *-------------------------------------------------------------------------
+ */
++static void leave(int ret) __attribute__ ((__noreturn__));
+ static void
+ leave(int ret)
+ {
+diff -Nur hdf5-1.8.3.orig/tools/h5ls/h5ls.c hdf5-1.8.3/tools/h5ls/h5ls.c
+--- hdf5-1.8.3.orig/tools/h5ls/h5ls.c 2009-04-15 19:10:01.165741353 +0100
++++ hdf5-1.8.3/tools/h5ls/h5ls.c 2009-04-16 10:10:56.279888477 +0100
+@@ -2147,6 +2147,7 @@
+ *
+ *-------------------------------------------------------------------------
+ */
++static void leave(int ret) __attribute__ ((__noreturn__));
+ static void
+ leave(int ret)
+ {
+diff -Nur hdf5-1.8.3.orig/tools/h5stat/h5stat.c hdf5-1.8.3/tools/h5stat/h5stat.c
+--- hdf5-1.8.3.orig/tools/h5stat/h5stat.c 2009-04-15 19:10:01.181742750 +0100
++++ hdf5-1.8.3/tools/h5stat/h5stat.c 2009-04-16 10:10:56.279888477 +0100
+@@ -181,6 +181,7 @@
+ { NULL, 0, '\0' }
+ };
+
++static void leave(int ret) __attribute__ ((__noreturn__));
+ static void
+ leave(int ret)
+ {
diff --git a/sci-libs/hdf5/files/hdf5-1.8.3-signal.patch b/sci-libs/hdf5/files/hdf5-1.8.3-signal.patch
new file mode 100644
index 000000000000..0ef2672e11a7
--- /dev/null
+++ b/sci-libs/hdf5/files/hdf5-1.8.3-signal.patch
@@ -0,0 +1,65 @@
+--- hdf5-1.8.3.orig/src/H5detect.c 2009-04-15 19:10:01.069734368 +0100
++++ hdf5-1.8.3/src/H5detect.c 2009-04-16 10:15:42.185227061 +0100
+@@ -109,7 +109,7 @@
+ static void detect_C99_integers64(void);
+ static void detect_alignments(void);
+ static size_t align_g[] = {1, 2, 4, 8, 16};
+-static jmp_buf jbuf_g;
++static sigjmp_buf jbuf_g;
+
+
+ /*-------------------------------------------------------------------------
+@@ -368,7 +368,7 @@
+ void (*_handler2)(int) = signal(SIGSEGV, sigsegv_handler); \
+ \
+ _buf = (char*)malloc(sizeof(TYPE) + align_g[NELMTS(align_g) - 1]); \
+- if(setjmp(jbuf_g)) _ano++; \
++ if(sigsetjmp(jbuf_g, 1)) _ano++; \
+ if(_ano < NELMTS(align_g)) { \
+ *((TYPE*)(_buf+align_g[_ano])) = _val; /*possible SIGBUS or SEGSEGV*/ \
+ _val2 = *((TYPE*)(_buf+align_g[_ano])); /*possible SIGBUS or SEGSEGV*/ \
+@@ -385,7 +385,7 @@
+ memcpy(_buf+align_g[_ano]+(INFO.offset/8),((char *)&_val)+(INFO.offset/8),(size_t)(INFO.precision/8)); \
+ _val2 = *((TYPE*)(_buf+align_g[_ano])); \
+ if(_val!=_val2) \
+- longjmp(jbuf_g, 1); \
++ siglongjmp(jbuf_g, 1); \
+ /* End Cray Check */ \
+ (INFO.align)=align_g[_ano]; \
+ } else { \
+@@ -456,7 +456,7 @@
+ * it's not nearly as nice to work with, it does the job for
+ * this simple stuff.
+ *
+- * Return: Returns via longjmp to jbuf_g.
++ * Return: Returns via siglongjmp to jbuf_g.
+ *
+ * Programmer: Robb Matzke
+ * Thursday, March 18, 1999
+@@ -469,7 +469,7 @@
+ sigsegv_handler(int UNUSED signo)
+ {
+ signal(SIGSEGV, sigsegv_handler);
+- longjmp(jbuf_g, 1);
++ siglongjmp(jbuf_g, 1);
+ }
+
+
+@@ -481,7 +481,7 @@
+ * it's not nearly as nice to work with, it does the job for
+ * this simple stuff.
+ *
+- * Return: Returns via longjmp to jbuf_g.
++ * Return: Returns via siglongjmp to jbuf_g.
+ *
+ * Programmer: Robb Matzke
+ * Thursday, March 18, 1999
+@@ -494,7 +494,7 @@
+ sigbus_handler(int UNUSED signo)
+ {
+ signal(SIGBUS, sigbus_handler);
+- longjmp(jbuf_g, 1);
++ siglongjmp(jbuf_g, 1);
+ #ifdef H5_HAVE_SIGLONGJMP
+ siglongjmp(jbuf_g, 1);
+ #endif /* H5_HAVE_SIGLONGJMP */
diff --git a/sci-libs/hdf5/hdf5-1.8.3.ebuild b/sci-libs/hdf5/hdf5-1.8.3.ebuild
new file mode 100644
index 000000000000..ca3400e72ccd
--- /dev/null
+++ b/sci-libs/hdf5/hdf5-1.8.3.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/hdf5/hdf5-1.8.3.ebuild,v 1.1 2009/08/18 21:14:37 bicatali Exp $
+
+EAPI=2
+inherit eutils autotools
+
+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/current/src/${P}.tar.gz"
+
+LICENSE="NCSA-HDF"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~sparc"
+
+IUSE="cxx examples fortran mpi szip threads zlib"
+
+RDEPEND="mpi? ( virtual/mpi[romio] )
+ szip? ( >=sci-libs/szip-2.1 )
+ zlib? ( sys-libs/zlib )"
+
+DEPEND="${RDEPEND}
+ >=sys-devel/libtool-2.2
+ sys-process/time"
+
+pkg_setup() {
+ if use mpi && use cxx; then
+ ewarn "Simultaneous mpi and cxx is not supported by ${PN}"
+ ewarn "Will disable cxx interface"
+ fi
+ if use mpi && use fortran; then
+ export FC=mpif90
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-as-needed.patch
+ epatch "${FILESDIR}"/${P}-includes.patch
+ epatch "${FILESDIR}"/${P}-gnutools.patch
+ epatch "${FILESDIR}"/${P}-noreturn.patch
+ epatch "${FILESDIR}"/${P}-destdir.patch
+ epatch "${FILESDIR}"/${P}-signal.patch
+
+ # gentoo examples directory
+ sed -i \
+ -e 's:$(docdir)/hdf5:$(docdir):' \
+ $(find . -name Makefile.am) || die
+ eautoreconf
+}
+
+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 && use cxx; then
+ myconf="${myconf} --disable-cxx"
+ elif use cxx; then
+ myconf="${myconf} --enable-cxx"
+ fi
+
+ econf \
+ --docdir=/usr/share/doc/${PF} \
+ --disable-sharedlib-rpath \
+ --enable-production \
+ --enable-strict-format-checks \
+ --enable-deprecated-symbols \
+ $(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 -j1 DESTDIR="${D}" install-examples \
+ || die "emake install examples failed"
+ fi
+}
diff --git a/sci-libs/hdf5/metadata.xml b/sci-libs/hdf5/metadata.xml
index cd6ea3a6b019..90bf8cff7d59 100644
--- a/sci-libs/hdf5/metadata.xml
+++ b/sci-libs/hdf5/metadata.xml
@@ -2,6 +2,12 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>sci</herd>
+<longdescription>
+ HDF5 is a file format and library for storing scientific data. HDF5
+ was designed and implemented to address the deficiencies of HDF4.x. It
+ has a more powerful and flexible data model, supports files larger
+ than 2 GB, and supports parallel I/O.
+</longdescription>
<use>
<flag name='f90'>Override Fortran for externel compilers</flag>
<flag name='hlapi'>Enable support for high-level library</flag>