From c8f533cfc33ac743227cbed8eba361c715a2976f Mon Sep 17 00:00:00 2001 From: David Young Date: Mon, 9 Dec 2019 10:30:58 -0600 Subject: Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1, including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and I share. Now I need to put this branch on a fork with a less confusing name than vchoi_fork! --- CMakeFilters.cmake | 8 + CMakeInstallation.cmake | 26 +- CMakeLists.txt | 149 +- COPYING | 32 +- CTestConfig.cmake | 6 +- MANIFEST | 267 +- Makefile.am | 34 +- README.txt | 2 +- bin/Makefile.am | 57 + bin/batch/ctest.qsub.in.cmake | 21 + bin/batch/ctestP.lsf.in.cmake | 19 + bin/batch/ctestP.sl.in.cmake | 14 + bin/batch/ctestS.lsf.in.cmake | 18 + bin/batch/ctestS.sl.in.cmake | 15 + bin/batch/knl_H5detect.sl.in.cmake | 20 + bin/batch/knl_ctestP.sl.in.cmake | 16 + bin/batch/knl_ctestS.sl.in.cmake | 17 + bin/batch/ray_ctestP.lsf.in.cmake | 20 + bin/batch/ray_ctestS.lsf.in.cmake | 18 + bin/batch/raybsub | 7 + bin/checkposix | 244 +- bin/genparser | 2 +- bin/h5cc.in | 399 + bin/h5redeploy.in | 216 + bin/h5vers | 6 +- bin/make_vers | 4 +- bin/makehelp | 1 + bin/release | 110 +- bin/snapshot | 21 +- bin/trace | 34 +- bin/warnhist | 511 + c++/Makefile.am | 14 +- c++/examples/CMakeLists.txt | 32 +- c++/examples/CMakeTests.cmake | 136 +- c++/examples/chunks.cpp | 338 +- c++/examples/compound.cpp | 16 +- c++/examples/create.cpp | 12 +- c++/examples/extend_ds.cpp | 24 +- c++/examples/h5group.cpp | 288 +- c++/examples/h5tutr_cmprss.cpp | 196 +- c++/examples/h5tutr_crtatt.cpp | 58 +- c++/examples/h5tutr_crtdat.cpp | 55 +- c++/examples/h5tutr_crtgrp.cpp | 34 +- c++/examples/h5tutr_crtgrpar.cpp | 54 +- c++/examples/h5tutr_crtgrpd.cpp | 136 +- c++/examples/h5tutr_extend.cpp | 218 +- c++/examples/h5tutr_rdwt.cpp | 48 +- c++/examples/h5tutr_subset.cpp | 192 +- c++/examples/readdata.cpp | 36 +- c++/examples/writedata.cpp | 518 +- c++/src/C2Cppfunction_map.htm | 36 + c++/src/CMakeLists.txt | 51 +- c++/src/H5CppDoc.h | 3 +- c++/src/H5DataSet.cpp | 8 +- c++/src/H5DxferProp.h | 4 +- c++/src/H5FaccProp.cpp | 12 + c++/src/H5File.cpp | 70 +- c++/src/H5File.h | 7 + c++/src/H5IdComponent.cpp | 4 +- c++/src/H5LaccProp.h | 11 +- c++/src/H5LcreatProp.cpp | 40 + c++/src/H5LcreatProp.h | 19 +- c++/src/H5Location.cpp | 7 +- c++/src/H5Object.cpp | 73 +- c++/src/H5Object.h | 26 +- c++/src/H5PropList.cpp | 2 +- c++/src/cpp_doc_config | 2 +- c++/test/CMakeLists.txt | 20 +- c++/test/CMakeTests.cmake | 60 +- c++/test/CMakeVFDTests.cmake | 74 + c++/test/tarray.cpp | 3 +- c++/test/tfile.cpp | 59 + c++/test/tlinks.cpp | 421 +- c++/test/tobject.cpp | 128 +- config/cmake/CMakeFindJavaCommon.cmake | 2 +- config/cmake/CTestCustom.cmake | 197 +- config/cmake/CTestScript.cmake | 7 +- config/cmake/ConfigureChecks.cmake | 55 +- config/cmake/ConversionTests.c | 26 +- config/cmake/FindHDFJAVA.cmake.in | 79 - config/cmake/FindHDFS.cmake | 70 + config/cmake/FindJNI.cmake | 347 - config/cmake/H5pubconf.h.in | 56 +- config/cmake/HDF518_Examples.cmake.in | 106 - config/cmake/HDF5Macros.cmake | 10 +- config/cmake/HDF5UseFortran.cmake | 176 +- config/cmake/HDF5_Examples.cmake.in | 8 +- config/cmake/HDF5_Examples_options.cmake | 0 config/cmake/HDFCompilerFlags.cmake | 178 +- config/cmake/README.txt.cmake.in | 2 +- config/cmake/UseJava.cmake | 1151 +- config/cmake/UseJavaClassFilelist.cmake | 23 +- config/cmake/UseJavaSymlinks.cmake | 19 +- config/cmake/UserMacros/Windows_MT.cmake | 3 +- config/cmake/cacheinit.cmake | 2 + config/cmake/hdf5-config-version.cmake.in | 50 +- config/cmake/hdf5-config.cmake.in | 54 +- config/cmake/jrunTest.cmake | 163 +- config/cmake/libh5cc.in | 0 config/cmake/libhdf5.pc.in | 0 config/cmake/libhdf5.settings.cmake.in | 23 +- config/cmake/mccacheinit.cmake | 2 + config/cmake/patch.xml | 4 +- config/cmake/scripts/CTestScript.cmake | 636 +- config/cmake/scripts/HDF5config.cmake | 470 +- config/cmake/scripts/HDF5options.cmake | 68 +- config/cmake/scripts/HPC/bsub-HDF5options.cmake | 31 + config/cmake/scripts/HPC/qsub-HDF5options.cmake | 42 + config/cmake/scripts/HPC/raybsub-HDF5options.cmake | 32 + config/cmake/scripts/HPC/sbatch-HDF5options.cmake | 43 + config/cmake/userblockTest.cmake | 20 +- config/cmake/vfdTest.cmake | 24 +- config/cmake/volTest.cmake | 76 + config/cmake/wait_H5Tinit.cmake | 11 + config/cmake_ext_mod/ConfigureChecks.cmake | 262 +- config/cmake_ext_mod/FindSZIP.cmake | 232 +- config/cmake_ext_mod/HDFLibMacros.cmake | 125 +- config/cmake_ext_mod/HDFMacros.cmake | 86 +- config/cmake_ext_mod/HDFUseCXX.cmake | 8 +- config/cmake_ext_mod/HDFUseFortran.cmake | 14 +- config/cmake_ext_mod/grepTest.cmake | 147 +- config/cmake_ext_mod/runTest.cmake | 230 +- config/commence.am | 3 +- config/conclude.am | 51 +- config/gnu-fflags | 152 +- config/gnu-flags | 495 +- config/toolchain/GCC.cmake | 11 + config/toolchain/PGI.cmake | 11 + config/toolchain/build32.cmake | 75 + config/toolchain/clang.cmake | 29 + config/toolchain/crayle.cmake | 10 + config/toolchain/intel.cmake | 11 + config/toolchain/mingw64.cmake | 14 + configure.ac | 350 +- doc/VFD_SWMR_Punch_List.md | 9 +- examples/CMakeLists.txt | 42 +- examples/CMakeTests.cmake | 289 +- examples/Makefile.am | 34 +- examples/h5_extend_write.c | 6 +- examples/h5_extlink.c | 4 +- examples/h5_ref2reg.c | 208 - examples/h5_ref2reg_deprec.c | 208 + examples/h5_ref_compat.c | 90 + examples/h5_ref_extern.c | 94 + examples/h5_reference.c | 147 - examples/h5_reference_deprec.c | 147 + examples/run-c-ex.sh.in | 12 +- fortran/Makefile.am | 17 +- fortran/examples/CMakeLists.txt | 145 +- fortran/examples/CMakeTests.cmake | 170 +- fortran/examples/run-fortran-ex.sh.in | 18 +- fortran/src/CMakeLists.txt | 334 +- fortran/src/H5Aff.F90 | 3 + fortran/src/H5Df.c | 16 +- fortran/src/H5Dff.F90 | 9 + fortran/src/H5Ff.c | 80 +- fortran/src/H5Fff.F90 | 230 +- fortran/src/H5Of.c | 48 +- fortran/src/H5Off.F90 | 107 +- fortran/src/H5Pff.F90 | 198 +- fortran/src/H5Rff.F90 | 6 + fortran/src/H5Sf.c | 29 +- fortran/src/H5Sff.F90 | 27 +- fortran/src/H5Tff.F90 | 2 + fortran/src/H5VLff.F90 | 315 + fortran/src/H5_buildiface.F90 | 194 +- fortran/src/H5_f.c | 27 +- fortran/src/H5_ff.F90 | 101 +- fortran/src/H5config_f.inc.cmake | 36 +- fortran/src/H5f90global.F90 | 48 +- fortran/src/H5f90proto.h | 16 +- fortran/src/H5match_types.c | 19 +- fortran/src/HDF5.F90 | 1 + fortran/src/Makefile.am | 3 +- fortran/src/hdf5_fortrandll.def.in | 17 + fortran/test/CMakeLists.txt | 504 +- fortran/test/CMakeTests.cmake | 287 +- fortran/test/Makefile.am | 3 +- fortran/test/tH5F.F90 | 49 +- fortran/test/tH5MISC_1_8.F90 | 33 +- fortran/test/tH5O_F03.F90 | 387 +- fortran/test/tH5P.F90 | 52 + fortran/test/vol_connector.F90 | 284 + fortran/testpar/CMakeTests.cmake | 2 +- fortran/testpar/hyper.f90 | 3 +- fortran/testpar/mdset.f90 | 3 +- fortran/testpar/ptest.f90 | 2 +- hl/Makefile.am | 18 +- hl/c++/Makefile.am | 8 +- hl/c++/examples/CMakeLists.txt | 23 +- hl/c++/examples/CMakeTests.cmake | 4 +- hl/c++/src/CMakeLists.txt | 36 +- hl/c++/test/CMakeLists.txt | 29 +- hl/c++/test/CMakeTests.cmake | 9 +- hl/c++/test/ptableTest.cpp | 126 +- hl/c++/test/ptableTest.h | 2 +- hl/examples/CMakeLists.txt | 11 +- hl/examples/CMakeTests.cmake | 65 +- hl/fortran/Makefile.am | 8 +- hl/fortran/examples/CMakeLists.txt | 42 +- hl/fortran/examples/CMakeTests.cmake | 13 +- hl/fortran/src/CMakeLists.txt | 206 +- hl/fortran/src/H5DSff.F90 | 34 +- hl/fortran/src/H5HL_buildiface.F90 | 16 +- hl/fortran/src/H5IMff.F90 | 4 +- hl/fortran/src/H5TBff.F90 | 12 +- hl/fortran/src/Makefile.am | 16 + hl/fortran/test/CMakeLists.txt | 51 +- hl/fortran/test/CMakeTests.cmake | 84 +- hl/fortran/test/Makefile.am | 12 - hl/fortran/test/tstimage.F90 | 2 +- hl/fortran/test/tsttable.F90 | 2 +- hl/src/CMakeLists.txt | 41 +- hl/src/H5DS.c | 16 +- hl/src/H5LDprivate.h | 17 +- hl/src/H5LT.c | 19 +- hl/src/H5LTanalyze.c | 201 +- hl/src/H5LTanalyze.l | 5 +- hl/src/H5LTparse.c | 532 +- hl/src/H5LTparse.h | 15 +- hl/src/H5PT.c | 2 +- hl/test/CMakeLists.txt | 68 +- hl/test/CMakeTests.cmake | 88 +- hl/test/gen_test_ds.c | 22 +- hl/test/h5hltest.h | 4 +- hl/test/test_ds.c | 138 +- hl/test/test_dset_append.c | 1088 +- hl/test/test_file_image.c | 90 +- hl/test/test_h5do_compat.c | 50 +- hl/test/test_image.c | 62 +- hl/test/test_ld.c | 1134 +- hl/test/test_lite.c | 90 +- hl/test/test_packet.c | 30 +- hl/test/test_packet_vlen.c | 810 +- hl/test/test_table.c | 146 +- hl/tools/gif2h5/CMakeLists.txt | 67 +- hl/tools/gif2h5/CMakeTests.cmake | 42 +- hl/tools/gif2h5/Makefile.am | 12 +- hl/tools/gif2h5/decompress.c | 2 +- hl/tools/gif2h5/gif2mem.c | 3 +- hl/tools/h5watch/CMakeLists.txt | 56 +- hl/tools/h5watch/CMakeTests.cmake | 104 +- hl/tools/h5watch/Makefile.am | 27 +- hl/tools/h5watch/testh5watch.sh.in | 119 +- hl/tools/testfiles/w-err-cmpd1.ddl | 2 - hl/tools/testfiles/w-err-cmpd1.err | 1 + hl/tools/testfiles/w-err-cmpd2.ddl | 2 - hl/tools/testfiles/w-err-cmpd2.err | 1 + hl/tools/testfiles/w-err-cmpd3.ddl | 2 - hl/tools/testfiles/w-err-cmpd3.err | 1 + hl/tools/testfiles/w-err-cmpd4.ddl | 2 - hl/tools/testfiles/w-err-cmpd4.err | 1 + hl/tools/testfiles/w-err-cmpd5.ddl | 2 - hl/tools/testfiles/w-err-cmpd5.err | 1 + hl/tools/testfiles/w-err-dset-nomax.ddl | 2 - hl/tools/testfiles/w-err-dset-nomax.err | 1 + hl/tools/testfiles/w-err-dset-none.ddl | 2 - hl/tools/testfiles/w-err-dset-none.err | 1 + hl/tools/testfiles/w-err-dset1.ddl | 2 - hl/tools/testfiles/w-err-dset1.err | 1 + hl/tools/testfiles/w-err-dset2.ddl | 2 - hl/tools/testfiles/w-err-dset2.err | 1 + hl/tools/testfiles/w-err-file.ddl | 1 - hl/tools/testfiles/w-err-file.err | 1 + hl/tools/testfiles/w-err-std.ddl | 2 + java/CMakeLists.txt | 6 +- java/Makefile.am | 15 +- java/examples/datasets/CMakeLists.txt | 61 +- java/examples/datatypes/CMakeLists.txt | 57 +- java/examples/groups/CMakeLists.txt | 78 +- java/examples/groups/JavaGroupExample.sh.in | 14 +- java/examples/intro/CMakeLists.txt | 69 +- java/src/Makefile.am | 2 + java/src/hdf/hdf5lib/CMakeLists.txt | 2 + java/src/hdf/hdf5lib/H5.java | 727 +- java/src/hdf/hdf5lib/HDF5Constants.java | 84 +- .../hdf5lib/exceptions/HDF5LibraryException.java | 5 +- java/src/hdf/hdf5lib/structs/H5FD_hdfs_fapl_t.java | 102 + java/src/hdf/hdf5lib/structs/H5FD_ros3_fapl_t.java | 123 + java/src/hdf/overview.html | 3 +- java/src/jni/CMakeLists.txt | 32 +- java/src/jni/Makefile.am | 5 +- java/src/jni/exceptionImp.c | 206 +- java/src/jni/h5Constants.c | 73 +- java/src/jni/h5Imp.c | 108 +- java/src/jni/h5aImp.c | 2466 ++- java/src/jni/h5aImp.h | 151 +- java/src/jni/h5dImp.c | 2684 ++-- java/src/jni/h5dImp.h | 11 +- java/src/jni/h5eImp.c | 638 +- java/src/jni/h5fImp.c | 674 +- java/src/jni/h5fImp.h | 45 + java/src/jni/h5gImp.c | 246 +- java/src/jni/h5iImp.c | 233 +- java/src/jni/h5jni.h | 382 +- java/src/jni/h5lImp.c | 924 +- java/src/jni/h5oImp.c | 1027 +- java/src/jni/h5oImp.h | 27 + java/src/jni/h5pACPLImp.c | 36 + java/src/jni/h5pACPLImp.h | 27 + java/src/jni/h5pDAPLImp.c | 325 + java/src/jni/h5pDAPLImp.h | 112 + java/src/jni/h5pDCPLImp.c | 1415 ++ java/src/jni/h5pDCPLImp.h | 396 + java/src/jni/h5pDXPLImp.c | 505 + java/src/jni/h5pDXPLImp.h | 209 + java/src/jni/h5pFAPLImp.c | 1981 +++ java/src/jni/h5pFAPLImp.h | 537 + java/src/jni/h5pFCPLImp.c | 572 + java/src/jni/h5pFCPLImp.h | 207 + java/src/jni/h5pGAPLImp.c | 36 + java/src/jni/h5pGAPLImp.h | 27 + java/src/jni/h5pGCPLImp.c | 227 + java/src/jni/h5pGCPLImp.h | 99 + java/src/jni/h5pImp.c | 6269 +------- java/src/jni/h5pImp.h | 1545 +- java/src/jni/h5pLAPLImp.c | 240 + java/src/jni/h5pLAPLImp.h | 107 + java/src/jni/h5pLCPLImp.c | 36 + java/src/jni/h5pLCPLImp.h | 27 + java/src/jni/h5pOCPLImp.c | 211 + java/src/jni/h5pOCPLImp.h | 99 + java/src/jni/h5pOCpyPLImp.c | 92 + java/src/jni/h5pOCpyPLImp.h | 61 + java/src/jni/h5pStrCPLImp.c | 74 + java/src/jni/h5pStrCPLImp.h | 45 + java/src/jni/h5plImp.c | 189 +- java/src/jni/h5rImp.c | 401 +- java/src/jni/h5sImp.c | 1667 +- java/src/jni/h5tImp.c | 1500 +- java/src/jni/h5tImp.h | 9 + java/src/jni/h5util.c | 4740 +++--- java/src/jni/h5util.h | 33 +- java/src/jni/h5vlImp.c | 221 + java/src/jni/h5vlImp.h | 91 + java/src/jni/h5zImp.c | 29 +- java/src/jni/nativeData.c | 1342 +- java/test/CMakeLists.txt | 25 +- java/test/Makefile.am | 3 + java/test/TestAll.java | 1 + java/test/TestH5.java | 30 +- java/test/TestH5A.java | 18 +- java/test/TestH5Dparams.java | 11 - java/test/TestH5Dplist.java | 20 + java/test/TestH5E.java | 40 +- java/test/TestH5Edefault.java | 116 +- java/test/TestH5F.java | 110 +- java/test/TestH5Fbasic.java | 23 +- java/test/TestH5Fparams.java | 48 +- java/test/TestH5Ocreate.java | 53 + java/test/TestH5Oparams.java | 19 +- java/test/TestH5P.java | 69 +- java/test/TestH5Pfaplhdfs.java | 138 + java/test/TestH5Pfapls3.java | 159 + java/test/TestH5Sbasic.java | 2 +- java/test/TestH5Tparams.java | 11 + java/test/TestH5VL.java | 117 + java/test/TestH5Z.java | 33 +- java/test/junit.sh.in | 226 +- java/test/testfiles/JUnit-TestH5.txt | 3 +- java/test/testfiles/JUnit-TestH5Dparams.txt | 4 +- java/test/testfiles/JUnit-TestH5Dplist.txt | 3 +- java/test/testfiles/JUnit-TestH5Edefault.txt | 56 +- java/test/testfiles/JUnit-TestH5F.txt | 4 +- java/test/testfiles/JUnit-TestH5Fbasic.txt | 5 +- java/test/testfiles/JUnit-TestH5Fparams.txt | 5 +- java/test/testfiles/JUnit-TestH5Ocreate.txt | 3 +- java/test/testfiles/JUnit-TestH5Oparams.txt | 5 +- java/test/testfiles/JUnit-TestH5P.txt | 4 +- java/test/testfiles/JUnit-TestH5Pfaplhdfs.txt | 9 + java/test/testfiles/JUnit-TestH5Pfapls3.txt | 10 + java/test/testfiles/JUnit-TestH5Tparams.txt | 4 +- java/test/testfiles/JUnit-TestH5VL.txt | 11 + m4/ax_check_class.m4 | 75 +- m4/ax_check_classpath.m4 | 6 +- m4/ax_check_java_home.m4 | 6 +- m4/ax_check_junit.m4 | 4 +- m4/ax_check_rqrd_class.m4 | 6 +- m4/ax_java_check_class.m4 | 8 +- m4/ax_java_options.m4 | 4 +- m4/ax_jni_include_dir.m4 | 61 +- m4/ax_prog_jar.m4 | 4 +- m4/ax_prog_java.m4 | 6 +- m4/ax_prog_java_cc.m4 | 6 +- m4/ax_prog_java_works.m4 | 51 +- m4/ax_prog_javac.m4 | 6 +- m4/ax_prog_javac_works.m4 | 6 +- m4/ax_prog_javadoc.m4 | 4 +- m4/ax_prog_javah.m4 | 16 +- m4/ax_try_compile_java.m4 | 8 +- m4/ax_try_run_java.m4 | 4 +- release_docs/HISTORY-1_10.txt | 1035 ++ release_docs/INSTALL_CMake.txt | 48 +- release_docs/INSTALL_Cygwin.txt | 12 +- release_docs/INSTALL_parallel | 10 +- release_docs/README_HDF5_CMake | 23 + release_docs/README_HPC | 206 + release_docs/RELEASE.txt | 605 +- release_docs/USING_CMake_Examples.txt | 24 +- src/.indent.pro | 2 +- src/CMakeLists.txt | 413 +- src/H5.c | 13 +- src/H5A.c | 457 +- src/H5AC.c | 813 +- src/H5ACdbg.c | 115 - src/H5AClog.c | 1105 -- src/H5ACmpio.c | 6 +- src/H5ACpkg.h | 69 - src/H5ACprivate.h | 7 +- src/H5Abtree2.c | 9 +- src/H5Adense.c | 65 +- src/H5Adeprec.c | 168 +- src/H5Aint.c | 633 +- src/H5Apkg.h | 9 +- src/H5Apublic.h | 18 +- src/H5Atest.c | 5 +- src/H5B.c | 59 +- src/H5B2.c | 8 +- src/H5B2cache.c | 6 +- src/H5B2int.c | 84 +- src/H5B2leaf.c | 14 +- src/H5B2private.h | 3 - src/H5B2public.h | 52 - src/H5Bcache.c | 3 +- src/H5Bdbg.c | 6 +- src/H5Bprivate.h | 1 - src/H5Bpublic.h | 39 - src/H5C.c | 80 +- src/H5CX.c | 888 +- src/H5CXprivate.h | 37 + src/H5Cdbg.c | 57 +- src/H5Cimage.c | 16 +- src/H5Clog.c | 946 +- src/H5Clog.h | 114 + src/H5Clog_json.c | 1364 ++ src/H5Clog_trace.c | 1007 ++ src/H5Cmpio.c | 16 +- src/H5Cpkg.h | 50 +- src/H5Cprivate.h | 30 +- src/H5Cquery.c | 94 +- src/H5Ctag.c | 26 + src/H5Ctest.c | 3 +- src/H5D.c | 474 +- src/H5Dbtree.c | 5 +- src/H5Dbtree2.c | 11 +- src/H5Dchunk.c | 1250 +- src/H5Dcompact.c | 22 +- src/H5Dcontig.c | 137 +- src/H5Ddbg.c | 3 +- src/H5Ddeprec.c | 162 +- src/H5Dearray.c | 11 +- src/H5Defl.c | 5 +- src/H5Dfarray.c | 4 +- src/H5Dfill.c | 11 +- src/H5Dint.c | 494 +- src/H5Dio.c | 169 +- src/H5Dlayout.c | 50 +- src/H5Dmpio.c | 235 +- src/H5Dnone.c | 57 +- src/H5Doh.c | 31 +- src/H5Dpkg.h | 28 +- src/H5Dprivate.h | 17 +- src/H5Dpublic.h | 28 +- src/H5Dscatgath.c | 88 +- src/H5Dselect.c | 10 +- src/H5Dtest.c | 13 +- src/H5Dvirtual.c | 88 +- src/H5E.c | 16 +- src/H5EA.c | 19 +- src/H5EAcache.c | 13 +- src/H5EAdbg.c | 6 +- src/H5EAhdr.c | 9 +- src/H5EAstat.c | 3 +- src/H5EAtest.c | 2 +- src/H5ESpublic.h | 53 + src/H5Eint.c | 50 +- src/H5F.c | 944 +- src/H5FA.c | 23 +- src/H5FAcache.c | 9 +- src/H5FAhdr.c | 3 +- src/H5FAstat.c | 3 +- src/H5FAtest.c | 2 +- src/H5FD.c | 4 +- src/H5FDcore.c | 188 +- src/H5FDdirect.c | 34 +- src/H5FDfamily.c | 43 +- src/H5FDhdfs.c | 2167 +++ src/H5FDhdfs.h | 122 + src/H5FDlog.c | 68 +- src/H5FDmpi.c | 109 - src/H5FDmpio.c | 1580 +- src/H5FDmulti.c | 115 +- src/H5FDprivate.h | 44 +- src/H5FDros3.c | 1833 +++ src/H5FDros3.h | 105 + src/H5FDs3comms.c | 3593 +++++ src/H5FDs3comms.h | 604 + src/H5FDsec2.c | 54 +- src/H5FDtest.c | 5 +- src/H5FDvfd_swmr.c | 151 +- src/H5FDvfd_swmr_private.h | 12 +- src/H5FL.c | 20 +- src/H5FLprivate.h | 4 +- src/H5FS.c | 3 +- src/H5FScache.c | 65 +- src/H5FSprivate.h | 3 - src/H5FSpublic.h | 52 - src/H5FSsection.c | 339 +- src/H5Faccum.c | 94 +- src/H5Fcwfs.c | 2 +- src/H5Fdeprec.c | 93 +- src/H5Fefc.c | 40 +- src/H5Ffake.c | 4 +- src/H5Fint.c | 693 +- src/H5Fio.c | 97 +- src/H5Fmount.c | 23 +- src/H5Fmpi.c | 247 +- src/H5Fpkg.h | 129 +- src/H5Fprivate.h | 91 +- src/H5Fpublic.h | 101 +- src/H5Fquery.c | 183 +- src/H5Fsfile.c | 12 +- src/H5Fsuper.c | 221 +- src/H5Fsuper_cache.c | 17 +- src/H5Ftest.c | 49 +- src/H5Fvfd_swmr.c | 338 +- src/H5G.c | 209 +- src/H5Gbtree2.c | 13 +- src/H5Gcache.c | 3 +- src/H5Gcompact.c | 68 - src/H5Gdense.c | 77 - src/H5Gdeprec.c | 695 +- src/H5Gent.c | 3 +- src/H5Gint.c | 6 +- src/H5Glink.c | 19 +- src/H5Gloc.c | 73 +- src/H5Gname.c | 32 +- src/H5Gnode.c | 4 +- src/H5Goh.c | 29 +- src/H5Gpkg.h | 15 +- src/H5Gprivate.h | 5 +- src/H5Gpublic.h | 9 +- src/H5Gstab.c | 115 - src/H5Gtest.c | 24 +- src/H5Gtraverse.c | 6 +- src/H5HF.c | 6 +- src/H5HFcache.c | 20 +- src/H5HFdbg.c | 2 +- src/H5HFhdr.c | 3 +- src/H5HFhuge.c | 4 +- src/H5HFman.c | 2 +- src/H5HFprivate.h | 3 - src/H5HFpublic.h | 52 - src/H5HFsection.c | 8 +- src/H5HFtest.c | 4 +- src/H5HFtiny.c | 3 +- src/H5HG.c | 15 +- src/H5HGcache.c | 4 +- src/H5HGpkg.h | 4 +- src/H5HGprivate.h | 7 +- src/H5HGpublic.h | 31 - src/H5HL.c | 2 +- src/H5HLcache.c | 11 +- src/H5HLprivate.h | 3 - src/H5HLpublic.h | 37 - src/H5I.c | 549 +- src/H5Iprivate.h | 32 +- src/H5Ipublic.h | 11 +- src/H5Itest.c | 23 +- src/H5L.c | 428 +- src/H5Lexternal.c | 41 +- src/H5M.c | 1032 ++ src/H5MF.c | 933 +- src/H5MFaggr.c | 16 +- src/H5MFdbg.c | 8 +- src/H5MFpkg.h | 17 +- src/H5MFprivate.h | 2 +- src/H5MFsection.c | 19 +- src/H5MM.c | 56 +- src/H5MMprivate.h | 1 + src/H5MP.c | 6 +- src/H5MPtest.c | 2 +- src/H5MV.c | 6 +- src/H5Mmodule.h | 31 + src/H5Mpkg.h | 51 + src/H5Mprivate.h | 80 + src/H5Mpublic.h | 126 + src/H5O.c | 555 +- src/H5Oalloc.c | 11 +- src/H5Oattr.c | 27 +- src/H5Oattribute.c | 6 +- src/H5Obogus.c | 4 +- src/H5Ocache.c | 29 +- src/H5Ocache_image.c | 33 +- src/H5Ochunk.c | 2 +- src/H5Ocopy.c | 231 +- src/H5Ocopy_ref.c | 498 + src/H5Odeprec.c | 92 +- src/H5Odrvinfo.c | 10 +- src/H5Odtype.c | 76 +- src/H5Oefl.c | 4 +- src/H5Ofill.c | 258 +- src/H5Oflush.c | 85 +- src/H5Ofsinfo.c | 182 +- src/H5Oint.c | 1047 +- src/H5Olayout.c | 26 +- src/H5Olink.c | 31 +- src/H5Omessage.c | 25 +- src/H5Omtime.c | 2 +- src/H5Oname.c | 2 +- src/H5Opkg.h | 9 +- src/H5Opline.c | 346 +- src/H5Oprivate.h | 56 +- src/H5Opublic.h | 8 +- src/H5Osdspace.c | 12 +- src/H5Oshared.c | 5 +- src/H5P.c | 19 +- src/H5PB.c | 434 +- src/H5PBprivate.h | 38 +- src/H5PLint.c | 57 +- src/H5PLpath.c | 8 +- src/H5PLpkg.h | 10 +- src/H5PLplugin_cache.c | 6 +- src/H5PLprivate.h | 14 +- src/H5PLpublic.h | 4 +- src/H5Pacpl.c | 2 +- src/H5Pdapl.c | 6 +- src/H5Pdcpl.c | 134 +- src/H5Pdeprec.c | 49 + src/H5Pdxpl.c | 9 +- src/H5Pencdec.c | 2 +- src/H5Pfapl.c | 1427 +- src/H5Pint.c | 332 +- src/H5Plapl.c | 2 +- src/H5Plcpl.c | 1 + src/H5Pmapl.c | 217 + src/H5Pmcpl.c | 115 + src/H5Pocpl.c | 2 +- src/H5Pocpypl.c | 2 +- src/H5Ppkg.h | 4 + src/H5Pprivate.h | 13 + src/H5Ppublic.h | 35 +- src/H5R.c | 972 +- src/H5RS.c | 4 +- src/H5RSprivate.h | 2 +- src/H5Rdeprec.c | 487 +- src/H5Rint.c | 1970 ++- src/H5Rpkg.h | 80 +- src/H5Rprivate.h | 3 +- src/H5Rpublic.h | 106 +- src/H5S.c | 1043 +- src/H5SL.c | 4 +- src/H5SM.c | 5 +- src/H5SMbtree2.c | 3 +- src/H5SMcache.c | 4 +- src/H5SMmessage.c | 5 +- src/H5ST.c | 16 +- src/H5Sall.c | 416 +- src/H5Sdbg.c | 18 +- src/H5Sdeprec.c | 121 + src/H5Shyper.c | 15905 +++++++++++-------- src/H5Smpio.c | 1324 +- src/H5Snone.c | 616 +- src/H5Spkg.h | 207 +- src/H5Spoint.c | 1729 +- src/H5Sprivate.h | 73 +- src/H5Spublic.h | 119 +- src/H5Sselect.c | 1174 +- src/H5Stest.c | 323 +- src/H5T.c | 590 +- src/H5Tcommit.c | 319 +- src/H5Tconv.c | 419 +- src/H5Tdbg.c | 2 +- src/H5Tdeprec.c | 61 +- src/H5Tenum.c | 24 +- src/H5Tfields.c | 20 +- src/H5Tnative.c | 54 +- src/H5Toh.c | 30 +- src/H5Torder.c | 6 +- src/H5Tpkg.h | 129 +- src/H5Tprecis.c | 2 + src/H5Tprivate.h | 20 +- src/H5Tpublic.h | 5 +- src/H5Tref.c | 768 + src/H5Tvlen.c | 916 +- src/H5VL.c | 660 + src/H5VLcallback.c | 7024 ++++++++ src/H5VLconnector.h | 449 + src/H5VLconnector_passthru.h | 175 + src/H5VLint.c | 2029 +++ src/H5VLmodule.h | 31 + src/H5VLnative.c | 182 + src/H5VLnative.h | 108 + src/H5VLnative_attr.c | 585 + src/H5VLnative_blob.c | 237 + src/H5VLnative_dataset.c | 643 + src/H5VLnative_datatype.c | 265 + src/H5VLnative_file.c | 881 + src/H5VLnative_group.c | 353 + src/H5VLnative_link.c | 419 + src/H5VLnative_object.c | 511 + src/H5VLnative_private.h | 114 + src/H5VLpassthru.c | 2928 ++++ src/H5VLpassthru.h | 49 + src/H5VLpkg.h | 63 + src/H5VLprivate.h | 205 + src/H5VLpublic.h | 77 + src/H5VM.c | 25 +- src/H5VMprivate.h | 3 +- src/H5Z.c | 16 +- src/H5Zfletcher32.c | 6 +- src/H5Zpublic.h | 2 +- src/H5Zscaleoffset.c | 65 +- src/H5Zshuffle.c | 18 +- src/H5Ztrans.c | 8 +- src/H5checksum.c | 11 + src/H5dbg.c | 2 +- src/H5detect.c | 21 +- src/H5err.txt | 12 +- src/H5make_libsettings.c | 13 +- src/H5mpi.c | 563 + src/H5private.h | 140 +- src/H5public.h | 9 +- src/H5system.c | 210 +- src/H5timer.c | 16 +- src/H5trace.c | 813 +- src/H5vers.txt | 2 + src/H5win32defs.h | 24 +- src/Makefile.am | 50 +- src/bsdqueue.h | 847 + src/hdf5.h | 26 +- src/libhdf5.settings.in | 6 +- test/CMakeLists.txt | 325 +- test/CMakePassthroughVOLTests.cmake | 214 + test/CMakeTests.cmake | 811 +- test/CMakeVFDTests.cmake | 180 +- test/Makefile.am | 81 +- test/ShellTests.cmake | 3 +- test/accum.c | 58 +- test/accum_swmr_reader.c | 26 +- test/app_ref.c | 6 +- test/atomic_reader.c | 30 +- test/atomic_writer.c | 10 +- test/big.c | 13 +- test/bittests.c | 188 +- test/btree2.c | 1240 +- test/cache.c | 14962 ++++++++--------- test/cache_api.c | 84 +- test/cache_common.c | 1834 +-- test/cache_common.h | 1 + test/cache_image.c | 3344 ++-- test/cache_logging.c | 6 +- test/cache_tagging.c | 501 +- test/chunk_info.c | 2024 ++- test/cmpd_dset.c | 980 +- test/cork.c | 234 +- test/cross_read.c | 12 +- test/del_many_dense_attrs.c | 203 + test/direct_chunk.c | 313 +- test/dsets.c | 1333 +- test/dt_arith.c | 1535 +- test/dtransform.c | 408 +- test/dtypes.c | 1974 +-- test/earray.c | 533 +- test/efc.c | 12 + test/enc_dec_plist.c | 859 +- test/enc_dec_plist_cross_platform.c | 119 +- test/enum.c | 26 +- test/err_compat.c | 224 +- test/error_test.c | 63 +- test/evict_on_close.c | 17 +- test/extend.c | 40 +- test/external.c | 674 +- test/external_common.c | 127 + test/external_common.h | 45 + test/external_env.c | 219 + test/external_fname.h | 37 + test/farray.c | 161 +- test/fheap.c | 250 +- test/file_image.c | 14 +- test/filenotclosed.c | 2 +- test/fill18.h5 | Bin 0 -> 3479 bytes test/fillval.c | 890 +- test/filter_fail.c | 38 +- test/flush1.c | 2 +- test/flush2.c | 10 +- test/flushrefresh.c | 4 +- test/flushrefreshTest.cmake | 118 +- test/freespace.c | 39 +- test/gen_bogus.c | 8 + test/gen_cross.c | 59 +- test/gen_plist.c | 14 +- test/genall5.c | 8 +- test/gheap.c | 39 +- test/h5test.c | 710 +- test/h5test.h | 36 +- test/hdfs.c | 1767 ++ test/hyperslab.c | 168 +- test/istore.c | 137 +- test/lheap.c | 13 +- test/links.c | 5104 +++--- test/links_env.c | 89 +- test/memleak_H5O_dtype_decode_helper_H5Odtype.h5 | Bin 0 -> 82816 bytes test/mf.c | 2756 ++-- test/mount.c | 38 +- test/mtime.c | 56 +- test/ntypes.c | 92 +- test/null_vol_connector.c | 128 + test/null_vol_connector.h | 25 + test/objcopy.c | 291 +- test/objcopy_ref.c | 1739 ++ test/ohdr.c | 967 +- test/page_buffer.c | 53 +- test/reserved.c | 86 +- test/ros3.c | 1937 +++ test/s3comms.c | 2730 ++++ test/set_extent.c | 1444 +- test/stab.c | 236 +- test/supervise.subr | 4 +- test/swmr.c | 27 +- test/swmr_addrem_writer.c | 40 +- test/swmr_common.c | 35 +- test/swmr_common.h | 2 +- test/swmr_generator.c | 38 +- test/swmr_reader.c | 40 +- test/swmr_remove_reader.c | 34 +- test/swmr_remove_writer.c | 36 +- test/swmr_sparse_reader.c | 36 +- test/swmr_sparse_writer.c | 44 +- test/swmr_start_write.c | 58 +- test/swmr_writer.c | 42 +- test/tarray.c | 52 +- test/tattr.c | 1202 +- test/tbogus.h5 | Bin 4512 -> 5056 bytes test/tcheck_version.c | 82 +- test/tchecksum.c | 2 +- test/tconfig.c | 6 +- test/test_filenotclosed.sh.in | 41 - test/test_usecases.sh.in | 31 +- test/test_vol_plugin.sh.in | 84 + test/testabort_fail.sh.in | 66 + test/testerror.sh.in | 4 +- test/testexternal_env.sh.in | 42 + test/testfiles/err_compat_1 | 20 +- test/testfiles/err_compat_2 | 2 +- test/testfiles/error_test_1 | 19 +- test/testfiles/error_test_2 | 2 +- test/testfiles/plist_files/dcpl_32be | Bin 221 -> 239 bytes test/testfiles/plist_files/dcpl_32le | Bin 221 -> 239 bytes test/testfiles/plist_files/dcpl_64be | Bin 221 -> 239 bytes test/testfiles/plist_files/dcpl_64le | Bin 221 -> 239 bytes test/testfiles/plist_files/def_dcpl_32be | Bin 132 -> 150 bytes test/testfiles/plist_files/def_dcpl_32le | Bin 132 -> 150 bytes test/testfiles/plist_files/def_dcpl_64be | Bin 132 -> 150 bytes test/testfiles/plist_files/def_dcpl_64le | Bin 132 -> 150 bytes test/testfiles/plist_files/def_dxpl_32be | Bin 225 -> 225 bytes test/testfiles/plist_files/def_dxpl_32le | Bin 225 -> 225 bytes test/testfiles/plist_files/def_dxpl_64be | Bin 225 -> 225 bytes test/testfiles/plist_files/def_dxpl_64le | Bin 225 -> 225 bytes test/testfiles/plist_files/def_fapl_32be | Bin 3805 -> 3745 bytes test/testfiles/plist_files/def_fapl_32le | Bin 3805 -> 3745 bytes test/testfiles/plist_files/def_fapl_64be | Bin 3805 -> 3745 bytes test/testfiles/plist_files/def_fapl_64le | Bin 3805 -> 3745 bytes test/testfiles/plist_files/dxpl_32be | Bin 229 -> 229 bytes test/testfiles/plist_files/dxpl_32le | Bin 229 -> 229 bytes test/testfiles/plist_files/dxpl_64be | Bin 229 -> 229 bytes test/testfiles/plist_files/dxpl_64le | Bin 229 -> 229 bytes test/testfiles/plist_files/fapl_32be | Bin 3807 -> 3747 bytes test/testfiles/plist_files/fapl_32le | Bin 3807 -> 3747 bytes test/testfiles/plist_files/fapl_64be | Bin 3807 -> 3747 bytes test/testfiles/plist_files/fapl_64le | Bin 3807 -> 3747 bytes test/testfiles/plist_files/lapl_32be | Bin 3910 -> 3850 bytes test/testfiles/plist_files/lapl_32le | Bin 3910 -> 3850 bytes test/testfiles/plist_files/lapl_64be | Bin 3910 -> 3850 bytes test/testfiles/plist_files/lapl_64le | Bin 3910 -> 3850 bytes test/testflushrefresh.sh.in | 25 +- test/testframe.c | 380 +- test/testhdf5.c | 3 +- test/testhdf5.h | 92 +- test/testlinks_env.sh.in | 12 +- test/testmeta.c | 110 +- test/testswmr.sh.in | 11 +- test/testvds_env.sh.in | 44 + test/testvdsswmr.sh.in | 13 +- test/testvfdswmr.sh.in | 752 +- test/tfile.c | 1289 +- test/tgenprop.c | 12 +- test/th5o.c | 68 +- test/th5s.c | 984 +- test/tid.c | 30 +- test/titerate.c | 117 +- test/tmeta.c | 2 +- test/tmisc.c | 96 +- test/trefer.c | 2414 ++- test/trefer_deprec.c | 1827 +++ test/tselect.c | 7457 +++++---- test/tsohm.c | 1921 ++- test/ttime.c | 6 +- test/ttsafe_error.c | 98 +- test/tunicode.c | 14 +- test/tvlstr.c | 143 +- test/tvltypes.c | 162 +- test/twriteorder.c | 384 +- test/unlink.c | 382 +- test/use.h | 2 +- test/use_append_chunk.c | 115 +- test/use_append_mchunks.c | 110 +- test/use_common.c | 626 +- test/use_disable_mdc_flushes.c | 374 +- test/vds.c | 1277 +- test/vds_env.c | 365 + test/vds_swmr.h | 48 - test/vds_swmr_gen.c | 48 +- test/vds_swmr_reader.c | 12 +- test/vds_swmr_writer.c | 2 +- test/vfd.c | 327 +- test/vfd_swmr.c | 42 +- test/vfd_swmr_addrem_writer.c | 40 +- test/vfd_swmr_common.c | 301 +- test/vfd_swmr_common.h | 11 +- test/vfd_swmr_generator.c | 20 +- test/vfd_swmr_reader.c | 120 +- test/vfd_swmr_remove_reader.c | 50 +- test/vfd_swmr_remove_writer.c | 14 +- test/vfd_swmr_sparse_reader.c | 40 +- test/vfd_swmr_sparse_writer.c | 87 +- test/vfd_swmr_writer.c | 127 +- test/vol.c | 1135 ++ test/vol_plugin.c | 291 + testpar/CMakeLists.txt | 40 +- testpar/CMakeTests.cmake | 145 +- testpar/CMakeVFDTests.cmake | 76 + testpar/Makefile.am | 17 +- testpar/t_bigio.c | 607 +- testpar/t_cache.c | 544 +- testpar/t_cache_image.c | 70 +- testpar/t_chunk_alloc.c | 159 +- testpar/t_coll_chunk.c | 30 +- testpar/t_coll_md_read.c | 336 +- testpar/t_dset.c | 12 +- testpar/t_file.c | 225 +- testpar/t_filter_read.c | 66 +- testpar/t_filters_parallel.c | 370 +- testpar/t_mdset.c | 1220 +- testpar/t_mpi.c | 1591 +- testpar/t_pflush1.c | 247 +- testpar/t_pflush2.c | 265 +- testpar/t_ph5basic.c | 135 +- testpar/t_pread.c | 429 +- testpar/t_prestart.c | 2 +- testpar/t_prop.c | 6 +- testpar/t_shapesame.c | 279 +- testpar/t_span_tree.c | 151 +- testpar/testpar.h | 29 +- testpar/testpflush.sh.in | 64 + testpar/testphdf5.c | 477 +- testpar/testphdf5.h | 61 +- tools/CMakeLists.txt | 7 + tools/Makefile.am | 13 +- tools/lib/CMakeLists.txt | 50 +- tools/lib/h5diff.c | 19 +- tools/lib/h5diff_array.c | 19 +- tools/lib/h5diff_attr.c | 8 +- tools/lib/h5diff_dset.c | 16 +- tools/lib/h5diff_util.c | 6 +- tools/lib/h5tools.c | 6 +- tools/lib/h5tools_dump.c | 40 +- tools/lib/h5tools_filters.c | 2 +- tools/lib/h5tools_str.c | 116 +- tools/lib/h5tools_utils.c | 529 +- tools/lib/h5tools_utils.h | 13 + tools/lib/h5trav.c | 43 +- tools/lib/io_timer.c | 13 +- tools/lib/io_timer.h | 4 +- tools/libtest/CMakeLists.txt | 18 + tools/libtest/CMakeTests.cmake | 49 + tools/libtest/Makefile.am | 34 + tools/libtest/h5tools_test_utils.c | 1266 ++ tools/src/h5copy/CMakeLists.txt | 18 +- tools/src/h5copy/h5copy.c | 8 +- tools/src/h5diff/CMakeLists.txt | 70 +- tools/src/h5diff/h5diff_common.c | 28 +- tools/src/h5diff/ph5diff_main.c | 26 +- tools/src/h5dump/CMakeLists.txt | 26 +- tools/src/h5dump/h5dump.c | 469 +- tools/src/h5dump/h5dump_ddl.c | 15 +- tools/src/h5dump/h5dump_xml.c | 22 +- tools/src/h5format_convert/CMakeLists.txt | 28 +- tools/src/h5format_convert/h5format_convert.c | 10 +- tools/src/h5import/CMakeLists.txt | 30 +- tools/src/h5import/h5import.c | 137 +- tools/src/h5import/h5import.h | 4 +- tools/src/h5jam/CMakeLists.txt | 59 +- tools/src/h5jam/h5jam.c | 4 +- tools/src/h5jam/h5unjam.c | 2 +- tools/src/h5ls/CMakeLists.txt | 18 +- tools/src/h5ls/h5ls.c | 1452 +- tools/src/h5repack/CMakeLists.txt | 20 +- tools/src/h5repack/Makefile.am | 2 +- tools/src/h5repack/h5repack.c | 294 +- tools/src/h5repack/h5repack_copy.c | 193 +- tools/src/h5repack/h5repack_filters.c | 16 +- tools/src/h5repack/h5repack_main.c | 381 +- tools/src/h5repack/h5repack_refs.c | 54 +- tools/src/h5stat/CMakeLists.txt | 18 +- tools/src/h5stat/h5stat.c | 374 +- tools/src/misc/CMakeLists.txt | 103 +- tools/src/misc/Makefile.am | 24 - tools/src/misc/h5cc.in | 399 - tools/src/misc/h5clear.c | 39 +- tools/src/misc/h5debug.c | 390 +- tools/src/misc/h5mkgrp.c | 6 +- tools/src/misc/h5redeploy.in | 216 - tools/src/misc/h5repart.c | 638 +- tools/test/h5copy/CMakeLists.txt | 28 +- tools/test/h5copy/CMakeTests.cmake | 124 +- tools/test/h5copy/h5copygentest.c | 114 +- tools/test/h5copy/testfiles/h5copy_misc1.err | 1 + tools/test/h5copy/testfiles/h5copy_misc1.out | 1 - tools/test/h5copy/testh5copy.sh.in | 16 +- tools/test/h5diff/CMakeLists.txt | 28 +- tools/test/h5diff/CMakeTests.cmake | 205 +- tools/test/h5diff/h5diff_plugin.sh.in | 87 +- tools/test/h5diff/h5diffgentest.c | 470 +- tools/test/h5diff/testfiles/dangling_link.err | 4 + tools/test/h5diff/testfiles/h5diff_454_ERR.err | 4 - tools/test/h5diff/testfiles/h5diff_454_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_455_ERR.err | 4 - tools/test/h5diff/testfiles/h5diff_455_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_457_ERR.err | 4 - tools/test/h5diff/testfiles/h5diff_457_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_458_ERR.err | 4 - tools/test/h5diff/testfiles/h5diff_458_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_459_ERR.err | 4 - tools/test/h5diff/testfiles/h5diff_459_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_600.txt | 1 - tools/test/h5diff/testfiles/h5diff_601_ERR.txt | 6 - tools/test/h5diff/testfiles/h5diff_udfail.err | 12 + tools/test/h5diff/testfiles/h5diff_udfail.txt | 1 - tools/test/h5diff/testh5diff.sh.in | 6 +- tools/test/h5dump/CMakeLists.txt | 56 +- tools/test/h5dump/CMakeTests.cmake | 673 +- tools/test/h5dump/CMakeTestsPBITS.cmake | 145 +- tools/test/h5dump/CMakeTestsVDS.cmake | 111 +- tools/test/h5dump/CMakeTestsXML.cmake | 173 +- tools/test/h5dump/CMakeVFDTests.cmake | 91 + tools/test/h5dump/errfiles/filter_fail.err | 19 +- tools/test/h5dump/errfiles/tall-1.err | 26 +- tools/test/h5dump/errfiles/tall-2A.err | 26 +- tools/test/h5dump/errfiles/tall-2A0.err | 26 +- tools/test/h5dump/errfiles/tall-2B.err | 26 +- tools/test/h5dump/errfiles/tarray1_big.err | 33 +- tools/test/h5dump/errfiles/tattr-3.err | 13 +- tools/test/h5dump/errfiles/tattrregR.err | 22 +- tools/test/h5dump/errfiles/tcomp-3.err | 19 +- tools/test/h5dump/errfiles/tdataregR.err | 22 +- tools/test/h5dump/errfiles/tdset-2.err | 36 +- tools/test/h5dump/errfiles/textlink.err | 52 +- tools/test/h5dump/errfiles/textlinkfar.err | 39 +- tools/test/h5dump/errfiles/textlinksrc.err | 39 +- tools/test/h5dump/errfiles/tgroup-2.err | 19 +- tools/test/h5dump/errfiles/torderlinks1.err | 26 +- tools/test/h5dump/errfiles/torderlinks2.err | 26 +- tools/test/h5dump/errfiles/tperror.err | 36 +- tools/test/h5dump/errfiles/tslink-D.err | 25 +- tools/test/h5dump/h5dumpgentest.c | 98 +- tools/test/h5dump/testh5dump.sh.in | 61 +- tools/test/h5dump/testh5dumppbits.sh.in | 4 - tools/test/h5format_convert/CMakeLists.txt | 19 +- tools/test/h5format_convert/CMakeTests.cmake | 261 +- tools/test/h5format_convert/h5fc_gentest.c | 357 +- .../h5format_convert/testfiles/h5fc_d_file-d.ddl | 25 + .../h5format_convert/testfiles/h5fc_d_file.ddl | 1 - .../h5format_convert/testfiles/h5fc_d_file.ddl.err | 1 + .../test/h5format_convert/testfiles/h5fc_dname.ddl | 1 - .../test/h5format_convert/testfiles/h5fc_dname.err | 1 + .../testfiles/h5fc_nonexistdset_file.ddl | 1 - .../testfiles/h5fc_nonexistdset_file.ddl.err | 1 + .../testfiles/h5fc_nonexistfile.ddl | 1 - .../testfiles/h5fc_nonexistfile.ddl.err | 1 + tools/test/h5format_convert/testh5fc.sh.in | 60 +- tools/test/h5import/CMakeLists.txt | 11 +- tools/test/h5import/CMakeTests.cmake | 260 +- tools/test/h5import/h5importtest.c | 168 +- tools/test/h5jam/CMakeLists.txt | 28 +- tools/test/h5jam/CMakeTests.cmake | 84 +- tools/test/h5jam/getub.c | 2 +- tools/test/h5jam/h5jamgentest.c | 6 +- tools/test/h5jam/tellub.c | 8 +- tools/test/h5ls/CMakeLists.txt | 44 +- tools/test/h5ls/CMakeTests.cmake | 200 +- tools/test/h5ls/CMakeTestsVDS.cmake | 82 +- tools/test/h5ls/errfiles/nosuchfile.err | 1 + .../test/h5ls/errfiles/textlinksrc-nodangle-1.err | 2 + tools/test/h5ls/errfiles/tgroup-1.err | 2 + tools/test/h5ls/testh5ls.sh.in | 11 +- tools/test/h5repack/CMakeLists.txt | 113 +- tools/test/h5repack/CMakeTests.cmake | 653 +- tools/test/h5repack/CMakeVFDTests.cmake | 104 + tools/test/h5repack/Makefile.am | 5 +- tools/test/h5repack/h5repack.sh.in | 129 +- tools/test/h5repack/h5repackgentest.c | 340 + tools/test/h5repack/h5repacktst.c | 170 +- .../SP.h5repack_fsm_aggr_nopersist.h5.ddl | 6 +- .../h5repack/testfiles/SPT.h5repack_aggr.h5.ddl | 4 +- tools/test/h5repack/testfiles/h5repack-help.txt | 81 +- tools/test/h5repack/testfiles/h5repack_f32le.h5 | Bin 0 -> 2336 bytes .../h5repack/testfiles/h5repack_f32le_ex-0.dat | Bin 0 -> 288 bytes tools/test/h5repack/testfiles/h5repack_f32le_ex.h5 | Bin 0 -> 1464 bytes .../test/h5repack/testfiles/h5repack_int32le_1d.h5 | Bin 0 -> 2096 bytes .../testfiles/h5repack_int32le_1d_ex-0.dat | 1 + .../testfiles/h5repack_int32le_1d_ex-1.dat | Bin 0 -> 24 bytes .../h5repack/testfiles/h5repack_int32le_1d_ex.h5 | Bin 0 -> 1504 bytes .../test/h5repack/testfiles/h5repack_int32le_2d.h5 | Bin 0 -> 2304 bytes .../testfiles/h5repack_int32le_2d_ex-0.dat | Bin 0 -> 256 bytes .../h5repack/testfiles/h5repack_int32le_2d_ex.h5 | Bin 0 -> 1472 bytes .../test/h5repack/testfiles/h5repack_int32le_3d.h5 | Bin 0 -> 4096 bytes .../testfiles/h5repack_int32le_3d_ex-0.dat | Bin 0 -> 2048 bytes .../h5repack/testfiles/h5repack_int32le_3d_ex.h5 | Bin 0 -> 1472 bytes ...h5repack_layout.h5-dset2_chunk_20x10-errstk.tst | 29 +- .../h5repack_layout.h5-plugin_version_test.ddl | 14 +- tools/test/h5repack/testfiles/h5repack_uint8be.h5 | Bin 0 -> 2304 bytes .../h5repack/testfiles/h5repack_uint8be_ex-0.dat | Bin 0 -> 64 bytes .../h5repack/testfiles/h5repack_uint8be_ex-1.dat | 1 + .../h5repack/testfiles/h5repack_uint8be_ex-2.dat | 1 + .../h5repack/testfiles/h5repack_uint8be_ex-3.dat | 1 + .../test/h5repack/testfiles/h5repack_uint8be_ex.h5 | Bin 0 -> 1608 bytes tools/test/h5repack/testh5repack_detect_szip.c | 4 +- tools/test/h5stat/CMakeLists.txt | 6 +- tools/test/h5stat/CMakeTests.cmake | 81 +- tools/test/h5stat/h5stat_gentest.c | 326 +- tools/test/h5stat/testfiles/h5stat_err1_dims.ddl | 1 - tools/test/h5stat/testfiles/h5stat_err1_dims.err | 1 + tools/test/h5stat/testfiles/h5stat_err1_links.ddl | 1 - tools/test/h5stat/testfiles/h5stat_err1_links.err | 1 + .../test/h5stat/testfiles/h5stat_err1_numattrs.ddl | 1 - .../test/h5stat/testfiles/h5stat_err1_numattrs.err | 1 + .../test/h5stat/testfiles/h5stat_err2_numattrs.ddl | 1 - .../test/h5stat/testfiles/h5stat_err2_numattrs.err | 1 + .../test/h5stat/testfiles/h5stat_err_old_fill.ddl | 1 - .../test/h5stat/testfiles/h5stat_err_old_fill.err | 1 + .../h5stat/testfiles/h5stat_err_old_layout.ddl | 1 - .../h5stat/testfiles/h5stat_err_old_layout.err | 1 + .../test/h5stat/testfiles/h5stat_err_refcount.ddl | 1 - .../test/h5stat/testfiles/h5stat_err_refcount.err | 1 + tools/test/h5stat/testfiles/h5stat_help1.ddl | 10 + tools/test/h5stat/testfiles/h5stat_help2.ddl | 10 + tools/test/h5stat/testfiles/h5stat_nofile.ddl | 11 +- tools/test/h5stat/testfiles/h5stat_nofile.err | 1 + tools/test/h5stat/testfiles/h5stat_notexist.ddl | 1 - tools/test/h5stat/testfiles/h5stat_notexist.err | 1 + tools/test/h5stat/testh5stat.sh.in | 36 +- tools/test/misc/CMakeLists.txt | 50 +- tools/test/misc/CMakeTestsClear.cmake | 354 +- tools/test/misc/CMakeTestsMkgrp.cmake | 124 +- tools/test/misc/CMakeTestsRepart.cmake | 57 +- tools/test/misc/h5clear_gentest.c | 140 +- tools/test/misc/h5perf_gentest.c | 666 +- tools/test/misc/repart_test.c | 21 +- tools/test/misc/talign.c | 34 +- tools/test/misc/testfiles/h5clear_missing_file.ddl | 1 - tools/test/misc/testfiles/h5clear_missing_file.err | 1 + tools/test/misc/testfiles/h5clear_no_mdc_image.ddl | 1 - tools/test/misc/testfiles/h5clear_no_mdc_image.err | 1 + tools/test/misc/testfiles/h5clear_open_fail.ddl | 1 - tools/test/misc/testfiles/h5clear_open_fail.err | 1 + tools/test/misc/testh5clear.sh.in | 72 +- tools/test/misc/testh5repart.sh.in | 6 +- tools/test/misc/vds/CMakeLists.txt | 11 +- tools/test/perform/CMakeLists.txt | 133 +- tools/test/perform/CMakeTests.cmake | 61 +- tools/test/perform/Makefile.am | 4 +- tools/test/perform/chunk_cache.c | 405 + tools/test/perform/iopipe.c | 14 +- tools/test/perform/overhead.c | 6 +- tools/test/perform/perf.c | 33 +- tools/test/perform/perf_meta.c | 28 +- tools/test/perform/pio_engine.c | 137 +- tools/test/perform/pio_perf.c | 344 +- tools/test/perform/pio_standalone.c | 110 - tools/test/perform/pio_standalone.h | 2 + tools/test/perform/sio_engine.c | 125 +- tools/test/perform/sio_perf.c | 254 +- tools/test/perform/sio_standalone.c | 119 - tools/test/perform/sio_standalone.h | 2 + tools/test/perform/zip_perf.c | 6 +- tools/testfiles/err_attr_dspace.ddl | 1 - tools/testfiles/h5dump-help.txt | 10 + tools/testfiles/help-1.ls | 9 + tools/testfiles/help-2.ls | 9 + tools/testfiles/help-3.ls | 9 + tools/testfiles/non_existing.ddl | 1 - tools/testfiles/nosuchfile.ls | 1 - .../pbits/tnofilename-with-packed-bits.ddl | 11 +- tools/testfiles/pbits/tpbitsCharLengthExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsCharOffsetExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsIncomplete.ddl | 11 +- tools/testfiles/pbits/tpbitsIntLengthExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsIntOffsetExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsLengthExceeded.ddl | 11 +- tools/testfiles/pbits/tpbitsLengthPositive.ddl | 11 +- tools/testfiles/pbits/tpbitsLongLengthExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsLongOffsetExceeded.ddl | 1 - tools/testfiles/pbits/tpbitsMaxExceeded.ddl | 11 +- tools/testfiles/pbits/tpbitsOffsetExceeded.ddl | 11 +- tools/testfiles/pbits/tpbitsOffsetNegative.ddl | 11 +- tools/testfiles/t128bit_float.h5 | Bin 0 -> 2160 bytes tools/testfiles/texceedsubblock.ddl | 1 - tools/testfiles/texceedsubcount.ddl | 1 - tools/testfiles/texceedsubstart.ddl | 1 - tools/testfiles/texceedsubstride.ddl | 1 - tools/testfiles/textlinksrc-nodangle-1.ls | 11 +- tools/testfiles/tgroup-1.ls | 11 +- tools/testfiles/tstarfile.ddl | 1 - tools/testfiles/tudlink-2.ddl | 1 - 1215 files changed, 172270 insertions(+), 92419 deletions(-) create mode 100644 bin/Makefile.am create mode 100755 bin/batch/ctest.qsub.in.cmake create mode 100644 bin/batch/ctestP.lsf.in.cmake create mode 100644 bin/batch/ctestP.sl.in.cmake create mode 100644 bin/batch/ctestS.lsf.in.cmake create mode 100644 bin/batch/ctestS.sl.in.cmake create mode 100644 bin/batch/knl_H5detect.sl.in.cmake create mode 100644 bin/batch/knl_ctestP.sl.in.cmake create mode 100644 bin/batch/knl_ctestS.sl.in.cmake create mode 100644 bin/batch/ray_ctestP.lsf.in.cmake create mode 100644 bin/batch/ray_ctestS.lsf.in.cmake create mode 100755 bin/batch/raybsub create mode 100644 bin/h5cc.in create mode 100644 bin/h5redeploy.in create mode 100755 bin/warnhist create mode 100644 c++/test/CMakeVFDTests.cmake mode change 100755 => 100644 config/cmake/CTestScript.cmake delete mode 100644 config/cmake/FindHDFJAVA.cmake.in create mode 100644 config/cmake/FindHDFS.cmake delete mode 100644 config/cmake/FindJNI.cmake delete mode 100644 config/cmake/HDF518_Examples.cmake.in mode change 100755 => 100644 config/cmake/HDF5_Examples_options.cmake mode change 100755 => 100644 config/cmake/libh5cc.in mode change 100755 => 100644 config/cmake/libhdf5.pc.in mode change 100755 => 100644 config/cmake/scripts/CTestScript.cmake mode change 100755 => 100644 config/cmake/scripts/HDF5config.cmake mode change 100755 => 100644 config/cmake/scripts/HDF5options.cmake create mode 100644 config/cmake/scripts/HPC/bsub-HDF5options.cmake create mode 100644 config/cmake/scripts/HPC/qsub-HDF5options.cmake create mode 100644 config/cmake/scripts/HPC/raybsub-HDF5options.cmake create mode 100644 config/cmake/scripts/HPC/sbatch-HDF5options.cmake create mode 100644 config/cmake/volTest.cmake create mode 100644 config/cmake/wait_H5Tinit.cmake create mode 100644 config/toolchain/GCC.cmake create mode 100644 config/toolchain/PGI.cmake create mode 100644 config/toolchain/build32.cmake create mode 100644 config/toolchain/clang.cmake create mode 100644 config/toolchain/crayle.cmake create mode 100644 config/toolchain/intel.cmake create mode 100644 config/toolchain/mingw64.cmake delete mode 100644 examples/h5_ref2reg.c create mode 100644 examples/h5_ref2reg_deprec.c create mode 100644 examples/h5_ref_compat.c create mode 100644 examples/h5_ref_extern.c delete mode 100644 examples/h5_reference.c create mode 100644 examples/h5_reference_deprec.c create mode 100644 fortran/src/H5VLff.F90 create mode 100644 fortran/test/vol_connector.F90 delete mode 100644 hl/tools/testfiles/w-err-cmpd1.ddl create mode 100644 hl/tools/testfiles/w-err-cmpd1.err delete mode 100644 hl/tools/testfiles/w-err-cmpd2.ddl create mode 100644 hl/tools/testfiles/w-err-cmpd2.err delete mode 100644 hl/tools/testfiles/w-err-cmpd3.ddl create mode 100644 hl/tools/testfiles/w-err-cmpd3.err delete mode 100644 hl/tools/testfiles/w-err-cmpd4.ddl create mode 100644 hl/tools/testfiles/w-err-cmpd4.err delete mode 100644 hl/tools/testfiles/w-err-cmpd5.ddl create mode 100644 hl/tools/testfiles/w-err-cmpd5.err delete mode 100644 hl/tools/testfiles/w-err-dset-nomax.ddl create mode 100644 hl/tools/testfiles/w-err-dset-nomax.err delete mode 100644 hl/tools/testfiles/w-err-dset-none.ddl create mode 100644 hl/tools/testfiles/w-err-dset-none.err delete mode 100644 hl/tools/testfiles/w-err-dset1.ddl create mode 100644 hl/tools/testfiles/w-err-dset1.err delete mode 100644 hl/tools/testfiles/w-err-dset2.ddl create mode 100644 hl/tools/testfiles/w-err-dset2.err delete mode 100644 hl/tools/testfiles/w-err-file.ddl create mode 100644 hl/tools/testfiles/w-err-file.err create mode 100644 hl/tools/testfiles/w-err-std.ddl create mode 100644 java/src/hdf/hdf5lib/structs/H5FD_hdfs_fapl_t.java create mode 100644 java/src/hdf/hdf5lib/structs/H5FD_ros3_fapl_t.java create mode 100644 java/src/jni/h5pACPLImp.c create mode 100644 java/src/jni/h5pACPLImp.h create mode 100644 java/src/jni/h5pDAPLImp.c create mode 100644 java/src/jni/h5pDAPLImp.h create mode 100644 java/src/jni/h5pDCPLImp.c create mode 100644 java/src/jni/h5pDCPLImp.h create mode 100644 java/src/jni/h5pDXPLImp.c create mode 100644 java/src/jni/h5pDXPLImp.h create mode 100644 java/src/jni/h5pFAPLImp.c create mode 100644 java/src/jni/h5pFAPLImp.h create mode 100644 java/src/jni/h5pFCPLImp.c create mode 100644 java/src/jni/h5pFCPLImp.h create mode 100644 java/src/jni/h5pGAPLImp.c create mode 100644 java/src/jni/h5pGAPLImp.h create mode 100644 java/src/jni/h5pGCPLImp.c create mode 100644 java/src/jni/h5pGCPLImp.h create mode 100644 java/src/jni/h5pLAPLImp.c create mode 100644 java/src/jni/h5pLAPLImp.h create mode 100644 java/src/jni/h5pLCPLImp.c create mode 100644 java/src/jni/h5pLCPLImp.h create mode 100644 java/src/jni/h5pOCPLImp.c create mode 100644 java/src/jni/h5pOCPLImp.h create mode 100644 java/src/jni/h5pOCpyPLImp.c create mode 100644 java/src/jni/h5pOCpyPLImp.h create mode 100644 java/src/jni/h5pStrCPLImp.c create mode 100644 java/src/jni/h5pStrCPLImp.h create mode 100644 java/src/jni/h5vlImp.c create mode 100644 java/src/jni/h5vlImp.h create mode 100644 java/test/TestH5Pfaplhdfs.java create mode 100644 java/test/TestH5Pfapls3.java create mode 100644 java/test/TestH5VL.java create mode 100644 java/test/testfiles/JUnit-TestH5Pfaplhdfs.txt create mode 100644 java/test/testfiles/JUnit-TestH5Pfapls3.txt create mode 100644 java/test/testfiles/JUnit-TestH5VL.txt create mode 100644 release_docs/README_HDF5_CMake create mode 100644 release_docs/README_HPC delete mode 100644 src/H5AClog.c delete mode 100644 src/H5B2public.h delete mode 100644 src/H5Bpublic.h create mode 100644 src/H5Clog.h create mode 100644 src/H5Clog_json.c create mode 100644 src/H5Clog_trace.c create mode 100644 src/H5ESpublic.h create mode 100644 src/H5FDhdfs.c create mode 100644 src/H5FDhdfs.h create mode 100644 src/H5FDros3.c create mode 100644 src/H5FDros3.h create mode 100644 src/H5FDs3comms.c create mode 100644 src/H5FDs3comms.h delete mode 100644 src/H5FSpublic.h delete mode 100644 src/H5HFpublic.h delete mode 100644 src/H5HGpublic.h delete mode 100644 src/H5HLpublic.h create mode 100644 src/H5M.c create mode 100644 src/H5Mmodule.h create mode 100644 src/H5Mpkg.h create mode 100644 src/H5Mprivate.h create mode 100644 src/H5Mpublic.h create mode 100644 src/H5Ocopy_ref.c create mode 100644 src/H5Pmapl.c create mode 100644 src/H5Pmcpl.c create mode 100644 src/H5Sdeprec.c create mode 100644 src/H5Tref.c create mode 100644 src/H5VL.c create mode 100644 src/H5VLcallback.c create mode 100644 src/H5VLconnector.h create mode 100644 src/H5VLconnector_passthru.h create mode 100644 src/H5VLint.c create mode 100644 src/H5VLmodule.h create mode 100644 src/H5VLnative.c create mode 100644 src/H5VLnative.h create mode 100644 src/H5VLnative_attr.c create mode 100644 src/H5VLnative_blob.c create mode 100644 src/H5VLnative_dataset.c create mode 100644 src/H5VLnative_datatype.c create mode 100644 src/H5VLnative_file.c create mode 100644 src/H5VLnative_group.c create mode 100644 src/H5VLnative_link.c create mode 100644 src/H5VLnative_object.c create mode 100644 src/H5VLnative_private.h create mode 100644 src/H5VLpassthru.c create mode 100644 src/H5VLpassthru.h create mode 100644 src/H5VLpkg.h create mode 100644 src/H5VLprivate.h create mode 100644 src/H5VLpublic.h create mode 100644 src/H5mpi.c create mode 100644 src/bsdqueue.h create mode 100644 test/CMakePassthroughVOLTests.cmake create mode 100644 test/del_many_dense_attrs.c create mode 100644 test/external_common.c create mode 100644 test/external_common.h create mode 100644 test/external_env.c create mode 100644 test/external_fname.h create mode 100644 test/fill18.h5 create mode 100644 test/hdfs.c create mode 100644 test/memleak_H5O_dtype_decode_helper_H5Odtype.h5 create mode 100644 test/null_vol_connector.c create mode 100644 test/null_vol_connector.h create mode 100644 test/objcopy_ref.c create mode 100644 test/ros3.c create mode 100644 test/s3comms.c delete mode 100644 test/test_filenotclosed.sh.in create mode 100644 test/test_vol_plugin.sh.in create mode 100644 test/testabort_fail.sh.in create mode 100644 test/testexternal_env.sh.in create mode 100644 test/testvds_env.sh.in create mode 100644 test/trefer_deprec.c create mode 100644 test/vds_env.c create mode 100644 test/vol.c create mode 100644 test/vol_plugin.c create mode 100644 testpar/CMakeVFDTests.cmake create mode 100644 testpar/testpflush.sh.in create mode 100644 tools/libtest/CMakeLists.txt create mode 100644 tools/libtest/CMakeTests.cmake create mode 100644 tools/libtest/Makefile.am create mode 100644 tools/libtest/h5tools_test_utils.c delete mode 100644 tools/src/misc/h5cc.in delete mode 100644 tools/src/misc/h5redeploy.in create mode 100644 tools/test/h5copy/testfiles/h5copy_misc1.err create mode 100644 tools/test/h5diff/testfiles/dangling_link.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_454_ERR.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_454_ERR.txt delete mode 100644 tools/test/h5diff/testfiles/h5diff_455_ERR.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_455_ERR.txt delete mode 100644 tools/test/h5diff/testfiles/h5diff_457_ERR.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_457_ERR.txt delete mode 100644 tools/test/h5diff/testfiles/h5diff_458_ERR.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_458_ERR.txt delete mode 100644 tools/test/h5diff/testfiles/h5diff_459_ERR.err delete mode 100644 tools/test/h5diff/testfiles/h5diff_459_ERR.txt delete mode 100644 tools/test/h5diff/testfiles/h5diff_601_ERR.txt create mode 100644 tools/test/h5diff/testfiles/h5diff_udfail.err create mode 100644 tools/test/h5dump/CMakeVFDTests.cmake create mode 100644 tools/test/h5format_convert/testfiles/h5fc_d_file-d.ddl create mode 100644 tools/test/h5format_convert/testfiles/h5fc_d_file.ddl.err create mode 100644 tools/test/h5format_convert/testfiles/h5fc_dname.err delete mode 100644 tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl create mode 100644 tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl.err delete mode 100644 tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl create mode 100644 tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl.err create mode 100644 tools/test/h5ls/errfiles/nosuchfile.err create mode 100644 tools/test/h5ls/errfiles/textlinksrc-nodangle-1.err create mode 100644 tools/test/h5ls/errfiles/tgroup-1.err create mode 100644 tools/test/h5repack/CMakeVFDTests.cmake create mode 100644 tools/test/h5repack/h5repackgentest.c create mode 100644 tools/test/h5repack/testfiles/h5repack_f32le.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_f32le_ex-0.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_f32le_ex.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_1d.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_1d_ex-0.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_1d_ex-1.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_1d_ex.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_2d.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_2d_ex-0.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_2d_ex.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_3d.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_3d_ex-0.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_int32le_3d_ex.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be.h5 create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be_ex-0.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be_ex-1.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be_ex-2.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be_ex-3.dat create mode 100644 tools/test/h5repack/testfiles/h5repack_uint8be_ex.h5 delete mode 100644 tools/test/h5stat/testfiles/h5stat_err1_dims.ddl create mode 100644 tools/test/h5stat/testfiles/h5stat_err1_dims.err delete mode 100644 tools/test/h5stat/testfiles/h5stat_err1_links.ddl create mode 100644 tools/test/h5stat/testfiles/h5stat_err1_links.err delete mode 100644 tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl create mode 100644 tools/test/h5stat/testfiles/h5stat_err1_numattrs.err delete mode 100644 tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl create mode 100644 tools/test/h5stat/testfiles/h5stat_err2_numattrs.err create mode 100644 tools/test/h5stat/testfiles/h5stat_err_old_fill.err create mode 100644 tools/test/h5stat/testfiles/h5stat_err_old_layout.err create mode 100644 tools/test/h5stat/testfiles/h5stat_err_refcount.err create mode 100644 tools/test/h5stat/testfiles/h5stat_nofile.err create mode 100644 tools/test/h5stat/testfiles/h5stat_notexist.err create mode 100644 tools/test/misc/testfiles/h5clear_missing_file.err delete mode 100644 tools/test/misc/testfiles/h5clear_no_mdc_image.ddl create mode 100644 tools/test/misc/testfiles/h5clear_no_mdc_image.err delete mode 100644 tools/test/misc/testfiles/h5clear_open_fail.ddl create mode 100644 tools/test/misc/testfiles/h5clear_open_fail.err create mode 100644 tools/test/perform/chunk_cache.c create mode 100644 tools/testfiles/t128bit_float.h5 diff --git a/CMakeFilters.cmake b/CMakeFilters.cmake index 71dabb1..5a89564 100644 --- a/CMakeFilters.cmake +++ b/CMakeFilters.cmake @@ -27,7 +27,15 @@ if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MAT set (TGZPATH ${HDF5_SOURCE_DIR}) endif () set (ZLIB_URL ${TGZPATH}/${ZLIB_TGZ_NAME}) + if (NOT EXISTS "${ZLIB_URL}") + set (HDF5_ENABLE_Z_LIB_SUPPORT OFF CACHE BOOL "" FORCE) + message (STATUS "Filter ZLIB file ${ZLIB_URL} not found") + endif () set (SZIP_URL ${TGZPATH}/${SZIP_TGZ_NAME}) + if (NOT EXISTS "${SZIP_URL}") + set (HDF5_ENABLE_SZIP_SUPPORT OFF CACHE BOOL "" FORCE) + message (STATUS "Filter SZIP file ${SZIP_URL} not found") + endif () else () set (ZLIB_USE_EXTERNAL 0) set (SZIP_USE_EXTERNAL 0) diff --git a/CMakeInstallation.cmake b/CMakeInstallation.cmake index 2339049..dc229d2 100644 --- a/CMakeInstallation.cmake +++ b/CMakeInstallation.cmake @@ -33,7 +33,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) EXPORT ${HDF5_EXPORTED_TARGETS} DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5 FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake - NAMESPACE ${HDF5_PACKAGE}:: + NAMESPACE ${HDF_PACKAGE_NAMESPACE} COMPONENT configinstall ) endif () @@ -45,7 +45,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) export ( TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT} FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake - NAMESPACE ${HDF5_PACKAGE}:: + NAMESPACE ${HDF_PACKAGE_NAMESPACE} ) endif () endif () @@ -104,6 +104,12 @@ endif () # Configure the hdf5-config-version .cmake file for the install directory #----------------------------------------------------------------------------- if (NOT HDF5_EXTERNALLY_CONFIGURED) + # 3.11 or greater + #write_basic_package_version_file ( + # ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake + # VERSION ${HDF5_PACKAGE_VERSION} + # COMPATIBILITY SameMinorVersion + #) configure_file ( ${HDF_RESOURCES_DIR}/hdf5-config-version.cmake.in ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake @ONLY @@ -125,7 +131,7 @@ else () endif () configure_file ( ${HDF_RESOURCES_DIR}/libhdf5.settings.cmake.in - ${HDF5_BINARY_DIR}/libhdf5.settings @ONLY + ${HDF5_BINARY_DIR}/libhdf5.settings ESCAPE_QUOTES @ONLY ) install ( FILES ${HDF5_BINARY_DIR}/libhdf5.settings @@ -134,7 +140,7 @@ install ( ) #----------------------------------------------------------------------------- -# Configure the HDF518_Examples.cmake file and the examples +# Configure the HDF5_Examples.cmake file and the examples #----------------------------------------------------------------------------- option (HDF5_PACK_EXAMPLES "Package the HDF5 Library Examples Compressed File" OFF) if (HDF5_PACK_EXAMPLES) @@ -186,7 +192,7 @@ HDF_README_PROPERTIES(HDF5_BUILD_FORTRAN) #----------------------------------------------------------------------------- # Configure the COPYING.txt file for the windows binary package #----------------------------------------------------------------------------- -if (WIN32) +if (WIN32 OR MINGW) configure_file (${HDF5_SOURCE_DIR}/COPYING ${HDF5_BINARY_DIR}/COPYING.txt @ONLY) endif () @@ -206,7 +212,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) ${HDF5_SOURCE_DIR}/release_docs/COPYING ${HDF5_SOURCE_DIR}/release_docs/RELEASE.txt ) - if (WIN32) + if (WIN32 OR MINGW) set (release_files ${release_files} ${HDF5_SOURCE_DIR}/release_docs/USING_HDF5_VS.txt @@ -220,7 +226,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) ${HDF5_SOURCE_DIR}/release_docs/HISTORY-1_8.txt ${HDF5_SOURCE_DIR}/release_docs/INSTALL ) - if (WIN32) + if (WIN32 OR MINGW) set (release_files ${release_files} ${HDF5_SOURCE_DIR}/release_docs/INSTALL_Windows.txt @@ -288,7 +294,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES) set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_EXT_DIR}/hdf.bmp") set (CPACK_GENERATOR "TGZ") - if (WIN32) + if (WIN32 OR MINGW) set (CPACK_GENERATOR "ZIP") if (NSIS_EXECUTABLE) @@ -453,7 +459,7 @@ The HDF5 data model, file format, API, library, and tools are open and distribut if (HDF5_PACKAGE_EXTLIBS) if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ") if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL) - if (WIN32) + if (WIN32 OR MINGW) set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;ALL;/") else () set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;libraries;/") @@ -462,7 +468,7 @@ The HDF5 data model, file format, API, library, and tools are open and distribut endif () endif () if (SZIP_FOUND AND SZIP_USE_EXTERNAL) - if (WIN32) + if (WIN32 OR MINGW) set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${SZIP_INCLUDE_DIR_GEN};SZIP;ALL;/") else () set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${SZIP_INCLUDE_DIR_GEN};SZIP;libraries;/") diff --git a/CMakeLists.txt b/CMakeLists.txt index 53cddf7..7ae0833 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,10 @@ cmake_minimum_required (VERSION 3.10) project (HDF5 C) +if(POLICY CMP0074) + cmake_policy(SET CMP0074 NEW) +endif() + #----------------------------------------------------------------------------- # Instructions for use : Normal Build # @@ -10,7 +14,7 @@ project (HDF5 C) # set CMAKE_INSTALL_PREFIX to the required install path. # Make install can be used to install all components for system-wide use. # -if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") +if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR) MESSAGE(FATAL_ERROR "\nERROR! ${PROJECT_NAME} DOES NOT SUPPORT IN SOURCE BUILDS!\n" "CMAKE_CURRENT_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}" " == CMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}\n" @@ -28,6 +32,12 @@ if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}") ) endif () +# CMake version 3.14 added option --ignore-eol to compare files +# cmake -E compare_files --ignore-eol file1 file2 +#if(CMAKE_VERSION VERSION_LESS "3.14.0" AND WIN32) +# MESSAGE(FATAL_ERROR "Windows builds requires a minimum of CMake 3.14") +#endif() + #----------------------------------------------------------------------------- # Instructions for use : Sub-Project Build # @@ -314,7 +324,7 @@ set (HDF5_PACKAGE_NAME "HDF5") set (HDF5_PACKAGE_VERSION "${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}") set (HDF5_PACKAGE_VERSION_MAJOR "${H5_VERS_MAJOR}.${H5_VERS_MINOR}") set (HDF5_PACKAGE_VERSION_MINOR "${H5_VERS_RELEASE}") -if (NOT "${H5_VERS_SUBRELEASE}" STREQUAL "") +if (H5_VERS_SUBRELEASE) set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}-${H5_VERS_SUBRELEASE}") else () set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}") @@ -416,18 +426,23 @@ set (CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON) # Mac OS X Options #----------------------------------------------------------------------------- if (HDF5_BUILD_FRAMEWORKS AND NOT BUILD_SHARED_LIBS) - set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries") + set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries" FORCE) endif () #----------------------------------------------------------------------------- # Option to Build Shared and Static libs, default is both #----------------------------------------------------------------------------- +option (ONLY_SHARED_LIBS "Only Build Shared Libraries" OFF) +set (H5_ENABLE_STATIC_LIB YES) +if (ONLY_SHARED_LIBS) + set (H5_ENABLE_STATIC_LIB NO) + set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries") +endif () option (BUILD_SHARED_LIBS "Build Shared Libraries" ON) set (H5_ENABLE_SHARED_LIB NO) if (BUILD_SHARED_LIBS) set (H5_ENABLE_SHARED_LIB YES) endif () -set (H5_ENABLE_STATIC_LIB YES) set (CMAKE_POSITION_INDEPENDENT_CODE ON) #----------------------------------------------------------------------------- @@ -482,6 +497,15 @@ if (HDF5_MEMORY_ALLOC_SANITY_CHECK) endif () #----------------------------------------------------------------------------- +# Option to enable/disable using pread/pwrite for VFDs +#----------------------------------------------------------------------------- +option (HDF5_ENABLE_PREADWRITE "Use pread/pwrite in sec2/log/core VFDs in place of read/write (when available)" ON) +mark_as_advanced (HDF5_ENABLE_PREADWRITE) +if (HDF5_ENABLE_PREADWRITE AND H5_HAVE_PREAD AND H5_HAVE_PWRITE) + set (H5_HAVE_PREADWRITE 1) +endif () + +#----------------------------------------------------------------------------- # Option to use deprecated public API symbols #----------------------------------------------------------------------------- option (HDF5_ENABLE_DEPRECATED_SYMBOLS "Enable deprecated public API symbols" ON) @@ -498,7 +522,7 @@ endif () # and we need to call the executable from inside the CMake configuration #----------------------------------------------------------------------------- set (EXE_EXT "") -if (WIN32) +if (WIN32 OR MINGW) set (EXE_EXT ".exe") add_definitions (-D_BIND_TO_CURRENT_VCLIBS_VERSION=1) add_definitions (-D_CRT_SECURE_NO_WARNINGS) @@ -554,6 +578,27 @@ include (${HDF_RESOURCES_DIR}/HDFCompilerFlags.cmake) set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_EXT_DIR} ${CMAKE_MODULE_PATH}) #----------------------------------------------------------------------------- +# Option to Enable HDFS +#----------------------------------------------------------------------------- +option (HDF5_ENABLE_HDFS "Enable HDFS" OFF) +if (HDF5_ENABLE_HDFS) + find_package(JNI REQUIRED) + if (JNI_FOUND) + set (H5_HAVE_LIBJVM 1) + endif () + find_package(HDFS REQUIRED) + if (HDFS_FOUND) + set (H5_HAVE_LIBHDFS 1) + set (H5_HAVE_HDFS_H 1) + if (NOT MSVC) + list (APPEND LINK_LIBS -pthread) + endif () + else () + message (FATAL_ERROR "Set to use libhdfs library, but could not find or use libhdfs. Please verify that the path to HADOOP_HOME is valid, and/or reconfigure without HDF5_ENABLE_HDFS") + endif () +endif () + +#----------------------------------------------------------------------------- # Option to Enable MPI Parallel #----------------------------------------------------------------------------- option (HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF) @@ -601,45 +646,53 @@ if (H5_HAVE_PARALLEL) endif () endif () -set (DEFAULT_API_VERSION "v110") +#option (DEFAULT_API_VERSION "Enable v1.14 API (v16, v18, v110, v112, v114)" "v114") +set (DEFAULT_API_VERSION "v114" CACHE STRING "Enable v1.14 API (v16, v18, v110, v112, v114)") +set_property (CACHE DEFAULT_API_VERSION PROPERTY STRINGS v16 v18 v110 v112 v114) #----------------------------------------------------------------------------- # Option to use 1.6.x API #----------------------------------------------------------------------------- -option (HDF5_USE_16_API_DEFAULT "Use the HDF5 1.6.x API by default" OFF) set (H5_USE_16_API_DEFAULT 0) -if (HDF5_USE_16_API_DEFAULT) +if (DEFAULT_API_VERSION MATCHES "v16") set (H5_USE_16_API_DEFAULT 1) - set (DEFAULT_API_VERSION "v16") endif () #----------------------------------------------------------------------------- # Option to use 1.8.x API #----------------------------------------------------------------------------- -option (HDF5_USE_18_API_DEFAULT "Use the HDF5 1.8.x API by default" OFF) set (H5_USE_18_API_DEFAULT 0) -if (HDF5_USE_18_API_DEFAULT) +if (DEFAULT_API_VERSION MATCHES "v18") set (H5_USE_18_API_DEFAULT 1) - set (DEFAULT_API_VERSION "v18") endif () #----------------------------------------------------------------------------- # Option to use 1.10.x API #----------------------------------------------------------------------------- -option (HDF5_USE_110_API_DEFAULT "Use the HDF5 1.10.x API by default" OFF) set (H5_USE_110_API_DEFAULT 0) -if (HDF5_USE_110_API_DEFAULT) +if (DEFAULT_API_VERSION MATCHES "v110") set (H5_USE_110_API_DEFAULT 1) - set (DEFAULT_API_VERSION "v110") endif () #----------------------------------------------------------------------------- # Option to use 1.12.x API #----------------------------------------------------------------------------- -option (HDF5_USE_112_API_DEFAULT "Use the HDF5 1.12.x API by default" ON) +if (NOT DEFAULT_API_VERSION) + set (DEFAULT_API_VERSION "v112") +endif () set (H5_USE_112_API_DEFAULT 0) -if (HDF5_USE_112_API_DEFAULT) +if (DEFAULT_API_VERSION MATCHES "v112") set (H5_USE_112_API_DEFAULT 1) - set (DEFAULT_API_VERSION "v112") +endif () + +#----------------------------------------------------------------------------- +# Option to use 1.14.x API +#----------------------------------------------------------------------------- +if (NOT DEFAULT_API_VERSION) + set (DEFAULT_API_VERSION "v114") +endif () +set (H5_USE_114_API_DEFAULT 0) +if (DEFAULT_API_VERSION MATCHES "v114") + set (H5_USE_114_API_DEFAULT 1) endif () #----------------------------------------------------------------------------- @@ -668,14 +721,17 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) endif () endif () endif () + #----------------------------------------------------------------------------- # Option to use threadsafe #----------------------------------------------------------------------------- option (HDF5_ENABLE_THREADSAFE "Enable thread-safety" OFF) if (HDF5_ENABLE_THREADSAFE) # check for unsupported options - message (STATUS " **** thread-safety option not supported with static library **** ") - message (STATUS " **** thread-safety option will not be used building static library **** ") + if (WIN32 OR MINGW) + message (STATUS " **** thread-safety option not supported with static library **** ") + message (STATUS " **** thread-safety option will not be used building static library **** ") + endif () if (HDF5_ENABLE_PARALLEL) if (NOT ALLOW_UNSUPPORTED) message (FATAL_ERROR " **** parallel and thread-safety options are not supported **** ") @@ -713,26 +769,38 @@ if (HDF5_ENABLE_THREADSAFE) endif () endif () set(THREADS_PREFER_PTHREAD_FLAG ON) - find_package(Threads) - if (NOT Threads_FOUND) - message (STATUS " **** thread-safe package not found - threads still might work **** ") + find_package(Threads REQUIRED) + if (Threads_FOUND) + set (H5_HAVE_THREADSAFE 1) endif () endif () #----------------------------------------------------------------------------- +# Option to build the map API +#----------------------------------------------------------------------------- +option (HDF5_ENABLE_MAP_API "Build the map API" OFF) +if (HDF5_ENABLE_MAP_API) + set (H5_HAVE_MAP_API 1) +endif () + +#----------------------------------------------------------------------------- # Add the HDF5 Library Target to the build #----------------------------------------------------------------------------- add_subdirectory (src) if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ") if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL) - add_dependencies (${HDF5_LIB_TARGET} ZLIB) + if (NOT ONLY_SHARED_LIBS) + add_dependencies (${HDF5_LIB_TARGET} ZLIB) + endif () if (BUILD_SHARED_LIBS) add_dependencies (${HDF5_LIBSH_TARGET} ZLIB) endif () endif () if (SZIP_FOUND AND SZIP_USE_EXTERNAL) - add_dependencies (${HDF5_LIB_TARGET} SZIP) + if (NOT ONLY_SHARED_LIBS) + add_dependencies (${HDF5_LIB_TARGET} SZIP) + endif () if (BUILD_SHARED_LIBS) add_dependencies (${HDF5_LIBSH_TARGET} SZIP) endif () @@ -745,10 +813,15 @@ endif () option (BUILD_TESTING "Build HDF5 Unit Testing" ON) if (BUILD_TESTING) set (DART_TESTING_TIMEOUT 1200 - CACHE INTEGER + CACHE STRING "Timeout in seconds for each test (default 1200=20minutes)" ) + # Generate a list of timeouts based on DART_TESTING_TIMEOUT + math (EXPR CTEST_SHORT_TIMEOUT "${DART_TESTING_TIMEOUT} / 2") + math (EXPR CTEST_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 2") + math (EXPR CTEST_VERY_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 3") + option (HDF5_TEST_VFD "Execute tests with different VFDs" OFF) mark_as_advanced (HDF5_TEST_VFD) if (HDF5_TEST_VFD) @@ -756,6 +829,13 @@ if (BUILD_TESTING) mark_as_advanced (HDF5_TEST_FHEAP_VFD) endif () + option (HDF5_TEST_PASSTHROUGH_VOL "Execute tests with different passthrough VOL connectors" OFF) + mark_as_advanced (HDF5_TEST_PASSTHROUGH_VOL) + if (HDF5_TEST_PASSTHROUGH_VOL) + option (HDF5_TEST_FHEAP_PASSTHROUGH_VOL "Execute fheap test with different passthrough VOL connectors" ON) + mark_as_advanced (HDF5_TEST_FHEAP_PASSTHROUGH VOL) + endif () + option (HDF_TEST_EXPRESS "Control testing framework (0-3)" "0") mark_as_advanced (HDF_TEST_EXPRESS) @@ -819,25 +899,20 @@ set (H5_FC_FUNC_ "H5_FC_FUNC_(name,NAME) name ## _") if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/fortran") option (HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF) if (HDF5_BUILD_FORTRAN) - - option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON) - include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake) message (STATUS "Fortran compiler ID is ${CMAKE_Fortran_COMPILER_ID}") # Building with PGI requires CMake 3.3 or greater because previous versions # of CMake add the wrong compiler flag for the PGI Fortran compiler. - if ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "PGI" AND "${CMAKE_VERSION}" VERSION_LESS "3.3") + if (CMAKE_Fortran_COMPILER_ID MATCHES "PGI" AND CMAKE_VERSION VERSION_LESS "3.3") message (FATAL_ERROR " **** PGI FORTRAN REQUIRES CMAKE VERSION 3.3 OR GREATER **** ") endif () include (${HDF_RESOURCES_DIR}/HDF5UseFortran.cmake) set (LINK_Fortran_LIBS ${LINK_LIBS}) - if (HDF5_ENABLE_F2003) - if (NOT FORTRAN_HAVE_ISO_C_BINDING) - set (HDF5_ENABLE_F2003 OFF) - endif () + if (NOT H5_FORTRAN_HAVE_ISO_C_BINDING) + message (FATAL_ERROR " **** Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, disable HDF5_BUILD_FORTRAN **** ") endif () # Parallel IO usage requires MPI to be Linked and Included @@ -913,4 +988,10 @@ endif () #----------------------------------------------------------------------------- configure_file (${HDF_RESOURCES_DIR}/H5pubconf.h.in ${HDF5_BINARY_DIR}/H5pubconf.h @ONLY) +#----------------------------------------------------------------------------- +# Options for use by cross compiling and toolchains +#----------------------------------------------------------------------------- +option (HDF5_USE_PREGEN "Use pre-generated Files" OFF) +option (HDF5_BATCH_H5DETECT "Use a batch command for running h5detect" OFF) + include (CMakeInstallation.cmake) diff --git a/COPYING b/COPYING index 560e8c4..659bf1c 100644 --- a/COPYING +++ b/COPYING @@ -3,10 +3,10 @@ HDF5 (Hierarchical Data Format 5) Software Library and Utilities ----------------------------------------------------------------------------- HDF5 (Hierarchical Data Format 5) Software Library and Utilities -Copyright (c) 2006-2018, The HDF Group. +Copyright 2006 by The HDF Group. NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities -Copyright (c) 1998-2006, The Board of Trustees of the University of Illinois. +Copyright 1998-2006 by The Board of Trustees of the University of Illinois. All rights reserved. @@ -80,20 +80,20 @@ and/or accompanying materials: for the operation of UC LLNL. DISCLAIMER: - This work was prepared as an account of work sponsored by an agency of - the United States Government. Neither the United States Government nor - the University of California nor any of their employees, makes any - warranty, express or implied, or assumes any liability or responsibility - for the accuracy, completeness, or usefulness of any information, - apparatus, product, or process disclosed, or represents that its use - would not infringe privately- owned rights. Reference herein to any - specific commercial products, process, or service by trade name, - trademark, manufacturer, or otherwise, does not necessarily constitute - or imply its endorsement, recommendation, or favoring by the United - States Government or the University of California. The views and - opinions of authors expressed herein do not necessarily state or reflect - those of the United States Government or the University of California, - and shall not be used for advertising or product endorsement purposes. + THIS WORK WAS PREPARED AS AN ACCOUNT OF WORK SPONSORED BY AN AGENCY OF + THE UNITED STATES GOVERNMENT. NEITHER THE UNITED STATES GOVERNMENT NOR + THE UNIVERSITY OF CALIFORNIA NOR ANY OF THEIR EMPLOYEES, MAKES ANY + WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY OR RESPONSIBILITY + FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY INFORMATION, + APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS THAT ITS USE + WOULD NOT INFRINGE PRIVATELY- OWNED RIGHTS. REFERENCE HEREIN TO ANY + SPECIFIC COMMERCIAL PRODUCTS, PROCESS, OR SERVICE BY TRADE NAME, + TRADEMARK, MANUFACTURER, OR OTHERWISE, DOES NOT NECESSARILY CONSTITUTE + OR IMPLY ITS ENDORSEMENT, RECOMMENDATION, OR FAVORING BY THE UNITED + STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA. THE VIEWS AND + OPINIONS OF AUTHORS EXPRESSED HEREIN DO NOT NECESSARILY STATE OR REFLECT + THOSE OF THE UNITED STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA, + AND SHALL NOT BE USED FOR ADVERTISING OR PRODUCT ENDORSEMENT PURPOSES. ----------------------------------------------------------------------------- diff --git a/CTestConfig.cmake b/CTestConfig.cmake index 5b35688..4868d07 100644 --- a/CTestConfig.cmake +++ b/CTestConfig.cmake @@ -45,10 +45,10 @@ set (VALGRIND_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds= set (CTEST_MEMORYCHECK_COMMAND "/usr/bin/valgrind") set (CTEST_MEMORYCHECK_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds=yes --num-callers=50 --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe") -set (CTEST_TEST_TIMEOUT 600 CACHE STRING +set (CTEST_TEST_TIMEOUT 1200 CACHE STRING "Maximum time allowed before CTest will kill the test.") -set (DART_TESTING_TIMEOUT 600 CACHE STRING +set (DART_TESTING_TIMEOUT 1200 CACHE STRING "Maximum time allowed before CTest will kill the test." FORCE) -SET(CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING +set (CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING "How long to wait between timed-out CTest submissions.") diff --git a/MANIFEST b/MANIFEST index c9a6706..59d4118 100644 --- a/MANIFEST +++ b/MANIFEST @@ -71,12 +71,15 @@ ./bin/errors _DO_NOT_DISTRIBUTE_ ./bin/genparser ./bin/gcov_script _DO_NOT_DISTRIBUTE_ +./bin/h5cc.in +./bin/h5redeploy.in ./bin/h5vers ./bin/iostats ./bin/locate_sw ./bin/make_err ./bin/make_overflow ./bin/make_vers +./bin/Makefile.am ./bin/makehelp ./bin/mkdirs ./bin/newer @@ -91,7 +94,19 @@ ./bin/switch_maint_mode _DO_NOT_DISTRIBUTE_ ./bin/timekeeper _DO_NOT_DISTRIBUTE_ ./bin/trace +./bin/warnhist _DO_NOT_DISTRIBUTE_ ./bin/yodconfigure +./bin/batch/ctestP.lsf.in.cmake +./bin/batch/ctestP.sl.in.cmake +./bin/batch/ctestS.lsf.in.cmake +./bin/batch/ctestS.sl.in.cmake +./bin/batch/knl_ctestP.sl.in.cmake +./bin/batch/knl_ctestS.sl.in.cmake +./bin/batch/knl_H5detect.sl.in.cmake +./bin/batch/ctest.qsub.in.cmake +./bin/batch/ray_ctestP.lsf.in.cmake +./bin/batch/ray_ctestS.lsf.in.cmake +./bin/batch/raybsub ./bin/pkgscrpts/h5rmflags _DO_NOT_DISTRIBUTE_ ./bin/pkgscrpts/makeHDF5BinaryTarfiles.pl _DO_NOT_DISTRIBUTE_ ./bin/pkgscrpts/makeInternalREADME.pl _DO_NOT_DISTRIBUTE_ @@ -152,8 +167,10 @@ ./examples/h5_select.c ./examples/h5_attribute.c ./examples/h5_mount.c -./examples/h5_reference.c -./examples/h5_ref2reg.c +./examples/h5_ref_compat.c +./examples/h5_ref_extern.c +./examples/h5_reference_deprec.c +./examples/h5_ref2reg_deprec.c ./examples/h5_shared_mesg.c ./examples/ph5example.c ./examples/h5_vds.c @@ -231,6 +248,7 @@ ./fortran/src/H5Sff.F90 ./fortran/src/H5Tf.c ./fortran/src/H5Tff.F90 +./fortran/src/H5VLff.F90 ./fortran/src/H5Zf.c ./fortran/src/H5Zff.F90 ./fortran/src/H5config_f.inc.cmake @@ -250,8 +268,8 @@ ./fortran/src/h5fc.in ./fortran/src/hdf5_fortrandll.def.in - ./fortran/test/Makefile.am +./fortran/test/vol_connector.F90 ./fortran/test/fflush1.F90 ./fortran/test/fflush2.F90 ./fortran/test/fortranlib_test.F90 @@ -447,6 +465,8 @@ ./release_docs/INSTALL_parallel ./release_docs/INSTALL_Warnings.txt ./release_docs/INSTALL_Windows.txt +./release_docs/README_HDF5_CMake +./release_docs/README_HPC ./release_docs/RELEASE.txt ./release_docs/USING_HDF5_CMake.txt ./release_docs/USING_HDF5_VS.txt @@ -463,6 +483,7 @@ ./src/H5err.txt ./src/H5detect.c ./src/H5make_libsettings.c +./src/H5mpi.c ./src/H5overflow.txt ./src/H5private.h ./src/H5public.h @@ -482,7 +503,6 @@ ./src/H5Apublic.h ./src/H5AC.c ./src/H5ACdbg.c -./src/H5AClog.c ./src/H5ACmodule.h ./src/H5ACmpio.c ./src/H5ACpkg.h @@ -495,7 +515,6 @@ ./src/H5Bmodule.h ./src/H5Bpkg.h ./src/H5Bprivate.h -./src/H5Bpublic.h ./src/H5B2.c ./src/H5B2cache.c ./src/H5B2dbg.c @@ -506,7 +525,6 @@ ./src/H5B2module.h ./src/H5B2pkg.h ./src/H5B2private.h -./src/H5B2public.h ./src/H5B2stat.c ./src/H5B2test.c ./src/H5C.c @@ -514,6 +532,9 @@ ./src/H5Cepoch.c ./src/H5Cimage.c ./src/H5Clog.c +./src/H5Clog.h +./src/H5Clog_json.c +./src/H5Clog_trace.c ./src/H5Cmodule.h ./src/H5Cmpio.c ./src/H5Cpkg.h @@ -576,6 +597,7 @@ ./src/H5EAsblock.c ./src/H5EAstat.c ./src/H5EAtest.c +./src/H5ESpublic.h ./src/H5F.c ./src/H5Faccum.c ./src/H5Fcwfs.c @@ -617,6 +639,8 @@ ./src/H5FDdrvr_module.h ./src/H5FDfamily.c ./src/H5FDfamily.h +./src/H5FDhdfs.c +./src/H5FDhdfs.h ./src/H5FDint.c ./src/H5FDlog.c ./src/H5FDlog.h @@ -627,9 +651,13 @@ ./src/H5FDmpio.h ./src/H5FDmulti.c ./src/H5FDmulti.h +./src/H5FDros3.c +./src/H5FDros3.h ./src/H5FDpkg.h ./src/H5FDprivate.h ./src/H5FDpublic.h +./src/H5FDs3comms.h +./src/H5FDs3comms.c ./src/H5FDsec2.c ./src/H5FDsec2.h ./src/H5FDspace.c @@ -652,7 +680,6 @@ ./src/H5FSmodule.h ./src/H5FSpkg.h ./src/H5FSprivate.h -./src/H5FSpublic.h ./src/H5FSsection.c ./src/H5FSstat.c ./src/H5FStest.c @@ -692,7 +719,6 @@ ./src/H5HFmodule.h ./src/H5HFpkg.h ./src/H5HFprivate.h -./src/H5HFpublic.h ./src/H5HFsection.c ./src/H5HFspace.c ./src/H5HFstat.c @@ -704,7 +730,6 @@ ./src/H5HGmodule.h ./src/H5HGpkg.h ./src/H5HGprivate.h -./src/H5HGpublic.h ./src/H5HGquery.c ./src/H5HL.c ./src/H5HLcache.c @@ -715,7 +740,6 @@ ./src/H5HLpkg.h ./src/H5HLprfx.c ./src/H5HLprivate.h -./src/H5HLpublic.h ./src/H5HP.c ./src/H5HPprivate.h ./src/H5I.c @@ -730,6 +754,11 @@ ./src/H5Lpkg.h ./src/H5Lprivate.h ./src/H5Lpublic.h +./src/H5M.c +./src/H5Mmodule.h +./src/H5Mpkg.h +./src/H5Mprivate.h +./src/H5Mpublic.h ./src/H5MF.c ./src/H5MFaggr.c ./src/H5MFdbg.c @@ -762,6 +791,7 @@ ./src/H5Ochunk.c ./src/H5Ocont.c ./src/H5Ocopy.c +./src/H5Ocopy_ref.c ./src/H5Odbg.c ./src/H5Odeprec.c ./src/H5Odrvinfo.c @@ -806,6 +836,8 @@ ./src/H5Pint.c ./src/H5Plapl.c ./src/H5Plcpl.c +./src/H5Pmapl.c +./src/H5Pmcpl.c ./src/H5Pmodule.h ./src/H5Pocpl.c ./src/H5Pocpypl.c @@ -841,6 +873,7 @@ ./src/H5S.c ./src/H5Sall.c ./src/H5Sdbg.c +./src/H5Sdeprec.c ./src/H5Shyper.c ./src/H5Smodule.h ./src/H5Smpio.c @@ -888,11 +921,34 @@ ./src/H5Tprecis.c ./src/H5Tprivate.h ./src/H5Tpublic.h +./src/H5Tref.c ./src/H5Tstrpad.c ./src/H5Tvisit.c ./src/H5Tvlen.c ./src/H5TS.c ./src/H5TSprivate.h +./src/H5VL.c +./src/H5VLcallback.c +./src/H5VLconnector.h +./src/H5VLconnector_passthru.h +./src/H5VLint.c +./src/H5VLmodule.h +./src/H5VLnative.c +./src/H5VLnative.h +./src/H5VLnative_attr.c +./src/H5VLnative_blob.c +./src/H5VLnative_dataset.c +./src/H5VLnative_datatype.c +./src/H5VLnative_file.c +./src/H5VLnative_group.c +./src/H5VLnative_link.c +./src/H5VLnative_object.c +./src/H5VLnative_private.h +./src/H5VLpassthru.c +./src/H5VLpassthru.h +./src/H5VLpkg.h +./src/H5VLprivate.h +./src/H5VLpublic.h ./src/H5VM.c ./src/H5VMprivate.h ./src/H5WB.c @@ -946,12 +1002,14 @@ ./test/cache_image.c ./test/cache_logging.c ./test/cache_tagging.c +./test/chunk_info.c ./test/cmpd_dset.c ./test/cork.c ./test/corrupt_stab_msg.h5 ./test/cross_read.c ./test/dangle.c ./test/deflate.h5 +./test/del_many_dense_attrs.c ./test/direct_chunk.c ./test/dsets.c ./test/dt_arith.c @@ -965,6 +1023,10 @@ ./test/evict_on_close.c ./test/extend.c ./test/external.c +./test/external_common.c +./test/external_common.h +./test/external_env.c +./test/external_fname.h ./test/error_test.c ./test/err_compat.c ./test/filter_error.h5 @@ -982,6 +1044,7 @@ ./test/file_image.c ./test/file_image_core_test.h5 ./test/fill_old.h5 +./test/fill18.h5 ./test/fillval.c ./test/filter_fail.c ./test/filter_plugin.c @@ -1005,6 +1068,7 @@ ./test/gen_deflate.c ./test/gen_file_image.c ./test/gen_filespace.c +./test/gen_filters.c ./test/gen_mergemsg.c ./test/gen_new_array.c ./test/gen_new_fill.c @@ -1032,6 +1096,7 @@ ./test/h5fc_ext_none.h5 ./test/h5test.c ./test/h5test.h +./test/hdfs.c ./test/hyperslab.c ./test/istore.c ./test/le_data.h5 @@ -1039,6 +1104,7 @@ ./test/le_extlink2.h5 ./test/lheap.c ./test/links.c +./test/memleak_H5O_dtype_decode_helper_H5Odtype.h5 ./test/mergemsg.h5 ./test/mf.c ./test/mount.c @@ -1048,13 +1114,18 @@ ./test/noencoder.h5 ./test/none.h5 ./test/ntypes.c +./test/null_vol_connector.c +./test/null_vol_connector.h ./test/ohdr.c ./test/objcopy.c +./test/objcopy_ref.c ./test/page_buffer.c ./test/paged_nopersist.h5 ./test/paged_persist.h5 ./test/reserved.c +./test/ros3.c ./test/pool.c +./test/s3comms.c ./test/set_extent.c # ====distribute this for now. See HDFFV-8236==== ./test/space_overflow.c @@ -1083,21 +1154,26 @@ ./test/tcheck_version.c ./test/tconfig.c ./test/tcoords.c +./test/testabort_fail.sh.in ./test/testcheck_version.sh.in +./test/testexternal_env.sh.in ./test/testerror.sh.in ./test/testlinks_env.sh.in -./test/test_filenotclosed.sh.in ./test/test_filter_plugin.sh.in +./test/test_filters_le.h5 +./test/test_filters_be.h5 ./test/testflushrefresh.sh.in ./test/testframe.c ./test/testhdf5.c ./test/testhdf5.h ./test/testlibinfo.sh.in ./test/test_usecases.sh.in +./test/test_vol_plugin.sh.in ./test/testmeta.c ./test/testswmr.sh.in ./test/testvdsswmr.sh.in ./test/testvfdswmr.sh.in +./test/testvds_env.sh.in ./test/tfile.c ./test/tgenprop.c ./test/th5o.c @@ -1113,6 +1189,7 @@ ./test/tmtimeo.h5 ./test/ttime.c ./test/trefer.c +./test/trefer_deprec.c ./test/trefstr.c ./test/tselect.c ./test/tsizeslheap.h5 @@ -1136,12 +1213,8 @@ ./test/use_common.c ./test/use_disable_mdc_flushes.c ./test/use.h -./test/vfd.c -./test/test_filters_le.h5 -./test/test_filters_be.h5 -./test/gen_filters.c -./test/chunk_info.c ./test/vds.c +./test/vds_env.c ./test/vds_swmr.h ./test/vds_swmr_gen.c ./test/vds_swmr_reader.c @@ -1152,6 +1225,10 @@ ./test/vfd_swmr_generator.c ./test/vfd_swmr_reader.c ./test/vfd_swmr_writer.c +./test/vfd.c +./test/vol.c +./test/vol_plugin.c + ./test/testfiles/err_compat_1 ./test/testfiles/err_compat_2 ./test/testfiles/error_test_1 @@ -1281,6 +1358,7 @@ ./testpar/t_span_tree.c ./testpar/t_init_term.c ./testpar/testpar.h +./testpar/testpflush.sh.in ./testpar/testphdf5.c ./testpar/testphdf5.h @@ -1387,14 +1465,17 @@ ./tools/test/h5format_convert/testfiles/h5fc_v_err.ddl.err ./tools/test/h5format_convert/testfiles/h5fc_v_non_chunked.ddl ./tools/test/h5format_convert/testfiles/h5fc_d_file.ddl +./tools/test/h5format_convert/testfiles/h5fc_d_file.ddl.err +./tools/test/h5format_convert/testfiles/h5fc_d_file-d.ddl ./tools/test/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl ./tools/test/h5format_convert/testfiles/h5fc_dname.ddl -./tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl +./tools/test/h5format_convert/testfiles/h5fc_dname.err +./tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl.err +./tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl.err ./tools/test/h5format_convert/testfiles/h5fc_help.ddl ./tools/test/h5format_convert/testfiles/h5fc_v_all.ddl ./tools/test/h5format_convert/testfiles/h5fc_nooption.ddl ./tools/test/h5format_convert/testfiles/h5fc_v_n_1d.ddl -./tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl ./tools/test/h5format_convert/testfiles/h5fc_non_v3.h5 ./tools/test/h5format_convert/testfiles/h5fc_edge_v3.h5 ./tools/test/h5format_convert/testfiles/h5fc_err_level.h5 @@ -1445,6 +1526,7 @@ ./tools/test/h5repack/dynlib_rpk.c ./tools/test/h5repack/dynlib_vrpk.c ./tools/test/h5repack/h5repack.sh.in +./tools/test/h5repack/h5repackgentest.c ./tools/test/h5repack/h5repack_plugin.sh.in ./tools/test/h5repack/h5repacktst.c ./tools/test/h5repack/testh5repack_detect_szip.c @@ -1464,6 +1546,11 @@ ./tools/test/h5ls/vds_prefix/tvds-4.ls ./tools/test/h5ls/vds_prefix/tvds-5.ls +# h5ls test error files +./tools/test/h5ls/errfiles/nosuchfile.err +./tools/test/h5ls/errfiles/textlinksrc-nodangle-1.err +./tools/test/h5ls/errfiles/tgroup-1.err + # h5copy sources ./tools/src/h5copy/Makefile.am ./tools/src/h5copy/h5copy.c @@ -1499,12 +1586,13 @@ ./tools/lib/io_timer.c ./tools/lib/io_timer.h +./tools/libtest/Makefile.am +./tools/libtest/h5tools_test_utils.c + ./tools/src/misc/Makefile.am -./tools/src/misc/h5cc.in ./tools/src/misc/h5clear.c ./tools/src/misc/h5debug.c ./tools/src/misc/h5mkgrp.c -./tools/src/misc/h5redeploy.in ./tools/src/misc/h5repart.c ./tools/test/misc/Makefile.am ./tools/test/misc/h5repart_gentest.c @@ -1519,10 +1607,11 @@ ./tools/test/misc/testfiles/h5clear_less_after_size.ddl ./tools/test/misc/testfiles/h5clear_less_before_size.ddl ./tools/test/misc/testfiles/h5clear_missing_file.ddl +./tools/test/misc/testfiles/h5clear_missing_file.err ./tools/test/misc/testfiles/h5clear_noclose_after_size.ddl ./tools/test/misc/testfiles/h5clear_noclose_before_size.ddl -./tools/test/misc/testfiles/h5clear_no_mdc_image.ddl -./tools/test/misc/testfiles/h5clear_open_fail.ddl +./tools/test/misc/testfiles/h5clear_no_mdc_image.err +./tools/test/misc/testfiles/h5clear_open_fail.err ./tools/test/misc/testfiles/h5clear_status_noclose_after_size.ddl ./tools/test/misc/testfiles/h5clear_usage.ddl ./tools/test/misc/testfiles/h5clear_user_equal_after_size.ddl @@ -1576,10 +1665,6 @@ ./tools/test/h5stat/testh5stat.sh.in ./tools/test/h5stat/testfiles/h5stat_dims1.ddl ./tools/test/h5stat/testfiles/h5stat_dims2.ddl -./tools/test/h5stat/testfiles/h5stat_err1_dims.ddl -./tools/test/h5stat/testfiles/h5stat_err1_links.ddl -./tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl -./tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl ./tools/test/h5stat/testfiles/h5stat_err_old_fill.h5 ./tools/test/h5stat/testfiles/h5stat_err_old_fill.ddl ./tools/test/h5stat/testfiles/h5stat_err_old_layout.h5 @@ -1617,6 +1702,15 @@ ./tools/test/h5stat/testfiles/h5stat_threshold.h5 ./tools/test/h5stat/testfiles/h5stat_tsohm.ddl ./tools/test/h5stat/testfiles/h5stat_tsohm.h5 +./tools/test/h5stat/testfiles/h5stat_err_refcount.err +./tools/test/h5stat/testfiles/h5stat_err_old_layout.err +./tools/test/h5stat/testfiles/h5stat_err_old_fill.err +./tools/test/h5stat/testfiles/h5stat_err1_dims.err +./tools/test/h5stat/testfiles/h5stat_err1_links.err +./tools/test/h5stat/testfiles/h5stat_err1_numattrs.err +./tools/test/h5stat/testfiles/h5stat_err2_numattrs.err +./tools/test/h5stat/testfiles/h5stat_notexist.err +./tools/test/h5stat/testfiles/h5stat_nofile.err # h5dump test files ./tools/testfiles/charsets.h5 @@ -1648,6 +1742,7 @@ ./tools/testfiles/h5dump-help.txt ./tools/testfiles/non_existing.ddl ./tools/testfiles/packedbits.ddl +./tools/testfiles/t128bit_float.h5 ./tools/testfiles/taindices.h5 ./tools/testfiles/tall-1.ddl ./tools/testfiles/tall-2.ddl @@ -2278,7 +2373,6 @@ ./tools/test/h5diff/testfiles/h5diff_600.txt ./tools/test/h5diff/testfiles/h5diff_601.txt ./tools/test/h5diff/testfiles/h5diff_601_ERR.err -./tools/test/h5diff/testfiles/h5diff_601_ERR.txt ./tools/test/h5diff/testfiles/h5diff_603.txt ./tools/test/h5diff/testfiles/h5diff_604.txt ./tools/test/h5diff/testfiles/h5diff_605.txt @@ -2385,21 +2479,12 @@ ./tools/test/h5diff/testfiles/h5diff_452.txt ./tools/test/h5diff/testfiles/h5diff_453.txt ./tools/test/h5diff/testfiles/h5diff_454.txt -./tools/test/h5diff/testfiles/h5diff_454_ERR.err -./tools/test/h5diff/testfiles/h5diff_454_ERR.txt +./tools/test/h5diff/testfiles/dangling_link.err ./tools/test/h5diff/testfiles/h5diff_455.txt -./tools/test/h5diff/testfiles/h5diff_455_ERR.err -./tools/test/h5diff/testfiles/h5diff_455_ERR.txt ./tools/test/h5diff/testfiles/h5diff_456.txt ./tools/test/h5diff/testfiles/h5diff_457.txt -./tools/test/h5diff/testfiles/h5diff_457_ERR.err -./tools/test/h5diff/testfiles/h5diff_457_ERR.txt ./tools/test/h5diff/testfiles/h5diff_458.txt -./tools/test/h5diff/testfiles/h5diff_458_ERR.err -./tools/test/h5diff/testfiles/h5diff_458_ERR.txt ./tools/test/h5diff/testfiles/h5diff_459.txt -./tools/test/h5diff/testfiles/h5diff_459_ERR.err -./tools/test/h5diff/testfiles/h5diff_459_ERR.txt ./tools/test/h5diff/testfiles/h5diff_465.txt ./tools/test/h5diff/testfiles/h5diff_466.txt ./tools/test/h5diff/testfiles/h5diff_467.txt @@ -2489,6 +2574,7 @@ ./tools/test/h5diff/testfiles/tudfilter.h5 ./tools/test/h5diff/testfiles/tudfilter2.h5 ./tools/test/h5diff/testfiles/h5diff_ud.txt +./tools/test/h5diff/testfiles/h5diff_udfail.err ./tools/test/h5diff/testfiles/h5diff_udfail.txt ./tools/test/h5diff/testfiles/diff_strings1.h5 ./tools/test/h5diff/testfiles/diff_strings2.h5 @@ -2508,12 +2594,25 @@ ./tools/test/h5repack/testfiles/h5repack_early.h5 ./tools/test/h5repack/testfiles/h5repack_ext.bin ./tools/test/h5repack/testfiles/h5repack_ext.h5 +./tools/test/h5repack/testfiles/h5repack_f32le.h5 +./tools/test/h5repack/testfiles/h5repack_f32le_ex-0.dat +./tools/test/h5repack/testfiles/h5repack_f32le_ex.h5 ./tools/test/h5repack/testfiles/h5repack_fill.h5 ./tools/test/h5repack/testfiles/h5repack_filters.h5 ./tools/test/h5repack/testfiles/h5repack_fletcher.h5 ./tools/test/h5repack/testfiles/h5repack_fsm_aggr_nopersist.h5 ./tools/test/h5repack/testfiles/h5repack_fsm_aggr_persist.h5 ./tools/test/h5repack/testfiles/h5repack_hlink.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_1d.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_1d_ex-0.dat +./tools/test/h5repack/testfiles/h5repack_int32le_1d_ex-1.dat +./tools/test/h5repack/testfiles/h5repack_int32le_1d_ex.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_2d.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_2d_ex-0.dat +./tools/test/h5repack/testfiles/h5repack_int32le_2d_ex.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_3d.h5 +./tools/test/h5repack/testfiles/h5repack_int32le_3d_ex-0.dat +./tools/test/h5repack/testfiles/h5repack_int32le_3d_ex.h5 ./tools/test/h5repack/testfiles/h5repack.info ./tools/test/h5repack/testfiles/h5repack_layout.h5 ./tools/test/h5repack/testfiles/h5repack_layouto.h5 @@ -2532,6 +2631,12 @@ ./tools/test/h5repack/testfiles/h5repack_shuffle.h5 ./tools/test/h5repack/testfiles/h5repack_soffset.h5 ./tools/test/h5repack/testfiles/h5repack_szip.h5 +./tools/test/h5repack/testfiles/h5repack_uint8be.h5 +./tools/test/h5repack/testfiles/h5repack_uint8be_ex-0.dat +./tools/test/h5repack/testfiles/h5repack_uint8be_ex-1.dat +./tools/test/h5repack/testfiles/h5repack_uint8be_ex-2.dat +./tools/test/h5repack/testfiles/h5repack_uint8be_ex-3.dat +./tools/test/h5repack/testfiles/h5repack_uint8be_ex.h5 ./tools/test/h5repack/testfiles/ublock.bin ./tools/test/h5repack/testfiles/crtorder.tordergr.h5.ddl ./tools/test/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl @@ -2589,6 +2694,7 @@ ./tools/test/h5copy/testfiles/h5copy_extlinks_src.h5 ./tools/test/h5copy/testfiles/h5copy_extlinks_trg.h5 ./tools/test/h5copy/testfiles/h5copy_extlinks_src.out.ls +./tools/test/h5copy/testfiles/h5copy_misc1.err ./tools/test/h5copy/testfiles/h5copy_misc1.out ./tools/test/h5copy/testfiles/h5copytst_new.h5 ./tools/test/h5copy/testfiles/h5copytst_new.out.ls @@ -2618,6 +2724,7 @@ ./tools/test/perform/build_h5perf_alone.sh ./tools/test/perform/build_h5perf_serial_alone.sh ./tools/test/perform/chunk.c +./tools/test/perform/chunk_cache.c ./tools/test/perform/direct_write_perf.c ./tools/test/perform/gen_report.pl ./tools/test/perform/iopipe.c @@ -2756,16 +2863,17 @@ # expected test output from testing h5watch # -./hl/tools/testfiles/w-err-cmpd1.ddl -./hl/tools/testfiles/w-err-cmpd2.ddl -./hl/tools/testfiles/w-err-cmpd3.ddl -./hl/tools/testfiles/w-err-cmpd4.ddl -./hl/tools/testfiles/w-err-cmpd5.ddl -./hl/tools/testfiles/w-err-dset1.ddl -./hl/tools/testfiles/w-err-dset2.ddl -./hl/tools/testfiles/w-err-dset-nomax.ddl -./hl/tools/testfiles/w-err-dset-none.ddl -./hl/tools/testfiles/w-err-file.ddl +./hl/tools/testfiles/w-err-std.ddl +./hl/tools/testfiles/w-err-cmpd1.err +./hl/tools/testfiles/w-err-cmpd2.err +./hl/tools/testfiles/w-err-cmpd3.err +./hl/tools/testfiles/w-err-cmpd4.err +./hl/tools/testfiles/w-err-cmpd5.err +./hl/tools/testfiles/w-err-dset1.err +./hl/tools/testfiles/w-err-dset2.err +./hl/tools/testfiles/w-err-dset-nomax.err +./hl/tools/testfiles/w-err-dset-none.err +./hl/tools/testfiles/w-err-file.err ./hl/tools/testfiles/w-err-poll0.ddl ./hl/tools/testfiles/w-err-poll.ddl ./hl/tools/testfiles/w-err-width.ddl @@ -2867,6 +2975,32 @@ ./java/src/jni/h5oImp.h ./java/src/jni/h5pImp.c ./java/src/jni/h5pImp.h +./java/src/jni/h5pACPLImp.c +./java/src/jni/h5pACPLImp.h +./java/src/jni/h5pDAPLImp.c +./java/src/jni/h5pDAPLImp.h +./java/src/jni/h5pDCPLImp.c +./java/src/jni/h5pDCPLImp.h +./java/src/jni/h5pDXPLImp.c +./java/src/jni/h5pDXPLImp.h +./java/src/jni/h5pFAPLImp.c +./java/src/jni/h5pFAPLImp.h +./java/src/jni/h5pFCPLImp.c +./java/src/jni/h5pFCPLImp.h +./java/src/jni/h5pGAPLImp.c +./java/src/jni/h5pGAPLImp.h +./java/src/jni/h5pGCPLImp.c +./java/src/jni/h5pGCPLImp.h +./java/src/jni/h5pLAPLImp.c +./java/src/jni/h5pLAPLImp.h +./java/src/jni/h5pLCPLImp.c +./java/src/jni/h5pLCPLImp.h +./java/src/jni/h5pOCPLImp.c +./java/src/jni/h5pOCPLImp.h +./java/src/jni/h5pOCpyPLImp.c +./java/src/jni/h5pOCpyPLImp.h +./java/src/jni/h5pStrCPLImp.c +./java/src/jni/h5pStrCPLImp.h ./java/src/jni/h5plImp.c ./java/src/jni/h5plImp.h ./java/src/jni/h5rImp.c @@ -2875,6 +3009,8 @@ ./java/src/jni/h5sImp.h ./java/src/jni/h5tImp.c ./java/src/jni/h5tImp.h +./java/src/jni/h5vlImp.c +./java/src/jni/h5vlImp.h ./java/src/jni/h5zImp.c ./java/src/jni/h5zImp.h @@ -2941,6 +3077,8 @@ ./java/src/hdf/hdf5lib/structs/H5AC_cache_config_t.java ./java/src/hdf/hdf5lib/structs/H5E_error2_t.java ./java/src/hdf/hdf5lib/structs/H5F_info2_t.java +./java/src/hdf/hdf5lib/structs/H5FD_hdfs_fapl_t.java +./java/src/hdf/hdf5lib/structs/H5FD_ros3_fapl_t.java ./java/src/hdf/hdf5lib/structs/H5G_info_t.java ./java/src/hdf/hdf5lib/structs/H5L_info_t.java ./java/src/hdf/hdf5lib/structs/H5O_hdr_info_t.java @@ -3104,6 +3242,8 @@ ./java/test/testfiles/JUnit-TestH5P.txt ./java/test/testfiles/JUnit-TestH5PData.txt ./java/test/testfiles/JUnit-TestH5Pfapl.txt +./java/test/testfiles/JUnit-TestH5Pfaplhdfs.txt +./java/test/testfiles/JUnit-TestH5Pfapls3.txt ./java/test/testfiles/JUnit-TestH5Plist.txt ./java/test/testfiles/JUnit-TestH5Pvirtual.txt ./java/test/testfiles/JUnit-TestH5PL.txt @@ -3113,6 +3253,7 @@ ./java/test/testfiles/JUnit-TestH5Tparams.txt ./java/test/testfiles/JUnit-TestH5Tbasic.txt ./java/test/testfiles/JUnit-TestH5T.txt +./java/test/testfiles/JUnit-TestH5VL.txt ./java/test/testfiles/JUnit-TestH5Z.txt ./java/test/h5ex_g_iterate.orig ./java/test/TestH5.java @@ -3141,6 +3282,8 @@ ./java/test/TestH5P.java ./java/test/TestH5PData.java ./java/test/TestH5Pfapl.java +./java/test/TestH5Pfaplhdfs.java +./java/test/TestH5Pfapls3.java ./java/test/TestH5Plist.java ./java/test/TestH5Pvirtual.java ./java/test/TestH5PL.java @@ -3150,6 +3293,7 @@ ./java/test/TestH5Tparams.java ./java/test/TestH5Tbasic.java ./java/test/TestH5T.java +./java/test/TestH5VL.java ./java/test/TestH5Z.java ./java/test/TestAll.java @@ -3161,14 +3305,21 @@ ./java/lib/ext/slf4j-simple-1.7.25.jar # CMake-specific Files +./config/toolchain/build32.cmake +./config/toolchain/clang.cmake +./config/toolchain/crayle.cmake +./config/toolchain/GCC.cmake +./config/toolchain/intel.cmake +./config/toolchain/mingw64.cmake +./config/toolchain/PGI.cmake + ./config/cmake/cacheinit.cmake ./config/cmake/CMakeFindJavaCommon.cmake ./config/cmake/ConversionTests.c ./config/cmake/ConfigureChecks.cmake ./config/cmake/CPack.Info.plist.in ./config/cmake/CTestCustom.cmake -./config/cmake/FindHDFJAVA.cmake.in -./config/cmake/FindJNI.cmake +./config/cmake/FindHDFS.cmake ./config/cmake/H5cxx_config.h.in ./config/cmake/H5pubconf.h.in ./config/cmake/hdf5-config.cmake.in @@ -3190,6 +3341,8 @@ ./config/cmake/UseJavaSymlinks.cmake ./config/cmake/userblockTest.cmake ./config/cmake/vfdTest.cmake +./config/cmake/volTest.cmake +./config/cmake/wait_H5Tinit.cmake ./config/cmake_ext_mod/ConfigureChecks.cmake ./config/cmake_ext_mod/CTestCustom.cmake @@ -3215,7 +3368,6 @@ # CMake-specific Examples Files ./config/cmake/HDF5_Examples.cmake.in -./config/cmake/HDF518_Examples.cmake.in ./release_docs/USING_CMake_Examples.txt ./CMakeLists.txt @@ -3229,6 +3381,7 @@ ./c++/src/CMakeLists.txt ./c++/test/CMakeLists.txt ./c++/test/CMakeTests.cmake +./c++/test/CMakeVFDTests.cmake ./examples/CMakeLists.txt ./examples/CMakeTests.cmake ./examples/run-all-ex.sh @@ -3266,14 +3419,18 @@ ./hl/tools/h5watch/CMakeTests.cmake ./src/CMakeLists.txt ./test/CMakeLists.txt +./test/CMakePassthroughVOLTests.cmake ./test/CMakeTests.cmake ./test/CMakeVFDTests.cmake ./test/flushrefreshTest.cmake ./test/ShellTests.cmake ./testpar/CMakeLists.txt ./testpar/CMakeTests.cmake +./testpar/CMakeVFDTests.cmake ./tools/CMakeLists.txt ./tools/lib/CMakeLists.txt +./tools/libtest/CMakeLists.txt +./tools/libtest/CMakeTests.cmake ./tools/src/CMakeLists.txt ./tools/test/CMakeLists.txt ./tools/src/h5copy/CMakeLists.txt @@ -3288,6 +3445,7 @@ ./tools/test/h5dump/CMakeTestsPBITS.cmake ./tools/test/h5dump/CMakeTestsXML.cmake ./tools/test/h5dump/CMakeTestsVDS.cmake +./tools/test/h5dump/CMakeVFDTests.cmake ./tools/src/h5format_convert/CMakeLists.txt ./tools/test/h5format_convert/CMakeLists.txt ./tools/test/h5format_convert/CMakeTests.cmake @@ -3304,6 +3462,7 @@ ./tools/src/h5repack/CMakeLists.txt ./tools/test/h5repack/CMakeLists.txt ./tools/test/h5repack/CMakeTests.cmake +./tools/test/h5repack/CMakeVFDTests.cmake ./tools/src/h5stat/CMakeLists.txt ./tools/test/h5stat/CMakeLists.txt ./tools/test/h5stat/CMakeTests.cmake @@ -3323,6 +3482,12 @@ ./config/cmake/scripts/HDF5config.cmake ./config/cmake/scripts/HDF5options.cmake +# CMake-specific HPC Scripts +./config/cmake/scripts/HPC/sbatch-HDF5options.cmake +./config/cmake/scripts/HPC/bsub-HDF5options.cmake +./config/cmake/scripts/HPC/qsub-HDF5options.cmake +./config/cmake/scripts/HPC/raybsub-HDF5options.cmake + # Files generated by autogen ./aclocal.m4 ./bin/compile @@ -3336,6 +3501,7 @@ ./c++/examples/Makefile.in ./c++/Makefile.in ./configure +./bin/Makefile.in ./c++/src/Makefile.in ./c++/test/Makefile.in ./examples/Makefile.in @@ -3386,6 +3552,7 @@ ./testpar/Makefile.in ./tools/Makefile.in ./tools/lib/Makefile.in +./tools/libtest/Makefile.in ./tools/src/Makefile.in ./tools/src/h5copy/Makefile.in ./tools/src/h5diff/Makefile.in diff --git a/Makefile.am b/Makefile.am index e3e5e3d..d96ffe3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -49,11 +49,6 @@ include $(top_srcdir)/config/commence.am # Conditionals. These conditionals are defined during configure # Define each variable to empty if it is not used to placate pmake -if BUILD_PARALLEL_CONDITIONAL - TESTPARALLEL_DIR =testpar -else - TESTPARALLEL_DIR= -endif if BUILD_CXX_CONDITIONAL CXX_DIR =c++ else @@ -74,9 +69,24 @@ if BUILD_HDF5_HL_CONDITIONAL else HDF5_HL_DIR= endif +if BUILD_TESTS_CONDITIONAL + TESTSERIAL_DIR =test +else + TESTSERIAL_DIR= +endif +if BUILD_TESTS_PARALLEL_CONDITIONAL + TESTPARALLEL_DIR =testpar +else + TESTPARALLEL_DIR= +endif +if BUILD_TOOLS_CONDITIONAL + TOOLS_DIR =tools +else + TOOLS_DIR= +endif -SUBDIRS = src test $(TESTPARALLEL_DIR) tools . $(CXX_DIR) $(FORTRAN_DIR) \ - $(JAVA_DIR) $(HDF5_HL_DIR) +SUBDIRS = src $(TESTSERIAL_DIR) $(TESTPARALLEL_DIR) bin $(TOOLS_DIR) . \ + $(CXX_DIR) $(FORTRAN_DIR) $(JAVA_DIR) $(HDF5_HL_DIR) DIST_SUBDIRS = src test testpar tools . c++ fortran hl examples java # Some files generated during configure that should be cleaned @@ -186,6 +196,16 @@ check-vfd: fi; \ done +# Run tests with different passthrough Virtual Object Layer Connectors. +# NOTE: Will only succeed with passthrough VOL connectors that use +# the native VOL connector as the terminal connector. +check-passthrough-vol: + for d in $(SUBDIRS); do \ + if test $$d != .; then \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ + fi; \ + done + # Automake wants to make config.status depend on configure. This # makes sense, but config.status can't always be regenerated # properly, which can cause builds to fail. diff --git a/README.txt b/README.txt index 2d03cc7..88f1df0 100644 --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -HDF5 version 1.11.3 currently under development +HDF5 version 1.13.0 currently under development ------------------------------------------------------------------------------ Please refer to the release_docs/INSTALL file for installation instructions. diff --git a/bin/Makefile.am b/bin/Makefile.am new file mode 100644 index 0000000..a39b695 --- /dev/null +++ b/bin/Makefile.am @@ -0,0 +1,57 @@ +# +# Copyright by The HDF Group. +# Copyright by the Board of Trustees of the University of Illinois. +# All rights reserved. +# +# This file is part of HDF5. The full HDF5 copyright notice, including +# terms governing use, modification, and redistribution, is contained in +# the COPYING file, which can be found at the root of the source code +# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. +# If you do not have access to either file, you may request a copy from +# help@hdfgroup.org. +## +## Makefile.am +## Run automake to generate a Makefile.in from this file. +# +# HDF5 Library Makefile(.in) +# + +include $(top_srcdir)/config/commence.am + +# Include src directory +AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib + +# These are our main targets +bin_SCRIPTS=h5redeploy + +# Tell automake to clean h5redeploy script +CLEANFILES=h5redeploy + +# These were generated by configure. Remove them only when distclean. +DISTCLEANFILES=h5cc + +# All programs rely on hdf5 library and h5tools library +LDADD=$(LIBH5TOOLS) $(LIBHDF5) + +# How to build h5redeploy script +h5redeploy: h5redeploy.in + @cp $(srcdir)/$@.in $@ + +# h5cc needs custom install and uninstall rules, since it may be +# named h5pcc if hdf5 is being built in parallel mode. +if BUILD_PARALLEL_CONDITIONAL + H5CC_NAME=h5pcc +else + H5CC_NAME=h5cc +endif + +$(DESTDIR)$(bindir): + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; + +install-exec-local: $(DESTDIR)$(bindir) + @$(INSTALL) h5cc $(DESTDIR)$(bindir)/$(H5CC_NAME) +uninstall-local: + @$(RM) $(DESTDIR)$(bindir)/$(H5CC_NAME) + +include $(top_srcdir)/config/conclude.am diff --git a/bin/batch/ctest.qsub.in.cmake b/bin/batch/ctest.qsub.in.cmake new file mode 100755 index 0000000..702fca7 --- /dev/null +++ b/bin/batch/ctest.qsub.in.cmake @@ -0,0 +1,21 @@ +#!/bin/bash -l +if [ $# -gt 0 ]; then + SUMMARY_FILE=$1 +fi +ACCOUNT_ID=@ACCOUNT_ID@ + +echo "Run parallel test command. Test output will be in build/${SUMMARY_FILE}" +CTEST_CMD=`which ctest` + +#SKIPTESTS <> + +cd @HDF5_BINARY_DIR@ +if [[ $SUMMARY_FILE == *"ctestS"* ]]; then + CMD="${CTEST_CMD} . -E MPI_TEST_ -C Release -j 32 -T test" +else + CMD="${CTEST_CMD} . -R MPI_TEST_ ${SKIP_TESTS} -C Release -T test" +fi + +qsub -t 60 -n 1 -q debug-flat-quad -A ${ACCOUNT_ID} ${CMD} >& ${SUMMARY_FILE} + +echo "Done running ctest parallel command." diff --git a/bin/batch/ctestP.lsf.in.cmake b/bin/batch/ctestP.lsf.in.cmake new file mode 100644 index 0000000..3fdd5ce --- /dev/null +++ b/bin/batch/ctestP.lsf.in.cmake @@ -0,0 +1,19 @@ +#!/bin/tcsh +### LSF syntax +#BSUB -nnodes 1 #number of nodes +#BSUB -W 30 #walltime in minutes +#BSUB -G guests #account +#BSUB -e ctestPerrors.txt #stderr +#BSUB -o ctestPoutput.txt #stdout +#BSUB -J hdf5_ctestP #job +##BSUB -q pbatch #queue to use +#BSUB -q pdebug + +##date; hostname +##echo -n 'JobID is '; echo $LSB_JOBID + +cd @HDF5_BINARY_DIR@ +echo "Run parallel test command. Test output will be in build/ctestP.out" +ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out + +echo "Done running ctest parallel command." diff --git a/bin/batch/ctestP.sl.in.cmake b/bin/batch/ctestP.sl.in.cmake new file mode 100644 index 0000000..6399de7 --- /dev/null +++ b/bin/batch/ctestP.sl.in.cmake @@ -0,0 +1,14 @@ +#!/bin/bash + +#SBATCH --nodes=1 +#SBATCH -t 00:30:00 +#SBATCH --mail-type=BEGIN,END,FAIL +##SBATCH --mail-user=@sandia.gov +#SBATCH --export=ALL +#SBATCH --job-name=h5_ctestP + +cd @HDF5_BINARY_DIR@ +ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out + +echo "Done running ctestP.sl" + diff --git a/bin/batch/ctestS.lsf.in.cmake b/bin/batch/ctestS.lsf.in.cmake new file mode 100644 index 0000000..a01d39b --- /dev/null +++ b/bin/batch/ctestS.lsf.in.cmake @@ -0,0 +1,18 @@ +#!/bin/tcsh +### LSF syntax +#BSUB -nnodes 1 #number of nodes +#BSUB -W 29 #walltime in minutes +#BSUB -G guests #account +#BSUB -e ctestSerrors.txt #stderr +#BSUB -o ctestSoutput.txt #stdout +#BSUB -J hdf5_ctestS #job +##BSUB -q pbatch #queue to use +#BSUB -q pdebug + +cd @HDF5_BINARY_DIR@ +echo "Run command. Test output will be in build/ctestS.out" +ctest . -E MPI_TEST_ -C Release -j 32 -T test >& ctestS.out + +##$CMD >& ctestS.out +echo "Done running command." + diff --git a/bin/batch/ctestS.sl.in.cmake b/bin/batch/ctestS.sl.in.cmake new file mode 100644 index 0000000..4f96bb9 --- /dev/null +++ b/bin/batch/ctestS.sl.in.cmake @@ -0,0 +1,15 @@ +#!/bin/bash + +#SBATCH --nodes=1 +#SBATCH -t 00:30:00 +#SBATCH --mail-type=BEGIN,END,FAIL +##SBATCH --mail-user=@sandia.gov +#SBATCH --export=ALL +#SBATCH --job-name=h5_ctestS + +cd @HDF5_BINARY_DIR@ +CMD="ctest . -E MPI_TEST_ -C Release -j 32 -T test" + +echo "Run $CMD. Test output will be in build/ctestS.out" +$CMD >& ctestS.out +echo "Done running $CMD" diff --git a/bin/batch/knl_H5detect.sl.in.cmake b/bin/batch/knl_H5detect.sl.in.cmake new file mode 100644 index 0000000..39a3ef3 --- /dev/null +++ b/bin/batch/knl_H5detect.sl.in.cmake @@ -0,0 +1,20 @@ +#!/bin/bash + +#SBATCH -p knl -C quad +#SBATCH --nodes=1 +#SBATCH -t 00:10:00 +#SBATCH --mail-type=BEGIN,END,FAIL +#SBATCH --mail-user=@sandia.gov +#SBATCH --export=ALL +#SBATCH --job-name=knl_h5detect + + +# Inputs: Build directory, output file name, executable file name (username/email if available). +PROGNAME=H5detect +OUTPUT=H5Tinit.c + +CMD="@HDF5_BINARY_DIR@/bin/${PROGNAME} @HDF5_GENERATED_SOURCE_DIR@/${OUTPUT}" +echo "Run $CMD" +srun -n 1 $CMD +echo "Done running $CMD" + diff --git a/bin/batch/knl_ctestP.sl.in.cmake b/bin/batch/knl_ctestP.sl.in.cmake new file mode 100644 index 0000000..f985fbb --- /dev/null +++ b/bin/batch/knl_ctestP.sl.in.cmake @@ -0,0 +1,16 @@ +#!/bin/bash + +#SBATCH -p knl -C quad,cache +#SBATCH --nodes=1 +#SBATCH -t 00:30:00 +#SBATCH --mail-type=BEGIN,END,FAIL +##SBATCH --mail-user=@sandia.gov +#SBATCH --export=ALL +#SBATCH --job-name=h5_ctestP + +cd @HDF5_BINARY_DIR@ +#run parallel tests except t_cache_image test +ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out + +echo "Done running $CMD" + diff --git a/bin/batch/knl_ctestS.sl.in.cmake b/bin/batch/knl_ctestS.sl.in.cmake new file mode 100644 index 0000000..af6353b --- /dev/null +++ b/bin/batch/knl_ctestS.sl.in.cmake @@ -0,0 +1,17 @@ +#!/bin/bash + +#SBATCH -p knl -C quad,cache +#SBATCH --nodes=1 +#SBATCH -t 00:30:00 +#SBATCH --mail-type=BEGIN,END,FAIL +##SBATCH --mail-user=@sandia.gov +#SBATCH --export=ALL +#SBATCH --job-name=h5_ctestS + +cd @HDF5_BINARY_DIR@ +CMD="ctest . -E MPI_TEST_ -C Release -j 32 -T test" + +echo "Run $CMD. Test output will be in build/ctestS.out" +$CMD >& ctestS.out +echo "Done running $CMD" + diff --git a/bin/batch/ray_ctestP.lsf.in.cmake b/bin/batch/ray_ctestP.lsf.in.cmake new file mode 100644 index 0000000..7067a65 --- /dev/null +++ b/bin/batch/ray_ctestP.lsf.in.cmake @@ -0,0 +1,20 @@ +#!/bin/tcsh +### LSF syntax +#BSUB -n 6 #number of nodes +#BSUB -R "span[ptile=6]" +#BSUB -W 30 #walltime in minutes +#BSUB -G guests #account +#BSUB -e ctestPerrors.txt #stderr +#BSUB -o ctestPoutput.txt #stdout +#BSUB -J hdf5_ctestP #job +##BSUB -q pbatch #queue to use +#BSUB -q pdebug + +##date; hostname +##echo -n 'JobID is '; echo $LSB_JOBID + +cd @HDF5_BINARY_DIR@ +echo "Run parallel test command. Test output will be in build/ctestP.out" +ctest . -R 'MPI_TEST_' -C Release -T test >& ctestP.out + +echo "Done running ctest parallel command." diff --git a/bin/batch/ray_ctestS.lsf.in.cmake b/bin/batch/ray_ctestS.lsf.in.cmake new file mode 100644 index 0000000..da20438 --- /dev/null +++ b/bin/batch/ray_ctestS.lsf.in.cmake @@ -0,0 +1,18 @@ +#!/bin/tcsh +### LSF syntax +#BSUB -n 1 #number of nodes +#BSUB -W 29 #walltime in minutes +#BSUB -G guests #account +#BSUB -e ctestSerrors.txt #stderr +#BSUB -o ctestSoutput.txt #stdout +#BSUB -J hdf5_ctestS #job +##BSUB -q pbatch #queue to use +#BSUB -q pdebug + +cd @HDF5_BINARY_DIR@ +echo "Run command. Test output will be in build/ctestS.out" +ctest . -E 'MPI_TEST_' -C Release -j 32 -T test >& ctestS.out + +##$CMD >& ctestS.out +echo "Done running command." + diff --git a/bin/batch/raybsub b/bin/batch/raybsub new file mode 100755 index 0000000..19dceef --- /dev/null +++ b/bin/batch/raybsub @@ -0,0 +1,7 @@ +#!/bin/tcsh + +# ray.llnl.gov requires a '<' with bsub for submitting .lsf batch jobs. +# CMake is reluctant to pass the '<', so we put it in this script and use +# the script to submit the bsub command on ray. + +bsub < $1 diff --git a/bin/checkposix b/bin/checkposix index 821d78c..233d15c 100755 --- a/bin/checkposix +++ b/bin/checkposix @@ -14,101 +14,165 @@ use warnings; # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -# Robb Matzke, matzke@llnl.gov -# 30 Aug 1997 +# Dana Robinson +# Spring 2019 +# (Original by Robb Matzke) # -# Purpose: Given the names of C source files this script will print the -# file name, line number, and function name of any function that -# doesn't begin with the letter `h' or `H' as stipulated by the -# HDF5 programming style guide. +# Purpose: Given the names of C source files this script will print the +# file name, line number, and function name of any function that +# doesn't begin with the letter 'h' or 'H' as stipulated by the +# HDF5 programming style guide. # -# Emacs users can run this script as the compile command and -# use `next-error' (usually bound to M-`) to find each name -# violation. - -if(<>) { - if($ARGV =~ /\//) { - ($filename) = ($ARGV =~ /^.*\/([A-Za-z0-9_]*)\.c$/); - } else { - ($filename) = ($ARGV =~ /([A-Za-z0-9_]*)\.c$/); +# Emacs users can run this script as the compile command and +# use 'next-error' (usually bound to M-`) to find each name +# violation. + +use File::Basename; + +# Loop over all files passed to the function +foreach $arg (@ARGV) { + + # Get the filename from the path + $filename = fileparse($arg); + + # Skip files that don't include H5private.h + # H5system. has to be inspected by hand since it wraps POSIX files + # + # H5detect and H5make_libsettings are created before the library exists + # so calls that link to function replacements won't work. We'll ignore + # it here. + # + # If a user specifies one file, process it no matter what so people + # can inspect files we normally skip (like H5system.c). + if($#ARGV gt 0 and $filename =~ /H5FDmulti|H5FDstdio|H5VLpassthru|H5system|H5detect|H5make_libsettings/) { + print "$filename is exempt from using Standard library macro wrappers\n"; + next; } - if($filename =~ /H5FDmulti|H5FDstdio/) { - print "$ARGV is exempt from using Standard library macro wrappers\n"; - } else { - while (<>) { - - # Get rid of comments by removing the inside part. - s|/\*.*?\*/||g; - if ($in_comment) { - if (/\*\//) { - s|.*?\*/||; - $in_comment = 0; - } else { - $_="\n"; - } - } elsif (m|/\*|) { - s|/\*.*||; - $in_comment = 1; - } - - # Get rid of string constants if they begin and end on this line. - s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g; - - # Get rid of preprocessor directives - s/^\#.*//; - - # Skip callbacks invoked as methods in a struct - next if $_ =~ /\b(\)?->|\.)\(?([a-z_A-Z]\w*)\s*\(/; - - # Now find all function calls on this line which don't start with 'H' - while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) { - $_ = $'; + # Open the file + open(my $fh, "<", $arg) or do { + warn "NOTE: Unable to open $arg: !$\n"; + next; + }; + + # Loop over all lines in the file to find undecorated functions + while (<$fh>) { + + # Get rid of comments by removing the inside part. + s|/\*.*?\*/||g; + if ($in_comment) { + if (/\*\//) { + s|.*?\*/||; + $in_comment = 0; + } else { + $_="\n"; + } + } elsif (m|/\*|) { + s|/\*.*||; + $in_comment = 1; + } + + # Get rid of string constants if they begin and end on this line. + s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g; + + # Get rid of preprocessor directives + s/^\#.*//; + + # Skip callbacks invoked as methods in a struct + next if $_ =~ /\b(\)?]?->|\.)\(?([a-z_A-Z]\w*)\s*\(/; + + # Now find all function calls on this line which don't start with 'H' + while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) { + $_ = $'; - # Ignore C statements that look sort of like function - # calls. - next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/; - - # Ignore things that get misdetected because of the simplified - # parsing that takes place here. - next if $name =~ /^(int|herr_t|_term_interface)$/; - - # These are really HDF5 functions/macros even though they don't - # start with `h' or `H'. - next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT)?(_NOFUNC|_TAG)?$/; - next if $name =~ /^(BEGIN|END)_FUNC$/; - next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/; - next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/; - next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/; - next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/; - next if $name =~ /^(UNIQUE_MEMBERS)$/; - next if $name =~ /^addr_defined$/; - - # These functions/macros are exempt. - next if $name =~ /^(main|[fs]?printf|va_(start|arg|end))$/; - - # These are Windows system calls. Ignore them. - next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/; - next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|Wgetlogin|GetUserName)$/; - - # These are MPI function calls. Ignore them. - next if $name =~ /^(MPI_|MPE_)/; - - # These are POSIX threads function calls. Ignore them. - next if $name =~ /^pthread_/; - - # These are Windows threads function calls. Ignore them. - next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/; - - # These are zlib & szlib function calls. Ignore them. - next if $name =~ /^(inflate|SZ_)/; - next if $name =~ /^compress2$/; - - print "$ARGV:$.: $name\n"; - } - - } continue { - close ARGV if eof; # reset line number + # Ignore C statements that look sort of like function + # calls. + next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/; + + # Ignore things that get misdetected because of the simplified + # parsing that takes place here. + next if $name =~ /^(int|herr_t|_term_interface|_term_package)$/; + + # These are really HDF5 functions/macros even though they don't + # start with `h' or `H'. + next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT)?(_NOFUNC|_TAG)?$/; + next if $name =~ /^(BEGIN|END)_FUNC$/; + next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/; + next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/; + next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/; + next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/; + next if $name =~ /^(UNIQUE_MEMBERS|S_ISDIR)$/; + next if $name =~ /^addr_defined$/; + + # These functions/macros are exempt. + # op, cb, and OP are often spuriously flagged so ignore them. + next if $name =~ /^(main|op|cb|OP)$/; + + # This often appears in preprocessor lines that span multiple lines + next if $name =~ /^(defined)$/; + + # These are Windows system calls. Ignore them. + next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/; + next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|Wgetlogin|GetUserName)$/; + next if $name =~ /^(DeleteCriticalSection|TlsFree|TlsGetValue|CreateThread)$/; + next if $name =~ /^(ExpandEnvironmentStringsA|LockFileEx|UnlockFileEx)$/; + next if $name =~ /^(DllMain|LocalAlloc|LocalFree)$/; + next if $name =~ /^(FindFirstFileA|FindNextFileA)$/; + next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/; + + # These are MPI function calls. Ignore them. + next if $name =~ /^(MPI_|MPE_)/; + + # These are POSIX threads function calls. Ignore them. + next if $name =~ /^pthread_/; + + # These are zlib & szlib function calls. Ignore them. + next if $name =~ /^(inflate|SZ_)/; + next if $name =~ /^compress2$/; + + # These is an H5Dfill function. Ignore it in this file. + if($filename =~ /H5Dfill/) { + next if $name =~ /^(alloc_func)$/; + } + + # These are H5Zscaleoffset functions. Ignore them in this file. + if($filename =~ /H5Zscaleoffset/) { + next if $name =~ /^(pow_fun|round_fun|abs_fun|lround_fun|llround_fun)$/; + } + + # TESTING (not comprehensive - just noise reduction) + + # Test macros and functions (testhdf5.h) + next if $name =~ /^(AddTest|TestErrPrintf|TestSummary|TestCleanup|TestShutdown)$/; + next if $name =~ /^(CHECK|CHECK_PTR|CHECK_PTR_NULL|CHECK_PTR_EQ|CHECK_I)$/; + next if $name =~ /^(VERIFY|VERIFY_STR|VERIFY|TYPE|MESSAGE|ERROR)$/; + + # Test macros and functions (h5test.h) + next if $name =~ /^(TESTING|PASSED|SKIPPED|FAIL_PUTS_ERROR|FAIL_STACK_ERROR|TEST_ERROR)$/; + next if $name =~ /^(GetTestExpress)$/; + + # Ignore functions that start with test_ or check_ + next if $name =~ /^test_/; + next if $name =~ /^check_/; + + # Ignore functions that start with h5_ + next if $name =~ /^h5_/; + + # Ignore usage functions + next if $name =~ /^usage$/; + + print "$filename:$.: $name\n"; } + } + + # Close the file + close($fh); +} + +if($#ARGV gt 0) { + print "\n"; + print "NOTE:\n"; + print "If any files were skipped due to being exempt, you can inspect them manually\n"; + print "by using this script on them one at a time, which will always process the file.\n"; } diff --git a/bin/genparser b/bin/genparser index 8cf6ec2..e6aee5b 100755 --- a/bin/genparser +++ b/bin/genparser @@ -218,7 +218,7 @@ perl -0777 -pi -e 's/int H5LTyyparse/hid_t H5LTyyparse/igs' ${path_to_hl_src}/H5 # will simply ignore them, but we want to avoid those warnings. for f in ${path_to_hl_src}/H5LTparse.c ${path_to_hl_src}/H5LTanalyze.c do - echo '#if __GNUC__ >= 4 && __GNUC_MINOR__ >=2 ' >> tmp.out + echo '#if defined __GNUC__ && 402 <= __GNUC__ * 100 + __GNUC_MINOR__ ' >> tmp.out echo '#pragma GCC diagnostic ignored "-Wconversion" ' >> tmp.out echo '#pragma GCC diagnostic ignored "-Wimplicit-function-declaration" ' >> tmp.out echo '#pragma GCC diagnostic ignored "-Wlarger-than=" ' >> tmp.out diff --git a/bin/h5cc.in b/bin/h5cc.in new file mode 100644 index 0000000..9c4e3ca --- /dev/null +++ b/bin/h5cc.in @@ -0,0 +1,399 @@ +#! /bin/sh +## +# Copyright by The HDF Group. +# Copyright by the Board of Trustees of the University of Illinois. +# All rights reserved. +# +# This file is part of HDF5. The full HDF5 copyright notice, including +# terms governing use, modification, and redistribution, is contained in +# the COPYING file, which can be found at the root of the source code +# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. +# If you do not have access to either file, you may request a copy from +# help@hdfgroup.org. +## + +# This tool is adapted from the mpicc command of the MPICH Software. + +############################################################################ +## ## +## Things You May Have to Modify: ## +## ## +## If the following paths don't point to the place were HDF5 is installed ## +## on your system (i.e., you received a binary distribution or moved the ## +## files from the originally installed directory to another directory) ## +## then modify them accordingly to represent the new paths. ## +## ## +############################################################################ +prefix="@prefix@" +exec_prefix="@exec_prefix@" +libdir="@libdir@" +includedir="@includedir@" +HL="@HL@" + +############################################################################ +## ## +## Things You Can Modify to Override HDF5 Library Build Components: ## +## ## +## (Advanced usage - know what you're doing - you're on your own here.) ## +## The four variables below can be used to insert paths and flags in ## +## CPPFLAGS, CFLAGS, LDFLAGS, or LIBS in the h5cc compile line: ## +## $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS ## +## $LIBS $clibpath $link_objs $link_args $shared_link ## +## ## +## These settings can be overriden by setting HDF5_CFLAGS, ## +## HDF5_CPPFLAGS, HDF5_LDFLAGS, or HDF5_LIBS in the environment. ## +## ## +############################################################################ +CFLAGSBASE="" +CPPFLAGSBASE="" +LDFLAGSBASE="" +LIBSBASE="" + +############################################################################ +## ## +## You shouldn't have to modify anything below this line. ## +## ## +############################################################################ + +# Constants definitions +EXIT_SUCCESS=0 +EXIT_FAILURE=1 + +host_os="@host_os@" + +prog_name="`basename $0`" + +allargs="" +compile_args="" +libraries="" +link_args="" +link_objs="" +clibpath="" + +do_link="yes" +do_compile="no" +dash_o="no" +dash_c="no" +get_output_file="no" + +SHOW="eval" +CCBASE="@CC@" +CLINKERBASE="@CC@" + +# CFLAGS, CPPFLAGS and LDFLAGS are reserved for use by the script user. +# FLAGS brought from the hdf5 build are put in H5BLD_*FLAGS. + +# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's +# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and +# before the hdf5 libraries in $link_args, followed by any external library +# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in +# from the hdf5 build. The order of the flags is intended to give precedence +# to the user's flags. +H5BLD_CFLAGS="@AM_CFLAGS@ @CFLAGS@" +H5BLD_CPPFLAGS="@AM_CPPFLAGS@ @CPPFLAGS@" +H5BLD_LDFLAGS="@AM_LDFLAGS@ @LDFLAGS@" +H5BLD_LIBS="@LIBS@" + +CC="${HDF5_CC:-$CCBASE}" +CLINKER="${HDF5_CLINKER:-$CLINKERBASE}" +CFLAGS="${HDF5_CFLAGS:-$CFLAGSBASE}" +CPPFLAGS="${HDF5_CPPFLAGS:-$CPPFLAGSBASE}" +LDFLAGS="${HDF5_LDFLAGS:-$LDFLAGSBASE}" +LIBS="${HDF5_LIBS:-$LIBSBASE}" + +# If a static library is available, the default will be to use it. If the only +# available library is shared, it will be used by default. The user can +# override either default, although choosing an unavailable library will result +# in link errors. +STATIC_AVAILABLE="@enable_static@" +if test "${STATIC_AVAILABLE}" = "yes"; then + USE_SHARED_LIB="${HDF5_USE_SHLIB:-no}" +else + USE_SHARED_LIB="${HDF5_USE_SHLIB:-yes}" +fi + + +usage() { + # A wonderfully informative "usage" message. + echo "usage: $prog_name [OPTIONS] " + echo " OPTIONS:" + echo " -help This help message." + echo " -echo Show all the shell commands executed" + echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/" + echo " subdirectories [default: $prefix]" + # A wonderfully informative "usage" message. + echo "usage: $prog_name [OPTIONS] " + echo " OPTIONS:" + echo " -help This help message." + echo " -echo Show all the shell commands executed" + echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/" + echo " subdirectories [default: $prefix]" + echo " -show Show the commands without executing them" + echo " -showconfig Show the HDF5 library configuration summary" + echo " -shlib Compile with shared HDF5 libraries [default for hdf5 built" + echo " without static libraries]" + echo " -noshlib Compile with static HDF5 libraries [default for hdf5 built" + echo " with static libraries]" + echo " " + echo " - the normal compile line options for your compiler." + echo " $prog_name uses the same compiler you used to compile" + echo " HDF5. Check with your compiler's man pages for more" + echo " information on which options are needed." + echo " " + echo " You can override the compiler, linker, and whether or not to use static" + echo " or shared libraries to compile your program by setting the following" + echo " environment variables accordingly:" + echo " " + echo " HDF5_CC - use a different C compiler" + echo " HDF5_CLINKER - use a different linker" + echo " HDF5_USE_SHLIB=[yes|no] - use shared or static version of the HDF5 library" + echo " [default: no except when built with only" + echo " shared libraries]" + echo " " + echo " You can also add or change paths and flags to the compile line using" + echo " the following environment varibles or by assigning them to their counterparts" + echo " in the 'Things You Can Modify to Override...'" section of $prog_name + echo " " + echo " Variable Current value to be replaced" + echo " HDF5_CPPFLAGS \"$CPPFLAGSBASE\"" + echo " HDF5_CFLAGS \"$CFLAGSBASE\"" + echo " HDF5_LDFLAGS \"$LDFLAGSBASE\"" + echo " HDF5_LIBS \"$LIBSBASE\"" + echo " " + echo " Note that adding library paths to HDF5_LDFLAGS where another hdf5 version" + echo " is located may link your program with that other hdf5 library version." + echo " " + exit $EXIT_FAILURE +} + +# Show the configuration summary of the library recorded in the +# libhdf5.settings file reside in the lib directory. +showconfigure() +{ + cat ${libdir}/libhdf5.settings + status=$? +} + +# Main +status=$EXIT_SUCCESS + +if test "$#" = "0"; then + # No parameters specified, issue usage statement and exit. + usage +fi + +case "$CC" in + gcc) + kind="gcc" + ;; + mpicc|mpcc|mpicc_r) + # Is this gcc masquarading as an MPI compiler? + if test "`${CC} -v 2>&1 | sed -n 2p | cut -c1-3`" = "gcc"; then + kind="gcc" + else + # Nope + kind="$host_os" + fi + ;; + *) + kind="$host_os" + ;; +esac + +for arg in $@ ; do + if test "x$get_output_file" = "xyes"; then + link_args="$link_args $arg" + output_file="$arg" + get_output_file="no" + continue + fi + + case "$arg" in + -c) + allargs="$allargs $arg" + compile_args="$compile_args $arg" + + if test "x$do_link" = "xyes" -a -n "$output_file"; then + compile_args="$compile_args -o $output_file" + fi + + do_link="no" + dash_c="yes" + ;; + -o) + allargs="$allargs $arg" + dash_o="yes" + + if test "x$dash_c" = "xyes"; then + compile_args="$compile_args $arg" + else + link_args="$link_args $arg" + do_link="yes" + get_output_file="yes" + fi + ;; + -E|-M|-MT) + allargs="$allargs $arg" + compile_args="$compile_args $arg" + dash_c="yes" + do_link="no" + ;; + -l*) + libraries=" $libraries $arg " + allargs="$allargs $arg" + ;; + -prefix=*) + prefix="`expr "$arg" : '-prefix=\(.*\)'`" + ;; + -echo) + set -x + ;; + -show) + SHOW="echo" + ;; + -showconfig) + showconfigure + exit $status + ;; + -shlib) + USE_SHARED_LIB="yes" + ;; + -noshlib) + USE_SHARED_LIB="no" + ;; + -help) + usage + ;; + *\"*) + qarg="'"$arg"'" + allargs="$allargs $qarg" + ;; + *\'*) + qarg='\"'"$arg"'\"' + allargs="$allargs $qarg" + ;; + *) + allargs="$allargs $qarg" + + if test -s "$arg"; then + ext=`expr "$arg" : '.*\(\..*\)'` + + if test "x$ext" = "x.c"; then + do_compile="yes" + compile_args="$compile_args $arg" + fname=`basename $arg .c` + link_objs="$link_objs $fname.o" + elif test "x$ext" = "x.o"; then + if test "x$dash_c" = "xyes"; then + compile_args="$compile_args $arg" + else + do_link="yes" + link_objs="$link_objs $arg" + fi + elif test "x$ext" = "x.a"; then + # This is an archive that we're linking in + libraries=" $libraries $arg " + else + compile_args="$compile_args $arg" + link_args="$link_args $arg" + fi + else + compile_args="$compile_args $arg" + link_args="$link_args $arg" + fi + ;; + esac +done + +if test "$dash_c" = "yes" -a "$do_compile" = no -a "$do_link" = no ; then + # -c was specified. Force do_compile on. + do_compile=yes +fi + +if test "x$do_compile" = "xyes"; then + if test "x$dash_c" != "xyes"; then + compile_args="-c $compile_args" + fi + + $SHOW $CC -I$includedir $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $compile_args + status=$? + + if test "$status" != "0"; then + exit $status + fi +fi + +if test "x$do_link" = "xyes"; then + shared_link="" +# conditionnaly link with the hl library + if test "X$HL" = "Xhl"; then + libraries=" $libraries -lhdf5_hl -lhdf5 " + else + libraries=" $libraries -lhdf5 " + fi + link_args="$link_args -L${libdir}" + + case "$kind" in + gcc|linux*) + # MacOS X doesn't support the "-Wl,-rpath -Wl," style of linker flags. + # It appears to want none of them specified. + case "$host_os" in + darwin*) flag="" ;; + *) flag="-Wl,-rpath -Wl," ;; + esac + ;; + hpux*) flag="-Wl,+b -Wl," ;; + freebsd*|solaris*) flag="-R" ;; + rs6000*|aix*) flag="-L" ;; + sgi) flag="-rpath " ;; + *) flag="" ;; + esac + + if test -n "$flag"; then + shared_link="${flag}${libdir}" + fi + + if test "x$USE_SHARED_LIB" != "xyes"; then + # The "-lhdf5" & "-lhdf5_hl" flags are in here already...This is a static + # compile though, so change it to the static version (.a) of the library. + new_libraries="" + for lib in $libraries; do + case "$lib" in + -lhdf5) + new_libraries="$new_libraries ${libdir}/libhdf5.a" + ;; + -lhdf5_hl) + new_libraries="$new_libraries ${libdir}/libhdf5_hl.a" + ;; + *) + new_libraries="$new_libraries $lib" + ;; + esac + done + libraries="$new_libraries" + fi + + for lib in $libraries; do + if echo $link_args | grep " $lib " > /dev/null || + echo $link_args | grep " $lib$" > /dev/null; then + : + else + link_args="$link_args $lib " + fi + done + + # The LIBS are just a bunch of -l* libraries necessary for the HDF5 + # module. It's okay if they're included twice in the compile line. + link_args="$link_args $H5BLD_LDFLAGS $H5BLD_LIBS" + + # User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's + # LDFLAGS come just before clibpath, user's LIBS come after $link_objs and + # before the hdf5 libraries in $link_args, followed by any external library + # paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in + # from the hdf5 build. The order of the flags is intended to give precedence + # to the user's flags. + $SHOW $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args $shared_link + status=$? +fi + +exit $status diff --git a/bin/h5redeploy.in b/bin/h5redeploy.in new file mode 100644 index 0000000..242459a --- /dev/null +++ b/bin/h5redeploy.in @@ -0,0 +1,216 @@ +#! /bin/sh +# +# Copyright by The HDF Group. +# Copyright by the Board of Trustees of the University of Illinois. +# All rights reserved. +# +# This file is part of HDF5. The full HDF5 copyright notice, including +# terms governing use, modification, and redistribution, is contained in +# the COPYING file, which can be found at the root of the source code +# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. +# If you do not have access to either file, you may request a copy from +# help@hdfgroup.org. +# + +## Update HDF5 compiler tools after the HDF5 software has been installed ## +## in a new location. ## +## For help page, use "h5redeploy -help" ## +## ## + +# Constants definitions +EXIT_SUCCESS=0 +EXIT_FAILURE=1 + +# Function definitions + +# show help page +usage() { + # A wonderfully informative "usage" message. + echo "usage: $prog_name [OPTIONS]" + echo " OPTIONS:" + echo " -help|help This help message" + echo " -echo Show all the shell commands executed" + echo " -force No prompt, just do it" + echo " -prefix=DIR New directory to find HDF5 lib/ and include/" + echo " subdirectories [default: current directory]" + echo " -exec-prefix=DIR New directory to find HDF5 lib/" + echo " subdirectory [default: ]" + echo " -libdir=DIR New directory for the HDF5 lib directory" + echo " [default: /lib]" + echo " -includedir=DIR New directory for the HDF5 header files" + echo " [default: /include]" + echo " -tool=TOOL Tool to update. TOOL must be in the current" + echo " directory and writable. [default: $h5tools]" + echo " -show Show the commands without executing them" + echo " " + exit $EXIT_FAILURE +} + +# display variable values +dump_vars(){ + echo "====Showing all variable values=====" + echo prefix=$prefix + echo h5tools=$h5tools + echo "====End Showing=====" +} + +# show actions to be taken +show_action() +{ + echo "Update the following tools because they are now installed at a new directory" + for t in $foundtools; do + echo "${t}:" + echo " current setting=`sed -e '/^prefix=/s/prefix=//p' -e d $t`" + echo " new setting="\""$prefix"\" + done +} + + +# Report Error message +ERROR() +{ + echo "***ERROR***" + echo "$1" +} + +# Main +# +############################################################################ +## Installation directories: ## +## prefix architecture-independent files. ## +## exec_prefix architecture-dependent files, default is . ## +## libdir libraries, default is /lib. ## +## includedir header files, default is . ## +## Not used here: ## +## bindir executables, . ## +############################################################################ +# Initialization +h5tools="h5cc h5pcc h5fc h5pfc h5c++" # possible hdf5 tools +foundtools= # tools found and will be modified +fmode= # force mode, default is off +prefix= +exec_prefix= +libdir= +includedir= + +# Parse options +for arg in $@ ; do + case "$arg" in + -prefix=*) + prefix="`echo $arg | cut -f2 -d=`" + ;; + -exec-prefix=*) + exec_prefix="`echo $arg | cut -f2 -d=`" + ;; + -libdir=*) + libdir="`echo $arg | cut -f2 -d=`" + ;; + -includedir=*) + includedir="`echo $arg | cut -f2 -d=`" + ;; + -echo) + set -x + ;; + -show) + SHOW="echo" + ;; + -tool=*) + h5tools="`echo $arg | cut -f2 -d=`" + ;; + -help|help) + usage + ;; + -force) + fmode=yes + ;; + *) + ERROR "Unknown Option($arg)" + usage + exit $EXIT_FAILURE + ;; + esac +done + +# Set to default value, one above where i am, if not given by user +if [ -z "$prefix" ]; then + prefix=`(cd ..;pwd)` +fi +if [ -z "$exec_prefix" ]; then + exec_prefix='${prefix}' # use single quotes to prevent expansion of $ +fi +if [ -z "$libdir" ]; then + libdir='${exec_prefix}'/lib # use single quotes to prevent expansion of $ +fi +if [ -z "$includedir" ]; then + includedir='${prefix}'/include # use single quotes to prevent expansion of $ +fi + +for x in $h5tools; do + if [ -f $x ]; then + foundtools="$foundtools $x" + if [ ! -w $x ]; then + ERROR "h5tool($x) is not writable" + exit $EXIT_FAILURE + fi + fi +done + +if [ -z "$foundtools" ]; then + ERROR "found no tools to modify" + exit $EXIT_FAILURE +fi + +# Show actions to be taken and get consent +show_action +# Ask confirmation unless fmode is on +if [ x-$fmode = x- ]; then + echo "Continue? (yes/no)" + read ansx + ans=`echo $ansx | tr "[A-Z]" "[a-z]"` + if [ x-$ans != x-yes ]; then + echo ABORT. No tools changed. + exit $EXIT_FAILURE + fi +fi + + +# Create the update commands +CMDFILE=/tmp/h5redeploy.$$ +touch $CMDFILE +chmod 0600 $CMDFILE +echo "/^prefix=/c" >> $CMDFILE +echo prefix=\""$prefix"\" >> $CMDFILE +echo . >> $CMDFILE +echo "/^exec_prefix=/c" >> $CMDFILE +echo exec_prefix=\""$exec_prefix"\" >> $CMDFILE +echo . >> $CMDFILE +echo "/^libdir=/c" >> $CMDFILE +echo libdir=\""$libdir"\" >> $CMDFILE +echo . >> $CMDFILE +echo "/^includedir=/c" >> $CMDFILE +echo includedir=\""$includedir"\" >> $CMDFILE +echo . >> $CMDFILE +(echo w; echo q) >> $CMDFILE + + +# Update them +if [ "$SHOW" = "echo" ]; then + echo "===Update commands are:====" + cat $CMDFILE + echo "===End Update commands=====" +fi + +for t in $foundtools; do + echo Update $t ... + COMMAND="ed - $t" + if [ "$SHOW" = "echo" ]; then + echo $COMMAND + else + $COMMAND < $CMDFILE + fi +done + + +# Cleanup +rm -f $CMDFILE +exit $EXIT_SUCCESS diff --git a/bin/h5vers b/bin/h5vers index a00beb7..4200141 100755 --- a/bin/h5vers +++ b/bin/h5vers @@ -377,7 +377,7 @@ if ($H5_JAVA) { my $version_string2 = sprintf("%d, %d, %d", @newver[0,1,2]); $data =~ s/\@version HDF5 .*
/\@version HDF5 $version_string1
/; - $data =~ s/ public final static int LIB_VERSION\[\] = { \d*, \d*, \d* };/ public final static int LIB_VERSION[] = { $version_string2 };/; + $data =~ s/ public final static int LIB_VERSION\[\] = \{ \d*, \d*, \d* \};/ public final static int LIB_VERSION[] = \{ $version_string2 \};/; write_file($H5_JAVA, $data); } @@ -394,7 +394,7 @@ if ($TESTH5_JAVA) { my $version_string1 = sprintf("%d, %d, %d", @newver[0,1,2]); my $version_string2 = sprintf("int majnum = %d, minnum = %d, relnum = %d", @newver[0,1,2]); - $data =~ s/ int libversion\[\] = { .* };/ int libversion\[\] = { $version_string1 };/; + $data =~ s/ int libversion\[\] = \{ .* \};/ int libversion\[\] = \{ $version_string1 \};/; $data =~ s/ int majnum = \d*, minnum = \d*, relnum = \d*;/ $version_string2;/; write_file($TESTH5_JAVA, $data); @@ -405,7 +405,7 @@ if ($REPACK_LAYOUT_PLUGIN_VERSION) { my $data = read_file($REPACK_LAYOUT_PLUGIN_VERSION); my $version_string = sprintf("%d %d %d", @newver[0,1,2]); - $data =~ s/ PARAMS { 9 \d* \d* \d* }/ PARAMS { 9 $version_string }/g; + $data =~ s/ PARAMS \{ 9 \d* \d* \d* \}/ PARAMS \{ 9 $version_string \}/g; write_file($REPACK_LAYOUT_PLUGIN_VERSION, $data); } diff --git a/bin/make_vers b/bin/make_vers index 8316393..c6d2c04 100755 --- a/bin/make_vers +++ b/bin/make_vers @@ -8,8 +8,8 @@ use warnings; # is added (like support for 1.4, etc), the min_sup_idx parameter will # need to be decremented. - QAK) -# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, etc) -$max_idx = 6; +# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, 7 = 1.14, etc) +$max_idx = 7; # Min. supported previous library version "index" (0 = v1.0, 1 = 1.2, etc) $min_sup_idx = 3; diff --git a/bin/makehelp b/bin/makehelp index d6fbda2..4707397 100755 --- a/bin/makehelp +++ b/bin/makehelp @@ -40,6 +40,7 @@ make distclean: remove all files generated by make, make check, or make check-p: Only run parallel tests make check-s: Only run serial tests make check-vfd: Run tests with each virtual file driver +make check-vol: Run tests with each virtual object layer connector HDF5 uses Automake, so any standard Automake targets not listed here should also work. diff --git a/bin/release b/bin/release index afdbb51..a9cf3f0 100755 --- a/bin/release +++ b/bin/release @@ -55,13 +55,21 @@ for compressing the resulting tar archive (if none are given then tar -- use tar and don't do any compressing. gzip -- use gzip with "-9" and append ".gz" to the output name. + bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name. + zip -- convert all text files to DOS style and form a zip file for Windows use. cmake-tgz -- create a tar file using the gzip default level with a build-unix.sh command file and all other CMake files needed to build HDF5 source using CMake on unix machines. - bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name. - zip -- convert all text files to DOS style and form a zip file for Windows use. cmake-zip -- convert all text files to DOS style and create a zip file inluding cmake scripts and .bat files to build HDF5 source using CMake on Windows. + hpc-cmake-tgz + -- create a tar file using the gzip default level with a build-unix.sh + command file and all other CMake files needed to build HDF5 source + using CMake on unix machines, with HDF5options.cmake files for serial + and parallel builds on machines requiring batch jobs to run tests. + The default is for parallel build, with serial only build by changing + the HDF5options.cmake symlink to ser-HDF5options.cmake. More + information is available in the README_HPC file. doc -- produce the latest doc tree in addition to the archive. An md5 checksum is produced for each archive created and stored in the md5 file. @@ -225,7 +233,7 @@ tar2cmakezip() # step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmziptmpsubdir cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmziptmpsubdir - cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmziptmpsubdir + cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.0-Source.zip $cmziptmpsubdir cp $cmziptmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmziptmpsubdir cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmziptmpsubdir cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmziptmpsubdir @@ -256,7 +264,7 @@ tar2cmakezip() } # Function name: tar2cmaketgz -# Convert the release tarball to a Windows zipball with files to run CMake build. +# Convert the release tarball to a gzipped tar file with files to run CMake build. # # Programmer: Larry Knox # Creation date: 2017-02-20 @@ -320,7 +328,7 @@ tar2cmaketgz() # step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmgztmpsubdir cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir - cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmgztmpsubdir + cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.0-Source.tar.gz $cmgztmpsubdir cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmgztmpsubdir @@ -330,6 +338,93 @@ tar2cmaketgz() rm -rf $cmgztmpdir } +# Function name: tar2hpccmaketgz +# Convert the release tarball to a gzipped tarfile with files to run CMake build +# and HDF5options.cmake files for parallel or serial only builds where build +# tests are run on compute nodes using batch scripts. +# +# Programmer: Larry Knox +# Creation date: 2019-01-28 +# +# Modifications +# +# Steps: +# 1. untar the tarball in a temporary directory; +# Note: do this in a temporary directory to avoid changing +# the original source directory which may be around. +# 2. add build-unix.sh script. +# 3. add SZIP.tar.gz, ZLib.tar.gz and cmake files to top level directory. +# 4. create gzipped tar file with these contents: +# build-unix.sh script +# hdf5- source code directory extracted from tar file +# CTestScript.cmake cmake file copied from /config/cmake/scripts +# HDF5config.cmake cmake file copied from /config/cmake/scripts +# HDF5options.cmake cmake file copied from /config/cmake/scripts +# SZip.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake +# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake +# +# 5. For HPC-CMake tgz file the following are also needed in the top-level directory: +# README_HPC copied from release_docs +# ser-HDF5options.cmake copied from /config/cmake/scripts/HPC +# par-HDF5options.cmake copied from /config/cmake/scripts/HPC +# HDF5options.cmake symlink to par-HDF5options.cmake +# + +# Parameters: +# $1 version +# $2 release tarball +# $3 output zipball file name +# +# Returns 0 if successful; 1 otherwise +# + # need function to create another temporary directory, extract the + # $tmpdir/$HDF5_VERS.tar into it, create build-unix.sh, + # add CTestScript.cmake, HDF5config.cmake, SZIP.tar.gz + # ZLib.tar.gz, HDF5 examples, and then tar.gz it. +tar2hpccmaketgz() +{ + if [ $# -ne 3 ]; then + echo "usage: tar2hpccmaketgz " + return 1 + fi + cmgztmpdir=/tmp/cmgztmpdir$$ + cmgztmpsubdir=$cmgztmpdir/HPC-CMake-$HDF5_VERS + mkdir -p $cmgztmpsubdir + version=$1 + tarfile=$2 + tgzfile=$3 + + # step 1: untar tarball in cmgztmpdir + (cd $cmgztmpsubdir; tar xf -) < $tarfile + # sanity check + if [ ! -d $cmgztmpsubdir/$version ]; then + echo "untar did not create $cmgztmpsubdir/$version source dir" + # cleanup + rm -rf $cmgztmpdir + return 1 + fi + + + # step 2: add build-unix.sh script + (cd $cmgztmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=Unix -C Release -V -O hdf5.log" > build-unix.sh; chmod 755 build-unix.sh) + + # step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files + cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmgztmpsubdir + cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir + cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.0-Source.tar.gz $cmgztmpsubdir + cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir + cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir + + cp $cmgztmpsubdir/$version/release_docs/README_HPC $cmgztmpsubdir + cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/ser-HDF5options.cmake $cmgztmpsubdir + cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/par-HDF5options.cmake $cmgztmpsubdir + (cd $cmgztmpsubdir; ln -s par-HDF5options.cmake HDF5options.cmake) + tar czf $DEST/HPC-CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1 + + # cleanup + rm -rf $cmgztmpdir +} + # This command must be run at the top level of the hdf5 source directory. # Verify this requirement. if [ ! \( -f configure.ac -a -f bin/release \) ]; then @@ -514,6 +609,11 @@ for comp in $methods; do tar2cmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.tar.gz 1>&2 (cd $DEST; md5sum CMake-$HDF5_VERS.tar.gz >> $MD5file) ;; + hpc-cmake-tgz) + test "$verbose" && echo " Creating HPC-CMake tar.gz file..." 1>&2 + tar2hpccmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/HPC-CMake-$HDF5_VERS.tar.gz 1>&2 + (cd $DEST; md5sum HPC-CMake-$HDF5_VERS.tar.gz >> $MD5file) + ;; bzip2) test "$verbose" && echo " Running bzip2..." 1>&2 bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2 diff --git a/bin/snapshot b/bin/snapshot index 5c78fc8..1218caa 100755 --- a/bin/snapshot +++ b/bin/snapshot @@ -130,9 +130,10 @@ DISPLAYUSAGE() set - cat < [diff] [test] [srcdir] [release] [help] - [clean] [distclean] [echo] [deploy ] [deploydir ] - [zlib ] [releasedir ] [srcdirname ] [check-vfd] - [exec ] [module-load ] [op-configure