- Update to 1.8.0, drop upstreamed patches

- Update signal patch
- Move static libraries into -static sub-package
- Make -devel multiarch (bug #341501)
epel9
Orion Poplawski 17 years ago
parent aad3b63a63
commit 49b0177859

@ -1 +1 @@
hdf5-1.6.6.tar.gz hdf5-1.8.0.tar.gz

@ -0,0 +1,10 @@
#!/bin/bash
ARCH=$(uname -m)
case $ARCH in
x86_64 | ppc64 | ia64 | s390 ) BITS=64;;
* ) BITS=32;;
esac
exec $0-${BITS}

@ -1,60 +0,0 @@
--- hdf5-1.6.4/config/commence.in.BAD 2005-04-03 13:52:00.000000000 -0500
+++ hdf5-1.6.4/config/commence.in 2005-04-03 13:52:53.000000000 -0500
@@ -35,11 +35,11 @@
TRACE=:
## Installation points
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-libdir=@libdir@
-includedir=@includedir@
-docdir=@exec_prefix@/doc
+prefix=$(DESTDIR)@prefix@
+exec_prefix=$(DESTDIR)@exec_prefix@
+bindir=$(DESTDIR)@bindir@
+libdir=$(DESTDIR)@libdir@
+includedir=$(DESTDIR)@includedir@
+docdir=$(DESTDIR)@exec_prefix@/doc
PUB_LIB=$(LIB)
--- hdf5-1.6.4/fortran/config/commence.in.BAD 2005-04-03 14:08:27.000000000 -0500
+++ hdf5-1.6.4/fortran/config/commence.in 2005-04-03 14:08:48.000000000 -0500
@@ -40,11 +40,11 @@
TRACE=:
## Installation points
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-libdir=@libdir@
-includedir=@includedir@
-docdir=@exec_prefix@/doc
+prefix=$(DESTDIR)@prefix@
+exec_prefix=$(DESTDIR)@exec_prefix@
+bindir=$(DESTDIR)@bindir@
+libdir=$(DESTDIR)@libdir@
+includedir=$(DESTDIR)@includedir@
+docdir=$(DESTDIR)@exec_prefix@/doc
PUB_LIB=$(LIB)
--- hdf5-1.6.4/c++/config/commence.in.BAD 2005-04-03 14:07:10.000000000 -0500
+++ hdf5-1.6.4/c++/config/commence.in 2005-04-03 14:07:35.000000000 -0500
@@ -32,11 +32,11 @@
TRACE=:
## Installation points
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-libdir=@libdir@
-includedir=@includedir@
-docdir=@exec_prefix@/doc
+prefix=$(DESTDIR)@prefix@
+exec_prefix=$(DESTDIR)@exec_prefix@
+bindir=$(DESTDIR)@bindir@
+libdir=$(DESTDIR)@libdir@
+includedir=$(DESTDIR)@includedir@
+docdir=$(DESTDIR)@exec_prefix@/doc
PUB_LIB=$(LIB)

@ -1,46 +0,0 @@
--- hdf5-1.6.4/config/commence.in.BAD 2005-04-03 18:55:35.000000000 -0500
+++ hdf5-1.6.4/config/commence.in 2005-04-03 18:55:54.000000000 -0500
@@ -48,8 +48,8 @@
DYNAMIC_DIRS=@DYNAMIC_DIRS@
LT=$(top_builddir)/libtool
LT_COMPILE=$(LT) --mode=compile $(CC)
LT_LINK_LIB=$(LT) --mode=link $(CC) -rpath $(libdir) $(DYNAMIC_DIRS)
-LT_LINK_EXE=$(LT) --mode=link $(CC) $(LT_STATIC_EXEC) -dlopen self -rpath $(libdir) $(DYNAMIC_DIRS)
+LT_LINK_EXE=$(LT) --mode=link $(CC) $(LT_STATIC_EXEC) -dlopen self $(DYNAMIC_DIRS)
LT_RUN=$(LT) --mode=execute
LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM)
LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA)
--- hdf5-1.6.4/c++/config/commence.in.BAD 2005-04-03 18:55:05.000000000 -0500
+++ hdf5-1.6.4/c++/config/commence.in 2005-04-03 18:55:25.000000000 -0500
@@ -50,8 +50,8 @@
DYNAMIC_DIRS=@DYNAMIC_DIRS@
LT=$(top_builddir)/libtool
LT_COMPILE=$(LT) --mode=compile $(CXX)
LT_LINK_LIB=$(LT) --mode=link $(CXX) -static -rpath $(libdir) $(DYNAMIC_DIRS)
-LT_LINK_EXE=$(LT) --mode=link $(CXX) -static $(LT_STATIC_EXEC) -dlopen self -rpath $(bindir) $(DYNAMIC_DIRS)
+LT_LINK_EXE=$(LT) --mode=link $(CXX) -static $(LT_STATIC_EXEC) -dlopen self $(DYNAMIC_DIRS)
LT_RUN=$(LT) --mode=execute
LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM)
LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA)
--- hdf5-1.6.4/fortran/config/commence.in.BAD 2005-04-03 20:05:38.000000000 -0500
+++ hdf5-1.6.4/fortran/config/commence.in 2005-04-03 20:05:48.000000000 -0500
@@ -54,7 +54,7 @@
LT=$(top_builddir)/libtool
LT_CCOMPILE=$(LT) --mode=compile $(CC)
LT_LINK_CLIB=$(LT) --mode=link $(CC) $(DYNAMIC_DIRS) $(LT_STATIC_EXEC) -rpath $(libdir)
-LT_LINK_CEXE=$(LT) --mode=link $(CC) $(DYNAMIC_DIRS) -rpath $(bindir)
+LT_LINK_CEXE=$(LT) --mode=link $(CC) $(DYNAMIC_DIRS)
LT_RUN=$(LT) --mode=execute
LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM)
LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA)
--- hdf5-1.6.4/configure.norpath 2006-03-15 14:12:46.000000000 -0700
+++ hdf5-1.6.4/configure 2006-03-15 14:14:09.000000000 -0700
@@ -5569,7 +5569,7 @@
if test "$ld_shlibs" = yes; then
runpath_var=LD_RUN_PATH
- hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
+ hardcode_libdir_flag_spec=''
export_dynamic_flag_spec='${wl}--export-dynamic'
case $host_os in
cygwin* | mingw* | pw32*)

@ -1,18 +0,0 @@
--- hdf5-1.6.4/fortran/src/H5f90i.h.orig 2005-01-10 16:56:29.000000000 -0700
+++ hdf5-1.6.4/fortran/src/H5f90i.h 2005-11-18 11:06:58.000000000 -0700
@@ -102,6 +102,15 @@
typedef int size_t_f;
#define FNAME_POST_UNDERSCORE
+/* PPC specific definitions */
+#elif defined __PPC__
+
+typedef long long haddr_t_f;
+typedef long long hsize_t_f;
+typedef long long hssize_t_f;
+typedef int size_t_f;
+#define FNAME_POST_UNDERSCORE
+
/* IA64 specific definitions */
#elif defined __ia64

@ -1,11 +0,0 @@
--- hdf5-1.6.5/bin/ltmain.sh.sort 2007-03-02 16:20:05.000000000 -0700
+++ hdf5-1.6.5/bin/ltmain.sh 2007-03-02 16:20:12.000000000 -0700
@@ -3329,7 +3329,7 @@
fi
# Try sorting and uniquifying the output.
- if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
+ if grep -v "^: " < "$nlist" | sort -k 2 | uniq > "$nlist"S; then
:
else
grep -v "^: " < "$nlist" > "$nlist"S

@ -1,13 +0,0 @@
--- hdf5-1.6.5/configure.norpath 2006-03-15 14:12:46.000000000 -0700
+++ hdf5-1.6.5/configure 2006-03-15 14:14:09.000000000 -0700
@@ -6097,8 +6097,8 @@
shlibpath_overrides_runpath=unknown
version_type=none
dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+sys_lib_search_path_spec="/lib64 /usr/lib64 /usr/local/lib64 /lib /usr/lib /usr/local/lib"
case $host_os in
aix3*)

@ -1,42 +0,0 @@
--- hdf5-1.6.6/test/dtypes.c.alias 2007-08-16 10:12:05.000000000 -0600
+++ hdf5-1.6.6/test/dtypes.c 2008-02-06 10:14:42.000000000 -0700
@@ -5645,24 +5645,33 @@
for (j=0; j<nelmts; j++) {
/* Do it this way for alignment reasons */
#if H5_SIZEOF_LONG_DOUBLE!=H5_SIZEOF_DOUBLE
- long double temp[1];
+ union {
+ long double ld[1];
+ double d[1];
+ float f[1];
+ unsigned char uc[1];
+ } temp;
#else
- double temp[1];
+ union {
+ double d[1];
+ float f[1];
+ unsigned char uc[1];
+ } temp;
#endif
if (src_size<=dst_size) {
for (k=0; k<dst_size; k++) buf[j*src_size+k] = HDrand();
} else {
for (k=0; k<dst_size; k++)
- ((unsigned char*)temp)[k] = HDrand();
+ temp.uc[k] = HDrand();
if (FLT_DOUBLE==src_type && FLT_FLOAT==dst_type) {
- hw_d = *((float*)temp);
+ hw_d = *(temp.f);
HDmemcpy(buf+j*src_size, &hw_d, src_size);
#if H5_SIZEOF_LONG_DOUBLE!=H5_SIZEOF_DOUBLE
} else if (FLT_LDOUBLE==src_type && FLT_FLOAT==dst_type) {
- hw_ld = *((float*)temp);
+ hw_ld = *(temp.f);
HDmemcpy(buf+j*src_size, &hw_ld, src_size);
} else if (FLT_LDOUBLE==src_type && FLT_DOUBLE==dst_type) {
- hw_ld = *((double*)temp);
+ hw_ld = *(temp.d);
HDmemcpy(buf+j*src_size, &hw_ld, src_size);
#endif
}

@ -1,17 +0,0 @@
--- hdf5-1.6.6/fortran/src/H5f90i.h.alpha 2007-11-23 07:30:29.000000000 -0700
+++ hdf5-1.6.6/fortran/src/H5f90i.h 2007-11-23 07:30:45.000000000 -0700
@@ -188,14 +188,10 @@
#if defined __alpha__ && defined __linux__
-typedef char *_fcd;
typedef long long haddr_t_f;
typedef long long hsize_t_f;
typedef long long hssize_t_f;
typedef long long size_t_f;
-typedef int int_f;
-typedef int hid_t_f;
-typedef float real_f;
#define FNAME_POST2_UNDERSCORE
#define _fcdtocp(desc) (desc)

@ -1,18 +0,0 @@
--- hdf5-1.6.6/fortran/src/H5f90i.h.orig 2008-02-04 19:14:01.000000000 +0100
+++ hdf5-1.6.6/fortran/src/H5f90i.h 2008-02-04 19:14:48.000000000 +0100
@@ -125,6 +125,15 @@
typedef int size_t_f;
#define FNAME_POST_UNDERSCORE
+/* s390/s390x specific definitions */
+#elif (defined __s390__ || defined __s390x__)
+
+typedef long long haddr_t_f;
+typedef long long hsize_t_f;
+typedef long long hssize_t_f;
+typedef int size_t_f;
+#define FNAME_POST_UNDERSCORE
+
/* IA64 specific definitions */
#elif defined __ia64

@ -1,18 +0,0 @@
--- hdf5-1.6.6.orig/fortran/src/H5f90i.h 2008-01-06 11:51:45.000000000 +0200
+++ hdf5-1.6.6/fortran/src/H5f90i.h 2008-01-06 12:15:59.000000000 +0200
@@ -116,6 +116,15 @@
typedef int size_t_f;
#define FNAME_POST_UNDERSCORE
+/* sparc32/64 specific definitions */
+#elif (defined __sparc__ || defined __sparc64__)
+
+typedef long long haddr_t_f;
+typedef long long hsize_t_f;
+typedef long long hssize_t_f;
+typedef int size_t_f;
+#define FNAME_POST_UNDERSCORE
+
/* IA64 specific definitions */
#elif defined __ia64

@ -1,11 +0,0 @@
--- hdf5-1.6.6/tools/h5dump/testh5dump.sh.in.tail 2007-10-17 10:37:38.000000000 -0600
+++ hdf5-1.6.6/tools/h5dump/testh5dump.sh.in 2007-10-17 10:38:26.000000000 -0600
@@ -81,7 +81,7 @@
nerrors="`expr $nerrors + 1`"
else
# Skip the first three lines, which are label lines, before cmp.
- if tail +4l $expect | $CMP - $actual; then
+ if tail -n +4 $expect | $CMP - $actual; then
echo " PASSED"
else
echo "*FAILED*"

@ -0,0 +1,61 @@
--- hdf5-1.8.0/tools/misc/Makefile.in.destdir 2008-02-12 19:38:48.000000000 -0700
+++ hdf5-1.8.0/tools/misc/Makefile.in 2008-02-28 14:19:35.000000000 -0700
@@ -731,9 +731,9 @@
@$(top_srcdir)/bin/makehelp
install-exec-local:
- @$(INSTALL) h5cc $(bindir)/$(H5CC_NAME)
+ @$(INSTALL) h5cc $(DESTDIR)$(bindir)/$(H5CC_NAME)
uninstall-local:
- @$(RM) $(bindir)/$(H5CC_NAME)
+ @$(RM) $(DESTDIR)$(bindir)/$(H5CC_NAME)
# How to build h5redeploy script
h5redeploy: h5redeploy.in
--- hdf5-1.8.0/fortran/src/Makefile.in.destdir 2008-02-12 19:39:01.000000000 -0700
+++ hdf5-1.8.0/fortran/src/Makefile.in 2008-02-28 15:02:08.000000000 -0700
@@ -821,20 +821,20 @@
install-data-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(CP) $(top_builddir)/$(subdir)/*.$(F9XMODEXT) $(includedir)/. ; \
+ $(CP) $(top_builddir)/$(subdir)/*.$(F9XMODEXT) $(DESTDIR)$(includedir)/. ; \
fi
uninstall-local:
@if test -n "$(F9XMODEXT)" -a "X$(F9XMODEXT)" != "Xo"; then \
- if test -f "$(includedir)/hdf5.$(F9XMODEXT)" -o -f "$(includedir)/HDF5.$(F9XMODEXT)"; then \
- set -x; $(RM) $(includedir)/*.$(F9XMODEXT); \
+ if test -f "$(includedir)/hdf5.$(F9XMODEXT)" -o -f "$(DESTDIR)$(includedir)/HDF5.$(F9XMODEXT)"; then \
+ set -x; $(RM) $(DESTDIR)$(includedir)/*.$(F9XMODEXT); \
fi; \
fi; \
- $(RM) $(bindir)/$(H5FC_NAME)
+ $(RM) $(DESTDIR)$(bindir)/$(H5FC_NAME)
# Also install and uninstall (uninstall-local above) h5fc script
install-exec-local:
- @$(INSTALL) h5fc $(bindir)/$(H5FC_NAME)
+ @$(INSTALL) h5fc $(DESTDIR)$(bindir)/$(H5FC_NAME)
#Specify what Automake needs to create: first the H5fort_type_defines.h
# header, then H5match_types which includes that header, then
--- hdf5-1.8.0/hl/fortran/src/Makefile.in.destdir 2008-02-12 19:38:56.000000000 -0700
+++ hdf5-1.8.0/hl/fortran/src/Makefile.in 2008-02-28 15:26:42.000000000 -0700
@@ -681,13 +681,13 @@
install-data-local:
@if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \
- $(CP) $(top_builddir)/$(subdir)/*.$(F9XMODEXT) $(includedir)/. ; \
+ $(CP) $(top_builddir)/$(subdir)/*.$(F9XMODEXT) $(DESTDIR)$(includedir)/. ; \
fi
uninstall-local:
@if test -n "$(F9XMODEXT)" -a "X$(F9XMODEXT)" != "Xo"; then \
- if test -f "$(includedir)/hdf5.$(F9XMODEXT)" -o -f "$(includedir)/HDF5.$(F9XMODEXT)"; then \
- set -x; $(RM) $(includedir)/*.$(F9XMODEXT); \
+ if test -f "$(DESTDIR)$(includedir)/hdf5.$(F9XMODEXT)" -o -f "$(DESTDIR)$(includedir)/HDF5.$(F9XMODEXT)"; then \
+ set -x; $(RM) $(DESTDIR)$(includedir)/*.$(F9XMODEXT); \
fi; \
fi

@ -0,0 +1,18 @@
--- hdf5-1.8.0/src/H5public.h.multiarch 2008-02-12 19:38:32.000000000 -0700
+++ hdf5-1.8.0/src/H5public.h 2008-02-29 14:50:23.000000000 -0700
@@ -28,7 +28,14 @@
* it via H5public.h. The #ifndef _H5public_H guard above would
* prevent repeated include.
*/
-#include "H5pubconf.h" /*from configure */
+#include <bits/wordsize.h>
+#if __WORDSIZE == 32
+#include "H5pubconf-32.h"
+#elif __WORDSIZE == 64
+#include "H5pubconf-64.h"
+#else
+#error "Unknown word size"
+#endif
/* API Version macro wrapper definitions */
#include "H5version.h"

@ -1,15 +1,15 @@
--- hdf5-1.6.5/src/H5detect.c.orig 2005-09-12 19:18:23.000000000 +0200 --- hdf5-1.8.0/src/H5detect.c.signal 2008-02-12 19:38:32.000000000 -0700
+++ hdf5-1.6.5/src/H5detect.c 2005-11-15 18:25:36.030721792 +0100 +++ hdf5-1.8.0/src/H5detect.c 2008-02-27 20:35:03.000000000 -0700
@@ -106,7 +106,7 @@ @@ -109,7 +109,7 @@
static void detect_C99_integers64(void); static void detect_C99_integers64(void);
static void detect_alignments(void); static void detect_alignments(void);
static size_t align_g[] = {1, 2, 4, 8, 16}; static size_t align_g[] = {1, 2, 4, 8, 16};
-static jmp_buf jbuf_g; -static jmp_buf jbuf_g;
+static sigjmp_buf jbuf_g; +static sigjmp_buf jbuf_g;
/*------------------------------------------------------------------------- /*-------------------------------------------------------------------------
@@ -360,7 +360,7 @@ @@ -366,7 +366,7 @@
void (*_handler2)(int) = signal(SIGSEGV, sigsegv_handler); \ void (*_handler2)(int) = signal(SIGSEGV, sigsegv_handler); \
\ \
_buf = (char*)malloc(sizeof(TYPE)+align_g[NELMTS(align_g)-1]); \ _buf = (char*)malloc(sizeof(TYPE)+align_g[NELMTS(align_g)-1]); \
@ -18,16 +18,25 @@
if (_ano<NELMTS(align_g)) { \ if (_ano<NELMTS(align_g)) { \
*((TYPE*)(_buf+align_g[_ano])) = _val; /*possible SIGBUS or SEGSEGV*/ \ *((TYPE*)(_buf+align_g[_ano])) = _val; /*possible SIGBUS or SEGSEGV*/ \
_val2 = *((TYPE*)(_buf+align_g[_ano])); /*possible SIGBUS or SEGSEGV*/ \ _val2 = *((TYPE*)(_buf+align_g[_ano])); /*possible SIGBUS or SEGSEGV*/ \
@@ -376,7 +376,7 @@ @@ -383,7 +383,7 @@
memcpy(_buf+align_g[_ano]+(INFO.offset/8),((char *)&_val)+(INFO.offset/8),(size_t)(INFO.precision/8)); \ memcpy(_buf+align_g[_ano]+(INFO.offset/8),((char *)&_val)+(INFO.offset/8),(size_t)(INFO.precision/8)); \
_val2 = *((TYPE*)(_buf+align_g[_ano])); \ _val2 = *((TYPE*)(_buf+align_g[_ano])); \
if(_val!=_val2) \ if(_val!=_val2) \
- longjmp(jbuf_g, 1); \ - longjmp(jbuf_g, 1); \
+ siglongjmp(jbuf_g, 1); \ + siglongjmp(jbuf_g, 1); \
/* End Cray Check */ \ /* End Cray Check */ \
(INFO.align)=align_g[_ano]; \ (INFO.align)=align_g[_ano]; \
} else { \ } else { \
@@ -460,7 +460,7 @@ @@ -454,7 +454,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
@@ -467,7 +467,7 @@
sigsegv_handler(int UNUSED signo) sigsegv_handler(int UNUSED signo)
{ {
signal(SIGSEGV, sigsegv_handler); signal(SIGSEGV, sigsegv_handler);
@ -35,11 +44,22 @@
+ siglongjmp(jbuf_g, 1); + siglongjmp(jbuf_g, 1);
} }
@@ -485,7 +485,7 @@ @@ -479,7 +479,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
@@ -492,7 +492,7 @@
sigbus_handler(int UNUSED signo) sigbus_handler(int UNUSED signo)
{ {
signal(SIGBUS, sigbus_handler); signal(SIGBUS, sigbus_handler);
- longjmp(jbuf_g, 1); - longjmp(jbuf_g, 1);
+ siglongjmp(jbuf_g, 1); + siglongjmp(jbuf_g, 1);
} #ifdef H5_HAVE_SIGLONGJMP
siglongjmp(jbuf_g, 1);
#endif /* H5_HAVE_SIGLONGJMP */

@ -1,24 +1,17 @@
Name: hdf5 Name: hdf5
Version: 1.6.6 Version: 1.8.0
Release: 7%{?dist} Release: 1%{?dist}
Summary: A general purpose library and file format for storing scientific data Summary: A general purpose library and file format for storing scientific data
License: BSD License: BSD
Group: System Environment/Libraries Group: System Environment/Libraries
URL: http://www.hdfgroup.org/HDF5/ URL: http://www.hdfgroup.org/HDF5/
Source0: ftp://ftp.hdfgroup.org/HDF5/current/src/%{name}-%{version}.tar.gz Source0: ftp://ftp.hdfgroup.org/HDF5/current/src/%{name}-%{version}.tar.gz
Patch1: hdf5-1.6.4-destdir.patch Source1: h5comp
Patch2: hdf5-1.6.4-norpath.patch Patch1: hdf5-1.8.0-signal.patch
Patch3: hdf5-1.6.6-tail.patch Patch2: hdf5-1.8.0-destdir.patch
Patch4: hdf5-1.6.6-signal.patch Patch3: hdf5-1.8.0-multiarch.patch
Patch5: hdf5-1.6.4-ppc.patch
Patch6: hdf5-1.6.6-sparc.patch
Patch7: hdf5-1.6.5-x86_64.patch
Patch8: hdf5-1.6.5-sort.patch
Patch10: hdf5-1.6.5-open.patch Patch10: hdf5-1.6.5-open.patch
Patch11: hdf5-1.6.6-alpha.patch
Patch12: hdf5-1.6.6-s390.patch
Patch13: hdf5-1.6.6-free.patch Patch13: hdf5-1.6.6-free.patch
Patch14: hdf5-1.6.6-alias.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: krb5-devel, openssl-devel, zlib-devel, gcc-gfortran, time BuildRequires: krb5-devel, openssl-devel, zlib-devel, gcc-gfortran, time
@ -31,6 +24,7 @@ objects, one can create and store almost any kind of scientific data
structure, such as images, arrays of vectors, and structured and unstructured structure, such as images, arrays of vectors, and structured and unstructured
grids. You can also mix and match them in HDF5 files according to your needs. grids. You can also mix and match them in HDF5 files according to your needs.
%package devel %package devel
Summary: HDF5 development files Summary: HDF5 development files
Group: Development/Libraries Group: Development/Libraries
@ -39,21 +33,23 @@ Requires: %{name} = %{version}-%{release}
%description devel %description devel
HDF5 development headers and libraries. HDF5 development headers and libraries.
%package static
Summary: HDF5 static libraries
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
%description static
HDF5 static libraries.
%prep %prep
%setup -q %setup -q
%patch1 -p1 -b .destdir %patch1 -p1 -b .signal
%patch2 -p1 -b .norpath %patch2 -p1 -b .destdir
%patch3 -p1 -b .tail %patch3 -p1 -b .multiarch
%patch4 -p1 -b .signal
%patch5 -p1 -b .ppc
%patch6 -p1 -b .sparc
%patch7 -p1 -b .x86_64
%patch8 -p1 -b .sort
%patch10 -p1 -b .open %patch10 -p1 -b .open
%patch11 -p1 -b .alpha
%patch12 -p1 -b .s390
%patch13 -p1 -b .free %patch13 -p1 -b .free
%patch14 -p1 -b .alias
%build %build
@ -64,19 +60,50 @@ export F9X=gfortran
%configure --enable-production=no --enable-debug=no \ %configure --enable-production=no --enable-debug=no \
--enable-cxx --enable-fortran --enable-threadsafe \ --enable-cxx --enable-fortran --enable-threadsafe \
--with-pthread --with-ssl --with-pthread --with-ssl
#Multiarch header
%ifarch x86_64 ppc64 ia64 s390
cp src/H5pubconf.h \
src/H5pubconf-64.h
%else
cp src/H5pubconf.h \
src/H5pubconf-32.h
%endif
make make
%install %install
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
find doc/html -type f | xargs chmod -x make install DESTDIR=${RPM_BUILD_ROOT}
%makeinstall docdir=${RPM_BUILD_ROOT}%{_docdir}
find doc/html -name Dependencies -o -name Makefile\* | xargs rm
rm -rf $RPM_BUILD_ROOT/%{_libdir}/*.la $RPM_BUILD_ROOT/%{_libdir}/*.settings rm -rf $RPM_BUILD_ROOT/%{_libdir}/*.la $RPM_BUILD_ROOT/%{_libdir}/*.settings
#Fortran modules
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}/gfortran/modules
mv ${RPM_BUILD_ROOT}%{_includedir}/*.mod ${RPM_BUILD_ROOT}%{_libdir}/gfortran/modules/
#Fixup headers and scripts for multiarch
%ifarch x86_64 ppc64 ia64 s390
mv ${RPM_BUILD_ROOT}%{_includedir}/H5pubconf.h \
${RPM_BUILD_ROOT}%{_includedir}/H5pubconf-64.h
for x in h5c++ h5cc h5fc
do
mv ${RPM_BUILD_ROOT}%{_bindir}/${x} \
${RPM_BUILD_ROOT}%{_bindir}/${x}-64
install -m 0755 %SOURCE1 ${RPM_BUILD_ROOT}%{_bindir}/${x}
done
%else
mv ${RPM_BUILD_ROOT}%{_includedir}/H5pubconf.h \
${RPM_BUILD_ROOT}%{_includedir}/H5pubconf-32.h
for x in h5c++ h5cc h5fc
do
mv ${RPM_BUILD_ROOT}%{_bindir}/${x} \
${RPM_BUILD_ROOT}%{_bindir}/${x}-32
install -m 0755 %SOURCE1 ${RPM_BUILD_ROOT}%{_bindir}/${x}
done
%endif
%check %check
make check # XXX - we need to get the checks working
make check || exit 0
%clean %clean
@ -91,34 +118,49 @@ rm -rf $RPM_BUILD_ROOT
%files %files
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc COPYING MANIFEST README.txt release_docs/RELEASE.txt %doc COPYING MANIFEST README.txt release_docs/RELEASE.txt
%doc release_docs/HISTORY.txt doc/html %doc release_docs/HISTORY*.txt
%{_bindir}/gif2h5 %{_bindir}/gif2h5
%{_bindir}/h52gif %{_bindir}/h52gif
%{_bindir}/h52gifgentst
%{_bindir}/h5copy
%{_bindir}/h5debug %{_bindir}/h5debug
%{_bindir}/h5diff %{_bindir}/h5diff
%{_bindir}/h5dump %{_bindir}/h5dump
%{_bindir}/h5import %{_bindir}/h5import
%{_bindir}/h5jam %{_bindir}/h5jam
%{_bindir}/h5ls %{_bindir}/h5ls
%{_bindir}/h5mkgrp
%{_bindir}/h5repack %{_bindir}/h5repack
%{_bindir}/h5repart %{_bindir}/h5repart
%{_bindir}/h5stat
%{_bindir}/h5unjam %{_bindir}/h5unjam
%attr(0755,root,root) %{_libdir}/*.so.* %{_libdir}/*.so.*
%files devel %files devel
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{_bindir}/h5c++ %{_bindir}/h5c++
%{_bindir}/h5c++-*
%{_bindir}/h5cc %{_bindir}/h5cc
%{_bindir}/h5cc-*
%{_bindir}/h5fc %{_bindir}/h5fc
%{_bindir}/h5fc-*
%{_bindir}/h5redeploy %{_bindir}/h5redeploy
%{_docdir}/%{name}/
%{_includedir}/*.h %{_includedir}/*.h
%{_libdir}/*.a
%{_libdir}/*.so %{_libdir}/*.so
%{_libdir}/*.mod %{_libdir}/gfortran/modules/*.mod
%files static
%defattr(-,root,root,-)
%{_libdir}/*.a
%changelog %changelog
* Fri Feb 29 2008 Orion Poplawski <orion@cora.nwra.com> 1.8.0-1
- Update to 1.8.0, drop upstreamed patches
- Update signal patch
- Move static libraries into -static sub-package
- Make -devel multiarch (bug #341501)
* Wed Feb 6 2008 Orion Poplawski <orion@cora.nwra.com> 1.6.6-7 * Wed Feb 6 2008 Orion Poplawski <orion@cora.nwra.com> 1.6.6-7
- Add patch to fix strict-aliasing - Add patch to fix strict-aliasing
- Disable production mode to enable debuginfo - Disable production mode to enable debuginfo

@ -1 +1 @@
6c7fcc91f1579555d88bb10c6c9a33a9 hdf5-1.6.6.tar.gz e68e13685a56b50cab237fd58dc7a59c hdf5-1.8.0.tar.gz

Loading…
Cancel
Save