From 5daaa9f0169be1ed771c34291da7e147c7e1e28c31999214daa7e643ed526b02 Mon Sep 17 00:00:00 2001 From: Dirk Stoecker Date: Fri, 21 Sep 2018 19:26:10 +0000 Subject: [PATCH] Accepting request 637096 from home:StefanBruens:branches:science Main reason to update is the addition/enhancement of H5Pset_libver_bounds(): "Added an enumerated value to H5F_libver_t for H5Pset_libver_bounds()." - https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.2/src/hdf5-1.10.2-RELEASE.txt This allows to write backwards compatible files with newer hdf5 versions, although this is "opt-in" by the library users. See e.g. https://github.com/Unidata/netcdf-c/issues/250, https://github.com/Unidata/netcdf-c/issues/951 - Update to 1.10.3: https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.3/src/hdf5-1.10.3-RELEASE.txt - Update to 1.10.2: https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.2/src/hdf5-1.10.2-RELEASE.txt - Bump soversions (101 -> 103) for libhdf5 and libhdf5_cpp - Drop Fix-warnings-for-missing-returns.patch, fixed upstream - Add 0001-Fix-return-value-in-test_libver_bounds_open.patch - Rebase patches (tab / space conversion): * PPC64LE-Fix-long-double-handling.patch * hdf5-buildcompare.patch * hdf5-mpi.patch - Rebase Disable-phdf5-tests.patch OBS-URL: https://build.opensuse.org/request/show/637096 OBS-URL: https://build.opensuse.org/package/show/science/hdf5?expand=0&rev=82 --- ...urn-value-in-test_libver_bounds_open.patch | 26 ++++ Disable-phdf5-tests.patch | 16 +-- Fix-warnings-for-missing-returns.patch | 118 ------------------ PPC64LE-Fix-long-double-handling.patch | 12 +- hdf5-1.10.1.tar.bz2 | 3 - hdf5-1.10.3.tar.bz2 | 3 + hdf5-buildcompare.patch | 18 +-- hdf5-mpi.patch | 6 +- hdf5.changes | 16 +++ hdf5.spec | 14 +-- 10 files changed, 78 insertions(+), 154 deletions(-) create mode 100644 0001-Fix-return-value-in-test_libver_bounds_open.patch delete mode 100644 Fix-warnings-for-missing-returns.patch delete mode 100644 hdf5-1.10.1.tar.bz2 create mode 100644 hdf5-1.10.3.tar.bz2 diff --git a/0001-Fix-return-value-in-test_libver_bounds_open.patch b/0001-Fix-return-value-in-test_libver_bounds_open.patch new file mode 100644 index 0000000..f73c5b1 --- /dev/null +++ b/0001-Fix-return-value-in-test_libver_bounds_open.patch @@ -0,0 +1,26 @@ +From b24bae35dcd2733e7339f87da0f2681ee06439a8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Stefan=20Br=C3=BCns?= +Date: Thu, 20 Sep 2018 20:36:13 +0200 +Subject: [PATCH] Fix return value in test_libver_bounds_open + +A return value is neither returned nor expected. +--- + test/tfile.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/tfile.c b/test/tfile.c +index ad7f87f..d3134f8 100644 +--- a/test/tfile.c ++++ b/test/tfile.c +@@ -4967,7 +4967,7 @@ test_libver_bounds_real(H5F_libver_t libver_create, unsigned oh_vers_create, + #define VERBFNAME "tverbounds_dspace.h5" + #define VERBDSNAME "dataset 1" + #define SPACE1_DIM1 3 +-static int ++static void + test_libver_bounds_open(void) + { + hid_t file = -1; /* File ID */ +-- +2.19.0 + diff --git a/Disable-phdf5-tests.patch b/Disable-phdf5-tests.patch index c9ebfed..143657d 100644 --- a/Disable-phdf5-tests.patch +++ b/Disable-phdf5-tests.patch @@ -19,11 +19,11 @@ index 6e2b05e..75a65ab 100644 ############################################################################## ############################################################################## --add_test (NAME TEST_PAR_testphdf5 COMMAND ${MPIEXEC} ${MPIEXEC_PREFLAGS} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_POSTFLAGS} $) -+## add_test (NAME TEST_PAR_testphdf5 COMMAND ${MPIEXEC} ${MPIEXEC_PREFLAGS} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_POSTFLAGS} $) +-add_test (NAME TEST_PAR_testphdf5 COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_PREFLAGS} $ ${MPIEXEC_POSTFLAGS}) ++## add_test (NAME TEST_PAR_testphdf5 COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_PREFLAGS} $ ${MPIEXEC_POSTFLAGS}) foreach (testp ${H5P_TESTS}) - add_test (NAME TEST_PAR_${testp} COMMAND ${MPIEXEC} ${MPIEXEC_PREFLAGS} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_POSTFLAGS} $) + add_test (NAME TEST_PAR_${testp} COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPIEXEC_MAX_NUMPROCS} ${MPIEXEC_PREFLAGS} $ ${MPIEXEC_POSTFLAGS}) diff --git a/testpar/Makefile.am b/testpar/Makefile.am index b87c1df..27af0df 100644 --- a/testpar/Makefile.am @@ -32,8 +32,8 @@ index b87c1df..27af0df 100644 # Test programs. These are our main targets. # --TEST_PROG_PARA=t_mpi testphdf5 t_cache t_cache_image t_pflush1 t_pflush2 t_pshutdown t_prestart t_init_term t_shapesame -+TEST_PROG_PARA=t_mpi t_cache t_cache_image t_pflush1 t_pflush2 t_pshutdown t_prestart t_init_term t_shapesame +-TEST_PROG_PARA=t_mpi t_bigio testphdf5 t_cache t_cache_image t_pflush1 t_pflush2 t_pread t_pshutdown t_prestart t_init_term t_shapesame t_filters_parallel ++TEST_PROG_PARA=t_mpi t_bigio t_cache t_cache_image t_pflush1 t_pflush2 t_pread t_pshutdown t_prestart t_init_term t_shapesame t_filters_parallel check_PROGRAMS = $(TEST_PROG_PARA) @@ -41,12 +41,12 @@ diff --git a/testpar/Makefile.in b/testpar/Makefile.in index ed26624..2f4bbe2 100644 --- a/testpar/Makefile.in +++ b/testpar/Makefile.in -@@ -778,7 +778,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2 MPItest.h5 \ +@@ -799,7 +799,7 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2 MPItest.h5 \ # Test programs. These are our main targets. # --TEST_PROG_PARA = t_mpi testphdf5 t_cache t_cache_image t_pflush1 t_pflush2 t_pshutdown t_prestart t_init_term t_shapesame -+TEST_PROG_PARA = t_mpi t_cache t_cache_image t_pflush1 t_pflush2 t_pshutdown t_prestart t_init_term t_shapesame +-TEST_PROG_PARA = t_mpi t_bigio testphdf5 t_cache t_cache_image t_pflush1 t_pflush2 t_pread t_pshutdown t_prestart t_init_term t_shapesame t_filters_parallel ++TEST_PROG_PARA = t_mpi t_bigio t_cache t_cache_image t_pflush1 t_pflush2 t_pread t_pshutdown t_prestart t_init_term t_shapesame t_filters_parallel testphdf5_SOURCES = testphdf5.c t_dset.c t_file.c t_file_image.c t_mdset.c \ t_ph5basic.c t_coll_chunk.c t_span_tree.c t_chunk_alloc.c t_filter_read.c \ t_prop.c diff --git a/Fix-warnings-for-missing-returns.patch b/Fix-warnings-for-missing-returns.patch deleted file mode 100644 index 847baea..0000000 --- a/Fix-warnings-for-missing-returns.patch +++ /dev/null @@ -1,118 +0,0 @@ -From: Egbert Eich -Date: Tue Nov 7 12:56:49 2017 +0100 -Subject: [PATCH]Fix warnings for missing returns -Git-commit: 3204e3b0f578906edd85bb95b0bbc9818490e2d0 -References: -Signed-off-by: Egbert Eich - -Signed-off-by: Egbert Eich ---- - c++/src/H5Location.cpp | 1 + - test/dt_arith.c | 1 + - test/filter_fail.c | 1 + - tools/src/h5copy/h5copy.c | 2 +- - tools/src/h5dump/h5dump.c | 2 +- - tools/src/h5ls/h5ls.c | 2 +- - tools/src/h5stat/h5stat.c | 2 +- - tools/src/misc/h5mkgrp.c | 2 +- - 8 files changed, 8 insertions(+), 5 deletions(-) - -diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp -index b2fa75d..a3fe206 100644 ---- a/c++/src/H5Location.cpp -+++ b/c++/src/H5Location.cpp -@@ -95,6 +95,7 @@ bool H5Location::exists(const char* name, const LinkAccPropList& lapl) const - { - throwException("exists", "H5Lexists failed"); - } -+ return false; - } - - //-------------------------------------------------------------------------- -diff --git a/test/dt_arith.c b/test/dt_arith.c -index c7f2986..8f3e6e4 100644 ---- a/test/dt_arith.c -+++ b/test/dt_arith.c -@@ -3384,6 +3384,7 @@ error: - else if(run_test==TEST_DENORM || run_test==TEST_SPECIAL) - return 1; - #endif -+ return 1; - } - - -diff --git a/test/filter_fail.c b/test/filter_fail.c -index 76b3106..cda9d50 100644 ---- a/test/filter_fail.c -+++ b/test/filter_fail.c -@@ -406,4 +406,5 @@ error: - nerrors, 1==nerrors?"":"S"); - HDexit(EXIT_FAILURE); - } -+ return 1; - } -diff --git a/tools/src/h5copy/h5copy.c b/tools/src/h5copy/h5copy.c -index 390b93e..506c24e 100644 ---- a/tools/src/h5copy/h5copy.c -+++ b/tools/src/h5copy/h5copy.c -@@ -55,7 +55,7 @@ char *str_flag = NULL; - * - *------------------------------------------------------------------------- - */ --static void -+static void __attribute__((__noreturn__)) - leave(int ret) - { - if (fname_src) -diff --git a/tools/src/h5dump/h5dump.c b/tools/src/h5dump/h5dump.c -index b53c212..747147b 100644 ---- a/tools/src/h5dump/h5dump.c -+++ b/tools/src/h5dump/h5dump.c -@@ -208,7 +208,7 @@ static struct long_options l_opts[] = { - * - *------------------------------------------------------------------------- - */ --static void -+static void __attribute__((__noreturn__)) - leave(int ret) - { - h5tools_close(); -diff --git a/tools/src/h5ls/h5ls.c b/tools/src/h5ls/h5ls.c -index 8e28d82..c1f1cba 100644 ---- a/tools/src/h5ls/h5ls.c -+++ b/tools/src/h5ls/h5ls.c -@@ -2564,7 +2564,7 @@ out: - * - *------------------------------------------------------------------------- - */ --static void -+static void __attribute__((__noreturn__)) - leave(int ret) - { - h5tools_close(); -diff --git a/tools/src/h5stat/h5stat.c b/tools/src/h5stat/h5stat.c -index 6aee7a8..b14a975 100644 ---- a/tools/src/h5stat/h5stat.c -+++ b/tools/src/h5stat/h5stat.c -@@ -250,7 +250,7 @@ static struct long_options l_opts[] = { - { NULL, 0, '\0' } - }; - --static void -+static void __attribute__((__noreturn__)) - leave(int ret) - { - h5tools_close(); -diff --git a/tools/src/misc/h5mkgrp.c b/tools/src/misc/h5mkgrp.c -index 597b6b3..15caff6 100644 ---- a/tools/src/misc/h5mkgrp.c -+++ b/tools/src/misc/h5mkgrp.c -@@ -58,7 +58,7 @@ param_t params; /* Command line parameter settings */ - * - *------------------------------------------------------------------------- - */ --static void -+static void __attribute__((__noreturn__)) - leave(int ret) - { - size_t curr_group; diff --git a/PPC64LE-Fix-long-double-handling.patch b/PPC64LE-Fix-long-double-handling.patch index 41c5274..2044e17 100644 --- a/PPC64LE-Fix-long-double-handling.patch +++ b/PPC64LE-Fix-long-double-handling.patch @@ -15,7 +15,7 @@ diff --git a/hdf5-1.10.1/config/cmake/ConversionTests.c b/hdf5-1.10.1/config/cma index 082dbd4..9618a14 100644 --- a/config/cmake/ConversionTests.c +++ b/config/cmake/ConversionTests.c -@@ -23,6 +23,14 @@ int main(void) +@@ -34,6 +34,14 @@ int main(void) unsigned char s2[8]; int ret = 1; @@ -28,9 +28,9 @@ index 082dbd4..9618a14 100644 +#endif + if(sizeof(long double) == 16 && sizeof(long) == 8) { - /*make sure the long double type has 16 bytes in size and - * 11 bits of exponent. If it is, -@@ -146,6 +154,14 @@ int main(void) + /*make sure the long double type has 16 bytes in size and + * 11 bits of exponent. If it is, +@@ -157,6 +165,14 @@ int main(void) unsigned char s[16]; int ret = 0; @@ -59,7 +59,7 @@ index 8f3e6e4..084b47c 100644 + /* This happens for IBM long double in little endian. + The macro LDBL_MANT_DIG says 106 mantissa bits, but the + HDF5 detection code actually represents it as a normal 64bit -+ double (52 bit mantissa) with the upper double being ++ double (52 bit mantissa) with the upper double being + unspec bits (which is sort of okay as the testsuite + wouldn't deal with that format correctly anyway). So + override the mantissa size. */ @@ -79,7 +79,7 @@ index 8f3e6e4..084b47c 100644 + /* This happens for IBM long double in little endian. + The macro LDBL_MANT_DIG says 106 mantissa bits, but the + HDF5 detection code actually represents it as a normal 64bit -+ double (52 bit mantissa) with the upper double being ++ double (52 bit mantissa) with the upper double being + unspec bits (which is sort of okay as the testsuite + wouldn't deal with that format correctly anyway). So + override the mantissa size. */ diff --git a/hdf5-1.10.1.tar.bz2 b/hdf5-1.10.1.tar.bz2 deleted file mode 100644 index 078f33a..0000000 --- a/hdf5-1.10.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c5ce1e33d2463fb1a42dd04daacbc22104e57676e2204e3d66b1ef54b88ebf2 -size 11769617 diff --git a/hdf5-1.10.3.tar.bz2 b/hdf5-1.10.3.tar.bz2 new file mode 100644 index 0000000..ad1fbcd --- /dev/null +++ b/hdf5-1.10.3.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c65cdcce4724a57fd3f8da9f0d109b497be30092acb9fac634d1291190d905a9 +size 8591338 diff --git a/hdf5-buildcompare.patch b/hdf5-buildcompare.patch index fd41797..720c68d 100644 --- a/hdf5-buildcompare.patch +++ b/hdf5-buildcompare.patch @@ -9,23 +9,23 @@ Index: hdf5-1.10.0-patch1/src/H5detect.c +++ hdf5-1.10.0-patch1/src/H5detect.c @@ -1311,18 +1311,6 @@ bit.\n"; printf("/* Generated automatically by H5detect -- do not edit */\n\n\n"); - HDputs(FileHeader); /*the copyright notice--see top of this file */ + HDputs(FileHeader); /*the copyright notice--see top of this file */ - printf(" *\n * Created:\t\t%s %2d, %4d\n", -- month_name[tm->tm_mon], tm->tm_mday, 1900 + tm->tm_year); +- month_name[tm->tm_mon], tm->tm_mday, 1900 + tm->tm_year); - if (pwd || real_name[0] || host_name[0]) { -- printf(" *\t\t\t"); -- if (real_name[0]) printf("%s <", real_name); +- printf(" *\t\t\t"); +- if (real_name[0]) printf("%s <", real_name); -#ifdef H5_HAVE_GETPWUID -- if (pwd) HDfputs(pwd->pw_name, stdout); +- if (pwd) HDfputs(pwd->pw_name, stdout); -#endif -- if (host_name[0]) printf("@%s", host_name); -- if (real_name[0]) printf(">"); -- HDputchar('\n'); +- if (host_name[0]) printf("@%s", host_name); +- if (real_name[0]) printf(">"); +- HDputchar('\n'); - } printf(" *\n * Purpose:\t\t"); for (s = purpose; *s; s++) { - HDputchar(*s); + HDputchar(*s); Index: hdf5-1.10.0-patch1/src/libhdf5.settings.in =================================================================== --- hdf5-1.10.0-patch1.orig/src/libhdf5.settings.in diff --git a/hdf5-mpi.patch b/hdf5-mpi.patch index 19c140a..2d0faf4 100644 --- a/hdf5-mpi.patch +++ b/hdf5-mpi.patch @@ -8,10 +8,10 @@ diff -up hdf5-1.8.16/testpar/t_pflush1.c.mpi hdf5-1.8.16/testpar/t_pflush1.c +#if 0 /* close file1 */ if(H5Fget_vfd_handle(file1, fapl, (void **)&mpifh_p) < 0) { - printf("H5Fget_vfd_handle for file1 failed\n"); + printf("H5Fget_vfd_handle for file1 failed\n"); @@ -189,14 +190,17 @@ main(int argc, char* argv[]) - printf("MPI_File_close for file2 failed\n"); - goto error; + printf("MPI_File_close for file2 failed\n"); + goto error; } /* end if */ +#endif diff --git a/hdf5.changes b/hdf5.changes index a71558f..b6bf070 100644 --- a/hdf5.changes +++ b/hdf5.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Fri Sep 21 14:50:12 UTC 2018 - Stefan BrĂ¼ns + +- Update to 1.10.3: + https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.3/src/hdf5-1.10.3-RELEASE.txt +- Update to 1.10.2: + https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.2/src/hdf5-1.10.2-RELEASE.txt +- Bump soversions (101 -> 103) for libhdf5 and libhdf5_cpp +- Drop Fix-warnings-for-missing-returns.patch, fixed upstream +- Add 0001-Fix-return-value-in-test_libver_bounds_open.patch +- Rebase patches (tab / space conversion): + * PPC64LE-Fix-long-double-handling.patch + * hdf5-buildcompare.patch + * hdf5-mpi.patch +- Rebase Disable-phdf5-tests.patch + ------------------------------------------------------------------- Tue Jun 19 06:15:06 UTC 2018 - eich@suse.com diff --git a/hdf5.spec b/hdf5.spec index e49b2c8..3379613 100644 --- a/hdf5.spec +++ b/hdf5.spec @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -28,8 +28,8 @@ %define _do_check 1 %define use_sz2 0 -%define vers 1.10.1 -%define _vers 1_10_1 +%define vers 1.10.3 +%define _vers 1_10_3 %define short_ver 1.10 %define src_ver %{version} %define pname hdf5 @@ -193,8 +193,8 @@ ExclusiveArch: do_not_build # TODO: The so numbers autodetected by update_so_version.sh # do not match the so numbers that are actually built. -%define sonum 101 -%define sonum_CXX 101 +%define sonum 103 +%define sonum_CXX 103 %define sonum_F 100 %define sonum_HL 100 %define sonum_HL_CXX 100 @@ -211,7 +211,6 @@ Source0: http://www.hdfgroup.org/ftp/HDF5/releases/%{pname}-%{short_ver}/ Source100: _multibuild Source1000: update_so_version.sh Patch0: hdf5-LD_LIBRARY_PATH.patch -Patch1: Fix-warnings-for-missing-returns.patch # not really needed but we want to get noticed if hdf5 doesn' t know our host Patch2: hdf5-1.8.11-abort_unknown_host_config.patch %ifarch %arm @@ -221,6 +220,7 @@ Patch5: PPC64LE-Fix-long-double-handling.patch Patch6: hdf5-buildcompare.patch Patch7: hdf5-mpi.patch Patch8: Disable-phdf5-tests.patch +Patch9: 0001-Fix-return-value-in-test_libver_bounds_open.patch BuildRequires: fdupes %if 0%{?use_sz2} BuildRequires: libsz2-devel @@ -441,7 +441,6 @@ library packages. %{?with_hpc: %hpc_debug} %setup -q -n %{pname}-%{version} %patch0 -p1 -b .LD_LIBRARY_PATH -%patch1 -p1 %patch2 -p0 -b .abort_unknown_host_config %ifarch %arm %patch4 -p0 -b .tests-arm @@ -450,6 +449,7 @@ library packages. %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 %if %{without hpc} # baselibs looks different for different flavors - generate it on the fly