summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore51
-rw-r--r--CMakeLists.txt8
-rw-r--r--MANIFEST1286
-rwxr-xr-xbin/bbrelease10
-rwxr-xr-xbin/chkcopyright2
-rwxr-xr-xbin/chkmanifest6
-rwxr-xr-xbin/release6
-rw-r--r--c++/src/H5AbstractDs.cpp4
-rw-r--r--c++/src/H5AbstractDs.h4
-rw-r--r--c++/src/H5ArrayType.cpp4
-rw-r--r--c++/src/H5ArrayType.h4
-rw-r--r--c++/src/H5AtomType.cpp4
-rw-r--r--c++/src/H5AtomType.h4
-rw-r--r--c++/src/H5Attribute.cpp10
-rw-r--r--c++/src/H5Attribute.h4
-rw-r--r--c++/src/H5Classes.h4
-rw-r--r--c++/src/H5CommonFG.cpp5
-rw-r--r--c++/src/H5CommonFG.h5
-rw-r--r--c++/src/H5CompType.cpp4
-rw-r--r--c++/src/H5CompType.h4
-rw-r--r--c++/src/H5DataSet.cpp10
-rw-r--r--c++/src/H5DataSet.h4
-rw-r--r--c++/src/H5DataSpace.cpp10
-rw-r--r--c++/src/H5DataSpace.h4
-rw-r--r--c++/src/H5DataType.cpp12
-rw-r--r--c++/src/H5DataType.h4
-rw-r--r--c++/src/H5DcreatProp.cpp4
-rw-r--r--c++/src/H5DcreatProp.h4
-rw-r--r--c++/src/H5DxferProp.cpp4
-rw-r--r--c++/src/H5DxferProp.h4
-rw-r--r--c++/src/H5EnumType.cpp4
-rw-r--r--c++/src/H5EnumType.h4
-rw-r--r--c++/src/H5Exception.cpp5
-rw-r--r--c++/src/H5Exception.h4
-rw-r--r--c++/src/H5FaccProp.cpp4
-rw-r--r--c++/src/H5FaccProp.h4
-rw-r--r--c++/src/H5FcreatProp.cpp4
-rw-r--r--c++/src/H5FcreatProp.h4
-rw-r--r--c++/src/H5File.cpp6
-rw-r--r--c++/src/H5File.h4
-rw-r--r--c++/src/H5FloatType.cpp4
-rw-r--r--c++/src/H5FloatType.h4
-rw-r--r--c++/src/H5Group.cpp6
-rw-r--r--c++/src/H5Group.h4
-rw-r--r--c++/src/H5IdComponent.cpp4
-rw-r--r--c++/src/H5IdComponent.h4
-rw-r--r--c++/src/H5IntType.cpp5
-rw-r--r--c++/src/H5IntType.h4
-rw-r--r--c++/src/H5Library.cpp18
-rw-r--r--c++/src/H5Library.h4
-rw-r--r--c++/src/H5Location.cpp4
-rw-r--r--c++/src/H5Location.h4
-rw-r--r--c++/src/H5Object.cpp4
-rw-r--r--c++/src/H5Object.h4
-rw-r--r--c++/src/H5OcreatProp.cpp4
-rw-r--r--c++/src/H5OcreatProp.h4
-rw-r--r--c++/src/H5PredType.cpp4
-rw-r--r--c++/src/H5PredType.h4
-rw-r--r--c++/src/H5PropList.cpp6
-rw-r--r--c++/src/H5PropList.h4
-rw-r--r--c++/src/H5StrType.cpp4
-rw-r--r--c++/src/H5StrType.h4
-rw-r--r--c++/src/H5VarLenType.cpp5
-rw-r--r--c++/src/H5VarLenType.h4
-rw-r--r--c++/test/dsets.cpp21
-rw-r--r--c++/test/h5cpputil.cpp21
-rw-r--r--c++/test/h5cpputil.h5
-rw-r--r--c++/test/tarray.cpp22
-rw-r--r--c++/test/tattr.cpp26
-rw-r--r--c++/test/tcompound.cpp22
-rw-r--r--c++/test/tdspl.cpp23
-rw-r--r--c++/test/testhdf5.cpp21
-rw-r--r--c++/test/tfile.cpp24
-rw-r--r--c++/test/tfilter.cpp22
-rw-r--r--c++/test/th5s.cpp26
-rw-r--r--c++/test/titerate.cpp22
-rw-r--r--c++/test/tlinks.cpp24
-rw-r--r--c++/test/tobject.cpp22
-rw-r--r--c++/test/trefer.cpp15
-rw-r--r--c++/test/ttypes.cpp22
-rw-r--r--c++/test/tvlstr.cpp22
-rw-r--r--config/cmake/CTestCustom.cmake3
-rwxr-xr-xconfig/cmake/scripts/CTestScript.cmake48
-rwxr-xr-xconfig/cmake/scripts/HDF5config.cmake12
-rw-r--r--configure.ac78
-rw-r--r--hl/c++/test/ptableTest.cpp197
-rw-r--r--hl/c++/test/ptableTest.h5
-rw-r--r--hl/src/H5PT.c14
-rw-r--r--hl/test/test_packet.c42
-rw-r--r--hl/test/test_packet_vlen.c104
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/H5AC.c179
-rw-r--r--src/H5ACdbg.c253
-rw-r--r--src/H5C.c921
-rw-r--r--src/H5Cdbg.c964
-rw-r--r--src/H5FDint.c18
-rw-r--r--src/H5FDlog.c118
-rw-r--r--src/H5FDlog.h47
-rw-r--r--src/H5FDmpio.c4
-rw-r--r--src/H5FDmulti.c32
-rw-r--r--src/H5FDprivate.h18
-rw-r--r--src/H5Fint.c10
-rw-r--r--src/H5Fsuper.c12
-rw-r--r--src/H5Gint.c8
-rw-r--r--src/H5PL.c2
-rw-r--r--src/H5Sprivate.h4
-rw-r--r--src/Makefile.am4
-rw-r--r--test/evict_on_close.c229
-rw-r--r--test/objcopy.c2
-rw-r--r--tools/CMakeLists.txt45
-rw-r--r--tools/Makefile.am3
-rw-r--r--tools/h5repack/CMakeLists.txt98
-rw-r--r--tools/misc/testh5repart.sh.in116
-rw-r--r--tools/perform/pio_standalone.h157
-rw-r--r--tools/src/CMakeLists.txt37
-rw-r--r--tools/src/Makefile.am29
-rw-r--r--tools/src/h5copy/CMakeLists.txt (renamed from tools/h5copy/CMakeLists.txt)18
-rw-r--r--tools/src/h5copy/Makefile.am40
-rw-r--r--tools/src/h5copy/h5copy.c (renamed from tools/h5copy/h5copy.c)0
-rw-r--r--tools/src/h5diff/CMakeLists.txt (renamed from tools/h5diff/CMakeLists.txt)28
-rw-r--r--tools/src/h5diff/Makefile.am46
-rw-r--r--tools/src/h5diff/h5diff_common.c (renamed from tools/h5diff/h5diff_common.c)0
-rw-r--r--tools/src/h5diff/h5diff_common.h (renamed from tools/h5diff/h5diff_common.h)0
-rw-r--r--tools/src/h5diff/h5diff_main.c (renamed from tools/h5diff/h5diff_main.c)0
-rw-r--r--tools/src/h5diff/ph5diff_main.c (renamed from tools/h5diff/ph5diff_main.c)0
-rw-r--r--tools/src/h5dump/CMakeLists.txt (renamed from tools/h5dump/CMakeLists.txt)31
-rw-r--r--tools/src/h5dump/Makefile.am38
-rw-r--r--tools/src/h5dump/h5dump.c (renamed from tools/h5dump/h5dump.c)0
-rw-r--r--tools/src/h5dump/h5dump.h (renamed from tools/h5dump/h5dump.h)0
-rw-r--r--tools/src/h5dump/h5dump_ddl.c (renamed from tools/h5dump/h5dump_ddl.c)0
-rw-r--r--tools/src/h5dump/h5dump_ddl.h (renamed from tools/h5dump/h5dump_ddl.h)0
-rw-r--r--tools/src/h5dump/h5dump_defines.h (renamed from tools/h5dump/h5dump_defines.h)0
-rw-r--r--tools/src/h5dump/h5dump_extern.h (renamed from tools/h5dump/h5dump_extern.h)0
-rw-r--r--tools/src/h5dump/h5dump_xml.c (renamed from tools/h5dump/h5dump_xml.c)0
-rw-r--r--tools/src/h5dump/h5dump_xml.h (renamed from tools/h5dump/h5dump_xml.h)0
-rw-r--r--tools/src/h5format_convert/CMakeLists.txt (renamed from tools/h5format_convert/CMakeLists.txt)27
-rw-r--r--tools/src/h5format_convert/Makefile.am35
-rw-r--r--tools/src/h5format_convert/h5format_convert.c (renamed from tools/h5format_convert/h5format_convert.c)0
-rw-r--r--tools/src/h5import/CMakeLists.txt (renamed from tools/h5import/CMakeLists.txt)18
-rw-r--r--tools/src/h5import/Makefile.am35
-rw-r--r--tools/src/h5import/h5import.c (renamed from tools/h5import/h5import.c)0
-rw-r--r--tools/src/h5import/h5import.h (renamed from tools/h5import/h5import.h)0
-rw-r--r--tools/src/h5jam/CMakeLists.txt (renamed from tools/h5jam/CMakeLists.txt)38
-rw-r--r--tools/src/h5jam/Makefile.am35
-rw-r--r--tools/src/h5jam/h5jam.c (renamed from tools/h5jam/h5jam.c)0
-rw-r--r--tools/src/h5jam/h5unjam.c (renamed from tools/h5jam/h5unjam.c)0
-rw-r--r--tools/src/h5ls/CMakeLists.txt (renamed from tools/h5ls/CMakeLists.txt)12
-rw-r--r--tools/src/h5ls/Makefile.am (renamed from tools/h5ls/Makefile.am)5
-rw-r--r--tools/src/h5ls/h5ls.c (renamed from tools/h5ls/h5ls.c)0
-rw-r--r--tools/src/h5repack/CMakeLists.txt50
-rw-r--r--tools/src/h5repack/Makefile.am42
-rw-r--r--tools/src/h5repack/h5repack.c (renamed from tools/h5repack/h5repack.c)0
-rw-r--r--tools/src/h5repack/h5repack.h (renamed from tools/h5repack/h5repack.h)0
-rw-r--r--tools/src/h5repack/h5repack_copy.c (renamed from tools/h5repack/h5repack_copy.c)0
-rw-r--r--tools/src/h5repack/h5repack_filters.c (renamed from tools/h5repack/h5repack_filters.c)0
-rw-r--r--tools/src/h5repack/h5repack_main.c (renamed from tools/h5repack/h5repack_main.c)194
-rw-r--r--tools/src/h5repack/h5repack_opttable.c (renamed from tools/h5repack/h5repack_opttable.c)0
-rw-r--r--tools/src/h5repack/h5repack_parse.c (renamed from tools/h5repack/h5repack_parse.c)0
-rw-r--r--tools/src/h5repack/h5repack_refs.c (renamed from tools/h5repack/h5repack_refs.c)0
-rw-r--r--tools/src/h5repack/h5repack_verify.c (renamed from tools/h5repack/h5repack_verify.c)0
-rw-r--r--tools/src/h5stat/CMakeLists.txt (renamed from tools/h5stat/CMakeLists.txt)21
-rw-r--r--tools/src/h5stat/Makefile.am39
-rw-r--r--tools/src/h5stat/h5stat.c (renamed from tools/h5stat/h5stat.c)0
-rw-r--r--tools/src/h5stat/testh5stat.sh.in (renamed from tools/h5stat/testh5stat.sh.in)0
-rw-r--r--tools/src/misc/CMakeLists.txt (renamed from tools/misc/CMakeLists.txt)35
-rw-r--r--tools/src/misc/Makefile.am (renamed from tools/misc/Makefile.am)17
-rw-r--r--tools/src/misc/h5cc.in (renamed from tools/misc/h5cc.in)0
-rw-r--r--tools/src/misc/h5debug.c (renamed from tools/misc/h5debug.c)0
-rw-r--r--tools/src/misc/h5mkgrp.c (renamed from tools/misc/h5mkgrp.c)0
-rw-r--r--tools/src/misc/h5redeploy.in (renamed from tools/misc/h5redeploy.in)0
-rw-r--r--tools/src/misc/h5repart.c (renamed from tools/misc/h5repart.c)0
-rw-r--r--tools/test/CMakeLists.txt40
-rw-r--r--tools/test/Makefile.am30
-rw-r--r--tools/test/h5copy/CMakeLists.txt23
-rw-r--r--tools/test/h5copy/CMakeTests.cmake (renamed from tools/h5copy/CMakeTests.cmake)10
-rw-r--r--tools/test/h5copy/Makefile.am (renamed from tools/h5copy/Makefile.am)6
-rw-r--r--tools/test/h5copy/h5copygentest.c (renamed from tools/h5copy/h5copygentest.c)0
-rw-r--r--tools/test/h5copy/testfiles/h5copy_extlinks_src.h5 (renamed from tools/h5copy/testfiles/h5copy_extlinks_src.h5)bin2184 -> 2184 bytes
-rw-r--r--tools/test/h5copy/testfiles/h5copy_extlinks_src.out.ls (renamed from tools/h5copy/testfiles/h5copy_extlinks_src.out.ls)0
-rw-r--r--tools/test/h5copy/testfiles/h5copy_extlinks_trg.h5 (renamed from tools/h5copy/testfiles/h5copy_extlinks_trg.h5)bin2168 -> 2168 bytes
-rw-r--r--tools/test/h5copy/testfiles/h5copy_misc1.out (renamed from tools/h5copy/testfiles/h5copy_misc1.out)0
-rw-r--r--tools/test/h5copy/testfiles/h5copy_ref.h5 (renamed from tools/h5copy/testfiles/h5copy_ref.h5)bin9104 -> 9104 bytes
-rw-r--r--tools/test/h5copy/testfiles/h5copy_ref.out.ls (renamed from tools/h5copy/testfiles/h5copy_ref.out.ls)0
-rw-r--r--tools/test/h5copy/testfiles/h5copytst.h5 (renamed from tools/h5copy/testfiles/h5copytst.h5)bin15900 -> 15900 bytes
-rw-r--r--tools/test/h5copy/testfiles/h5copytst.out.ls (renamed from tools/h5copy/testfiles/h5copytst.out.ls)0
-rw-r--r--tools/test/h5copy/testfiles/h5copytst_new.h5 (renamed from tools/h5copy/testfiles/h5copytst_new.h5)bin31856 -> 31856 bytes
-rw-r--r--tools/test/h5copy/testfiles/h5copytst_new.out.ls (renamed from tools/h5copy/testfiles/h5copytst_new.out.ls)0
-rw-r--r--tools/test/h5copy/testh5copy.sh.in (renamed from tools/h5copy/testh5copy.sh.in)26
-rw-r--r--tools/test/h5diff/CMakeLists.txt22
-rw-r--r--tools/test/h5diff/CMakeTests.cmake (renamed from tools/h5diff/CMakeTests.cmake)440
-rw-r--r--tools/test/h5diff/Makefile.am (renamed from tools/h5diff/Makefile.am)12
-rw-r--r--tools/test/h5diff/h5diffgentest.c (renamed from tools/h5diff/h5diffgentest.c)0
-rw-r--r--tools/test/h5diff/testfiles/compounds_array_vlen1.h5 (renamed from tools/h5diff/testfiles/compounds_array_vlen1.h5)bin26912 -> 26912 bytes
-rw-r--r--tools/test/h5diff/testfiles/compounds_array_vlen2.h5 (renamed from tools/h5diff/testfiles/compounds_array_vlen2.h5)bin26912 -> 26912 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_10.txt (renamed from tools/h5diff/testfiles/h5diff_10.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_100.txt (renamed from tools/h5diff/testfiles/h5diff_100.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_101.txt (renamed from tools/h5diff/testfiles/h5diff_101.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_101w.txt (renamed from tools/h5diff/testfiles/h5diff_101w.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_102.txt (renamed from tools/h5diff/testfiles/h5diff_102.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_102w.txt (renamed from tools/h5diff/testfiles/h5diff_102w.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_103.txt (renamed from tools/h5diff/testfiles/h5diff_103.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_103w.txt (renamed from tools/h5diff/testfiles/h5diff_103w.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_104.txt (renamed from tools/h5diff/testfiles/h5diff_104.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_104w.txt (renamed from tools/h5diff/testfiles/h5diff_104w.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_11.txt (renamed from tools/h5diff/testfiles/h5diff_11.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_12.txt (renamed from tools/h5diff/testfiles/h5diff_12.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_13.txt (renamed from tools/h5diff/testfiles/h5diff_13.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_14.txt (renamed from tools/h5diff/testfiles/h5diff_14.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_15.txt (renamed from tools/h5diff/testfiles/h5diff_15.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_16_1.txt (renamed from tools/h5diff/testfiles/h5diff_16_1.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_16_2.txt (renamed from tools/h5diff/testfiles/h5diff_16_2.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_16_3.txt (renamed from tools/h5diff/testfiles/h5diff_16_3.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_17.txt (renamed from tools/h5diff/testfiles/h5diff_17.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_171.txt (renamed from tools/h5diff/testfiles/h5diff_171.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_172.txt (renamed from tools/h5diff/testfiles/h5diff_172.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_18.txt (renamed from tools/h5diff/testfiles/h5diff_18.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_18_1.txt (renamed from tools/h5diff/testfiles/h5diff_18_1.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_19.txt (renamed from tools/h5diff/testfiles/h5diff_19.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_20.txt (renamed from tools/h5diff/testfiles/h5diff_20.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_200.txt (renamed from tools/h5diff/testfiles/h5diff_200.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_201.txt (renamed from tools/h5diff/testfiles/h5diff_201.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_202.txt (renamed from tools/h5diff/testfiles/h5diff_202.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_203.txt (renamed from tools/h5diff/testfiles/h5diff_203.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_204.txt (renamed from tools/h5diff/testfiles/h5diff_204.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_205.txt (renamed from tools/h5diff/testfiles/h5diff_205.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_206.txt (renamed from tools/h5diff/testfiles/h5diff_206.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_207.txt (renamed from tools/h5diff/testfiles/h5diff_207.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_208.txt (renamed from tools/h5diff/testfiles/h5diff_208.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_21.txt (renamed from tools/h5diff/testfiles/h5diff_21.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_22.txt (renamed from tools/h5diff/testfiles/h5diff_22.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_220.txt (renamed from tools/h5diff/testfiles/h5diff_220.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_221.txt (renamed from tools/h5diff/testfiles/h5diff_221.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_222.txt (renamed from tools/h5diff/testfiles/h5diff_222.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_223.txt (renamed from tools/h5diff/testfiles/h5diff_223.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_224.txt (renamed from tools/h5diff/testfiles/h5diff_224.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_23.txt (renamed from tools/h5diff/testfiles/h5diff_23.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_24.txt (renamed from tools/h5diff/testfiles/h5diff_24.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_25.txt (renamed from tools/h5diff/testfiles/h5diff_25.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_26.txt (renamed from tools/h5diff/testfiles/h5diff_26.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_27.txt (renamed from tools/h5diff/testfiles/h5diff_27.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_28.txt (renamed from tools/h5diff/testfiles/h5diff_28.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_30.txt (renamed from tools/h5diff/testfiles/h5diff_30.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_300.txt (renamed from tools/h5diff/testfiles/h5diff_300.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_400.txt (renamed from tools/h5diff/testfiles/h5diff_400.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_401.txt (renamed from tools/h5diff/testfiles/h5diff_401.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_402.txt (renamed from tools/h5diff/testfiles/h5diff_402.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_403.txt (renamed from tools/h5diff/testfiles/h5diff_403.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_404.txt (renamed from tools/h5diff/testfiles/h5diff_404.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_405.txt (renamed from tools/h5diff/testfiles/h5diff_405.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_406.txt (renamed from tools/h5diff/testfiles/h5diff_406.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_407.txt (renamed from tools/h5diff/testfiles/h5diff_407.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_408.txt (renamed from tools/h5diff/testfiles/h5diff_408.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_409.txt (renamed from tools/h5diff/testfiles/h5diff_409.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_410.txt (renamed from tools/h5diff/testfiles/h5diff_410.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_411.txt (renamed from tools/h5diff/testfiles/h5diff_411.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_412.txt (renamed from tools/h5diff/testfiles/h5diff_412.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_413.txt (renamed from tools/h5diff/testfiles/h5diff_413.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_414.txt (renamed from tools/h5diff/testfiles/h5diff_414.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_415.txt (renamed from tools/h5diff/testfiles/h5diff_415.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_416.txt (renamed from tools/h5diff/testfiles/h5diff_416.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_417.txt (renamed from tools/h5diff/testfiles/h5diff_417.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_418.txt (renamed from tools/h5diff/testfiles/h5diff_418.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_419.txt (renamed from tools/h5diff/testfiles/h5diff_419.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_420.txt (renamed from tools/h5diff/testfiles/h5diff_420.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_421.txt (renamed from tools/h5diff/testfiles/h5diff_421.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_422.txt (renamed from tools/h5diff/testfiles/h5diff_422.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_423.txt (renamed from tools/h5diff/testfiles/h5diff_423.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_424.txt (renamed from tools/h5diff/testfiles/h5diff_424.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_425.txt (renamed from tools/h5diff/testfiles/h5diff_425.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_450.txt (renamed from tools/h5diff/testfiles/h5diff_450.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_451.txt (renamed from tools/h5diff/testfiles/h5diff_451.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_452.txt (renamed from tools/h5diff/testfiles/h5diff_452.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_453.txt (renamed from tools/h5diff/testfiles/h5diff_453.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_454.txt (renamed from tools/h5diff/testfiles/h5diff_454.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_455.txt (renamed from tools/h5diff/testfiles/h5diff_455.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_456.txt (renamed from tools/h5diff/testfiles/h5diff_456.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_457.txt (renamed from tools/h5diff/testfiles/h5diff_457.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_458.txt (renamed from tools/h5diff/testfiles/h5diff_458.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_459.txt (renamed from tools/h5diff/testfiles/h5diff_459.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_465.txt (renamed from tools/h5diff/testfiles/h5diff_465.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_466.txt (renamed from tools/h5diff/testfiles/h5diff_466.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_467.txt (renamed from tools/h5diff/testfiles/h5diff_467.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_468.txt (renamed from tools/h5diff/testfiles/h5diff_468.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_469.txt (renamed from tools/h5diff/testfiles/h5diff_469.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_471.txt (renamed from tools/h5diff/testfiles/h5diff_471.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_472.txt (renamed from tools/h5diff/testfiles/h5diff_472.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_473.txt (renamed from tools/h5diff/testfiles/h5diff_473.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_474.txt (renamed from tools/h5diff/testfiles/h5diff_474.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_475.txt (renamed from tools/h5diff/testfiles/h5diff_475.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_480.txt (renamed from tools/h5diff/testfiles/h5diff_480.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_481.txt (renamed from tools/h5diff/testfiles/h5diff_481.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_482.txt (renamed from tools/h5diff/testfiles/h5diff_482.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_483.txt (renamed from tools/h5diff/testfiles/h5diff_483.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_484.txt (renamed from tools/h5diff/testfiles/h5diff_484.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_485.txt (renamed from tools/h5diff/testfiles/h5diff_485.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_486.txt (renamed from tools/h5diff/testfiles/h5diff_486.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_487.txt (renamed from tools/h5diff/testfiles/h5diff_487.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_50.txt (renamed from tools/h5diff/testfiles/h5diff_50.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_500.txt (renamed from tools/h5diff/testfiles/h5diff_500.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_501.txt (renamed from tools/h5diff/testfiles/h5diff_501.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_502.txt (renamed from tools/h5diff/testfiles/h5diff_502.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_503.txt (renamed from tools/h5diff/testfiles/h5diff_503.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_504.txt (renamed from tools/h5diff/testfiles/h5diff_504.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_505.txt (renamed from tools/h5diff/testfiles/h5diff_505.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_506.txt (renamed from tools/h5diff/testfiles/h5diff_506.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_507.txt (renamed from tools/h5diff/testfiles/h5diff_507.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_508.txt (renamed from tools/h5diff/testfiles/h5diff_508.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_509.txt (renamed from tools/h5diff/testfiles/h5diff_509.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_51.txt (renamed from tools/h5diff/testfiles/h5diff_51.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_510.txt (renamed from tools/h5diff/testfiles/h5diff_510.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_511.txt (renamed from tools/h5diff/testfiles/h5diff_511.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_512.txt (renamed from tools/h5diff/testfiles/h5diff_512.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_513.txt (renamed from tools/h5diff/testfiles/h5diff_513.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_514.txt (renamed from tools/h5diff/testfiles/h5diff_514.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_515.txt (renamed from tools/h5diff/testfiles/h5diff_515.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_516.txt (renamed from tools/h5diff/testfiles/h5diff_516.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_517.txt (renamed from tools/h5diff/testfiles/h5diff_517.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_518.txt (renamed from tools/h5diff/testfiles/h5diff_518.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_52.txt (renamed from tools/h5diff/testfiles/h5diff_52.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_53.txt (renamed from tools/h5diff/testfiles/h5diff_53.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_530.txt (renamed from tools/h5diff/testfiles/h5diff_530.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_54.txt (renamed from tools/h5diff/testfiles/h5diff_54.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_540.txt (renamed from tools/h5diff/testfiles/h5diff_540.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_55.txt (renamed from tools/h5diff/testfiles/h5diff_55.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_56.txt (renamed from tools/h5diff/testfiles/h5diff_56.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_57.txt (renamed from tools/h5diff/testfiles/h5diff_57.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_58.txt (renamed from tools/h5diff/testfiles/h5diff_58.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_59.txt (renamed from tools/h5diff/testfiles/h5diff_59.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_600.txt (renamed from tools/h5diff/testfiles/h5diff_600.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_601.txt (renamed from tools/h5diff/testfiles/h5diff_601.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_603.txt (renamed from tools/h5diff/testfiles/h5diff_603.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_604.txt (renamed from tools/h5diff/testfiles/h5diff_604.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_605.txt (renamed from tools/h5diff/testfiles/h5diff_605.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_606.txt (renamed from tools/h5diff/testfiles/h5diff_606.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_607.txt (renamed from tools/h5diff/testfiles/h5diff_607.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_608.txt (renamed from tools/h5diff/testfiles/h5diff_608.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_609.txt (renamed from tools/h5diff/testfiles/h5diff_609.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_610.txt (renamed from tools/h5diff/testfiles/h5diff_610.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_612.txt (renamed from tools/h5diff/testfiles/h5diff_612.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_613.txt (renamed from tools/h5diff/testfiles/h5diff_613.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_614.txt (renamed from tools/h5diff/testfiles/h5diff_614.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_615.txt (renamed from tools/h5diff/testfiles/h5diff_615.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_616.txt (renamed from tools/h5diff/testfiles/h5diff_616.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_617.txt (renamed from tools/h5diff/testfiles/h5diff_617.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_618.txt (renamed from tools/h5diff/testfiles/h5diff_618.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_619.txt (renamed from tools/h5diff/testfiles/h5diff_619.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_621.txt (renamed from tools/h5diff/testfiles/h5diff_621.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_622.txt (renamed from tools/h5diff/testfiles/h5diff_622.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_623.txt (renamed from tools/h5diff/testfiles/h5diff_623.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_624.txt (renamed from tools/h5diff/testfiles/h5diff_624.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_625.txt (renamed from tools/h5diff/testfiles/h5diff_625.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_626.txt (renamed from tools/h5diff/testfiles/h5diff_626.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_627.txt (renamed from tools/h5diff/testfiles/h5diff_627.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_628.txt (renamed from tools/h5diff/testfiles/h5diff_628.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_629.txt (renamed from tools/h5diff/testfiles/h5diff_629.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_630.txt (renamed from tools/h5diff/testfiles/h5diff_630.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_631.txt (renamed from tools/h5diff/testfiles/h5diff_631.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_640.txt (renamed from tools/h5diff/testfiles/h5diff_640.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_641.txt (renamed from tools/h5diff/testfiles/h5diff_641.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_642.txt (renamed from tools/h5diff/testfiles/h5diff_642.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_643.txt (renamed from tools/h5diff/testfiles/h5diff_643.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_644.txt (renamed from tools/h5diff/testfiles/h5diff_644.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_645.txt (renamed from tools/h5diff/testfiles/h5diff_645.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_646.txt (renamed from tools/h5diff/testfiles/h5diff_646.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_70.txt (renamed from tools/h5diff/testfiles/h5diff_70.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_700.txt (renamed from tools/h5diff/testfiles/h5diff_700.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_701.txt (renamed from tools/h5diff/testfiles/h5diff_701.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_702.txt (renamed from tools/h5diff/testfiles/h5diff_702.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_703.txt (renamed from tools/h5diff/testfiles/h5diff_703.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_704.txt (renamed from tools/h5diff/testfiles/h5diff_704.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_705.txt (renamed from tools/h5diff/testfiles/h5diff_705.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_706.txt (renamed from tools/h5diff/testfiles/h5diff_706.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_707.txt (renamed from tools/h5diff/testfiles/h5diff_707.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_708.txt (renamed from tools/h5diff/testfiles/h5diff_708.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_709.txt (renamed from tools/h5diff/testfiles/h5diff_709.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_710.txt (renamed from tools/h5diff/testfiles/h5diff_710.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_80.txt (renamed from tools/h5diff/testfiles/h5diff_80.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_90.txt (renamed from tools/h5diff/testfiles/h5diff_90.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_attr1.h5 (renamed from tools/h5diff/testfiles/h5diff_attr1.h5)bin26000 -> 26000 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_attr2.h5 (renamed from tools/h5diff/testfiles/h5diff_attr2.h5)bin26000 -> 26000 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_attr_v_level1.h5 (renamed from tools/h5diff/testfiles/h5diff_attr_v_level1.h5)bin7192 -> 7192 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_attr_v_level2.h5 (renamed from tools/h5diff/testfiles/h5diff_attr_v_level2.h5)bin7048 -> 7048 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_basic1.h5 (renamed from tools/h5diff/testfiles/h5diff_basic1.h5)bin12248 -> 12248 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_basic2.h5 (renamed from tools/h5diff/testfiles/h5diff_basic2.h5)bin9008 -> 9008 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_comp_vl_strs.h5 (renamed from tools/h5diff/testfiles/h5diff_comp_vl_strs.h5)bin37952 -> 37952 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_danglelinks1.h5 (renamed from tools/h5diff/testfiles/h5diff_danglelinks1.h5)bin4970 -> 4970 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_danglelinks2.h5 (renamed from tools/h5diff/testfiles/h5diff_danglelinks2.h5)bin4970 -> 4970 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset1.h5 (renamed from tools/h5diff/testfiles/h5diff_dset1.h5)bin23624 -> 23624 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset2.h5 (renamed from tools/h5diff/testfiles/h5diff_dset2.h5)bin23624 -> 23624 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5 (renamed from tools/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5)bin1672 -> 1672 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5 (renamed from tools/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5)bin1672 -> 1672 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_dtypes.h5 (renamed from tools/h5diff/testfiles/h5diff_dtypes.h5)bin11416 -> 11416 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_empty.h5 (renamed from tools/h5diff/testfiles/h5diff_empty.h5)bin800 -> 800 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_enum_invalid_values.h5 (renamed from tools/h5diff/testfiles/h5diff_enum_invalid_values.h5)bin2192 -> 2192 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude1-1.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude1-1.h5)bin5064 -> 5064 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude1-2.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude1-2.h5)bin5064 -> 5064 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude2-1.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude2-1.h5)bin5064 -> 5064 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude2-2.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude2-2.h5)bin6056 -> 6056 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude3-1.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude3-1.h5)bin4792 -> 4792 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_exclude3-2.h5 (renamed from tools/h5diff/testfiles/h5diff_exclude3-2.h5)bin2176 -> 2176 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_ext2softlink_src.h5 (renamed from tools/h5diff/testfiles/h5diff_ext2softlink_src.h5)bin1072 -> 1072 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_ext2softlink_trg.h5 (renamed from tools/h5diff/testfiles/h5diff_ext2softlink_trg.h5)bin4640 -> 4640 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_extlink_src.h5 (renamed from tools/h5diff/testfiles/h5diff_extlink_src.h5)bin1256 -> 1256 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_extlink_trg.h5 (renamed from tools/h5diff/testfiles/h5diff_extlink_trg.h5)bin6056 -> 6056 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse1.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse1.h5)bin11826 -> 11826 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse2.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse2.h5)bin11826 -> 11826 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse_ext1.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse_ext1.h5)bin8120 -> 8120 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5)bin4296 -> 4296 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5)bin5640 -> 5640 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5 (renamed from tools/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5)bin2464 -> 2464 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_hyper1.h5 (renamed from tools/h5diff/testfiles/h5diff_hyper1.h5)bin1052720 -> 1052720 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_hyper2.h5 (renamed from tools/h5diff/testfiles/h5diff_hyper2.h5)bin1052720 -> 1052720 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_linked_softlink.h5 (renamed from tools/h5diff/testfiles/h5diff_linked_softlink.h5)bin8144 -> 8144 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_links.h5 (renamed from tools/h5diff/testfiles/h5diff_links.h5)bin2536 -> 2536 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_softlinks.h5 (renamed from tools/h5diff/testfiles/h5diff_softlinks.h5)bin5744 -> 5744 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_tmp1.txt (renamed from tools/h5diff/testfiles/h5diff_tmp1.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_tmp2.txt (renamed from tools/h5diff/testfiles/h5diff_tmp2.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_types.h5 (renamed from tools/h5diff/testfiles/h5diff_types.h5)bin4778 -> 4778 bytes
-rw-r--r--tools/test/h5diff/testfiles/h5diff_v1.txt (renamed from tools/h5diff/testfiles/h5diff_v1.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_v2.txt (renamed from tools/h5diff/testfiles/h5diff_v2.txt)0
-rw-r--r--tools/test/h5diff/testfiles/h5diff_v3.txt (renamed from tools/h5diff/testfiles/h5diff_v3.txt)0
-rw-r--r--tools/test/h5diff/testfiles/non_comparables1.h5 (renamed from tools/h5diff/testfiles/non_comparables1.h5)bin8628 -> 8628 bytes
-rw-r--r--tools/test/h5diff/testfiles/non_comparables2.h5 (renamed from tools/h5diff/testfiles/non_comparables2.h5)bin8644 -> 8644 bytes
-rw-r--r--tools/test/h5diff/testfiles/tmpSingleSiteBethe.output.h5 (renamed from tools/h5diff/testfiles/tmpSingleSiteBethe.output.h5)bin124440 -> 124440 bytes
-rw-r--r--tools/test/h5diff/testfiles/tmpSingleSiteBethe.reference.h5 (renamed from tools/h5diff/testfiles/tmpSingleSiteBethe.reference.h5)bin119464 -> 119464 bytes
-rw-r--r--tools/test/h5diff/testfiles/tmptest.he5 (renamed from tools/h5diff/testfiles/tmptest.he5)bin4740424 -> 4740424 bytes
-rw-r--r--tools/test/h5diff/testfiles/tmptest2.he5 (renamed from tools/h5diff/testfiles/tmptest2.he5)bin4734280 -> 4734280 bytes
-rw-r--r--tools/test/h5diff/testh5diff.sh.in (renamed from tools/h5diff/testh5diff.sh.in)26
-rw-r--r--tools/test/h5diff/testph5diff.sh.in (renamed from tools/h5diff/testph5diff.sh.in)0
-rw-r--r--tools/test/h5dump/CMakeLists.txt28
-rw-r--r--tools/test/h5dump/CMakeTests.cmake (renamed from tools/h5dump/CMakeTests.cmake)10
-rw-r--r--tools/test/h5dump/CMakeTestsPBITS.cmake (renamed from tools/h5dump/CMakeTestsPBITS.cmake)2
-rw-r--r--tools/test/h5dump/CMakeTestsVDS.cmake (renamed from tools/h5dump/CMakeTestsVDS.cmake)4
-rw-r--r--tools/test/h5dump/CMakeTestsXML.cmake (renamed from tools/h5dump/CMakeTestsXML.cmake)0
-rw-r--r--tools/test/h5dump/Makefile.am (renamed from tools/h5dump/Makefile.am)11
-rw-r--r--tools/test/h5dump/binread.c (renamed from tools/h5dump/binread.c)0
-rw-r--r--tools/test/h5dump/errfiles/filter_fail.err (renamed from tools/h5dump/errfiles/filter_fail.err)0
-rw-r--r--tools/test/h5dump/errfiles/non_existing.err (renamed from tools/h5dump/errfiles/non_existing.err)0
-rw-r--r--tools/test/h5dump/errfiles/tall-1.err (renamed from tools/h5dump/errfiles/tall-1.err)0
-rw-r--r--tools/test/h5dump/errfiles/tall-2A.err (renamed from tools/h5dump/errfiles/tall-2A.err)0
-rw-r--r--tools/test/h5dump/errfiles/tall-2A0.err (renamed from tools/h5dump/errfiles/tall-2A0.err)0
-rw-r--r--tools/test/h5dump/errfiles/tall-2B.err (renamed from tools/h5dump/errfiles/tall-2B.err)0
-rw-r--r--tools/test/h5dump/errfiles/tarray1_big.err (renamed from tools/h5dump/errfiles/tarray1_big.err)0
-rw-r--r--tools/test/h5dump/errfiles/tattr-3.err (renamed from tools/h5dump/errfiles/tattr-3.err)0
-rw-r--r--tools/test/h5dump/errfiles/tattrregR.err (renamed from tools/h5dump/errfiles/tattrregR.err)0
-rw-r--r--tools/test/h5dump/errfiles/tcomp-3.err (renamed from tools/h5dump/errfiles/tcomp-3.err)0
-rw-r--r--tools/test/h5dump/errfiles/tdataregR.err (renamed from tools/h5dump/errfiles/tdataregR.err)0
-rw-r--r--tools/test/h5dump/errfiles/tdset-2.err (renamed from tools/h5dump/errfiles/tdset-2.err)0
-rw-r--r--tools/test/h5dump/errfiles/texceedsubblock.err (renamed from tools/h5dump/errfiles/texceedsubblock.err)0
-rw-r--r--tools/test/h5dump/errfiles/texceedsubcount.err (renamed from tools/h5dump/errfiles/texceedsubcount.err)0
-rw-r--r--tools/test/h5dump/errfiles/texceedsubstart.err (renamed from tools/h5dump/errfiles/texceedsubstart.err)0
-rw-r--r--tools/test/h5dump/errfiles/texceedsubstride.err (renamed from tools/h5dump/errfiles/texceedsubstride.err)0
-rw-r--r--tools/test/h5dump/errfiles/textlink.err (renamed from tools/h5dump/errfiles/textlink.err)0
-rw-r--r--tools/test/h5dump/errfiles/textlinkfar.err (renamed from tools/h5dump/errfiles/textlinkfar.err)0
-rw-r--r--tools/test/h5dump/errfiles/textlinksrc.err (renamed from tools/h5dump/errfiles/textlinksrc.err)0
-rw-r--r--tools/test/h5dump/errfiles/tgroup-2.err (renamed from tools/h5dump/errfiles/tgroup-2.err)0
-rw-r--r--tools/test/h5dump/errfiles/tnofilename-with-packed-bits.err (renamed from tools/h5dump/errfiles/tnofilename-with-packed-bits.err)0
-rw-r--r--tools/test/h5dump/errfiles/torderlinks1.err (renamed from tools/h5dump/errfiles/torderlinks1.err)0
-rw-r--r--tools/test/h5dump/errfiles/torderlinks2.err (renamed from tools/h5dump/errfiles/torderlinks2.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsCharLengthExceeded.err (renamed from tools/h5dump/errfiles/tpbitsCharLengthExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsCharOffsetExceeded.err (renamed from tools/h5dump/errfiles/tpbitsCharOffsetExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsIncomplete.err (renamed from tools/h5dump/errfiles/tpbitsIncomplete.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsIntLengthExceeded.err (renamed from tools/h5dump/errfiles/tpbitsIntLengthExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsIntOffsetExceeded.err (renamed from tools/h5dump/errfiles/tpbitsIntOffsetExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsLengthExceeded.err (renamed from tools/h5dump/errfiles/tpbitsLengthExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsLengthPositive.err (renamed from tools/h5dump/errfiles/tpbitsLengthPositive.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsLongLengthExceeded.err (renamed from tools/h5dump/errfiles/tpbitsLongLengthExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsLongOffsetExceeded.err (renamed from tools/h5dump/errfiles/tpbitsLongOffsetExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsMaxExceeded.err (renamed from tools/h5dump/errfiles/tpbitsMaxExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsOffsetExceeded.err (renamed from tools/h5dump/errfiles/tpbitsOffsetExceeded.err)0
-rw-r--r--tools/test/h5dump/errfiles/tpbitsOffsetNegative.err (renamed from tools/h5dump/errfiles/tpbitsOffsetNegative.err)0
-rw-r--r--tools/test/h5dump/errfiles/tperror.err (renamed from tools/h5dump/errfiles/tperror.err)0
-rw-r--r--tools/test/h5dump/errfiles/tqmarkfile.err (renamed from tools/h5dump/errfiles/tqmarkfile.err)0
-rw-r--r--tools/test/h5dump/errfiles/tslink-D.err (renamed from tools/h5dump/errfiles/tslink-D.err)0
-rw-r--r--tools/test/h5dump/h5dumpgentest.c (renamed from tools/h5dump/h5dumpgentest.c)70
-rw-r--r--tools/test/h5dump/testh5dump.sh.in (renamed from tools/h5dump/testh5dump.sh.in)22
-rw-r--r--tools/test/h5dump/testh5dumppbits.sh.in (renamed from tools/h5dump/testh5dumppbits.sh.in)22
-rw-r--r--tools/test/h5dump/testh5dumpvds.sh.in (renamed from tools/h5dump/testh5dumpvds.sh.in)22
-rw-r--r--tools/test/h5dump/testh5dumpxml.sh.in (renamed from tools/h5dump/testh5dumpxml.sh.in)18
-rw-r--r--tools/test/h5format_convert/CMakeLists.txt28
-rw-r--r--tools/test/h5format_convert/CMakeTests.cmake (renamed from tools/h5format_convert/CMakeTests.cmake)12
-rw-r--r--tools/test/h5format_convert/Makefile.am (renamed from tools/h5format_convert/Makefile.am)8
-rw-r--r--tools/test/h5format_convert/h5fc_chk_idx.c (renamed from tools/h5format_convert/h5fc_chk_idx.c)0
-rw-r--r--tools/test/h5format_convert/h5fc_gentest.c (renamed from tools/h5format_convert/h5fc_gentest.c)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_d_file.ddl (renamed from tools/h5format_convert/testfiles/h5fc_d_file.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_dname.ddl (renamed from tools/h5format_convert/testfiles/h5fc_dname.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_edge_v3.h5 (renamed from tools/h5format_convert/testfiles/h5fc_edge_v3.h5)bin2526 -> 2526 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_err_level.h5 (renamed from tools/h5format_convert/testfiles/h5fc_err_level.h5)bin7294 -> 7294 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_f.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext1_f.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_f.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext1_f.h5)bin8296 -> 8296 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_i.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext1_i.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_i.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext1_i.h5)bin8062 -> 8062 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_s.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext1_s.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext1_s.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext1_s.h5)bin8128 -> 8128 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_if.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext2_if.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_if.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext2_if.h5)bin8062 -> 8062 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_is.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext2_is.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_is.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext2_is.h5)bin8178 -> 8178 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_sf.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext2_sf.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext2_sf.h5)bin6612 -> 6612 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext3_isf.ddl (renamed from tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext3_isf.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext3_isf.h5)bin8215 -> 8215 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_ext_none.h5 (renamed from tools/h5format_convert/testfiles/h5fc_ext_none.h5)bin8010 -> 8010 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_help.ddl (renamed from tools/h5format_convert/testfiles/h5fc_help.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_non_v3.h5 (renamed from tools/h5format_convert/testfiles/h5fc_non_v3.h5)bin6818 -> 6818 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl (renamed from tools/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl (renamed from tools/h5format_convert/testfiles/h5fc_nonexistfile.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_nooption.ddl (renamed from tools/h5format_convert/testfiles/h5fc_nooption.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_all.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_all.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_bt1.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_bt1.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_err.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_err.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_n_1d.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_n_all.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_n_all.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/h5fc_v_non_chunked.ddl (renamed from tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_f.h5)bin19987 -> 19987 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_i.h5)bin32716 -> 32716 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext1_s.h5)bin20032 -> 20032 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_if.h5)bin32720 -> 32720 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_is.h5)bin32872 -> 32872 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext2_sf.h5)bin18512 -> 18512 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl (renamed from tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl)0
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext3_isf.h5)bin32896 -> 32896 bytes
-rw-r--r--tools/test/h5format_convert/testfiles/old_h5fc_ext_none.h5 (renamed from tools/h5format_convert/testfiles/old_h5fc_ext_none.h5)bin19912 -> 19912 bytes
-rw-r--r--tools/test/h5format_convert/testh5fc.sh.in (renamed from tools/h5format_convert/testh5fc.sh.in)20
-rw-r--r--tools/test/h5import/CMakeLists.txt18
-rw-r--r--tools/test/h5import/CMakeTests.cmake (renamed from tools/h5import/CMakeTests.cmake)6
-rw-r--r--tools/test/h5import/Makefile.am (renamed from tools/h5import/Makefile.am)10
-rw-r--r--tools/test/h5import/h5importtest.c (renamed from tools/h5import/h5importtest.c)0
-rw-r--r--tools/test/h5import/h5importtestutil.sh.in (renamed from tools/h5import/h5importtestutil.sh.in)20
-rw-r--r--tools/test/h5import/testfiles/binfp64.conf (renamed from tools/h5import/testfiles/binfp64.conf)0
-rw-r--r--tools/test/h5import/testfiles/binfp64.h5 (renamed from tools/h5import/testfiles/binfp64.h5)bin10760 -> 10760 bytes
-rw-r--r--tools/test/h5import/testfiles/binin16.conf (renamed from tools/h5import/testfiles/binin16.conf)0
-rw-r--r--tools/test/h5import/testfiles/binin16.h5 (renamed from tools/h5import/testfiles/binin16.h5)bin10760 -> 10760 bytes
-rw-r--r--tools/test/h5import/testfiles/binin32.conf (renamed from tools/h5import/testfiles/binin32.conf)0
-rw-r--r--tools/test/h5import/testfiles/binin32.h5 (renamed from tools/h5import/testfiles/binin32.h5)bin9472 -> 9472 bytes
-rw-r--r--tools/test/h5import/testfiles/binin8.conf (renamed from tools/h5import/testfiles/binin8.conf)0
-rw-r--r--tools/test/h5import/testfiles/binin8.h5 (renamed from tools/h5import/testfiles/binin8.h5)bin10760 -> 10760 bytes
-rw-r--r--tools/test/h5import/testfiles/binin8w.conf (renamed from tools/h5import/testfiles/binin8w.conf)0
-rw-r--r--tools/test/h5import/testfiles/binin8w.h5 (renamed from tools/h5import/testfiles/binin8w.h5)bin2852 -> 2852 bytes
-rw-r--r--tools/test/h5import/testfiles/binuin16.conf (renamed from tools/h5import/testfiles/binuin16.conf)0
-rw-r--r--tools/test/h5import/testfiles/binuin16.h5 (renamed from tools/h5import/testfiles/binuin16.h5)bin10760 -> 10760 bytes
-rw-r--r--tools/test/h5import/testfiles/binuin32.conf (renamed from tools/h5import/testfiles/binuin32.conf)0
-rw-r--r--tools/test/h5import/testfiles/binuin32.h5 (renamed from tools/h5import/testfiles/binuin32.h5)bin6384 -> 6384 bytes
-rw-r--r--tools/test/h5import/testfiles/dbinfp64.h5.txt (renamed from tools/h5import/testfiles/dbinfp64.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinin16.h5.txt (renamed from tools/h5import/testfiles/dbinin16.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinin32.h5.txt (renamed from tools/h5import/testfiles/dbinin32.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinin8.h5.txt (renamed from tools/h5import/testfiles/dbinin8.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinin8w.h5.txt (renamed from tools/h5import/testfiles/dbinin8w.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinuin16.h5.txt (renamed from tools/h5import/testfiles/dbinuin16.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dbinuin32.h5.txt (renamed from tools/h5import/testfiles/dbinuin32.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/dtxtstr.h5.txt (renamed from tools/h5import/testfiles/dtxtstr.h5.txt)0
-rw-r--r--tools/test/h5import/testfiles/textpfe.conf (renamed from tools/h5import/testfiles/textpfe.conf)0
-rw-r--r--tools/test/h5import/testfiles/textpfe.h5 (renamed from tools/h5import/testfiles/textpfe.h5)bin2064 -> 2064 bytes
-rw-r--r--tools/test/h5import/testfiles/textpfe64.txt (renamed from tools/h5import/testfiles/textpfe64.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtfp32.conf (renamed from tools/h5import/testfiles/txtfp32.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtfp32.h5 (renamed from tools/h5import/testfiles/txtfp32.h5)bin4192 -> 4192 bytes
-rw-r--r--tools/test/h5import/testfiles/txtfp32.txt (renamed from tools/h5import/testfiles/txtfp32.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtfp64.conf (renamed from tools/h5import/testfiles/txtfp64.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtfp64.h5 (renamed from tools/h5import/testfiles/txtfp64.h5)bin9784 -> 9784 bytes
-rw-r--r--tools/test/h5import/testfiles/txtfp64.txt (renamed from tools/h5import/testfiles/txtfp64.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtin16.conf (renamed from tools/h5import/testfiles/txtin16.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtin16.h5 (renamed from tools/h5import/testfiles/txtin16.h5)bin9784 -> 9784 bytes
-rw-r--r--tools/test/h5import/testfiles/txtin16.txt (renamed from tools/h5import/testfiles/txtin16.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtin32.conf (renamed from tools/h5import/testfiles/txtin32.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtin32.h5 (renamed from tools/h5import/testfiles/txtin32.h5)bin4192 -> 4192 bytes
-rw-r--r--tools/test/h5import/testfiles/txtin32.txt (renamed from tools/h5import/testfiles/txtin32.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtin8.conf (renamed from tools/h5import/testfiles/txtin8.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtin8.h5 (renamed from tools/h5import/testfiles/txtin8.h5)bin9784 -> 9784 bytes
-rw-r--r--tools/test/h5import/testfiles/txtin8.txt (renamed from tools/h5import/testfiles/txtin8.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtstr.conf (renamed from tools/h5import/testfiles/txtstr.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtstr.h5 (renamed from tools/h5import/testfiles/txtstr.h5)bin10240 -> 10240 bytes
-rw-r--r--tools/test/h5import/testfiles/txtstr.txt (renamed from tools/h5import/testfiles/txtstr.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtuin16.conf (renamed from tools/h5import/testfiles/txtuin16.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtuin16.h5 (renamed from tools/h5import/testfiles/txtuin16.h5)bin10240 -> 10240 bytes
-rw-r--r--tools/test/h5import/testfiles/txtuin16.txt (renamed from tools/h5import/testfiles/txtuin16.txt)0
-rw-r--r--tools/test/h5import/testfiles/txtuin32.conf (renamed from tools/h5import/testfiles/txtuin32.conf)0
-rw-r--r--tools/test/h5import/testfiles/txtuin32.h5 (renamed from tools/h5import/testfiles/txtuin32.h5)bin6240 -> 6240 bytes
-rw-r--r--tools/test/h5import/testfiles/txtuin32.txt (renamed from tools/h5import/testfiles/txtuin32.txt)0
-rw-r--r--tools/test/h5jam/CMakeLists.txt34
-rw-r--r--tools/test/h5jam/CMakeTests.cmake (renamed from tools/h5jam/CMakeTests.cmake)6
-rw-r--r--tools/test/h5jam/Makefile.am (renamed from tools/h5jam/Makefile.am)7
-rw-r--r--tools/test/h5jam/getub.c (renamed from tools/h5jam/getub.c)0
-rw-r--r--tools/test/h5jam/h5jamgentest.c (renamed from tools/h5jam/h5jamgentest.c)0
-rw-r--r--tools/test/h5jam/tellub.c (renamed from tools/h5jam/tellub.c)0
-rw-r--r--tools/test/h5jam/testfiles/h5jam-help.txt (renamed from tools/h5jam/testfiles/h5jam-help.txt)0
-rw-r--r--tools/test/h5jam/testfiles/h5jam-ub-nohdf5.txt (renamed from tools/h5jam/testfiles/h5jam-ub-nohdf5.txt)0
-rw-r--r--tools/test/h5jam/testfiles/h5unjam-help.txt (renamed from tools/h5jam/testfiles/h5unjam-help.txt)0
-rw-r--r--tools/test/h5jam/testfiles/tall.h5 (renamed from tools/h5jam/testfiles/tall.h5)bin9968 -> 9968 bytes
-rw-r--r--tools/test/h5jam/testfiles/twithub.h5 (renamed from tools/h5jam/testfiles/twithub.h5)bin10592 -> 10592 bytes
-rw-r--r--tools/test/h5jam/testfiles/twithub513.h5 (renamed from tools/h5jam/testfiles/twithub513.h5)bin11056 -> 11056 bytes
-rw-r--r--tools/test/h5jam/testfiles/u10.txt (renamed from tools/h5jam/testfiles/u10.txt)0
-rw-r--r--tools/test/h5jam/testfiles/u511.txt (renamed from tools/h5jam/testfiles/u511.txt)0
-rw-r--r--tools/test/h5jam/testfiles/u512.txt (renamed from tools/h5jam/testfiles/u512.txt)0
-rw-r--r--tools/test/h5jam/testfiles/u513.txt (renamed from tools/h5jam/testfiles/u513.txt)0
-rw-r--r--tools/test/h5jam/testh5jam.sh.in (renamed from tools/h5jam/testh5jam.sh.in)24
-rw-r--r--tools/test/h5ls/CMakeLists.txt11
-rw-r--r--tools/test/h5ls/CMakeTests.cmake (renamed from tools/h5ls/CMakeTests.cmake)0
-rw-r--r--tools/test/h5ls/CMakeTestsVDS.cmake (renamed from tools/h5ls/CMakeTestsVDS.cmake)2
-rw-r--r--tools/test/h5ls/Makefile.am34
-rw-r--r--tools/test/h5ls/testh5ls.sh.in (renamed from tools/h5ls/testh5ls.sh.in)18
-rw-r--r--tools/test/h5ls/testh5lsvds.sh.in (renamed from tools/h5ls/testh5lsvds.sh.in)18
-rw-r--r--tools/test/h5repack/CMakeLists.txt79
-rw-r--r--tools/test/h5repack/CMakeTests.cmake (renamed from tools/h5repack/CMakeTests.cmake)83
-rw-r--r--tools/test/h5repack/Makefile.am (renamed from tools/h5repack/Makefile.am)33
-rw-r--r--tools/test/h5repack/dynlib_rpk.c (renamed from tools/h5repack/dynlib_rpk.c)50
-rw-r--r--tools/test/h5repack/dynlib_vrpk.c104
-rw-r--r--tools/test/h5repack/h5repack.sh.in (renamed from tools/h5repack/h5repack.sh.in)22
-rw-r--r--tools/test/h5repack/h5repack_plugin.sh.in (renamed from tools/h5repack/h5repack_plugin.sh.in)43
-rw-r--r--tools/test/h5repack/h5repacktst.c (renamed from tools/h5repack/h5repacktst.c)0
-rw-r--r--tools/test/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl (renamed from tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl (renamed from tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl (renamed from tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl (renamed from tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl (renamed from tools/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/README (renamed from tools/h5repack/testfiles/README)0
-rw-r--r--tools/test/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl (renamed from tools/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack-help.txt (renamed from tools/h5repack/testfiles/h5repack-help.txt)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack.info (renamed from tools/h5repack/testfiles/h5repack.info)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_attr.h5 (renamed from tools/h5repack/testfiles/h5repack_attr.h5)bin21856 -> 21856 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_attr_refs.h5 (renamed from tools/h5repack/testfiles/h5repack_attr_refs.h5)bin10336 -> 10336 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_deflate.h5 (renamed from tools/h5repack/testfiles/h5repack_deflate.h5)bin6336 -> 6336 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_early.h5 (renamed from tools/h5repack/testfiles/h5repack_early.h5)bin3074224 -> 3074224 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_ext.bin (renamed from tools/h5repack/testfiles/h5repack_ext.bin)bin8 -> 8 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_ext.h5 (renamed from tools/h5repack/testfiles/h5repack_ext.h5)bin1464 -> 1464 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_fill.h5 (renamed from tools/h5repack/testfiles/h5repack_fill.h5)bin2168 -> 2168 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_filters.h5 (renamed from tools/h5repack/testfiles/h5repack_filters.h5)bin27604 -> 27604 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst (renamed from tools/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_fletcher.h5 (renamed from tools/h5repack/testfiles/h5repack_fletcher.h5)bin7232 -> 7232 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_hlink.h5 (renamed from tools/h5repack/testfiles/h5repack_hlink.h5)bin6544 -> 6544 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.UD.h5 (renamed from tools/h5repack/testfiles/h5repack_layout.UD.h5)bin43744 -> 43744 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl (renamed from tools/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5 (renamed from tools/h5repack/testfiles/h5repack_layout.h5)bin29480 -> 29480 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst (renamed from tools/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl (renamed from tools/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_version_test.ddl158
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst (renamed from tools/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout.h5.ddl (renamed from tools/h5repack/testfiles/h5repack_layout.h5.ddl)0
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout2.h5 (renamed from tools/h5repack/testfiles/h5repack_layout2.h5)bin6808 -> 6808 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layout3.h5 (renamed from tools/h5repack/testfiles/h5repack_layout3.h5)bin491840 -> 491840 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_layouto.h5 (renamed from tools/h5repack/testfiles/h5repack_layouto.h5)bin1576 -> 1576 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_named_dtypes.h5 (renamed from tools/h5repack/testfiles/h5repack_named_dtypes.h5)bin4320 -> 4320 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_nbit.h5 (renamed from tools/h5repack/testfiles/h5repack_nbit.h5)bin13208 -> 13208 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_nested_8bit_enum.h5 (renamed from tools/h5repack/testfiles/h5repack_nested_8bit_enum.h5)bin273992 -> 273992 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5 (renamed from tools/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5)bin120630 -> 120630 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_objs.h5 (renamed from tools/h5repack/testfiles/h5repack_objs.h5)bin19738 -> 19738 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_refs.h5 (renamed from tools/h5repack/testfiles/h5repack_refs.h5)bin10336 -> 10336 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_shuffle.h5 (renamed from tools/h5repack/testfiles/h5repack_shuffle.h5)bin7216 -> 7216 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_soffset.h5 (renamed from tools/h5repack/testfiles/h5repack_soffset.h5)bin12452 -> 12452 bytes
-rw-r--r--tools/test/h5repack/testfiles/h5repack_szip.h5 (renamed from tools/h5repack/testfiles/h5repack_szip.h5)bin5588 -> 5588 bytes
-rw-r--r--tools/test/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst (renamed from tools/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst)0
-rw-r--r--tools/test/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst (renamed from tools/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst)0
-rw-r--r--tools/test/h5repack/testfiles/plugin_version_test.h5repack_layout.h5.tst14
-rw-r--r--tools/test/h5repack/testfiles/ublock.bin (renamed from tools/h5repack/testfiles/ublock.bin)0
-rw-r--r--tools/test/h5repack/testh5repack_detect_szip.c (renamed from tools/h5repack/testh5repack_detect_szip.c)0
-rw-r--r--tools/test/h5stat/CMakeLists.txt22
-rw-r--r--tools/test/h5stat/CMakeTests.cmake (renamed from tools/h5stat/CMakeTests.cmake)4
-rw-r--r--tools/test/h5stat/Makefile.am (renamed from tools/h5stat/Makefile.am)9
-rw-r--r--tools/test/h5stat/h5stat_gentest.c (renamed from tools/h5stat/h5stat_gentest.c)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_dims1.ddl (renamed from tools/h5stat/testfiles/h5stat_dims1.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_dims2.ddl (renamed from tools/h5stat/testfiles/h5stat_dims2.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_err1_dims.ddl (renamed from tools/h5stat/testfiles/h5stat_err1_dims.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_err1_links.ddl (renamed from tools/h5stat/testfiles/h5stat_err1_links.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl (renamed from tools/h5stat/testfiles/h5stat_err1_numattrs.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl (renamed from tools/h5stat/testfiles/h5stat_err2_numattrs.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-F.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-F.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-UD.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-UD.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-UT.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-UT.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-d.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-d.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-dT.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-dT.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-file.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-file.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters-g.ddl (renamed from tools/h5stat/testfiles/h5stat_filters-g.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters.ddl (renamed from tools/h5stat/testfiles/h5stat_filters.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_filters.h5 (renamed from tools/h5stat/testfiles/h5stat_filters.h5)bin46272 -> 46272 bytes
-rw-r--r--tools/test/h5stat/testfiles/h5stat_help1.ddl (renamed from tools/h5stat/testfiles/h5stat_help1.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_help2.ddl (renamed from tools/h5stat/testfiles/h5stat_help2.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_idx.ddl (renamed from tools/h5stat/testfiles/h5stat_idx.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_idx.h5 (renamed from tools/h5stat/testfiles/h5stat_idx.h5)bin2206 -> 2206 bytes
-rw-r--r--tools/test/h5stat/testfiles/h5stat_links1.ddl (renamed from tools/h5stat/testfiles/h5stat_links1.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_links2.ddl (renamed from tools/h5stat/testfiles/h5stat_links2.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_links3.ddl (renamed from tools/h5stat/testfiles/h5stat_links3.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_links4.ddl (renamed from tools/h5stat/testfiles/h5stat_links4.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_links5.ddl (renamed from tools/h5stat/testfiles/h5stat_links5.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_newgrat-UA.ddl (renamed from tools/h5stat/testfiles/h5stat_newgrat-UA.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_newgrat-UG.ddl (renamed from tools/h5stat/testfiles/h5stat_newgrat-UG.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_newgrat.ddl (renamed from tools/h5stat/testfiles/h5stat_newgrat.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_newgrat.h5 (renamed from tools/h5stat/testfiles/h5stat_newgrat.h5)bin6362168 -> 6362168 bytes
-rw-r--r--tools/test/h5stat/testfiles/h5stat_nofile.ddl (renamed from tools/h5stat/testfiles/h5stat_nofile.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_notexist.ddl (renamed from tools/h5stat/testfiles/h5stat_notexist.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_numattrs1.ddl (renamed from tools/h5stat/testfiles/h5stat_numattrs1.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_numattrs2.ddl (renamed from tools/h5stat/testfiles/h5stat_numattrs2.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_numattrs3.ddl (renamed from tools/h5stat/testfiles/h5stat_numattrs3.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_numattrs4.ddl (renamed from tools/h5stat/testfiles/h5stat_numattrs4.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_threshold.h5 (renamed from tools/h5stat/testfiles/h5stat_threshold.h5)bin16312 -> 16312 bytes
-rw-r--r--tools/test/h5stat/testfiles/h5stat_tsohm.ddl (renamed from tools/h5stat/testfiles/h5stat_tsohm.ddl)0
-rw-r--r--tools/test/h5stat/testfiles/h5stat_tsohm.h5 (renamed from tools/h5stat/testfiles/h5stat_tsohm.h5)bin3850 -> 3850 bytes
-rw-r--r--tools/test/h5stat/testh5stat.sh.in318
-rw-r--r--tools/test/misc/CMakeLists.txt30
-rw-r--r--tools/test/misc/CMakeTests.cmake (renamed from tools/misc/CMakeTests.cmake)8
-rw-r--r--tools/test/misc/Makefile.am47
-rw-r--r--tools/test/misc/h5perf_gentest.c (renamed from tools/misc/h5perf_gentest.c)0
-rw-r--r--tools/test/misc/h5repart_gentest.c (renamed from tools/misc/h5repart_gentest.c)0
-rw-r--r--tools/test/misc/repart_test.c (renamed from tools/misc/repart_test.c)0
-rw-r--r--tools/test/misc/talign.c (renamed from tools/misc/talign.c)0
-rw-r--r--tools/test/misc/testfiles/h5mkgrp_help.txt (renamed from tools/misc/testfiles/h5mkgrp_help.txt)0
-rw-r--r--tools/test/misc/testfiles/h5mkgrp_version.txt.in (renamed from tools/misc/testfiles/h5mkgrp_version.txt.in)0
-rw-r--r--tools/test/misc/testh5mkgrp.sh.in (renamed from tools/misc/testh5mkgrp.sh.in)17
-rw-r--r--tools/test/misc/testh5repart.sh.in197
-rw-r--r--tools/test/misc/vds/CMakeLists.txt (renamed from tools/misc/vds/CMakeLists.txt)6
-rw-r--r--tools/test/misc/vds/Makefile.am (renamed from tools/misc/vds/Makefile.am)2
-rw-r--r--tools/test/misc/vds/UC_1.h (renamed from tools/misc/vds/UC_1.h)0
-rw-r--r--tools/test/misc/vds/UC_1_one_dim_gen.c (renamed from tools/misc/vds/UC_1_one_dim_gen.c)0
-rw-r--r--tools/test/misc/vds/UC_2.h (renamed from tools/misc/vds/UC_2.h)0
-rw-r--r--tools/test/misc/vds/UC_2_two_dims_gen.c (renamed from tools/misc/vds/UC_2_two_dims_gen.c)0
-rw-r--r--tools/test/misc/vds/UC_3.h (renamed from tools/misc/vds/UC_3.h)0
-rw-r--r--tools/test/misc/vds/UC_3_gaps_gen.c (renamed from tools/misc/vds/UC_3_gaps_gen.c)0
-rw-r--r--tools/test/misc/vds/UC_4.h (renamed from tools/misc/vds/UC_4.h)0
-rw-r--r--tools/test/misc/vds/UC_4_printf_gen.c (renamed from tools/misc/vds/UC_4_printf_gen.c)0
-rw-r--r--tools/test/misc/vds/UC_5.h (renamed from tools/misc/vds/UC_5.h)0
-rw-r--r--tools/test/misc/vds/UC_5_stride_gen.c (renamed from tools/misc/vds/UC_5_stride_gen.c)0
-rw-r--r--tools/test/misc/vds/UC_common.h (renamed from tools/misc/vds/UC_common.h)0
-rw-r--r--tools/test/perform/CMakeLists.txt (renamed from tools/perform/CMakeLists.txt)34
-rw-r--r--tools/test/perform/CMakeTests.cmake (renamed from tools/perform/CMakeTests.cmake)0
-rw-r--r--tools/test/perform/COPYING (renamed from tools/perform/COPYING)0
-rw-r--r--tools/test/perform/Makefile.am (renamed from tools/perform/Makefile.am)0
-rw-r--r--[-rwxr-xr-x]tools/test/perform/build_h5perf_alone.sh (renamed from tools/perform/build_h5perf_alone.sh)0
-rw-r--r--[-rwxr-xr-x]tools/test/perform/build_h5perf_serial_alone.sh (renamed from tools/perform/build_h5perf_serial_alone.sh)0
-rw-r--r--tools/test/perform/chunk.c (renamed from tools/perform/chunk.c)0
-rw-r--r--[-rwxr-xr-x]tools/test/perform/gen_report.pl (renamed from tools/perform/gen_report.pl)0
-rw-r--r--tools/test/perform/iopipe.c (renamed from tools/perform/iopipe.c)0
-rw-r--r--tools/test/perform/overhead.c (renamed from tools/perform/overhead.c)0
-rw-r--r--tools/test/perform/perf.c (renamed from tools/perform/perf.c)0
-rw-r--r--tools/test/perform/perf_meta.c (renamed from tools/perform/perf_meta.c)0
-rw-r--r--tools/test/perform/pio_engine.c (renamed from tools/perform/pio_engine.c)1
-rw-r--r--tools/test/perform/pio_perf.c (renamed from tools/perform/pio_perf.c)11
-rw-r--r--tools/test/perform/pio_perf.h (renamed from tools/perform/pio_perf.h)3
-rw-r--r--tools/test/perform/pio_standalone.c (renamed from tools/perform/pio_standalone.c)1
-rw-r--r--tools/test/perform/pio_standalone.h530
-rw-r--r--tools/test/perform/sio_engine.c (renamed from tools/perform/sio_engine.c)0
-rw-r--r--tools/test/perform/sio_perf.c (renamed from tools/perform/sio_perf.c)0
-rw-r--r--tools/test/perform/sio_perf.h (renamed from tools/perform/sio_perf.h)0
-rw-r--r--tools/test/perform/sio_standalone.c (renamed from tools/perform/sio_standalone.c)0
-rw-r--r--tools/test/perform/sio_standalone.h (renamed from tools/perform/sio_standalone.h)5
-rw-r--r--tools/test/perform/zip_perf.c (renamed from tools/perform/zip_perf.c)0
750 files changed, 5635 insertions, 3943 deletions
diff --git a/.gitignore b/.gitignore
index 1c4acc6..002c4a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -79,27 +79,38 @@ test/testfiles/Makefile.in
test/testfiles/plist_files/Makefile.in
testpar/Makefile.in
tools/Makefile.in
-tools/h5copy/Makefile.in
-tools/h5copy/testfiles/Makefile.in
-tools/h5diff/Makefile.in
-tools/h5diff/testfiles/Makefile.in
-tools/h5dump/Makefile.in
-tools/h5dump/errfiles/Makefile.in
-tools/h5format_convert/Makefile.in
-tools/h5import/Makefile.in
-tools/h5import/testfiles/Makefile.in
-tools/h5jam/Makefile.in
-tools/h5jam/testfiles/Makefile.in
-tools/h5ls/Makefile.in
-tools/h5repack/Makefile.in
-tools/h5repack/testfiles/Makefile.in
-tools/h5stat/Makefile.in
-tools/h5stat/testfiles/Makefile.in
tools/lib/Makefile.in
-tools/misc/Makefile.in
-tools/misc/testfiles/Makefile.in
-tools/misc/vds/Makefile.in
-tools/perform/Makefile.in
tools/testfiles/Makefile.in
tools/testfiles/pbits/Makefile.in
tools/testfiles/vds/Makefile.in
+tools/src/h5copy/Makefile.in
+tools/src/h5diff/Makefile.in
+tools/src/h5dump/Makefile.in
+tools/src/h5format_convert/Makefile.in
+tools/src/h5import/Makefile.in
+tools/src/h5jam/Makefile.in
+tools/src/h5ls/Makefile.in
+tools/src/h5repack/Makefile.in
+tools/src/h5stat/Makefile.in
+tools/src/misc/Makefile.in
+tools/src/misc/vds/Makefile.in
+tools/test/h5copy/Makefile.in
+tools/test/h5copy/testfiles/Makefile.in
+tools/test/h5diff/Makefile.in
+tools/test/h5diff/testfiles/Makefile.in
+tools/test/h5dump/Makefile.in
+tools/test/h5dump/errfiles/Makefile.in
+tools/test/h5format_convert/Makefile.in
+tools/test/h5import/Makefile.in
+tools/test/h5import/testfiles/Makefile.in
+tools/test/h5jam/Makefile.in
+tools/test/h5jam/testfiles/Makefile.in
+tools/test/h5ls/Makefile.in
+tools/test/h5repack/Makefile.in
+tools/test/h5repack/testfiles/Makefile.in
+tools/test/h5stat/Makefile.in
+tools/test/h5stat/testfiles/Makefile.in
+tools/test/misc/Makefile.in
+tools/test/misc/testfiles/Makefile.in
+tools/test/misc/vds/Makefile.in
+tools/test/perform/Makefile.in
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ea09493..b59943e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -188,8 +188,8 @@ set (HDF5_HL_SRC_DIR ${HDF5_SOURCE_DIR}/hl)
set (HDF5_HL_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/hl/c++)
set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools)
set (HDF5_TOOLS_DIR ${HDF5_SOURCE_DIR}/tools)
-set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools)
-set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/perform)
+set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src)
+set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src/perform)
set (HDF5_F90_SRC_DIR ${HDF5_SOURCE_DIR}/fortran)
set (HDF5_JAVA_JNI_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/jni)
set (HDF5_JAVA_HDF5_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/hdf)
@@ -750,7 +750,7 @@ endif (HDF5_ENABLE_THREADSAFE)
#-----------------------------------------------------------------------------
add_subdirectory (${HDF5_SOURCE_DIR}/src ${PROJECT_BINARY_DIR}/src)
-if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "SVN" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
+if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "SVN" OR 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 (BUILD_SHARED_LIBS)
@@ -763,7 +763,7 @@ if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "SVN" OR HDF5_ALLOW_EXTERNAL_SUPPORT MAT
add_dependencies (${HDF5_LIBSH_TARGET} SZIP)
endif (BUILD_SHARED_LIBS)
endif (SZIP_FOUND AND SZIP_USE_EXTERNAL)
-endif (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "SVN" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
+endif (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "SVN" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
#-----------------------------------------------------------------------------
# Dashboard and Testing Settings
diff --git a/MANIFEST b/MANIFEST
index da3530b..f4b8b83 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -470,6 +470,7 @@
./src/H5Aprivate.h
./src/H5Apublic.h
./src/H5AC.c
+./src/H5ACdbg.c
./src/H5ACmodule.h
./src/H5ACmpio.c
./src/H5ACpkg.h
@@ -494,6 +495,7 @@
./src/H5B2stat.c
./src/H5B2test.c
./src/H5C.c
+./src/H5Cdbg.c
./src/H5Cepoch.c
./src/H5Cmodule.h
./src/H5Cmpio.c
@@ -1169,172 +1171,181 @@
./tools/COPYING
./tools/Makefile.am
-
-./tools/h5dump/Makefile.am
-./tools/h5dump/h5dump.c
-./tools/h5dump/h5dump.h
-./tools/h5dump/h5dump_defines.h
-./tools/h5dump/h5dump_extern.h
-./tools/h5dump/h5dump_ddl.c
-./tools/h5dump/h5dump_ddl.h
-./tools/h5dump/h5dump_xml.c
-./tools/h5dump/h5dump_xml.h
-./tools/h5dump/h5dumpgentest.c
-./tools/h5dump/testh5dump.sh.in
-./tools/h5dump/testh5dumppbits.sh.in
-./tools/h5dump/testh5dumpxml.sh.in
-./tools/h5dump/testh5dumpvds.sh.in
-./tools/h5dump/binread.c
-
-./tools/h5import/Makefile.am
-./tools/h5import/h5import.h
-./tools/h5import/h5import.c
-./tools/h5import/h5importtest.c
-./tools/h5import/h5importtestutil.sh.in
+./tools/src/Makefile.am
+./tools/test/Makefile.am
+
+./tools/src/h5dump/Makefile.am
+./tools/src/h5dump/h5dump.c
+./tools/src/h5dump/h5dump.h
+./tools/src/h5dump/h5dump_defines.h
+./tools/src/h5dump/h5dump_extern.h
+./tools/src/h5dump/h5dump_ddl.c
+./tools/src/h5dump/h5dump_ddl.h
+./tools/src/h5dump/h5dump_xml.c
+./tools/src/h5dump/h5dump_xml.h
+./tools/test/h5dump/Makefile.am
+./tools/test/h5dump/h5dumpgentest.c
+./tools/test/h5dump/testh5dump.sh.in
+./tools/test/h5dump/testh5dumppbits.sh.in
+./tools/test/h5dump/testh5dumpxml.sh.in
+./tools/test/h5dump/testh5dumpvds.sh.in
+./tools/test/h5dump/binread.c
+
+./tools/src/h5import/Makefile.am
+./tools/src/h5import/h5import.h
+./tools/src/h5import/h5import.c
+./tools/test/h5import/Makefile.am
+./tools/test/h5import/h5importtest.c
+./tools/test/h5import/h5importtestutil.sh.in
# testfiles for h5import
-./tools/h5import/testfiles/binfp64.conf
-./tools/h5import/testfiles/binfp64.h5
-./tools/h5import/testfiles/binin16.conf
-./tools/h5import/testfiles/binin16.h5
-./tools/h5import/testfiles/binin32.conf
-./tools/h5import/testfiles/binin32.h5
-./tools/h5import/testfiles/binin8.conf
-./tools/h5import/testfiles/binin8.h5
-./tools/h5import/testfiles/binin8w.conf
-./tools/h5import/testfiles/binin8w.h5
-./tools/h5import/testfiles/binuin16.conf
-./tools/h5import/testfiles/binuin16.h5
-./tools/h5import/testfiles/binuin32.conf
-./tools/h5import/testfiles/binuin32.h5
-./tools/h5import/testfiles/textpfe.conf
-./tools/h5import/testfiles/textpfe.h5
-./tools/h5import/testfiles/textpfe64.txt
-./tools/h5import/testfiles/txtfp32.conf
-./tools/h5import/testfiles/txtfp32.h5
-./tools/h5import/testfiles/txtfp32.txt
-./tools/h5import/testfiles/txtfp64.conf
-./tools/h5import/testfiles/txtfp64.h5
-./tools/h5import/testfiles/txtfp64.txt
-./tools/h5import/testfiles/txtin16.conf
-./tools/h5import/testfiles/txtin16.h5
-./tools/h5import/testfiles/txtin16.txt
-./tools/h5import/testfiles/txtin32.conf
-./tools/h5import/testfiles/txtin32.h5
-./tools/h5import/testfiles/txtin32.txt
-./tools/h5import/testfiles/txtin8.conf
-./tools/h5import/testfiles/txtin8.h5
-./tools/h5import/testfiles/txtin8.txt
-./tools/h5import/testfiles/txtuin16.conf
-./tools/h5import/testfiles/txtuin16.h5
-./tools/h5import/testfiles/txtuin16.txt
-./tools/h5import/testfiles/txtuin32.conf
-./tools/h5import/testfiles/txtuin32.h5
-./tools/h5import/testfiles/txtuin32.txt
-./tools/h5import/testfiles/txtstr.conf
-./tools/h5import/testfiles/txtstr.h5
-./tools/h5import/testfiles/txtstr.txt
-./tools/h5import/testfiles/dbinfp64.h5.txt
-./tools/h5import/testfiles/dbinin8.h5.txt
-./tools/h5import/testfiles/dbinin8w.h5.txt
-./tools/h5import/testfiles/dbinin16.h5.txt
-./tools/h5import/testfiles/dbinin32.h5.txt
-./tools/h5import/testfiles/dbinuin16.h5.txt
-./tools/h5import/testfiles/dbinuin32.h5.txt
-./tools/h5import/testfiles/dtxtstr.h5.txt
+./tools/test/h5import/testfiles/binfp64.conf
+./tools/test/h5import/testfiles/binfp64.h5
+./tools/test/h5import/testfiles/binin16.conf
+./tools/test/h5import/testfiles/binin16.h5
+./tools/test/h5import/testfiles/binin32.conf
+./tools/test/h5import/testfiles/binin32.h5
+./tools/test/h5import/testfiles/binin8.conf
+./tools/test/h5import/testfiles/binin8.h5
+./tools/test/h5import/testfiles/binin8w.conf
+./tools/test/h5import/testfiles/binin8w.h5
+./tools/test/h5import/testfiles/binuin16.conf
+./tools/test/h5import/testfiles/binuin16.h5
+./tools/test/h5import/testfiles/binuin32.conf
+./tools/test/h5import/testfiles/binuin32.h5
+./tools/test/h5import/testfiles/textpfe.conf
+./tools/test/h5import/testfiles/textpfe.h5
+./tools/test/h5import/testfiles/textpfe64.txt
+./tools/test/h5import/testfiles/txtfp32.conf
+./tools/test/h5import/testfiles/txtfp32.h5
+./tools/test/h5import/testfiles/txtfp32.txt
+./tools/test/h5import/testfiles/txtfp64.conf
+./tools/test/h5import/testfiles/txtfp64.h5
+./tools/test/h5import/testfiles/txtfp64.txt
+./tools/test/h5import/testfiles/txtin16.conf
+./tools/test/h5import/testfiles/txtin16.h5
+./tools/test/h5import/testfiles/txtin16.txt
+./tools/test/h5import/testfiles/txtin32.conf
+./tools/test/h5import/testfiles/txtin32.h5
+./tools/test/h5import/testfiles/txtin32.txt
+./tools/test/h5import/testfiles/txtin8.conf
+./tools/test/h5import/testfiles/txtin8.h5
+./tools/test/h5import/testfiles/txtin8.txt
+./tools/test/h5import/testfiles/txtuin16.conf
+./tools/test/h5import/testfiles/txtuin16.h5
+./tools/test/h5import/testfiles/txtuin16.txt
+./tools/test/h5import/testfiles/txtuin32.conf
+./tools/test/h5import/testfiles/txtuin32.h5
+./tools/test/h5import/testfiles/txtuin32.txt
+./tools/test/h5import/testfiles/txtstr.conf
+./tools/test/h5import/testfiles/txtstr.h5
+./tools/test/h5import/testfiles/txtstr.txt
+./tools/test/h5import/testfiles/dbinfp64.h5.txt
+./tools/test/h5import/testfiles/dbinin8.h5.txt
+./tools/test/h5import/testfiles/dbinin8w.h5.txt
+./tools/test/h5import/testfiles/dbinin16.h5.txt
+./tools/test/h5import/testfiles/dbinin32.h5.txt
+./tools/test/h5import/testfiles/dbinuin16.h5.txt
+./tools/test/h5import/testfiles/dbinuin32.h5.txt
+./tools/test/h5import/testfiles/dtxtstr.h5.txt
# h5diff sources
-./tools/h5diff/Makefile.am
-./tools/h5diff/h5diff_common.c
-./tools/h5diff/h5diff_common.h
-./tools/h5diff/h5diff_main.c
-./tools/h5diff/ph5diff_main.c
-./tools/h5diff/h5diffgentest.c
-./tools/h5diff/testh5diff.sh.in
-./tools/h5diff/testph5diff.sh.in
+./tools/src/h5diff/Makefile.am
+./tools/src/h5diff/h5diff_common.c
+./tools/src/h5diff/h5diff_common.h
+./tools/src/h5diff/h5diff_main.c
+./tools/src/h5diff/ph5diff_main.c
+./tools/test/h5diff/Makefile.am
+./tools/test/h5diff/h5diffgentest.c
+./tools/test/h5diff/testh5diff.sh.in
+./tools/test/h5diff/testph5diff.sh.in
# h5format_convert sources
-./tools/h5format_convert/Makefile.am
-./tools/h5format_convert/h5fc_chk_idx.c
-./tools/h5format_convert/h5fc_gentest.c
-./tools/h5format_convert/h5format_convert.c
-./tools/h5format_convert/testfiles/h5fc_v_n_all.ddl
-./tools/h5format_convert/testfiles/h5fc_v_bt1.ddl
-./tools/h5format_convert/testfiles/h5fc_v_err.ddl
-./tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
-./tools/h5format_convert/testfiles/h5fc_d_file.ddl
-./tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
-./tools/h5format_convert/testfiles/h5fc_dname.ddl
-./tools/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl
-./tools/h5format_convert/testfiles/h5fc_help.ddl
-./tools/h5format_convert/testfiles/h5fc_v_all.ddl
-./tools/h5format_convert/testfiles/h5fc_nooption.ddl
-./tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl
-./tools/h5format_convert/testfiles/h5fc_nonexistfile.ddl
-./tools/h5format_convert/testfiles/h5fc_non_v3.h5
-./tools/h5format_convert/testfiles/h5fc_edge_v3.h5
-./tools/h5format_convert/testfiles/h5fc_err_level.h5
-./tools/h5format_convert/testfiles/h5fc_ext1_f.h5
-./tools/h5format_convert/testfiles/h5fc_ext1_i.h5
-./tools/h5format_convert/testfiles/h5fc_ext1_s.h5
-./tools/h5format_convert/testfiles/h5fc_ext2_if.h5
-./tools/h5format_convert/testfiles/h5fc_ext2_is.h5
-./tools/h5format_convert/testfiles/h5fc_ext2_sf.h5
-./tools/h5format_convert/testfiles/h5fc_ext3_isf.h5
-./tools/h5format_convert/testfiles/h5fc_ext_none.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext1_f.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext1_i.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext1_s.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext2_if.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext2_is.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext2_sf.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext3_isf.h5
-./tools/h5format_convert/testfiles/old_h5fc_ext_none.h5
-./tools/h5format_convert/testfiles/h5fc_ext1_f.ddl
-./tools/h5format_convert/testfiles/h5fc_ext1_i.ddl
-./tools/h5format_convert/testfiles/h5fc_ext1_s.ddl
-./tools/h5format_convert/testfiles/h5fc_ext2_if.ddl
-./tools/h5format_convert/testfiles/h5fc_ext2_is.ddl
-./tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl
-./tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
-./tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
-./tools/h5format_convert/testh5fc.sh.in
+./tools/src/h5format_convert/Makefile.am
+./tools/src/h5format_convert/h5format_convert.c
+./tools/test/h5format_convert/h5fc_chk_idx.c
+./tools/test/h5format_convert/h5fc_gentest.c
+./tools/test/h5format_convert/testfiles/h5fc_v_n_all.ddl
+./tools/test/h5format_convert/testfiles/h5fc_v_bt1.ddl
+./tools/test/h5format_convert/testfiles/h5fc_v_err.ddl
+./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_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_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
+./tools/test/h5format_convert/testfiles/h5fc_ext1_f.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext1_i.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext1_s.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext2_if.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext2_is.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext2_sf.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext3_isf.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext_none.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.h5
+./tools/test/h5format_convert/testfiles/old_h5fc_ext_none.h5
+./tools/test/h5format_convert/testfiles/h5fc_ext1_f.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext1_i.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext1_s.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext2_if.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext2_is.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext2_sf.ddl
+./tools/test/h5format_convert/testfiles/h5fc_ext3_isf.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
+./tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
+./tools/test/h5format_convert/testh5fc.sh.in
# h5repack sources
-./tools/h5repack/Makefile.am
-./tools/h5repack/dynlib_rpk.c
-./tools/h5repack/h5repack.sh.in
-./tools/h5repack/h5repack_plugin.sh.in
-./tools/h5repack/h5repack.c
-./tools/h5repack/h5repack.h
-./tools/h5repack/h5repack_copy.c
-./tools/h5repack/h5repack_refs.c
-./tools/h5repack/h5repack_filters.c
-./tools/h5repack/h5repack_main.c
-./tools/h5repack/h5repack_opttable.c
-./tools/h5repack/h5repack_parse.c
-./tools/h5repack/h5repack_verify.c
-./tools/h5repack/h5repacktst.c
-./tools/h5repack/testh5repack_detect_szip.c
+./tools/src/h5repack/Makefile.am
+./tools/src/h5repack/h5repack.c
+./tools/src/h5repack/h5repack.h
+./tools/src/h5repack/h5repack_copy.c
+./tools/src/h5repack/h5repack_refs.c
+./tools/src/h5repack/h5repack_filters.c
+./tools/src/h5repack/h5repack_main.c
+./tools/src/h5repack/h5repack_opttable.c
+./tools/src/h5repack/h5repack_parse.c
+./tools/src/h5repack/h5repack_verify.c
+./tools/test/h5repack/Makefile.am
+./tools/test/h5repack/dynlib_rpk.c
+./tools/test/h5repack/dynlib_vrpk.c
+./tools/test/h5repack/h5repack.sh.in
+./tools/test/h5repack/h5repack_plugin.sh.in
+./tools/test/h5repack/h5repacktst.c
+./tools/test/h5repack/testh5repack_detect_szip.c
# h5ls sources
-./tools/h5ls/CMakeTestsVDS.cmake
-./tools/h5ls/Makefile.am
-./tools/h5ls/h5ls.c
-./tools/h5ls/testh5ls.sh.in
-./tools/h5ls/testh5lsvds.sh.in
+./tools/src/h5ls/Makefile.am
+./tools/src/h5ls/h5ls.c
+./tools/test/h5ls/Makefile.am
+./tools/test/h5ls/CMakeTestsVDS.cmake
+./tools/test/h5ls/testh5ls.sh.in
+./tools/test/h5ls/testh5lsvds.sh.in
# h5copy sources
-./tools/h5copy/testh5copy.sh.in
-./tools/h5copy/h5copy.c
-./tools/h5copy/h5copygentest.c
-./tools/h5copy/Makefile.am
+./tools/src/h5copy/Makefile.am
+./tools/src/h5copy/h5copy.c
+./tools/test/h5copy/Makefile.am
+./tools/test/h5copy/h5copygentest.c
+./tools/test/h5copy/testh5copy.sh.in
./tools/lib/Makefile.am
@@ -1363,77 +1374,79 @@
./tools/lib/io_timer.c
./tools/lib/io_timer.h
-./tools/misc/Makefile.am
-./tools/misc/h5cc.in
-./tools/misc/h5debug.c
-./tools/misc/h5mkgrp.c
-./tools/misc/h5redeploy.in
-./tools/misc/h5repart.c
-./tools/misc/h5repart_gentest.c
-./tools/misc/repart_test.c
-./tools/misc/testh5mkgrp.sh.in
-./tools/misc/testh5repart.sh.in
-./tools/misc/talign.c
-./tools/misc/testfiles/h5mkgrp_help.txt
-./tools/misc/testfiles/h5mkgrp_version.txt.in
-./tools/misc/h5perf_gentest.c
-./tools/misc/vds/Makefile.am
-./tools/misc/vds/UC_1.h
-./tools/misc/vds/UC_1_one_dim_gen.c
-./tools/misc/vds/UC_2.h
-./tools/misc/vds/UC_2_two_dims_gen.c
-./tools/misc/vds/UC_3.h
-./tools/misc/vds/UC_3_gaps_gen.c
-./tools/misc/vds/UC_4.h
-./tools/misc/vds/UC_4_printf_gen.c
-./tools/misc/vds/UC_5.h
-./tools/misc/vds/UC_5_stride_gen.c
-./tools/misc/vds/UC_common.h
+./tools/src/misc/Makefile.am
+./tools/src/misc/h5cc.in
+./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
+./tools/test/misc/repart_test.c
+./tools/test/misc/testh5mkgrp.sh.in
+./tools/test/misc/testh5repart.sh.in
+./tools/test/misc/talign.c
+./tools/test/misc/testfiles/h5mkgrp_help.txt
+./tools/test/misc/testfiles/h5mkgrp_version.txt.in
+./tools/test/misc/h5perf_gentest.c
+./tools/test/misc/vds/Makefile.am
+./tools/test/misc/vds/UC_1.h
+./tools/test/misc/vds/UC_1_one_dim_gen.c
+./tools/test/misc/vds/UC_2.h
+./tools/test/misc/vds/UC_2_two_dims_gen.c
+./tools/test/misc/vds/UC_3.h
+./tools/test/misc/vds/UC_3_gaps_gen.c
+./tools/test/misc/vds/UC_4.h
+./tools/test/misc/vds/UC_4_printf_gen.c
+./tools/test/misc/vds/UC_5.h
+./tools/test/misc/vds/UC_5_stride_gen.c
+./tools/test/misc/vds/UC_common.h
# h5stat sources
-./tools/h5stat/Makefile.am
-./tools/h5stat/h5stat.c
+./tools/src/h5stat/Makefile.am
+./tools/src/h5stat/h5stat.c
# h5stat test files
-./tools/h5stat/h5stat_gentest.c
-./tools/h5stat/testh5stat.sh.in
-./tools/h5stat/testfiles/h5stat_dims1.ddl
-./tools/h5stat/testfiles/h5stat_dims2.ddl
-./tools/h5stat/testfiles/h5stat_err1_dims.ddl
-./tools/h5stat/testfiles/h5stat_err1_links.ddl
-./tools/h5stat/testfiles/h5stat_err1_numattrs.ddl
-./tools/h5stat/testfiles/h5stat_err2_numattrs.ddl
-./tools/h5stat/testfiles/h5stat_filters.ddl
-./tools/h5stat/testfiles/h5stat_filters-d.ddl
-./tools/h5stat/testfiles/h5stat_filters-dT.ddl
-./tools/h5stat/testfiles/h5stat_filters-F.ddl
-./tools/h5stat/testfiles/h5stat_filters-file.ddl
-./tools/h5stat/testfiles/h5stat_filters-g.ddl
-./tools/h5stat/testfiles/h5stat_filters-UD.ddl
-./tools/h5stat/testfiles/h5stat_filters-UT.ddl
-./tools/h5stat/testfiles/h5stat_filters.h5
-./tools/h5stat/testfiles/h5stat_help1.ddl
-./tools/h5stat/testfiles/h5stat_help2.ddl
-./tools/h5stat/testfiles/h5stat_idx.h5
-./tools/h5stat/testfiles/h5stat_idx.ddl
-./tools/h5stat/testfiles/h5stat_links1.ddl
-./tools/h5stat/testfiles/h5stat_links2.ddl
-./tools/h5stat/testfiles/h5stat_links3.ddl
-./tools/h5stat/testfiles/h5stat_links4.ddl
-./tools/h5stat/testfiles/h5stat_links5.ddl
-./tools/h5stat/testfiles/h5stat_newgrat.ddl
-./tools/h5stat/testfiles/h5stat_newgrat-UA.ddl
-./tools/h5stat/testfiles/h5stat_newgrat-UG.ddl
-./tools/h5stat/testfiles/h5stat_newgrat.h5
-./tools/h5stat/testfiles/h5stat_nofile.ddl
-./tools/h5stat/testfiles/h5stat_notexist.ddl
-./tools/h5stat/testfiles/h5stat_numattrs1.ddl
-./tools/h5stat/testfiles/h5stat_numattrs2.ddl
-./tools/h5stat/testfiles/h5stat_numattrs3.ddl
-./tools/h5stat/testfiles/h5stat_numattrs4.ddl
-./tools/h5stat/testfiles/h5stat_threshold.h5
-./tools/h5stat/testfiles/h5stat_tsohm.ddl
-./tools/h5stat/testfiles/h5stat_tsohm.h5
+./tools/test/h5stat/Makefile.am
+./tools/test/h5stat/h5stat_gentest.c
+./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_filters.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-d.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-dT.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-F.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-file.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-g.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-UD.ddl
+./tools/test/h5stat/testfiles/h5stat_filters-UT.ddl
+./tools/test/h5stat/testfiles/h5stat_filters.h5
+./tools/test/h5stat/testfiles/h5stat_help1.ddl
+./tools/test/h5stat/testfiles/h5stat_help2.ddl
+./tools/test/h5stat/testfiles/h5stat_idx.h5
+./tools/test/h5stat/testfiles/h5stat_idx.ddl
+./tools/test/h5stat/testfiles/h5stat_links1.ddl
+./tools/test/h5stat/testfiles/h5stat_links2.ddl
+./tools/test/h5stat/testfiles/h5stat_links3.ddl
+./tools/test/h5stat/testfiles/h5stat_links4.ddl
+./tools/test/h5stat/testfiles/h5stat_links5.ddl
+./tools/test/h5stat/testfiles/h5stat_newgrat.ddl
+./tools/test/h5stat/testfiles/h5stat_newgrat-UA.ddl
+./tools/test/h5stat/testfiles/h5stat_newgrat-UG.ddl
+./tools/test/h5stat/testfiles/h5stat_newgrat.h5
+./tools/test/h5stat/testfiles/h5stat_nofile.ddl
+./tools/test/h5stat/testfiles/h5stat_notexist.ddl
+./tools/test/h5stat/testfiles/h5stat_numattrs1.ddl
+./tools/test/h5stat/testfiles/h5stat_numattrs2.ddl
+./tools/test/h5stat/testfiles/h5stat_numattrs3.ddl
+./tools/test/h5stat/testfiles/h5stat_numattrs4.ddl
+./tools/test/h5stat/testfiles/h5stat_threshold.h5
+./tools/test/h5stat/testfiles/h5stat_tsohm.ddl
+./tools/test/h5stat/testfiles/h5stat_tsohm.h5
# h5dump test files
./tools/testfiles/charsets.h5
@@ -1730,44 +1743,44 @@
./tools/testfiles/twithddlfile.exp
# h5dump test error files
-./tools/h5dump/errfiles/filter_fail.err
-./tools/h5dump/errfiles/non_existing.err
-./tools/h5dump/errfiles/tall-1.err
-./tools/h5dump/errfiles/tall-2A.err
-./tools/h5dump/errfiles/tall-2A0.err
-./tools/h5dump/errfiles/tall-2B.err
-./tools/h5dump/errfiles/tarray1_big.err
-./tools/h5dump/errfiles/tattr-3.err
-./tools/h5dump/errfiles/tattrregR.err
-./tools/h5dump/errfiles/tcomp-3.err
-./tools/h5dump/errfiles/tdataregR.err
-./tools/h5dump/errfiles/tdset-2.err
-./tools/h5dump/errfiles/texceedsubblock.err
-./tools/h5dump/errfiles/texceedsubcount.err
-./tools/h5dump/errfiles/texceedsubstart.err
-./tools/h5dump/errfiles/texceedsubstride.err
-./tools/h5dump/errfiles/textlink.err
-./tools/h5dump/errfiles/textlinkfar.err
-./tools/h5dump/errfiles/textlinksrc.err
-./tools/h5dump/errfiles/tgroup-2.err
-./tools/h5dump/errfiles/tnofilename-with-packed-bits.err
-./tools/h5dump/errfiles/torderlinks1.err
-./tools/h5dump/errfiles/torderlinks2.err
-./tools/h5dump/errfiles/tpbitsCharLengthExceeded.err
-./tools/h5dump/errfiles/tpbitsCharOffsetExceeded.err
-./tools/h5dump/errfiles/tpbitsIncomplete.err
-./tools/h5dump/errfiles/tpbitsIntLengthExceeded.err
-./tools/h5dump/errfiles/tpbitsIntOffsetExceeded.err
-./tools/h5dump/errfiles/tpbitsLengthExceeded.err
-./tools/h5dump/errfiles/tpbitsLengthPositive.err
-./tools/h5dump/errfiles/tpbitsLongLengthExceeded.err
-./tools/h5dump/errfiles/tpbitsLongOffsetExceeded.err
-./tools/h5dump/errfiles/tpbitsMaxExceeded.err
-./tools/h5dump/errfiles/tpbitsOffsetExceeded.err
-./tools/h5dump/errfiles/tpbitsOffsetNegative.err
-./tools/h5dump/errfiles/tperror.err
-./tools/h5dump/errfiles/tqmarkfile.err
-./tools/h5dump/errfiles/tslink-D.err
+./tools/test/h5dump/errfiles/filter_fail.err
+./tools/test/h5dump/errfiles/non_existing.err
+./tools/test/h5dump/errfiles/tall-1.err
+./tools/test/h5dump/errfiles/tall-2A.err
+./tools/test/h5dump/errfiles/tall-2A0.err
+./tools/test/h5dump/errfiles/tall-2B.err
+./tools/test/h5dump/errfiles/tarray1_big.err
+./tools/test/h5dump/errfiles/tattr-3.err
+./tools/test/h5dump/errfiles/tattrregR.err
+./tools/test/h5dump/errfiles/tcomp-3.err
+./tools/test/h5dump/errfiles/tdataregR.err
+./tools/test/h5dump/errfiles/tdset-2.err
+./tools/test/h5dump/errfiles/texceedsubblock.err
+./tools/test/h5dump/errfiles/texceedsubcount.err
+./tools/test/h5dump/errfiles/texceedsubstart.err
+./tools/test/h5dump/errfiles/texceedsubstride.err
+./tools/test/h5dump/errfiles/textlink.err
+./tools/test/h5dump/errfiles/textlinkfar.err
+./tools/test/h5dump/errfiles/textlinksrc.err
+./tools/test/h5dump/errfiles/tgroup-2.err
+./tools/test/h5dump/errfiles/tnofilename-with-packed-bits.err
+./tools/test/h5dump/errfiles/torderlinks1.err
+./tools/test/h5dump/errfiles/torderlinks2.err
+./tools/test/h5dump/errfiles/tpbitsCharLengthExceeded.err
+./tools/test/h5dump/errfiles/tpbitsCharOffsetExceeded.err
+./tools/test/h5dump/errfiles/tpbitsIncomplete.err
+./tools/test/h5dump/errfiles/tpbitsIntLengthExceeded.err
+./tools/test/h5dump/errfiles/tpbitsIntOffsetExceeded.err
+./tools/test/h5dump/errfiles/tpbitsLengthExceeded.err
+./tools/test/h5dump/errfiles/tpbitsLengthPositive.err
+./tools/test/h5dump/errfiles/tpbitsLongLengthExceeded.err
+./tools/test/h5dump/errfiles/tpbitsLongOffsetExceeded.err
+./tools/test/h5dump/errfiles/tpbitsMaxExceeded.err
+./tools/test/h5dump/errfiles/tpbitsOffsetExceeded.err
+./tools/test/h5dump/errfiles/tpbitsOffsetNegative.err
+./tools/test/h5dump/errfiles/tperror.err
+./tools/test/h5dump/errfiles/tqmarkfile.err
+./tools/test/h5dump/errfiles/tslink-D.err
# h5dump packed bits validation
./tools/testfiles/pbits/tnofilename-with-packed-bits.ddl
@@ -2038,321 +2051,324 @@
#test files for h5diff
-./tools/h5diff/testfiles/h5diff_10.txt
-./tools/h5diff/testfiles/h5diff_11.txt
-./tools/h5diff/testfiles/h5diff_12.txt
-./tools/h5diff/testfiles/h5diff_13.txt
-./tools/h5diff/testfiles/h5diff_14.txt
-./tools/h5diff/testfiles/h5diff_15.txt
-./tools/h5diff/testfiles/h5diff_16_1.txt
-./tools/h5diff/testfiles/h5diff_16_2.txt
-./tools/h5diff/testfiles/h5diff_16_3.txt
-./tools/h5diff/testfiles/h5diff_17.txt
-./tools/h5diff/testfiles/h5diff_171.txt
-./tools/h5diff/testfiles/h5diff_172.txt
-./tools/h5diff/testfiles/h5diff_18.txt
-./tools/h5diff/testfiles/h5diff_18_1.txt
-./tools/h5diff/testfiles/h5diff_19.txt
-./tools/h5diff/testfiles/h5diff_20.txt
-./tools/h5diff/testfiles/h5diff_21.txt
-./tools/h5diff/testfiles/h5diff_22.txt
-./tools/h5diff/testfiles/h5diff_23.txt
-./tools/h5diff/testfiles/h5diff_24.txt
-./tools/h5diff/testfiles/h5diff_25.txt
-./tools/h5diff/testfiles/h5diff_26.txt
-./tools/h5diff/testfiles/h5diff_27.txt
-./tools/h5diff/testfiles/h5diff_28.txt
-./tools/h5diff/testfiles/h5diff_30.txt
-./tools/h5diff/testfiles/h5diff_50.txt
-./tools/h5diff/testfiles/h5diff_51.txt
-./tools/h5diff/testfiles/h5diff_52.txt
-./tools/h5diff/testfiles/h5diff_53.txt
-./tools/h5diff/testfiles/h5diff_54.txt
-./tools/h5diff/testfiles/h5diff_55.txt
-./tools/h5diff/testfiles/h5diff_56.txt
-./tools/h5diff/testfiles/h5diff_57.txt
-./tools/h5diff/testfiles/h5diff_58.txt
-./tools/h5diff/testfiles/h5diff_59.txt
-./tools/h5diff/testfiles/h5diff_600.txt
-./tools/h5diff/testfiles/h5diff_601.txt
-./tools/h5diff/testfiles/h5diff_603.txt
-./tools/h5diff/testfiles/h5diff_604.txt
-./tools/h5diff/testfiles/h5diff_605.txt
-./tools/h5diff/testfiles/h5diff_606.txt
-./tools/h5diff/testfiles/h5diff_607.txt
-./tools/h5diff/testfiles/h5diff_608.txt
-./tools/h5diff/testfiles/h5diff_609.txt
-./tools/h5diff/testfiles/h5diff_610.txt
-./tools/h5diff/testfiles/h5diff_612.txt
-./tools/h5diff/testfiles/h5diff_613.txt
-./tools/h5diff/testfiles/h5diff_614.txt
-./tools/h5diff/testfiles/h5diff_615.txt
-./tools/h5diff/testfiles/h5diff_616.txt
-./tools/h5diff/testfiles/h5diff_617.txt
-./tools/h5diff/testfiles/h5diff_618.txt
-./tools/h5diff/testfiles/h5diff_619.txt
-./tools/h5diff/testfiles/h5diff_621.txt
-./tools/h5diff/testfiles/h5diff_622.txt
-./tools/h5diff/testfiles/h5diff_623.txt
-./tools/h5diff/testfiles/h5diff_624.txt
-./tools/h5diff/testfiles/h5diff_625.txt
-./tools/h5diff/testfiles/h5diff_626.txt
-./tools/h5diff/testfiles/h5diff_627.txt
-./tools/h5diff/testfiles/h5diff_628.txt
-./tools/h5diff/testfiles/h5diff_629.txt
-./tools/h5diff/testfiles/h5diff_630.txt
-./tools/h5diff/testfiles/h5diff_631.txt
-./tools/h5diff/testfiles/h5diff_640.txt
-./tools/h5diff/testfiles/h5diff_641.txt
-./tools/h5diff/testfiles/h5diff_642.txt
-./tools/h5diff/testfiles/h5diff_643.txt
-./tools/h5diff/testfiles/h5diff_644.txt
-./tools/h5diff/testfiles/h5diff_645.txt
-./tools/h5diff/testfiles/h5diff_646.txt
-./tools/h5diff/testfiles/h5diff_70.txt
-./tools/h5diff/testfiles/h5diff_700.txt
-./tools/h5diff/testfiles/h5diff_701.txt
-./tools/h5diff/testfiles/h5diff_702.txt
-./tools/h5diff/testfiles/h5diff_703.txt
-./tools/h5diff/testfiles/h5diff_704.txt
-./tools/h5diff/testfiles/h5diff_705.txt
-./tools/h5diff/testfiles/h5diff_706.txt
-./tools/h5diff/testfiles/h5diff_707.txt
-./tools/h5diff/testfiles/h5diff_708.txt
-./tools/h5diff/testfiles/h5diff_709.txt
-./tools/h5diff/testfiles/h5diff_710.txt
-./tools/h5diff/testfiles/h5diff_80.txt
-./tools/h5diff/testfiles/h5diff_90.txt
-./tools/h5diff/testfiles/h5diff_100.txt
-./tools/h5diff/testfiles/h5diff_101.txt
-./tools/h5diff/testfiles/h5diff_102.txt
-./tools/h5diff/testfiles/h5diff_103.txt
-./tools/h5diff/testfiles/h5diff_104.txt
+./tools/test/h5diff/testfiles/h5diff_10.txt
+./tools/test/h5diff/testfiles/h5diff_11.txt
+./tools/test/h5diff/testfiles/h5diff_12.txt
+./tools/test/h5diff/testfiles/h5diff_13.txt
+./tools/test/h5diff/testfiles/h5diff_14.txt
+./tools/test/h5diff/testfiles/h5diff_15.txt
+./tools/test/h5diff/testfiles/h5diff_16_1.txt
+./tools/test/h5diff/testfiles/h5diff_16_2.txt
+./tools/test/h5diff/testfiles/h5diff_16_3.txt
+./tools/test/h5diff/testfiles/h5diff_17.txt
+./tools/test/h5diff/testfiles/h5diff_171.txt
+./tools/test/h5diff/testfiles/h5diff_172.txt
+./tools/test/h5diff/testfiles/h5diff_18.txt
+./tools/test/h5diff/testfiles/h5diff_18_1.txt
+./tools/test/h5diff/testfiles/h5diff_19.txt
+./tools/test/h5diff/testfiles/h5diff_20.txt
+./tools/test/h5diff/testfiles/h5diff_21.txt
+./tools/test/h5diff/testfiles/h5diff_22.txt
+./tools/test/h5diff/testfiles/h5diff_23.txt
+./tools/test/h5diff/testfiles/h5diff_24.txt
+./tools/test/h5diff/testfiles/h5diff_25.txt
+./tools/test/h5diff/testfiles/h5diff_26.txt
+./tools/test/h5diff/testfiles/h5diff_27.txt
+./tools/test/h5diff/testfiles/h5diff_28.txt
+./tools/test/h5diff/testfiles/h5diff_30.txt
+./tools/test/h5diff/testfiles/h5diff_50.txt
+./tools/test/h5diff/testfiles/h5diff_51.txt
+./tools/test/h5diff/testfiles/h5diff_52.txt
+./tools/test/h5diff/testfiles/h5diff_53.txt
+./tools/test/h5diff/testfiles/h5diff_54.txt
+./tools/test/h5diff/testfiles/h5diff_55.txt
+./tools/test/h5diff/testfiles/h5diff_56.txt
+./tools/test/h5diff/testfiles/h5diff_57.txt
+./tools/test/h5diff/testfiles/h5diff_58.txt
+./tools/test/h5diff/testfiles/h5diff_59.txt
+./tools/test/h5diff/testfiles/h5diff_600.txt
+./tools/test/h5diff/testfiles/h5diff_601.txt
+./tools/test/h5diff/testfiles/h5diff_603.txt
+./tools/test/h5diff/testfiles/h5diff_604.txt
+./tools/test/h5diff/testfiles/h5diff_605.txt
+./tools/test/h5diff/testfiles/h5diff_606.txt
+./tools/test/h5diff/testfiles/h5diff_607.txt
+./tools/test/h5diff/testfiles/h5diff_608.txt
+./tools/test/h5diff/testfiles/h5diff_609.txt
+./tools/test/h5diff/testfiles/h5diff_610.txt
+./tools/test/h5diff/testfiles/h5diff_612.txt
+./tools/test/h5diff/testfiles/h5diff_613.txt
+./tools/test/h5diff/testfiles/h5diff_614.txt
+./tools/test/h5diff/testfiles/h5diff_615.txt
+./tools/test/h5diff/testfiles/h5diff_616.txt
+./tools/test/h5diff/testfiles/h5diff_617.txt
+./tools/test/h5diff/testfiles/h5diff_618.txt
+./tools/test/h5diff/testfiles/h5diff_619.txt
+./tools/test/h5diff/testfiles/h5diff_621.txt
+./tools/test/h5diff/testfiles/h5diff_622.txt
+./tools/test/h5diff/testfiles/h5diff_623.txt
+./tools/test/h5diff/testfiles/h5diff_624.txt
+./tools/test/h5diff/testfiles/h5diff_625.txt
+./tools/test/h5diff/testfiles/h5diff_626.txt
+./tools/test/h5diff/testfiles/h5diff_627.txt
+./tools/test/h5diff/testfiles/h5diff_628.txt
+./tools/test/h5diff/testfiles/h5diff_629.txt
+./tools/test/h5diff/testfiles/h5diff_630.txt
+./tools/test/h5diff/testfiles/h5diff_631.txt
+./tools/test/h5diff/testfiles/h5diff_640.txt
+./tools/test/h5diff/testfiles/h5diff_641.txt
+./tools/test/h5diff/testfiles/h5diff_642.txt
+./tools/test/h5diff/testfiles/h5diff_643.txt
+./tools/test/h5diff/testfiles/h5diff_644.txt
+./tools/test/h5diff/testfiles/h5diff_645.txt
+./tools/test/h5diff/testfiles/h5diff_646.txt
+./tools/test/h5diff/testfiles/h5diff_70.txt
+./tools/test/h5diff/testfiles/h5diff_700.txt
+./tools/test/h5diff/testfiles/h5diff_701.txt
+./tools/test/h5diff/testfiles/h5diff_702.txt
+./tools/test/h5diff/testfiles/h5diff_703.txt
+./tools/test/h5diff/testfiles/h5diff_704.txt
+./tools/test/h5diff/testfiles/h5diff_705.txt
+./tools/test/h5diff/testfiles/h5diff_706.txt
+./tools/test/h5diff/testfiles/h5diff_707.txt
+./tools/test/h5diff/testfiles/h5diff_708.txt
+./tools/test/h5diff/testfiles/h5diff_709.txt
+./tools/test/h5diff/testfiles/h5diff_710.txt
+./tools/test/h5diff/testfiles/h5diff_80.txt
+./tools/test/h5diff/testfiles/h5diff_90.txt
+./tools/test/h5diff/testfiles/h5diff_100.txt
+./tools/test/h5diff/testfiles/h5diff_101.txt
+./tools/test/h5diff/testfiles/h5diff_102.txt
+./tools/test/h5diff/testfiles/h5diff_103.txt
+./tools/test/h5diff/testfiles/h5diff_104.txt
# w for Windows-specific
-./tools/h5diff/testfiles/h5diff_101w.txt
-./tools/h5diff/testfiles/h5diff_102w.txt
-./tools/h5diff/testfiles/h5diff_103w.txt
-./tools/h5diff/testfiles/h5diff_104w.txt
-./tools/h5diff/testfiles/h5diff_200.txt
-./tools/h5diff/testfiles/h5diff_201.txt
-./tools/h5diff/testfiles/h5diff_202.txt
-./tools/h5diff/testfiles/h5diff_203.txt
-./tools/h5diff/testfiles/h5diff_204.txt
-./tools/h5diff/testfiles/h5diff_205.txt
-./tools/h5diff/testfiles/h5diff_206.txt
-./tools/h5diff/testfiles/h5diff_207.txt
-./tools/h5diff/testfiles/h5diff_208.txt
-./tools/h5diff/testfiles/h5diff_220.txt
-./tools/h5diff/testfiles/h5diff_221.txt
-./tools/h5diff/testfiles/h5diff_222.txt
-./tools/h5diff/testfiles/h5diff_223.txt
-./tools/h5diff/testfiles/h5diff_224.txt
-./tools/h5diff/testfiles/h5diff_300.txt
-./tools/h5diff/testfiles/h5diff_400.txt
-./tools/h5diff/testfiles/h5diff_401.txt
-./tools/h5diff/testfiles/h5diff_402.txt
-./tools/h5diff/testfiles/h5diff_403.txt
-./tools/h5diff/testfiles/h5diff_404.txt
-./tools/h5diff/testfiles/h5diff_405.txt
-./tools/h5diff/testfiles/h5diff_406.txt
-./tools/h5diff/testfiles/h5diff_407.txt
-./tools/h5diff/testfiles/h5diff_408.txt
-./tools/h5diff/testfiles/h5diff_409.txt
-./tools/h5diff/testfiles/h5diff_410.txt
-./tools/h5diff/testfiles/h5diff_411.txt
-./tools/h5diff/testfiles/h5diff_412.txt
-./tools/h5diff/testfiles/h5diff_413.txt
-./tools/h5diff/testfiles/h5diff_414.txt
-./tools/h5diff/testfiles/h5diff_415.txt
-./tools/h5diff/testfiles/h5diff_416.txt
-./tools/h5diff/testfiles/h5diff_417.txt
-./tools/h5diff/testfiles/h5diff_418.txt
-./tools/h5diff/testfiles/h5diff_419.txt
-./tools/h5diff/testfiles/h5diff_420.txt
-./tools/h5diff/testfiles/h5diff_421.txt
-./tools/h5diff/testfiles/h5diff_422.txt
-./tools/h5diff/testfiles/h5diff_423.txt
-./tools/h5diff/testfiles/h5diff_424.txt
-./tools/h5diff/testfiles/h5diff_425.txt
-./tools/h5diff/testfiles/h5diff_450.txt
-./tools/h5diff/testfiles/h5diff_451.txt
-./tools/h5diff/testfiles/h5diff_452.txt
-./tools/h5diff/testfiles/h5diff_453.txt
-./tools/h5diff/testfiles/h5diff_454.txt
-./tools/h5diff/testfiles/h5diff_455.txt
-./tools/h5diff/testfiles/h5diff_456.txt
-./tools/h5diff/testfiles/h5diff_457.txt
-./tools/h5diff/testfiles/h5diff_458.txt
-./tools/h5diff/testfiles/h5diff_459.txt
-./tools/h5diff/testfiles/h5diff_465.txt
-./tools/h5diff/testfiles/h5diff_466.txt
-./tools/h5diff/testfiles/h5diff_467.txt
-./tools/h5diff/testfiles/h5diff_468.txt
-./tools/h5diff/testfiles/h5diff_469.txt
-./tools/h5diff/testfiles/h5diff_471.txt
-./tools/h5diff/testfiles/h5diff_472.txt
-./tools/h5diff/testfiles/h5diff_473.txt
-./tools/h5diff/testfiles/h5diff_474.txt
-./tools/h5diff/testfiles/h5diff_475.txt
-./tools/h5diff/testfiles/h5diff_480.txt
-./tools/h5diff/testfiles/h5diff_481.txt
-./tools/h5diff/testfiles/h5diff_482.txt
-./tools/h5diff/testfiles/h5diff_483.txt
-./tools/h5diff/testfiles/h5diff_484.txt
-./tools/h5diff/testfiles/h5diff_485.txt
-./tools/h5diff/testfiles/h5diff_486.txt
-./tools/h5diff/testfiles/h5diff_487.txt
-./tools/h5diff/testfiles/h5diff_500.txt
-./tools/h5diff/testfiles/h5diff_501.txt
-./tools/h5diff/testfiles/h5diff_502.txt
-./tools/h5diff/testfiles/h5diff_503.txt
-./tools/h5diff/testfiles/h5diff_504.txt
-./tools/h5diff/testfiles/h5diff_505.txt
-./tools/h5diff/testfiles/h5diff_506.txt
-./tools/h5diff/testfiles/h5diff_507.txt
-./tools/h5diff/testfiles/h5diff_508.txt
-./tools/h5diff/testfiles/h5diff_509.txt
-./tools/h5diff/testfiles/h5diff_510.txt
-./tools/h5diff/testfiles/h5diff_511.txt
-./tools/h5diff/testfiles/h5diff_512.txt
-./tools/h5diff/testfiles/h5diff_513.txt
-./tools/h5diff/testfiles/h5diff_514.txt
-./tools/h5diff/testfiles/h5diff_515.txt
-./tools/h5diff/testfiles/h5diff_516.txt
-./tools/h5diff/testfiles/h5diff_517.txt
-./tools/h5diff/testfiles/h5diff_518.txt
-./tools/h5diff/testfiles/h5diff_530.txt
-./tools/h5diff/testfiles/h5diff_540.txt
-
-./tools/h5diff/testfiles/h5diff_attr1.h5
-./tools/h5diff/testfiles/h5diff_attr2.h5
-./tools/h5diff/testfiles/h5diff_attr_v_level1.h5
-./tools/h5diff/testfiles/h5diff_attr_v_level2.h5
-./tools/h5diff/testfiles/h5diff_basic1.h5
-./tools/h5diff/testfiles/h5diff_basic2.h5
-./tools/h5diff/testfiles/h5diff_dset1.h5
-./tools/h5diff/testfiles/h5diff_dset2.h5
-./tools/h5diff/testfiles/h5diff_dtypes.h5
-./tools/h5diff/testfiles/h5diff_empty.h5
-./tools/h5diff/testfiles/h5diff_hyper1.h5
-./tools/h5diff/testfiles/h5diff_hyper2.h5
-./tools/h5diff/testfiles/h5diff_types.h5
-./tools/h5diff/testfiles/h5diff_links.h5
-./tools/h5diff/testfiles/h5diff_ext2softlink_src.h5
-./tools/h5diff/testfiles/h5diff_ext2softlink_trg.h5
-./tools/h5diff/testfiles/h5diff_extlink_src.h5
-./tools/h5diff/testfiles/h5diff_extlink_trg.h5
-./tools/h5diff/testfiles/h5diff_linked_softlink.h5
-./tools/h5diff/testfiles/h5diff_softlinks.h5
-./tools/h5diff/testfiles/h5diff_danglelinks1.h5
-./tools/h5diff/testfiles/h5diff_danglelinks2.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse1.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse2.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse_ext1.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5
-./tools/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5
-./tools/h5diff/testfiles/h5diff_exclude1-1.h5
-./tools/h5diff/testfiles/h5diff_exclude1-2.h5
-./tools/h5diff/testfiles/h5diff_exclude2-1.h5
-./tools/h5diff/testfiles/h5diff_exclude2-2.h5
-./tools/h5diff/testfiles/h5diff_exclude3-1.h5
-./tools/h5diff/testfiles/h5diff_exclude3-2.h5
-./tools/h5diff/testfiles/h5diff_comp_vl_strs.h5
-./tools/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5
-./tools/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5
-./tools/h5diff/testfiles/h5diff_enum_invalid_values.h5
-./tools/h5diff/testfiles/compounds_array_vlen1.h5
-./tools/h5diff/testfiles/compounds_array_vlen2.h5
-./tools/h5diff/testfiles/non_comparables1.h5
-./tools/h5diff/testfiles/non_comparables2.h5
-./tools/h5diff/testfiles/tmptest2.he5
-./tools/h5diff/testfiles/tmpSingleSiteBethe.reference.h5
-./tools/h5diff/testfiles/h5diff_tmp1.txt
-./tools/h5diff/testfiles/tmptest.he5
-./tools/h5diff/testfiles/h5diff_tmp2.txt
-./tools/h5diff/testfiles/tmpSingleSiteBethe.output.h5
+./tools/test/h5diff/testfiles/h5diff_101w.txt
+./tools/test/h5diff/testfiles/h5diff_102w.txt
+./tools/test/h5diff/testfiles/h5diff_103w.txt
+./tools/test/h5diff/testfiles/h5diff_104w.txt
+./tools/test/h5diff/testfiles/h5diff_200.txt
+./tools/test/h5diff/testfiles/h5diff_201.txt
+./tools/test/h5diff/testfiles/h5diff_202.txt
+./tools/test/h5diff/testfiles/h5diff_203.txt
+./tools/test/h5diff/testfiles/h5diff_204.txt
+./tools/test/h5diff/testfiles/h5diff_205.txt
+./tools/test/h5diff/testfiles/h5diff_206.txt
+./tools/test/h5diff/testfiles/h5diff_207.txt
+./tools/test/h5diff/testfiles/h5diff_208.txt
+./tools/test/h5diff/testfiles/h5diff_220.txt
+./tools/test/h5diff/testfiles/h5diff_221.txt
+./tools/test/h5diff/testfiles/h5diff_222.txt
+./tools/test/h5diff/testfiles/h5diff_223.txt
+./tools/test/h5diff/testfiles/h5diff_224.txt
+./tools/test/h5diff/testfiles/h5diff_300.txt
+./tools/test/h5diff/testfiles/h5diff_400.txt
+./tools/test/h5diff/testfiles/h5diff_401.txt
+./tools/test/h5diff/testfiles/h5diff_402.txt
+./tools/test/h5diff/testfiles/h5diff_403.txt
+./tools/test/h5diff/testfiles/h5diff_404.txt
+./tools/test/h5diff/testfiles/h5diff_405.txt
+./tools/test/h5diff/testfiles/h5diff_406.txt
+./tools/test/h5diff/testfiles/h5diff_407.txt
+./tools/test/h5diff/testfiles/h5diff_408.txt
+./tools/test/h5diff/testfiles/h5diff_409.txt
+./tools/test/h5diff/testfiles/h5diff_410.txt
+./tools/test/h5diff/testfiles/h5diff_411.txt
+./tools/test/h5diff/testfiles/h5diff_412.txt
+./tools/test/h5diff/testfiles/h5diff_413.txt
+./tools/test/h5diff/testfiles/h5diff_414.txt
+./tools/test/h5diff/testfiles/h5diff_415.txt
+./tools/test/h5diff/testfiles/h5diff_416.txt
+./tools/test/h5diff/testfiles/h5diff_417.txt
+./tools/test/h5diff/testfiles/h5diff_418.txt
+./tools/test/h5diff/testfiles/h5diff_419.txt
+./tools/test/h5diff/testfiles/h5diff_420.txt
+./tools/test/h5diff/testfiles/h5diff_421.txt
+./tools/test/h5diff/testfiles/h5diff_422.txt
+./tools/test/h5diff/testfiles/h5diff_423.txt
+./tools/test/h5diff/testfiles/h5diff_424.txt
+./tools/test/h5diff/testfiles/h5diff_425.txt
+./tools/test/h5diff/testfiles/h5diff_450.txt
+./tools/test/h5diff/testfiles/h5diff_451.txt
+./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_455.txt
+./tools/test/h5diff/testfiles/h5diff_456.txt
+./tools/test/h5diff/testfiles/h5diff_457.txt
+./tools/test/h5diff/testfiles/h5diff_458.txt
+./tools/test/h5diff/testfiles/h5diff_459.txt
+./tools/test/h5diff/testfiles/h5diff_465.txt
+./tools/test/h5diff/testfiles/h5diff_466.txt
+./tools/test/h5diff/testfiles/h5diff_467.txt
+./tools/test/h5diff/testfiles/h5diff_468.txt
+./tools/test/h5diff/testfiles/h5diff_469.txt
+./tools/test/h5diff/testfiles/h5diff_471.txt
+./tools/test/h5diff/testfiles/h5diff_472.txt
+./tools/test/h5diff/testfiles/h5diff_473.txt
+./tools/test/h5diff/testfiles/h5diff_474.txt
+./tools/test/h5diff/testfiles/h5diff_475.txt
+./tools/test/h5diff/testfiles/h5diff_480.txt
+./tools/test/h5diff/testfiles/h5diff_481.txt
+./tools/test/h5diff/testfiles/h5diff_482.txt
+./tools/test/h5diff/testfiles/h5diff_483.txt
+./tools/test/h5diff/testfiles/h5diff_484.txt
+./tools/test/h5diff/testfiles/h5diff_485.txt
+./tools/test/h5diff/testfiles/h5diff_486.txt
+./tools/test/h5diff/testfiles/h5diff_487.txt
+./tools/test/h5diff/testfiles/h5diff_500.txt
+./tools/test/h5diff/testfiles/h5diff_501.txt
+./tools/test/h5diff/testfiles/h5diff_502.txt
+./tools/test/h5diff/testfiles/h5diff_503.txt
+./tools/test/h5diff/testfiles/h5diff_504.txt
+./tools/test/h5diff/testfiles/h5diff_505.txt
+./tools/test/h5diff/testfiles/h5diff_506.txt
+./tools/test/h5diff/testfiles/h5diff_507.txt
+./tools/test/h5diff/testfiles/h5diff_508.txt
+./tools/test/h5diff/testfiles/h5diff_509.txt
+./tools/test/h5diff/testfiles/h5diff_510.txt
+./tools/test/h5diff/testfiles/h5diff_511.txt
+./tools/test/h5diff/testfiles/h5diff_512.txt
+./tools/test/h5diff/testfiles/h5diff_513.txt
+./tools/test/h5diff/testfiles/h5diff_514.txt
+./tools/test/h5diff/testfiles/h5diff_515.txt
+./tools/test/h5diff/testfiles/h5diff_516.txt
+./tools/test/h5diff/testfiles/h5diff_517.txt
+./tools/test/h5diff/testfiles/h5diff_518.txt
+./tools/test/h5diff/testfiles/h5diff_530.txt
+./tools/test/h5diff/testfiles/h5diff_540.txt
+
+./tools/test/h5diff/testfiles/h5diff_attr1.h5
+./tools/test/h5diff/testfiles/h5diff_attr2.h5
+./tools/test/h5diff/testfiles/h5diff_attr_v_level1.h5
+./tools/test/h5diff/testfiles/h5diff_attr_v_level2.h5
+./tools/test/h5diff/testfiles/h5diff_basic1.h5
+./tools/test/h5diff/testfiles/h5diff_basic2.h5
+./tools/test/h5diff/testfiles/h5diff_dset1.h5
+./tools/test/h5diff/testfiles/h5diff_dset2.h5
+./tools/test/h5diff/testfiles/h5diff_dtypes.h5
+./tools/test/h5diff/testfiles/h5diff_empty.h5
+./tools/test/h5diff/testfiles/h5diff_hyper1.h5
+./tools/test/h5diff/testfiles/h5diff_hyper2.h5
+./tools/test/h5diff/testfiles/h5diff_types.h5
+./tools/test/h5diff/testfiles/h5diff_links.h5
+./tools/test/h5diff/testfiles/h5diff_ext2softlink_src.h5
+./tools/test/h5diff/testfiles/h5diff_ext2softlink_trg.h5
+./tools/test/h5diff/testfiles/h5diff_extlink_src.h5
+./tools/test/h5diff/testfiles/h5diff_extlink_trg.h5
+./tools/test/h5diff/testfiles/h5diff_linked_softlink.h5
+./tools/test/h5diff/testfiles/h5diff_softlinks.h5
+./tools/test/h5diff/testfiles/h5diff_danglelinks1.h5
+./tools/test/h5diff/testfiles/h5diff_danglelinks2.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse1.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse2.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse_ext1.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5
+./tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5
+./tools/test/h5diff/testfiles/h5diff_exclude1-1.h5
+./tools/test/h5diff/testfiles/h5diff_exclude1-2.h5
+./tools/test/h5diff/testfiles/h5diff_exclude2-1.h5
+./tools/test/h5diff/testfiles/h5diff_exclude2-2.h5
+./tools/test/h5diff/testfiles/h5diff_exclude3-1.h5
+./tools/test/h5diff/testfiles/h5diff_exclude3-2.h5
+./tools/test/h5diff/testfiles/h5diff_comp_vl_strs.h5
+./tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5
+./tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5
+./tools/test/h5diff/testfiles/h5diff_enum_invalid_values.h5
+./tools/test/h5diff/testfiles/compounds_array_vlen1.h5
+./tools/test/h5diff/testfiles/compounds_array_vlen2.h5
+./tools/test/h5diff/testfiles/non_comparables1.h5
+./tools/test/h5diff/testfiles/non_comparables2.h5
+./tools/test/h5diff/testfiles/tmptest2.he5
+./tools/test/h5diff/testfiles/tmpSingleSiteBethe.reference.h5
+./tools/test/h5diff/testfiles/h5diff_tmp1.txt
+./tools/test/h5diff/testfiles/tmptest.he5
+./tools/test/h5diff/testfiles/h5diff_tmp2.txt
+./tools/test/h5diff/testfiles/tmpSingleSiteBethe.output.h5
#vds
-./tools/h5diff/testfiles/h5diff_v1.txt
-./tools/h5diff/testfiles/h5diff_v2.txt
-./tools/h5diff/testfiles/h5diff_v3.txt
+./tools/test/h5diff/testfiles/h5diff_v1.txt
+./tools/test/h5diff/testfiles/h5diff_v2.txt
+./tools/test/h5diff/testfiles/h5diff_v3.txt
#test files for h5repack
-./tools/h5repack/testfiles/README
-./tools/h5repack/testfiles/h5repack_attr.h5
-./tools/h5repack/testfiles/h5repack_attr_refs.h5
-./tools/h5repack/testfiles/h5repack_deflate.h5
-./tools/h5repack/testfiles/h5repack_early.h5
-./tools/h5repack/testfiles/h5repack_ext.bin
-./tools/h5repack/testfiles/h5repack_ext.h5
-./tools/h5repack/testfiles/h5repack_fill.h5
-./tools/h5repack/testfiles/h5repack_filters.h5
-./tools/h5repack/testfiles/h5repack_fletcher.h5
-./tools/h5repack/testfiles/h5repack_hlink.h5
-./tools/h5repack/testfiles/h5repack.info
-./tools/h5repack/testfiles/h5repack_layout.h5
-./tools/h5repack/testfiles/h5repack_layouto.h5
-./tools/h5repack/testfiles/h5repack_layout2.h5
-./tools/h5repack/testfiles/h5repack_layout3.h5
-./tools/h5repack/testfiles/h5repack_layout.UD.h5
-./tools/h5repack/testfiles/h5repack_named_dtypes.h5
-./tools/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5
-./tools/h5repack/testfiles/h5repack_nested_8bit_enum.h5
-./tools/h5repack/testfiles/h5repack_nbit.h5
-./tools/h5repack/testfiles/h5repack_objs.h5
-./tools/h5repack/testfiles/h5repack_refs.h5
-./tools/h5repack/testfiles/h5repack_shuffle.h5
-./tools/h5repack/testfiles/h5repack_soffset.h5
-./tools/h5repack/testfiles/h5repack_szip.h5
-./tools/h5repack/testfiles/ublock.bin
-./tools/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl
-./tools/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst
-./tools/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst
-./tools/h5repack/testfiles/h5repack-help.txt
-./tools/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
-./tools/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
-./tools/h5repack/testfiles/h5repack_layout.h5.ddl
-./tools/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
-./tools/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl
-./tools/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst
-./tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
-./tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
-./tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
+./tools/test/h5repack/testfiles/README
+./tools/test/h5repack/testfiles/h5repack_attr.h5
+./tools/test/h5repack/testfiles/h5repack_attr_refs.h5
+./tools/test/h5repack/testfiles/h5repack_deflate.h5
+./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_fill.h5
+./tools/test/h5repack/testfiles/h5repack_filters.h5
+./tools/test/h5repack/testfiles/h5repack_fletcher.h5
+./tools/test/h5repack/testfiles/h5repack_hlink.h5
+./tools/test/h5repack/testfiles/h5repack.info
+./tools/test/h5repack/testfiles/h5repack_layout.h5
+./tools/test/h5repack/testfiles/h5repack_layouto.h5
+./tools/test/h5repack/testfiles/h5repack_layout2.h5
+./tools/test/h5repack/testfiles/h5repack_layout3.h5
+./tools/test/h5repack/testfiles/h5repack_layout.UD.h5
+./tools/test/h5repack/testfiles/h5repack_named_dtypes.h5
+./tools/test/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5
+./tools/test/h5repack/testfiles/h5repack_nested_8bit_enum.h5
+./tools/test/h5repack/testfiles/h5repack_nbit.h5
+./tools/test/h5repack/testfiles/h5repack_objs.h5
+./tools/test/h5repack/testfiles/h5repack_refs.h5
+./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/ublock.bin
+./tools/test/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl
+./tools/test/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst
+./tools/test/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst
+./tools/test/h5repack/testfiles/plugin_version_test.h5repack_layout.h5.tst
+./tools/test/h5repack/testfiles/h5repack-help.txt
+./tools/test/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
+./tools/test/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
+./tools/test/h5repack/testfiles/h5repack_layout.h5.ddl
+./tools/test/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
+./tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl
+./tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_version_test.ddl
+./tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst
+./tools/test/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
+./tools/test/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
+./tools/test/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
+./tools/test/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl
+./tools/test/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
# jam utility and tests
-./tools/h5jam/h5jam.c
-./tools/h5jam/h5unjam.c
-./tools/h5jam/Makefile.am
-./tools/h5jam/h5jamgentest.c
-./tools/h5jam/testh5jam.sh.in
-./tools/h5jam/tellub.c
-./tools/h5jam/getub.c
+./tools/src/h5jam/Makefile.am
+./tools/src/h5jam/h5jam.c
+./tools/src/h5jam/h5unjam.c
+./tools/test/h5jam/Makefile.am
+./tools/test/h5jam/h5jamgentest.c
+./tools/test/h5jam/testh5jam.sh.in
+./tools/test/h5jam/tellub.c
+./tools/test/h5jam/getub.c
# test files for jam
-./tools/h5jam/testfiles/h5jam-help.txt
-./tools/h5jam/testfiles/h5unjam-help.txt
-./tools/h5jam/testfiles/tall.h5
-./tools/h5jam/testfiles/twithub.h5
-./tools/h5jam/testfiles/twithub513.h5
-./tools/h5jam/testfiles/u10.txt
-./tools/h5jam/testfiles/u511.txt
-./tools/h5jam/testfiles/u512.txt
-./tools/h5jam/testfiles/u513.txt
-./tools/h5jam/testfiles/h5jam-ub-nohdf5.txt
+./tools/test/h5jam/testfiles/h5jam-help.txt
+./tools/test/h5jam/testfiles/h5unjam-help.txt
+./tools/test/h5jam/testfiles/tall.h5
+./tools/test/h5jam/testfiles/twithub.h5
+./tools/test/h5jam/testfiles/twithub513.h5
+./tools/test/h5jam/testfiles/u10.txt
+./tools/test/h5jam/testfiles/u511.txt
+./tools/test/h5jam/testfiles/u512.txt
+./tools/test/h5jam/testfiles/u513.txt
+./tools/test/h5jam/testfiles/h5jam-ub-nohdf5.txt
# test files for h5copy
-./tools/h5copy/testfiles/h5copytst.h5
-./tools/h5copy/testfiles/h5copytst.out.ls
-./tools/h5copy/testfiles/h5copy_ref.h5
-./tools/h5copy/testfiles/h5copy_ref.out.ls
-./tools/h5copy/testfiles/h5copy_extlinks_src.h5
-./tools/h5copy/testfiles/h5copy_extlinks_trg.h5
-./tools/h5copy/testfiles/h5copy_extlinks_src.out.ls
-./tools/h5copy/testfiles/h5copy_misc1.out
-./tools/h5copy/testfiles/h5copytst_new.h5
-./tools/h5copy/testfiles/h5copytst_new.out.ls
+./tools/test/h5copy/testfiles/h5copytst.h5
+./tools/test/h5copy/testfiles/h5copytst.out.ls
+./tools/test/h5copy/testfiles/h5copy_ref.h5
+./tools/test/h5copy/testfiles/h5copy_ref.out.ls
+./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.out
+./tools/test/h5copy/testfiles/h5copytst_new.h5
+./tools/test/h5copy/testfiles/h5copytst_new.out.ls
# test files for h5mkgrp
./tools/testfiles/h5mkgrp_nested_p.ls
@@ -2368,27 +2384,27 @@
./tools/testfiles/h5mkgrp_single_p.ls
./tools/testfiles/h5mkgrp_single_l.ls
-./tools/perform/COPYING
-./tools/perform/Makefile.am
-./tools/perform/build_h5perf_alone.sh
-./tools/perform/build_h5perf_serial_alone.sh
-./tools/perform/chunk.c
-./tools/perform/gen_report.pl
-./tools/perform/iopipe.c
-./tools/perform/overhead.c
-./tools/perform/perf.c
-./tools/perform/perf_meta.c
-./tools/perform/pio_engine.c
-./tools/perform/pio_perf.c
-./tools/perform/pio_perf.h
-./tools/perform/pio_standalone.c
-./tools/perform/pio_standalone.h
-./tools/perform/sio_engine.c
-./tools/perform/sio_perf.c
-./tools/perform/sio_perf.h
-./tools/perform/sio_standalone.c
-./tools/perform/sio_standalone.h
-./tools/perform/zip_perf.c
+./tools/test/perform/COPYING
+./tools/test/perform/Makefile.am
+./tools/test/perform/build_h5perf_alone.sh
+./tools/test/perform/build_h5perf_serial_alone.sh
+./tools/test/perform/chunk.c
+./tools/test/perform/gen_report.pl
+./tools/test/perform/iopipe.c
+./tools/test/perform/overhead.c
+./tools/test/perform/perf.c
+./tools/test/perform/perf_meta.c
+./tools/test/perform/pio_engine.c
+./tools/test/perform/pio_perf.c
+./tools/test/perform/pio_perf.h
+./tools/test/perform/pio_standalone.c
+./tools/test/perform/pio_standalone.h
+./tools/test/perform/sio_engine.c
+./tools/test/perform/sio_perf.c
+./tools/test/perform/sio_perf.h
+./tools/test/perform/sio_standalone.c
+./tools/test/perform/sio_standalone.h
+./tools/test/perform/zip_perf.c
# high level libraries
./hl/COPYING
@@ -2942,33 +2958,43 @@
./testpar/CMakeLists.txt
./testpar/CMakeTests.cmake
./tools/CMakeLists.txt
-./tools/h5copy/CMakeLists.txt
-./tools/h5copy/CMakeTests.cmake
-./tools/h5diff/CMakeLists.txt
-./tools/h5diff/CMakeTests.cmake
-./tools/h5dump/CMakeLists.txt
-./tools/h5dump/CMakeTests.cmake
-./tools/h5dump/CMakeTestsPBITS.cmake
-./tools/h5dump/CMakeTestsXML.cmake
-./tools/h5dump/CMakeTestsVDS.cmake
-./tools/h5format_convert/CMakeLists.txt
-./tools/h5format_convert/CMakeTests.cmake
-./tools/h5import/CMakeLists.txt
-./tools/h5import/CMakeTests.cmake
-./tools/h5jam/CMakeLists.txt
-./tools/h5jam/CMakeTests.cmake
-./tools/h5ls/CMakeLists.txt
-./tools/h5ls/CMakeTests.cmake
-./tools/h5repack/CMakeLists.txt
-./tools/h5repack/CMakeTests.cmake
-./tools/h5stat/CMakeLists.txt
-./tools/h5stat/CMakeTests.cmake
./tools/lib/CMakeLists.txt
-./tools/misc/CMakeLists.txt
-./tools/misc/CMakeTests.cmake
-./tools/misc/vds/CMakeLists.txt
-./tools/perform/CMakeLists.txt
-./tools/perform/CMakeTests.cmake
+./tools/src/CMakeLists.txt
+./tools/test/CMakeLists.txt
+./tools/src/h5copy/CMakeLists.txt
+./tools/test/h5copy/CMakeLists.txt
+./tools/test/h5copy/CMakeTests.cmake
+./tools/src/h5diff/CMakeLists.txt
+./tools/test/h5diff/CMakeLists.txt
+./tools/test/h5diff/CMakeTests.cmake
+./tools/src/h5dump/CMakeLists.txt
+./tools/test/h5dump/CMakeLists.txt
+./tools/test/h5dump/CMakeTests.cmake
+./tools/test/h5dump/CMakeTestsPBITS.cmake
+./tools/test/h5dump/CMakeTestsXML.cmake
+./tools/test/h5dump/CMakeTestsVDS.cmake
+./tools/src/h5import/CMakeLists.txt
+./tools/test/h5import/CMakeLists.txt
+./tools/test/h5import/CMakeTests.cmake
+./tools/src/h5jam/CMakeLists.txt
+./tools/test/h5jam/CMakeLists.txt
+./tools/test/h5jam/CMakeTests.cmake
+./tools/src/h5ls/CMakeLists.txt
+./tools/test/h5ls/CMakeLists.txt
+./tools/test/h5ls/CMakeTests.cmake
+./tools/test/h5ls/CMakeTestsVDS.cmake
+./tools/src/h5repack/CMakeLists.txt
+./tools/test/h5repack/CMakeLists.txt
+./tools/test/h5repack/CMakeTests.cmake
+./tools/src/h5stat/CMakeLists.txt
+./tools/test/h5stat/CMakeLists.txt
+./tools/test/h5stat/CMakeTests.cmake
+./tools/src/misc/CMakeLists.txt
+./tools/test/misc/CMakeLists.txt
+./tools/test/misc/CMakeTests.cmake
+./tools/test/misc/vds/CMakeLists.txt
+./tools/test/perform/CMakeLists.txt
+./tools/test/perform/CMakeTests.cmake
# CMake-specific User Scripts
./config/cmake/scripts/CTestScript.cmake
@@ -3025,17 +3051,29 @@
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
-./tools/h5copy/Makefile.in
-./tools/h5diff/Makefile.in
-./tools/h5dump/Makefile.in
-./tools/h5format_convert/Makefile.in
-./tools/h5import/Makefile.in
-./tools/h5jam/Makefile.in
-./tools/h5ls/Makefile.in
-./tools/h5repack/Makefile.in
-./tools/h5stat/Makefile.in
-./tools/lib/Makefile.in
./tools/Makefile.in
-./tools/misc/Makefile.in
-./tools/misc/vds/Makefile.in
-./tools/perform/Makefile.in
+./tools/lib/Makefile.in
+./tools/src/Makefile.in
+./tools/src/h5copy/Makefile.in
+./tools/src/h5diff/Makefile.in
+./tools/src/h5dump/Makefile.in
+./tools/src/h5format_convert/Makefile.in
+./tools/src/h5import/Makefile.in
+./tools/src/h5jam/Makefile.in
+./tools/src/h5ls/Makefile.in
+./tools/src/h5repack/Makefile.in
+./tools/src/h5stat/Makefile.in
+./tools/src/misc/Makefile.in
+./tools/test/Makefile.in
+./tools/test/h5copy/Makefile.in
+./tools/test/h5diff/Makefile.in
+./tools/test/h5dump/Makefile.in
+./tools/test/h5format_convert/Makefile.in
+./tools/test/h5import/Makefile.in
+./tools/test/h5jam/Makefile.in
+./tools/test/h5ls/Makefile.in
+./tools/test/h5repack/Makefile.in
+./tools/test/h5stat/Makefile.in
+./tools/test/misc/Makefile.in
+./tools/test/misc/vds/Makefile.in
+./tools/test/perform/Makefile.in
diff --git a/bin/bbrelease b/bin/bbrelease
index c5d562e..b06b243 100755
--- a/bin/bbrelease
+++ b/bin/bbrelease
@@ -190,7 +190,7 @@ today=`date +%Y%m%d`
pmode='no'
revmode='no'
tmpdir="../#release_tmp.$$" # tmp work directory
-DOC_URL=http://svn.hdfgroup.uiuc.edu/hdf5doc/trunk
+DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git
CPPLUS_RM_NAME=cpplus_RM
# Restore previous Version information
@@ -334,7 +334,7 @@ done
# trunk is different than branches.
if [ "${DOCVERSION}" ]; then
- DOC_URL=http://svn.hdfgroup.uiuc.edu/hdf5doc/branches/${DOCVERSION}
+ DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git -b ${DOCVERSION}
fi
# Create the tar file
@@ -371,11 +371,11 @@ for comp in $methods; do
;;
doc)
if [ "${DOCVERSION}" = "" ]; then
- DOCVERSION=trunk
+ DOCVERSION=master
fi
test "$verbose" && echo " Creating docs..." 1>&2
- # Check out docs from svn repo
- (cd $tmpdir; svn co $DOC_URL > /dev/null) || exit 1
+ # Check out docs from git repo
+ (cd $tmpdir; git clone $DOC_URL > /dev/null) || exit 1
# Create doxygen C++ RM
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
diff --git a/bin/chkcopyright b/bin/chkcopyright
index 07fcb24..f6e910d 100755
--- a/bin/chkcopyright
+++ b/bin/chkcopyright
@@ -30,7 +30,7 @@ DIFF="diff"
INITFILE=.h5chkright.ini
EXCEPTIONS=/tmp/h5chkright.except.$$
tmpfile=/tmp/h5chkright_tmp.$$
-EXCEPTIONDIRS="-name CVS -o -name .svn" # at least skip CVS directories.
+EXCEPTIONDIRS="-name .git" # at least skip .git directories.
EXTRACTEDFILE=/tmp/h5chkright.extracted.$$
VERBOSE= # default no
FIXIT= # default no
diff --git a/bin/chkmanifest b/bin/chkmanifest
index a0b51af..a01217d 100755
--- a/bin/chkmanifest
+++ b/bin/chkmanifest
@@ -14,8 +14,8 @@
# access to either file, you may request a copy from help@hdfgroup.org.
#
-# Check that all the files in MANIFEST exist and that (if this is a
-# SVN checkout) that all the SVN-managed files appear in the
+# Check that all the files in MANIFEST exist and (if this is a
+# GIT checkout) that all the GIT-managed files appear in the
# MANIFEST.
#
@@ -142,7 +142,7 @@ done
if [ "X$fail" = "Xyes" ]; then
cat 1>&2 <<EOF
The MANIFEST is out of date. Files marked with a minus sign (-) no
-longer exist; files marked with a plus sign (+) are SVN-managed but do
+longer exist; files marked with a plus sign (+) are GIT-managed but do
not appear in the MANIFEST. Please remedy the situation and try again.
EOF
exit 1
diff --git a/bin/release b/bin/release
index 1d3c9c5..08779cb 100755
--- a/bin/release
+++ b/bin/release
@@ -168,7 +168,7 @@ release_date=`date +%F`
today=`date +%Y%m%d`
pmode='no'
tmpdir="../#release_tmp.$$" # tmp work directory
-DOC_URL=http://svn.hdfgroup.uiuc.edu/hdf5doc/trunk
+DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git
CPPLUS_RM_NAME=cpplus_RM
# Restore previous Version information
@@ -316,8 +316,8 @@ for comp in $methods; do
;;
doc)
test "$verbose" && echo " Creating docs..." 1>&2
- # Check out docs from svn repo
- (cd $tmpdir; svn co $DOC_URL > /dev/null) || exit 1
+ # Check out docs from git repo
+ (cd $tmpdir; git clone $DOC_URL > /dev/null) || exit 1
# Create doxygen C++ RM
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
diff --git a/c++/src/H5AbstractDs.cpp b/c++/src/H5AbstractDs.cpp
index ac10bf8..49de4bb 100644
--- a/c++/src/H5AbstractDs.cpp
+++ b/c++/src/H5AbstractDs.cpp
@@ -30,9 +30,7 @@
#include "H5AbstractDs.h"
#include "H5Alltypes.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: AbstractDs default constructor
@@ -327,6 +325,4 @@ VarLenType AbstractDs::getVarLenType() const
//--------------------------------------------------------------------------
AbstractDs::~AbstractDs() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5AbstractDs.h b/c++/src/H5AbstractDs.h
index 6975d6f..1b4775c 100644
--- a/c++/src/H5AbstractDs.h
+++ b/c++/src/H5AbstractDs.h
@@ -17,9 +17,7 @@
#ifndef __AbstractDs_H
#define __AbstractDs_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
class ArrayType;
class CompType;
@@ -94,7 +92,5 @@ class H5_DLLCPP AbstractDs {
// This member function is implemented by DataSet and Attribute - pure virtual.
virtual hid_t p_get_type() const = 0;
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __AbstractDs_H
diff --git a/c++/src/H5ArrayType.cpp b/c++/src/H5ArrayType.cpp
index 9646a6f..0bdd09c 100644
--- a/c++/src/H5ArrayType.cpp
+++ b/c++/src/H5ArrayType.cpp
@@ -26,9 +26,7 @@
#include "H5DataType.h"
#include "H5ArrayType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: ArrayType default constructor
@@ -154,6 +152,4 @@ int ArrayType::getArrayDims(hsize_t* dims) const
//--------------------------------------------------------------------------
ArrayType::~ArrayType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5ArrayType.h b/c++/src/H5ArrayType.h
index aa7450c..0e9ef46 100644
--- a/c++/src/H5ArrayType.h
+++ b/c++/src/H5ArrayType.h
@@ -17,9 +17,7 @@
#ifndef __H5ArrayType_H
#define __H5ArrayType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class ArrayType
\brief Class ArrayType inherits from DataType and provides wrappers for
@@ -59,7 +57,5 @@ class H5_DLLCPP ArrayType : public DataType {
// Default constructor
ArrayType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5ArrayType_H
diff --git a/c++/src/H5AtomType.cpp b/c++/src/H5AtomType.cpp
index 7871455..fa47e0c 100644
--- a/c++/src/H5AtomType.cpp
+++ b/c++/src/H5AtomType.cpp
@@ -26,9 +26,7 @@
#include "H5DataType.h"
#include "H5AtomType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
@@ -295,6 +293,4 @@ void AtomType::setPad( H5T_pad_t lsb, H5T_pad_t msb ) const
AtomType::~AtomType() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5AtomType.h b/c++/src/H5AtomType.h
index 9798efc..d84b53f 100644
--- a/c++/src/H5AtomType.h
+++ b/c++/src/H5AtomType.h
@@ -17,9 +17,7 @@
#ifndef __H5AtomType_H
#define __H5AtomType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class AtomType
\brief AtomType is a base class, inherited by IntType, FloatType,
@@ -81,7 +79,5 @@ class H5_DLLCPP AtomType : public DataType {
AtomType( const hid_t existing_id );
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5AtomType_H
diff --git a/c++/src/H5Attribute.cpp b/c++/src/H5Attribute.cpp
index 0a8ec52..4daf174 100644
--- a/c++/src/H5Attribute.cpp
+++ b/c++/src/H5Attribute.cpp
@@ -38,13 +38,9 @@
#include "H5Attribute.h"
#include "H5private.h" // for HDfree
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
class H5_DLLCPP H5Object; // forward declaration for UserData4Aiterate
@@ -644,6 +640,4 @@ Attribute::~Attribute()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5Attribute.h b/c++/src/H5Attribute.h
index 5455f76..c27bbdf 100644
--- a/c++/src/H5Attribute.h
+++ b/c++/src/H5Attribute.h
@@ -17,9 +17,7 @@
#ifndef __H5Attribute_H
#define __H5Attribute_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class Attribute
\brief Class Attribute operates on HDF5 attributes.
@@ -104,7 +102,5 @@ class H5_DLLCPP Attribute : public AbstractDs, public H5Location {
friend void f_Attribute_setId(Attribute* attr, hid_t new_id);
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Attribute_H
diff --git a/c++/src/H5Classes.h b/c++/src/H5Classes.h
index acc0b98..bed0cae 100644
--- a/c++/src/H5Classes.h
+++ b/c++/src/H5Classes.h
@@ -17,9 +17,7 @@
#ifndef __H5Classes_H
#define __H5Classes_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
class Exception;
class IdComponent;
class H5Location;
@@ -45,7 +43,5 @@ namespace H5 {
class H5File;
class Attribute;
class H5Library;
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Classes_H
diff --git a/c++/src/H5CommonFG.cpp b/c++/src/H5CommonFG.cpp
index f79a048..a1e0c3f 100644
--- a/c++/src/H5CommonFG.cpp
+++ b/c++/src/H5CommonFG.cpp
@@ -48,10 +48,7 @@
// GroupIException.
// December 2000
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-using namespace std;
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
@@ -70,6 +67,4 @@ CommonFG::~CommonFG() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
}
-#endif
diff --git a/c++/src/H5CommonFG.h b/c++/src/H5CommonFG.h
index 956be21..a68d586 100644
--- a/c++/src/H5CommonFG.h
+++ b/c++/src/H5CommonFG.h
@@ -17,9 +17,7 @@
#ifndef __CommonFG_H
#define __CommonFG_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class CommonFG
\brief \a CommonFG was an abstract base class of H5File and H5Group.
@@ -43,9 +41,6 @@ class H5_DLLCPP CommonFG {
#endif // DOXYGEN_SHOULD_SKIP_THIS
}; // end of CommonFG declaration
-
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __CommonFG_H
diff --git a/c++/src/H5CompType.cpp b/c++/src/H5CompType.cpp
index b7c5687..784d171 100644
--- a/c++/src/H5CompType.cpp
+++ b/c++/src/H5CompType.cpp
@@ -30,9 +30,7 @@
#include "H5DataSet.h"
#include "H5private.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: CompType default constructor
@@ -485,6 +483,4 @@ void CompType::setSize(size_t size) const
//--------------------------------------------------------------------------
CompType::~CompType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5CompType.h b/c++/src/H5CompType.h
index 8ecc8bf..6552f9e 100644
--- a/c++/src/H5CompType.h
+++ b/c++/src/H5CompType.h
@@ -17,9 +17,7 @@
#ifndef __H5CompType_H
#define __H5CompType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class CompType
\brief CompType is a derivative of a DataType and operates on HDF5
@@ -114,7 +112,5 @@ class H5_DLLCPP CompType : public DataType {
// getMemberXxxType
hid_t p_get_member_type(unsigned member_num) const;
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5CompType_H
diff --git a/c++/src/H5DataSet.cpp b/c++/src/H5DataSet.cpp
index e4d6665..749a933 100644
--- a/c++/src/H5DataSet.cpp
+++ b/c++/src/H5DataSet.cpp
@@ -40,13 +40,9 @@
#include "H5DataSet.h"
#include "H5private.h" // for HDfree
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
//--------------------------------------------------------------------------
// Function: DataSet default constructor
@@ -850,6 +846,4 @@ DataSet::~DataSet()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5DataSet.h b/c++/src/H5DataSet.h
index dd98d26..ee9ef28 100644
--- a/c++/src/H5DataSet.h
+++ b/c++/src/H5DataSet.h
@@ -17,9 +17,7 @@
#ifndef __H5DataSet_H
#define __H5DataSet_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class DataSet
\brief Class DataSet operates on HDF5 datasets.
@@ -133,7 +131,5 @@ class H5_DLLCPP DataSet : public H5Object, public AbstractDs {
friend void f_DataSet_setId(DataSet* dset, hid_t new_id);
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5DataSet_H
diff --git a/c++/src/H5DataSpace.cpp b/c++/src/H5DataSpace.cpp
index b24e94f..cb479e1 100644
--- a/c++/src/H5DataSpace.cpp
+++ b/c++/src/H5DataSpace.cpp
@@ -25,13 +25,9 @@
#include "H5IdComponent.h"
#include "H5DataSpace.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -706,6 +702,4 @@ DataSpace::~DataSpace()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5DataSpace.h b/c++/src/H5DataSpace.h
index 38d8135..e76bc72 100644
--- a/c++/src/H5DataSpace.h
+++ b/c++/src/H5DataSpace.h
@@ -17,9 +17,7 @@
#ifndef __H5DataSpace_H
#define __H5DataSpace_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class DataSpace
\brief Class DataSpace inherits from IdComponent and provides wrappers for
@@ -152,7 +150,5 @@ class H5_DLLCPP DataSpace : public IdComponent {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5DataSpace_H
diff --git a/c++/src/H5DataType.cpp b/c++/src/H5DataType.cpp
index a36dc60..7dcd343 100644
--- a/c++/src/H5DataType.cpp
+++ b/c++/src/H5DataType.cpp
@@ -42,13 +42,9 @@
#include "H5File.h"
#include "H5Attribute.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
//--------------------------------------------------------------------------
// Function: DataType default constructor
@@ -133,7 +129,7 @@ DataType::DataType(const Attribute& attr, const void* ref, H5R_type_t ref_type,
//--------------------------------------------------------------------------
// Function: DataType copy constructor
-///\brief Copy constructor: makes a copy of the original DataType object.
+///\brief Copy constructor: makes a copy of the original DataType object
// Programmer Binh-Minh Ribler - 2000
//--------------------------------------------------------------------------
DataType::DataType(const DataType& original) : H5Object(), id(original.id)
@@ -783,6 +779,4 @@ DataType::~DataType()
cerr << inMemFunc("~DataType - ") << close_error.getDetailMsg() << endl;
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5DataType.h b/c++/src/H5DataType.h
index e332cee..9ac6ecf 100644
--- a/c++/src/H5DataType.h
+++ b/c++/src/H5DataType.h
@@ -20,9 +20,7 @@
#ifndef __H5DataType_H
#define __H5DataType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class DataType
\brief Class DataType provides generic operations on HDF5 datatypes.
@@ -146,7 +144,5 @@ class H5_DLLCPP DataType : public H5Object {
void p_commit(hid_t loc_id, const char* name);
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5DataType_H
diff --git a/c++/src/H5DcreatProp.cpp b/c++/src/H5DcreatProp.cpp
index d540c72..b307bde 100644
--- a/c++/src/H5DcreatProp.cpp
+++ b/c++/src/H5DcreatProp.cpp
@@ -25,9 +25,7 @@
#include "H5Object.h"
#include "H5DataType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -747,6 +745,4 @@ void DSetCreatPropList::getExternal( unsigned idx, size_t name_size, char* name,
//--------------------------------------------------------------------------
DSetCreatPropList::~DSetCreatPropList () {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5DcreatProp.h b/c++/src/H5DcreatProp.h
index 07c9077..787d3ec 100644
--- a/c++/src/H5DcreatProp.h
+++ b/c++/src/H5DcreatProp.h
@@ -20,9 +20,7 @@
#ifndef __H5DSCreatPropList_H
#define __H5DSCreatPropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
class DataType;
@@ -147,7 +145,5 @@ class H5_DLLCPP DSetCreatPropList : public ObjCreatPropList {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5DSCreatPropList_H
diff --git a/c++/src/H5DxferProp.cpp b/c++/src/H5DxferProp.cpp
index c228b44..7d9b943 100644
--- a/c++/src/H5DxferProp.cpp
+++ b/c++/src/H5DxferProp.cpp
@@ -22,9 +22,7 @@
#include "H5DxferProp.h"
#include "H5private.h" // for HDmemset
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -565,7 +563,5 @@ H5Z_EDC_t DSetMemXferPropList::getEDCCheck() const
//--------------------------------------------------------------------------
DSetMemXferPropList::~DSetMemXferPropList() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5DxferProp.h b/c++/src/H5DxferProp.h
index a4af53c..81361cf 100644
--- a/c++/src/H5DxferProp.h
+++ b/c++/src/H5DxferProp.h
@@ -20,9 +20,7 @@
#ifndef __H5DSetMemXferPropList_H
#define __H5DSetMemXferPropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class DSetMemXferPropList
\brief Class DSetCreatPropList inherits from PropList and provides
@@ -133,7 +131,5 @@ class H5_DLLCPP DSetMemXferPropList : public PropList {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5DSetMemXferPropList_H
diff --git a/c++/src/H5EnumType.cpp b/c++/src/H5EnumType.cpp
index 32cb1ac..2b614a9 100644
--- a/c++/src/H5EnumType.cpp
+++ b/c++/src/H5EnumType.cpp
@@ -33,9 +33,7 @@
#include "H5EnumType.h"
#include "H5private.h" // for HDmemset
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: EnumType default constructor
@@ -277,6 +275,4 @@ void EnumType::getMemberValue( unsigned memb_no, void *value ) const
//--------------------------------------------------------------------------
EnumType::~EnumType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5EnumType.h b/c++/src/H5EnumType.h
index bc5b870..1f96552 100644
--- a/c++/src/H5EnumType.h
+++ b/c++/src/H5EnumType.h
@@ -17,9 +17,7 @@
#ifndef __H5EnumType_H
#define __H5EnumType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class EnumType
\brief EnumType is a derivative of a DataType and operates on HDF5
@@ -77,7 +75,5 @@ class H5_DLLCPP EnumType : public DataType {
virtual ~EnumType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5EnumType_H
diff --git a/c++/src/H5Exception.cpp b/c++/src/H5Exception.cpp
index 7b81066..2e23587 100644
--- a/c++/src/H5Exception.cpp
+++ b/c++/src/H5Exception.cpp
@@ -18,9 +18,7 @@
#include "H5Include.h"
#include "H5Exception.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
const char Exception::DEFAULT_MSG[] = "No detailed information provided";
@@ -586,6 +584,5 @@ IdComponentException::IdComponentException(const H5std_string& func, const H5std
///\brief Noop destructor.
//--------------------------------------------------------------------------
IdComponentException::~IdComponentException() throw() {}
-#ifndef H5_NO_NAMESPACE
+
} // end namespace
-#endif
diff --git a/c++/src/H5Exception.h b/c++/src/H5Exception.h
index d49c19a..da9066a 100644
--- a/c++/src/H5Exception.h
+++ b/c++/src/H5Exception.h
@@ -19,14 +19,12 @@
#include <string>
-#ifndef H5_NO_NAMESPACE
namespace H5 {
#ifdef H5_NO_STD
#define H5std_string ::string
#else
#define H5std_string std::string
#endif
-#endif
/*! \class Exception
\brief Exception provides wrappers of HDF5 error handling functions.
@@ -171,8 +169,6 @@ class H5_DLLCPP IdComponentException : public Exception {
virtual ~IdComponentException() throw();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Exception_H
diff --git a/c++/src/H5FaccProp.cpp b/c++/src/H5FaccProp.cpp
index 972f915..c3919da 100644
--- a/c++/src/H5FaccProp.cpp
+++ b/c++/src/H5FaccProp.cpp
@@ -21,9 +21,7 @@
#include "H5PropList.h"
#include "H5FaccProp.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -748,6 +746,4 @@ void FileAccPropList::getLibverBounds(H5F_libver_t& libver_low, H5F_libver_t& li
//--------------------------------------------------------------------------
FileAccPropList::~FileAccPropList() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5FaccProp.h b/c++/src/H5FaccProp.h
index e96d02f..a0605e0 100644
--- a/c++/src/H5FaccProp.h
+++ b/c++/src/H5FaccProp.h
@@ -20,9 +20,7 @@
#ifndef __H5FileAccPropList_H
#define __H5FileAccPropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class FileAccPropList
\brief Class FileAccPropList inherits from PropList and provides
@@ -162,7 +160,5 @@ class H5_DLLCPP FileAccPropList : public PropList {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5FileAccPropList_H
diff --git a/c++/src/H5FcreatProp.cpp b/c++/src/H5FcreatProp.cpp
index af51677..5a99dba 100644
--- a/c++/src/H5FcreatProp.cpp
+++ b/c++/src/H5FcreatProp.cpp
@@ -21,9 +21,7 @@
#include "H5PropList.h"
#include "H5FcreatProp.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -303,6 +301,4 @@ unsigned FileCreatPropList::getIstorek() const
//--------------------------------------------------------------------------
FileCreatPropList::~FileCreatPropList() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5FcreatProp.h b/c++/src/H5FcreatProp.h
index b2a5c2b..1ac925e 100644
--- a/c++/src/H5FcreatProp.h
+++ b/c++/src/H5FcreatProp.h
@@ -17,9 +17,7 @@
#ifndef __H5FileCreatPropList_H
#define __H5FileCreatPropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class FileCreatPropList
\brief Class FileCreatPropList inherits from PropList and provides
@@ -94,7 +92,5 @@ class H5_DLLCPP FileCreatPropList : public PropList {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5FileCreatPropList_H
diff --git a/c++/src/H5File.cpp b/c++/src/H5File.cpp
index 246da9f..ff897d7 100644
--- a/c++/src/H5File.cpp
+++ b/c++/src/H5File.cpp
@@ -38,13 +38,9 @@
#include "H5File.h"
#include "H5Alltypes.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
using std::cerr;
using std::endl;
-#endif // H5_NO_STD
-#endif
//--------------------------------------------------------------------------
// Function H5File default constructor
@@ -658,6 +654,4 @@ H5File::~H5File()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5File.h b/c++/src/H5File.h
index 476c5b9..dca6c67 100644
--- a/c++/src/H5File.h
+++ b/c++/src/H5File.h
@@ -18,9 +18,7 @@
#define __H5File_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class H5File
\brief Class H5File represents an HDF5 file and inherits from class Group
@@ -123,8 +121,6 @@ class H5_DLLCPP H5File : public Group {
void p_get_file( const char* name, unsigned int flags, const FileCreatPropList& create_plist, const FileAccPropList& access_plist );
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5File_H
diff --git a/c++/src/H5FloatType.cpp b/c++/src/H5FloatType.cpp
index c019ae4..9ce06f7 100644
--- a/c++/src/H5FloatType.cpp
+++ b/c++/src/H5FloatType.cpp
@@ -32,9 +32,7 @@
#include "H5DataSet.h"
#include "H5PredType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: FloatType default constructor
@@ -285,6 +283,4 @@ void FloatType::setInpad( H5T_pad_t inpad ) const
//--------------------------------------------------------------------------
FloatType::~FloatType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5FloatType.h b/c++/src/H5FloatType.h
index ce816a4..c0119eb 100644
--- a/c++/src/H5FloatType.h
+++ b/c++/src/H5FloatType.h
@@ -17,9 +17,7 @@
#ifndef __H5FloatType_H
#define __H5FloatType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class FloatType
\brief FloatType is a derivative of a DataType and operates on HDF5
@@ -74,7 +72,5 @@ class H5_DLLCPP FloatType : public AtomType {
// Noop destructor.
virtual ~FloatType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5FloatType_H
diff --git a/c++/src/H5Group.cpp b/c++/src/H5Group.cpp
index 0e19e6f..20f14a3 100644
--- a/c++/src/H5Group.cpp
+++ b/c++/src/H5Group.cpp
@@ -40,13 +40,9 @@
#include "H5Alltypes.h"
#include "H5private.h" // for HDstrcpy
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
using std::cerr;
using std::endl;
-#endif // H5_NO_STD
-#endif
//--------------------------------------------------------------------------
// Function: Group default constructor
@@ -231,6 +227,4 @@ Group::~Group()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5Group.h b/c++/src/H5Group.h
index b6ec425..5f4b0f3 100644
--- a/c++/src/H5Group.h
+++ b/c++/src/H5Group.h
@@ -17,9 +17,7 @@
#ifndef __Group_H
#define __Group_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class Group
\brief Class Group represents an HDF5 group.
@@ -81,7 +79,5 @@ class H5_DLLCPP Group : public H5Object {
hid_t id; // HDF5 group id
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __Group_H
diff --git a/c++/src/H5IdComponent.cpp b/c++/src/H5IdComponent.cpp
index 6d0c39f..d869b07 100644
--- a/c++/src/H5IdComponent.cpp
+++ b/c++/src/H5IdComponent.cpp
@@ -22,9 +22,7 @@
#include "H5DataSpace.h"
#include "H5private.h" // for HDmemset
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
// This flag indicates whether H5Library::initH5cpp has been called to register
// the terminating functions with atexit()
@@ -352,6 +350,4 @@ bool IdComponent::p_valid_id(const hid_t obj_id)
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
}
-#endif
diff --git a/c++/src/H5IdComponent.h b/c++/src/H5IdComponent.h
index 92765f2..d3d9b9f 100644
--- a/c++/src/H5IdComponent.h
+++ b/c++/src/H5IdComponent.h
@@ -17,9 +17,7 @@
#ifndef __IdComponent_H
#define __IdComponent_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
class DataSpace;
/*! \class IdComponent
@@ -118,7 +116,5 @@ class H5_DLLCPP IdComponent {
}; // end class IdComponent
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __IdComponent_H
diff --git a/c++/src/H5IntType.cpp b/c++/src/H5IntType.cpp
index f934d26..69fbedb 100644
--- a/c++/src/H5IntType.cpp
+++ b/c++/src/H5IntType.cpp
@@ -32,10 +32,7 @@
#include "H5DataSet.h"
#include "H5PredType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
-
//--------------------------------------------------------------------------
// Function: IntType default constructor
@@ -136,6 +133,4 @@ void IntType::setSign( H5T_sign_t sign ) const
//--------------------------------------------------------------------------
IntType::~IntType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5IntType.h b/c++/src/H5IntType.h
index 362a7e3..54c0d57 100644
--- a/c++/src/H5IntType.h
+++ b/c++/src/H5IntType.h
@@ -17,9 +17,7 @@
#ifndef __H5IntType_H
#define __H5IntType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class IntType
\brief IntType is a derivative of a DataType and operates on HDF5
@@ -56,7 +54,5 @@ class H5_DLLCPP IntType : public AtomType {
// Noop destructor.
virtual ~IntType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5IntType_H
diff --git a/c++/src/H5Library.cpp b/c++/src/H5Library.cpp
index 09e0f7e..1726121 100644
--- a/c++/src/H5Library.cpp
+++ b/c++/src/H5Library.cpp
@@ -34,9 +34,7 @@
#include "H5DataSpace.h"
#include "H5Library.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: H5Library::open (static)
@@ -255,12 +253,20 @@ void H5Library::setFreeListLimits(int reg_global_lim, int reg_list_lim,
}
}
-// Default constructor - private
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+//--------------------------------------------------------------------------
+// Function: H5Library default constructor - private
+///\brief Default constructor: Creates a stub H5Library object
+// Programmer Binh-Minh Ribler - 2000
+//--------------------------------------------------------------------------
H5Library::H5Library(){}
-// Destructor - private
+//--------------------------------------------------------------------------
+// Function: H5Library destructor
+///\brief Noop destructor
+// Programmer Binh-Minh Ribler - 2000
+//--------------------------------------------------------------------------
H5Library::~H5Library(){}
+#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5Library.h b/c++/src/H5Library.h
index 308881b..694b052 100644
--- a/c++/src/H5Library.h
+++ b/c++/src/H5Library.h
@@ -17,9 +17,7 @@
#ifndef __H5Library_H
#define __H5Library_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class H5Library
\brief Class H5Library operates the HDF5 library globably.
@@ -72,7 +70,5 @@ class H5_DLLCPP H5Library {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Library_H
diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp
index 6b5c63a..c31db02 100644
--- a/c++/src/H5Location.cpp
+++ b/c++/src/H5Location.cpp
@@ -35,9 +35,7 @@
#include "H5Alltypes.h"
#include "H5private.h" // for HDmemset
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
@@ -1972,6 +1970,4 @@ H5Location::~H5Location() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5Location.h b/c++/src/H5Location.h
index bd8075c..647904b 100644
--- a/c++/src/H5Location.h
+++ b/c++/src/H5Location.h
@@ -19,9 +19,7 @@
#include "H5Classes.h" // constains forward class declarations
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class H5Location
\brief H5Location is an abstract base class, added in version 1.8.12.
@@ -251,7 +249,5 @@ class H5_DLLCPP H5Location : public IdComponent {
}; /* end class H5Location */
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Location_H
diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp
index 6b5edcf..4bce9b1 100644
--- a/c++/src/H5Object.cpp
+++ b/c++/src/H5Object.cpp
@@ -35,9 +35,7 @@
#include "H5Attribute.h"
#include "H5private.h" // for HDmemset
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// userAttrOpWrpr simply interfaces between the user's function and the
@@ -465,6 +463,4 @@ ssize_t H5Object::getObjName(H5std_string& obj_name, size_t len) const
H5Object::~H5Object() {}
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5Object.h b/c++/src/H5Object.h
index e570055..72a9f50 100644
--- a/c++/src/H5Object.h
+++ b/c++/src/H5Object.h
@@ -17,9 +17,7 @@
#ifndef __H5Object_H
#define __H5Object_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class H5Object
\brief Class H5Object is a bridge between H5Location and DataSet, DataType,
@@ -132,7 +130,5 @@ class H5_DLLCPP H5Object : public H5Location {
}; /* end class H5Object */
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5Object_H
diff --git a/c++/src/H5OcreatProp.cpp b/c++/src/H5OcreatProp.cpp
index 54ce2ff..3cda945 100644
--- a/c++/src/H5OcreatProp.cpp
+++ b/c++/src/H5OcreatProp.cpp
@@ -22,9 +22,7 @@
#include "H5OcreatProp.h"
#include "H5FaccProp.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -217,6 +215,4 @@ unsigned ObjCreatPropList::getAttrCrtOrder() const
//--------------------------------------------------------------------------
ObjCreatPropList::~ObjCreatPropList() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5OcreatProp.h b/c++/src/H5OcreatProp.h
index 0532b3c..bfba1c4 100644
--- a/c++/src/H5OcreatProp.h
+++ b/c++/src/H5OcreatProp.h
@@ -17,9 +17,7 @@
#ifndef __H5ObjCreatPropList_H
#define __H5ObjCreatPropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class ObjCreatPropList
\brief Class ObjCreatPropList inherits from PropList and provides
@@ -75,7 +73,5 @@ class H5_DLLCPP ObjCreatPropList : public PropList {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5ObjCreatPropList_H
diff --git a/c++/src/H5PredType.cpp b/c++/src/H5PredType.cpp
index 211702d..0711020 100644
--- a/c++/src/H5PredType.cpp
+++ b/c++/src/H5PredType.cpp
@@ -27,9 +27,7 @@
#include "H5AtomType.h"
#include "H5PredType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
@@ -889,9 +887,7 @@ const PredType& PredType::NATIVE_UINT_FAST64 = *NATIVE_UINT_FAST64_;
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
/***************************************************************************
Design Note
diff --git a/c++/src/H5PredType.h b/c++/src/H5PredType.h
index 1e789ef..750902e 100644
--- a/c++/src/H5PredType.h
+++ b/c++/src/H5PredType.h
@@ -17,9 +17,7 @@
#ifndef __H5PredType_H
#define __H5PredType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class PredType
\brief Class PredType holds the definition of all the HDF5 predefined
@@ -441,7 +439,5 @@ class H5_DLLCPP PredType : public AtomType {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5PredType_H
diff --git a/c++/src/H5PropList.cpp b/c++/src/H5PropList.cpp
index 6655900..b6f7c15 100644
--- a/c++/src/H5PropList.cpp
+++ b/c++/src/H5PropList.cpp
@@ -28,13 +28,9 @@
#include "H5private.h" // for HDfree
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#ifndef H5_NO_STD
using std::cerr;
using std::endl;
-#endif // H5_NO_STD
-#endif
#ifndef DOXYGEN_SHOULD_SKIP_THIS
// This DOXYGEN_SHOULD_SKIP_THIS block is a work-around approach to control
@@ -752,6 +748,4 @@ PropList::~PropList()
}
}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5PropList.h b/c++/src/H5PropList.h
index dbd1263..faaf68d 100644
--- a/c++/src/H5PropList.h
+++ b/c++/src/H5PropList.h
@@ -17,9 +17,7 @@
#ifndef __H5PropList_H
#define __H5PropList_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//! Class PropList provides operations for generic property lists.
/*! \class PropList
@@ -139,7 +137,5 @@ class H5_DLLCPP PropList : public IdComponent {
#endif // DOXYGEN_SHOULD_SKIP_THIS
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5PropList_H
diff --git a/c++/src/H5StrType.cpp b/c++/src/H5StrType.cpp
index db46596..962a5dc 100644
--- a/c++/src/H5StrType.cpp
+++ b/c++/src/H5StrType.cpp
@@ -32,9 +32,7 @@
#include "H5DataSet.h"
#include "H5PredType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
//--------------------------------------------------------------------------
// Function: StrType default constructor
@@ -247,6 +245,4 @@ void StrType::setStrpad( H5T_str_t strpad ) const
//--------------------------------------------------------------------------
StrType::~StrType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5StrType.h b/c++/src/H5StrType.h
index eac6693..5d223b3 100644
--- a/c++/src/H5StrType.h
+++ b/c++/src/H5StrType.h
@@ -17,9 +17,7 @@
#ifndef __H5StrType_H
#define __H5StrType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class StrType
\brief StrType is a derivative of a DataType and operates on HDF5
@@ -68,7 +66,5 @@ class H5_DLLCPP StrType : public AtomType {
// Noop destructor.
virtual ~StrType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5StrType_H
diff --git a/c++/src/H5VarLenType.cpp b/c++/src/H5VarLenType.cpp
index c9f320a..fa3a18f 100644
--- a/c++/src/H5VarLenType.cpp
+++ b/c++/src/H5VarLenType.cpp
@@ -26,10 +26,7 @@
#include "H5DataType.h"
#include "H5VarLenType.h"
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
-
//--------------------------------------------------------------------------
// Function: VarLenType default constructor
@@ -81,6 +78,4 @@ VarLenType::VarLenType(const DataType* base_type) : DataType()
//--------------------------------------------------------------------------
VarLenType::~VarLenType() {}
-#ifndef H5_NO_NAMESPACE
} // end namespace
-#endif
diff --git a/c++/src/H5VarLenType.h b/c++/src/H5VarLenType.h
index 4898135..d7141b0 100644
--- a/c++/src/H5VarLenType.h
+++ b/c++/src/H5VarLenType.h
@@ -17,9 +17,7 @@
#ifndef __H5VarLenType_H
#define __H5VarLenType_H
-#ifndef H5_NO_NAMESPACE
namespace H5 {
-#endif
/*! \class VarLenType
\brief VarLenType is a derivative of a DataType and operates on HDF5
@@ -48,7 +46,5 @@ class H5_DLLCPP VarLenType : public DataType {
// Default constructor
VarLenType();
};
-#ifndef H5_NO_NAMESPACE
}
-#endif
#endif // __H5VarLenType_H
diff --git a/c++/test/dsets.cpp b/c++/test/dsets.cpp
index 5d0c8a1..8752744 100644
--- a/c++/test/dsets.cpp
+++ b/c++/test/dsets.cpp
@@ -30,21 +30,14 @@
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILE1("dataset.h5");
@@ -1175,9 +1168,7 @@ test_types(H5File& file)
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_dset()
{
hid_t fapl_id;
@@ -1235,9 +1226,7 @@ void test_dset()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_dsets()
{
HDremove(FILE1.c_str());
diff --git a/c++/test/h5cpputil.cpp b/c++/test/h5cpputil.cpp
index 3bc38b5..95d29a8 100644
--- a/c++/test/h5cpputil.cpp
+++ b/c++/test/h5cpputil.cpp
@@ -26,25 +26,16 @@
#else
#include <iostream>
#endif
-#include <string>
+using std::cerr;
+using std::endl;
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+#include <string>
+#include "H5Cpp.h" // C++ API header file
+using namespace H5;
#include "h5test.h"
-#include "H5Cpp.h"
-
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
-#include "h5cpputil.h"
+#include "h5cpputil.h" // C++ utilility header file
-
/*-------------------------------------------------------------------------
* Function: test_report
*
diff --git a/c++/test/h5cpputil.h b/c++/test/h5cpputil.h
index 0a3221d..f8aaec7 100644
--- a/c++/test/h5cpputil.h
+++ b/c++/test/h5cpputil.h
@@ -26,14 +26,9 @@
#include "h5test.h"
-#ifndef H5_NO_NAMESPACE
using namespace H5;
-#endif
-
-#ifndef H5_NO_STD
using std::cerr;
using std::endl;
-#endif
#define MESSAGE(V,A) {if (HDGetTestVerbosity()>(V)) print_func A;}
#define SUBTEST(TEST) {printf(" Subtest: %-52s",TEST); fflush(stdout);}
diff --git a/c++/test/tarray.cpp b/c++/test/tarray.cpp
index 441ef81..7fe2e6b 100644
--- a/c++/test/tarray.cpp
+++ b/c++/test/tarray.cpp
@@ -18,27 +18,19 @@
tarray.cpp - HDF5 C++ testing the array datatype functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILENAME("tarray.h5");
@@ -478,9 +470,7 @@ static void test_array_info()
** test_array(): Main datatypes testing routine.
**
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void test_array()
{
// Output message about test being performed
@@ -512,9 +502,7 @@ void test_array()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_array()
{
HDremove(FILENAME.c_str());
diff --git a/c++/test/tattr.cpp b/c++/test/tattr.cpp
index 2dfa562..bc46d0f 100644
--- a/c++/test/tattr.cpp
+++ b/c++/test/tattr.cpp
@@ -19,28 +19,20 @@
C attribute interface (H5A)
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
-
-#include "H5Cpp.h" // C++ API header file
+using std::cerr;
+using std::endl;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
+#include <string>
+#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#include "h5cpputil.h" // C++ utilility header file
+#include "h5test.h"
+#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILE_BASIC("tattr_basic.h5");
const H5std_string FILE_COMPOUND("tattr_compound.h5");
@@ -1786,9 +1778,7 @@ static void test_attr_corder_create_basic(FileCreatPropList& fcpl,
** test_attr(): Main attribute testing routine.
**
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void test_attr()
{
// Output message about test being performed
@@ -1885,9 +1875,7 @@ void test_attr()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_attr()
{
HDremove(FILE_BASIC.c_str());
diff --git a/c++/test/tcompound.cpp b/c++/test/tcompound.cpp
index e08c81d..f49ebb2 100644
--- a/c++/test/tcompound.cpp
+++ b/c++/test/tcompound.cpp
@@ -18,27 +18,19 @@
tcompound.cpp - HDF5 C++ testing the compound data type functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
/* Number of elements in each test */
@@ -832,9 +824,7 @@ static void test_compound_set_size()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_compound()
{
// Output message about test being performed
@@ -862,9 +852,7 @@ void test_compound()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_compound()
{
HDremove(COMPFILE.c_str());
diff --git a/c++/test/tdspl.cpp b/c++/test/tdspl.cpp
index ab93c26..d733ffe 100644
--- a/c++/test/tdspl.cpp
+++ b/c++/test/tdspl.cpp
@@ -19,27 +19,19 @@
list functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILENAME("tdatatransform.h5");
@@ -126,9 +118,7 @@ static void test_transfplist()
** test_dsproplist(): Main dataset property list testing routine.
**
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void test_dsproplist()
{
// Output message about test being performed
@@ -138,10 +128,7 @@ void test_dsproplist()
} // test_dsproplist()
-
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_dsproplist()
{
HDremove(FILENAME.c_str());
diff --git a/c++/test/testhdf5.cpp b/c++/test/testhdf5.cpp
index 4fe4b58..28ede6b 100644
--- a/c++/test/testhdf5.cpp
+++ b/c++/test/testhdf5.cpp
@@ -40,28 +40,19 @@
GetTestNumErrs() -- Retrieve the number of testing errors
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
-
-#include "h5test.h" // C test header file
-#include "H5Cpp.h" // C++ API header file
+using std::cerr;
+using std::endl;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif /* !H5_NO_NAMESPACE */
+#include <string>
+#include "H5Cpp.h" // C++ API header file
+using namespace H5;
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
int
diff --git a/c++/test/tfile.cpp b/c++/test/tfile.cpp
index 0eabfb9..dba0980 100644
--- a/c++/test/tfile.cpp
+++ b/c++/test/tfile.cpp
@@ -22,28 +22,20 @@
h5_fileaccess() -- in h5test.c, returns a file access template
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
-
-#include "H5Cpp.h" // C++ API header file
+using std::cerr;
+using std::endl;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
+#include <string>
+#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#include "h5cpputil.h" // C++ utilility header file
+#include "h5test.h"
+#include "h5cpputil.h" // C++ utilility header file
const hsize_t F1_USERBLOCK_SIZE = (hsize_t)0;
const size_t F1_OFFSET_SIZE = sizeof(haddr_t);
@@ -817,9 +809,7 @@ static void test_commonfg()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_file()
{
// Output message about test being performed
diff --git a/c++/test/tfilter.cpp b/c++/test/tfilter.cpp
index 19549b3..ee78fe1 100644
--- a/c++/test/tfilter.cpp
+++ b/c++/test/tfilter.cpp
@@ -18,27 +18,19 @@
tfilter.cpp - HDF5 C++ testing various filters and their combination.
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
#define DSET_DIM1 100
@@ -258,9 +250,7 @@ static void test_szip_filter(H5File& file1)
**
****************************************************************/
const H5std_string FILE1("tfilters.h5");
-#ifdef __cplusplus
extern "C"
-#endif
void test_filters()
{
// Output message about test being performed
@@ -300,9 +290,7 @@ void test_filters()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_filters()
{
HDremove(FILE1.c_str());
diff --git a/c++/test/th5s.cpp b/c++/test/th5s.cpp
index 7ef048b..c795c08 100644
--- a/c++/test/th5s.cpp
+++ b/c++/test/th5s.cpp
@@ -21,28 +21,20 @@
EXTERNAL ROUTINES/VARIABLES:
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
-
-#include "H5Cpp.h" // C++ API header file
+using std::cerr;
+using std::endl;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
+#include <string>
+#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#include "h5cpputil.h" // C++ utilility header file
+#include "h5test.h"
+#include "h5cpputil.h" // C++ utilility header file
#include "H5srcdir.h" // srcdir querying header file
const H5std_string TESTFILE("th5s.h5");
@@ -566,9 +558,7 @@ static void test_h5s_compound_scalar_read()
* Modifications:
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_h5s()
{
// Output message about test being performed
@@ -597,9 +587,7 @@ void test_h5s()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_h5s()
{
HDremove(DATAFILE.c_str());
diff --git a/c++/test/titerate.cpp b/c++/test/titerate.cpp
index e4aee97..7ee2b53 100644
--- a/c++/test/titerate.cpp
+++ b/c++/test/titerate.cpp
@@ -18,27 +18,19 @@
titerate.cpp - HDF5 C++ testing iterate related functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
/* Number of datasets for group iteration test */
@@ -501,9 +493,7 @@ static void test_HDFFV_9920()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_iterate()
{
// Output message about test being performed
@@ -532,9 +522,7 @@ void test_iterate()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_iterate()
{
HDremove(FILE_ITERATE.c_str());
diff --git a/c++/test/tlinks.cpp b/c++/test/tlinks.cpp
index a3eb690..1f7d14e 100644
--- a/c++/test/tlinks.cpp
+++ b/c++/test/tlinks.cpp
@@ -18,28 +18,20 @@
C link interface (H5L)
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
-#include "h5cpputil.h" // C++ test utilility header file
+#include "h5test.h"
+#include "h5cpputil.h" // C++ utilility header file
// A lot of the definition inherited from C test links.c is left here until
// the H5L API is implemented and tests are completed - BMR 10/19/2009
@@ -460,9 +452,7 @@ static void test_basic_links(hid_t fapl_id, hbool_t new_format)
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_links()
{
hid_t fapl_id, fapl2_id; /* File access property lists */
@@ -651,9 +641,7 @@ void test_links()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_links()
{
HDremove(FILENAME[0]);
diff --git a/c++/test/tobject.cpp b/c++/test/tobject.cpp
index 046e67a..b8654c3 100644
--- a/c++/test/tobject.cpp
+++ b/c++/test/tobject.cpp
@@ -18,27 +18,19 @@
tobject.cpp - HDF5 C++ testing object related functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILE_OBJECTS("tobjects.h5");
@@ -319,9 +311,7 @@ static void test_get_objtype()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_object()
{
// Output message about test being performed
@@ -346,9 +336,7 @@ void test_object()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_object()
{
HDremove(FILE_OBJECTS.c_str());
diff --git a/c++/test/trefer.cpp b/c++/test/trefer.cpp
index 1974541..9bc2eb0 100644
--- a/c++/test/trefer.cpp
+++ b/c++/test/trefer.cpp
@@ -19,20 +19,19 @@
Reference interface (H5R)
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
const H5std_string FILE1("trefer1.h5");
@@ -808,9 +807,7 @@ static void test_reference_compat(void)
** test_reference(): Main reference testing routine.
**
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void test_reference(void)
{
// Output message about test being performed
@@ -830,9 +827,7 @@ void test_reference(void)
** Purpose: Cleanup temporary test files
** Return: none
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_reference(void)
{
HDremove(FILE1.c_str());
diff --git a/c++/test/ttypes.cpp b/c++/test/ttypes.cpp
index c65d6a5..1ef7bdd 100644
--- a/c++/test/ttypes.cpp
+++ b/c++/test/ttypes.cpp
@@ -18,27 +18,19 @@
ttypes.cpp - HDF5 C++ testing the general datatype functionality
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
/*
@@ -549,9 +541,7 @@ static void test_named ()
** test_types(): Main datatypes testing routine.
**
****************************************************************/
-#ifdef __cplusplus
extern "C"
-#endif
void test_types()
{
// Output message about test being performed
@@ -581,9 +571,7 @@ void test_types()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_types()
{
for (int i = 0; i < 3; i++)
diff --git a/c++/test/tvlstr.cpp b/c++/test/tvlstr.cpp
index 6ec7f25..d39d092 100644
--- a/c++/test/tvlstr.cpp
+++ b/c++/test/tvlstr.cpp
@@ -20,27 +20,19 @@
EXTERNAL ROUTINES/VARIABLES:
***************************************************************************/
-
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
-#include <string>
-
-#ifndef H5_NO_NAMESPACE
-#ifndef H5_NO_STD
- using std::cerr;
- using std::endl;
-#endif // H5_NO_STD
-#endif
+using std::cerr;
+using std::endl;
+#include <string>
#include "H5Cpp.h" // C++ API header file
+using namespace H5;
-#ifndef H5_NO_NAMESPACE
- using namespace H5;
-#endif
-
+#include "h5test.h"
#include "h5cpputil.h" // C++ utilility header file
// Data file used in most test functions
@@ -958,9 +950,7 @@ static void test_vl_rewrite()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void test_vlstrings()
{
// Output message about test being performed
@@ -1000,9 +990,7 @@ void test_vlstrings()
*
*-------------------------------------------------------------------------
*/
-#ifdef __cplusplus
extern "C"
-#endif
void cleanup_vlstrings()
{
HDremove(FILENAME.c_str());
diff --git a/config/cmake/CTestCustom.cmake b/config/cmake/CTestCustom.cmake
index a1cbb0c..481873e 100644
--- a/config/cmake/CTestCustom.cmake
+++ b/config/cmake/CTestCustom.cmake
@@ -49,6 +49,8 @@ set (CTEST_CUSTOM_MEMCHECK_IGNORE
H5DUMP_PACKED_BITS-clearall-objects
H5DUMP-XML-clearall-objects
H5DUMP_VDS-clearall-objects
+ ######### tools/h5format_convert #########
+ H5FC-clearall-objects
######### tools/h5import #########
H5IMPORT-h5importtest-clear-objects
H5IMPORT-clear-objects
@@ -185,6 +187,7 @@ set (CTEST_CUSTOM_MEMCHECK_IGNORE
H5JAM-NONE_COPY-ta_u513
######### tools/h5ls #########
H5LS-clearall-objects
+ H5LS_VDS-clearall-objects
######### tools/h5repack #########
H5REPACK-clearall-objects
H5REPACK-gzip_verbose_filters #uses runTest.cmake
diff --git a/config/cmake/scripts/CTestScript.cmake b/config/cmake/scripts/CTestScript.cmake
index 322f0e5..f2675c3 100755
--- a/config/cmake/scripts/CTestScript.cmake
+++ b/config/cmake/scripts/CTestScript.cmake
@@ -41,7 +41,7 @@ else(NOT SITE_OS_NAME)
set(CTEST_BUILD_NAME "${SITE_OS_NAME}-${SITE_OS_VERSION}-${SITE_COMPILER_NAME}")
endif()
if(SITE_BUILDNAME_SUFFIX)
- set(CTEST_BUILD_NAME ${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX})
+ set(CTEST_BUILD_NAME "${CTEST_BUILD_NAME}-${SITE_BUILDNAME_SUFFIX}")
endif()
set(BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSITE:STRING=${CTEST_SITE} -DBUILDNAME:STRING=${CTEST_BUILD_NAME}")
endif(NOT SITE_OS_NAME)
@@ -73,13 +73,13 @@ if(CTEST_USE_TAR_SOURCE)
## Uncompress source if tar file provided
## --------------------------
if(WIN32)
- message(STATUS "extracting... [${CMAKE_EXECUTABLE_NAME} x ${CTEST_DASHBOARD_ROOT}\\${CTEST_USE_TAR_SOURCE}.zip]")
+ message(STATUS "extracting... [${CMAKE_EXECUTABLE_NAME} x ${CTEST_USE_TAR_SOURCE}.zip]")
execute_process(COMMAND ${CMAKE_EXECUTABLE_NAME} -E tar -xvf ${CTEST_DASHBOARD_ROOT}\\${CTEST_USE_TAR_SOURCE}.zip RESULT_VARIABLE rv)
else()
- message(STATUS "extracting... [${CMAKE_EXECUTABLE_NAME} -E tar -xvf ${CTEST_DASHBOARD_ROOT}/${CTEST_USE_TAR_SOURCE}.tar]")
+ message(STATUS "extracting... [${CMAKE_EXECUTABLE_NAME} -E tar -xvf ${CTEST_USE_TAR_SOURCE}.tar]")
execute_process(COMMAND ${CMAKE_EXECUTABLE_NAME} -E tar -xvf ${CTEST_DASHBOARD_ROOT}/${CTEST_USE_TAR_SOURCE}.tar RESULT_VARIABLE rv)
endif()
-
+
if(NOT rv EQUAL 0)
message(STATUS "extracting... [error-(${rv}) clean up]")
file(REMOVE_RECURSE "${CTEST_SOURCE_DIRECTORY}")
@@ -98,15 +98,15 @@ else(CTEST_USE_TAR_SOURCE)
set(NEED_REPOSITORY_CHECKOUT 1)
endif()
- if(${NEED_REPOSITORY_CHECKOUT})
+ if(${NEED_REPOSITORY_CHECKOUT})
if(REPOSITORY_BRANCH)
- set(GITUpdateOptions "clone \"${REPOSITORY_URL}\" --branch \"${REPOSITORY_BRANCH}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
+ set(CTEST_GIT_options "clone \"${REPOSITORY_URL}\" --branch \"${REPOSITORY_BRANCH}\" --single-branch \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
else()
- set(GITUpdateOptions "clone \"${REPOSITORY_URL}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
+ set(CTEST_GIT_options "clone \"${REPOSITORY_URL}\" \"${CTEST_SOURCE_DIRECTORY}\" --recurse-submodules")
endif()
- set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} ${GITUpdateOptions}")
+ set(CTEST_CHECKOUT_COMMAND "${CTEST_GIT_COMMAND} ${CTEST_GIT_options}")
else()
- set(GITUpdateOptions "pull")
+ set(CTEST_GIT_options "pull")
endif()
set(CTEST_UPDATE_COMMAND "${CTEST_GIT_COMMAND}")
else(CTEST_USE_GIT_SOURCE)
@@ -134,12 +134,12 @@ else(CTEST_USE_TAR_SOURCE)
endif()
if(${NEED_REPOSITORY_CHECKOUT})
set(CTEST_CHECKOUT_COMMAND
- "${CTEST_SVN_COMMAND} co ${REPOSITORY_URL} \"${CTEST_SOURCE_DIRECTORY}\" -r ${CTEST_REPO_VERSION}")
- else(${NEED_REPOSITORY_CHECKOUT})
+ "\"${CTEST_SVN_COMMAND}\" co ${REPOSITORY_URL} \"${CTEST_SOURCE_DIRECTORY}\" -r ${CTEST_REPO_VERSION}")
+ else()
if(CTEST_REPO_VERSION)
set(CTEST_SVN_UPDATE_OPTIONS "-r ${CTEST_REPO_VERSION}")
endif()
- endif(${NEED_REPOSITORY_CHECKOUT})
+ endif()
endif(CTEST_USE_GIT_SOURCE)
endif(LOCAL_UPDATE)
endif(CTEST_USE_TAR_SOURCE)
@@ -182,7 +182,7 @@ else()
"${CTEST_SOURCE_DIRECTORY}/config/cmake/cacheinit.cmake"
)
endif()
-
+
#-----------------------------------------------------------------------------
# Check for required variables.
# --------------------------
@@ -258,20 +258,20 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
configure_file(${CTEST_SOURCE_DIRECTORY}/config/cmake/CTestCustom.cmake ${CTEST_BINARY_DIRECTORY}/CTestCustom.cmake)
ctest_read_custom_files ("${CTEST_BINARY_DIRECTORY}")
ctest_configure (BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res)
- if(${res} LESS 0 OR ${res} GREATER 0)
- message(FATAL_ERROR "Failed configure: ${res}\n")
- endif()
if(LOCAL_SUBMIT)
ctest_submit (PARTS Update Configure Notes)
endif()
+ if(${res} LESS 0 OR ${res} GREATER 0)
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Configure: ${res}\n")
+ endif()
ctest_build (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND RETURN_VALUE res NUMBER_ERRORS errval)
- if(${res} LESS 0 OR ${res} GREATER 0 OR ${errval} GREATER 0)
- message(FATAL_ERROR "Failed build: ${res} with Errors=${errval}\n")
- endif()
if(LOCAL_SUBMIT)
ctest_submit (PARTS Build)
endif()
+ if(${res} LESS 0 OR ${res} GREATER 0 OR ${errval} GREATER 0)
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed ${errval} Build: ${res}\n")
+ endif()
if(NOT LOCAL_SKIP_TEST)
if(NOT LOCAL_MEMCHECK_TEST)
@@ -280,13 +280,13 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
ctest_submit (PARTS Test)
endif()
if(${res} LESS 0 OR ${res} GREATER 0)
- message(FATAL_ERROR "Failed tests: ${res}\n")
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n")
endif()
else()
ctest_memcheck (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND ${ctest_test_args})
if(LOCAL_SUBMIT)
ctest_submit (PARTS MemCheck)
- endif(LOCAL_SUBMIT)
+ endif()
endif()
if(LOCAL_COVERAGE_TEST)
ctest_coverage (BUILD "${CTEST_BINARY_DIRECTORY}" APPEND)
@@ -296,7 +296,7 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
endif()
endif(NOT LOCAL_SKIP_TEST)
- if(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE)
+ if(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE AND NOT LOCAL_SKIP_BUILD)
##-----------------------------------------------
## Package the product
##-----------------------------------------------
@@ -308,7 +308,7 @@ message(STATUS "Dashboard script configuration:\n${vars}\n")
)
file(WRITE ${CTEST_BINARY_DIRECTORY}/cpack.log "${cpackLog.err}" "${cpackLog}")
if(cpackResult GREATER 0)
- message (FATAL_ERROR "Failed packaging: ${cpackResult}\n")
+ file(APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed packaging: ${cpackResult}:${cpackLog.err} \n")
endif()
- endif(NOT LOCAL_MEMCHECK_TEST AND NOT LOCAL_NO_PACKAGE)
+ endif()
#-----------------------------------------------------------------------------
diff --git a/config/cmake/scripts/HDF5config.cmake b/config/cmake/scripts/HDF5config.cmake
index 672026f..2874a74 100755
--- a/config/cmake/scripts/HDF5config.cmake
+++ b/config/cmake/scripts/HDF5config.cmake
@@ -75,11 +75,16 @@ else()
endif()
endif()
+###################################################################
+### Following Line is one of [Release, RelWithDebInfo, Debug] #####
+set(CTEST_CONFIGURATION_TYPE "$ENV{CMAKE_CONFIG_TYPE}")
+###################################################################
+
if(NOT DEFINED INSTALLDIR)
if(WIN32)
- set(INSTALLDIR "C:\\Program\ Files\\myhdf5")
+ set(INSTALLDIR "C:\\Program\ Files\\HDF_Group\\HDF5\\${CTEST_SOURCE_VERSION}")
else()
- set(INSTALLDIR "/usr/local/myhdf5")
+ set(INSTALLDIR "${CTEST_SCRIPT_DIRECTORY}/HDF_Group/HDF5/${CTEST_SOURCE_VERSION}")
endif()
endif()
if(NOT DEFINED CTEST_CONFIGURATION_TYPE)
@@ -227,7 +232,8 @@ endif()
set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_PACKAGE_EXTLIBS:BOOL=ON")
### change install prefix
-set(ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DCMAKE_INSTALL_PREFIX:PATH=${INSTALLDIR}")
+set(BUILD_OPTIONS "${BUILD_OPTIONS} -DCMAKE_INSTALL_PREFIX:PATH='${INSTALLDIR}'")
+set(BUILD_OPTIONS "${BUILD_OPTIONS} -DCTEST_CONFIGURATION_TYPE:STRING=$ENV{CMAKE_CONFIG_TYPE}")
###################################################################
diff --git a/configure.ac b/configure.ac
index 31b5e14..f9d535b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -699,7 +699,7 @@ if test "X$HDF_CXX" = "Xyes"; then
## if C++ can handle static cast
PAC_PROG_CXX_STATIC_CAST
- ## Checking if C++ has offsetof extension,
+ ## Checking if C++ has offsetof extension,
## note: this test has to be the last of the C++ tests because it sets a definition
## which would be used in the other tests, causing them to fail.
PAC_PROG_CXX_OFFSETOF
@@ -2869,7 +2869,7 @@ if test ${ac_cv_sizeof_long_double} = 0; then
hdf5_cv_ldouble_to_llong_accurate=${hdf5_cv_ldouble_to_llong_accurate=no}
else
AC_CACHE_VAL([hdf5_cv_ldouble_to_llong_accurate],
- [AC_RUN_IFELSE([AC_LANG_SOURCE([$TEST_SRC])],
+ [AC_RUN_IFELSE([AC_LANG_SOURCE([$TEST_SRC])],
[hdf5_cv_ldouble_to_llong_accurate=yes], [hdf5_cv_ldouble_to_llong_accurate=no],[])])
fi
@@ -3323,37 +3323,49 @@ AC_CONFIG_FILES([src/libhdf5.settings
test/test_plugin.sh
testpar/Makefile
tools/Makefile
- tools/h5dump/Makefile
- tools/h5dump/testh5dump.sh
- tools/h5dump/testh5dumppbits.sh
- tools/h5dump/testh5dumpvds.sh
- tools/h5dump/testh5dumpxml.sh
- tools/h5ls/testh5ls.sh
- tools/h5ls/testh5lsvds.sh
- tools/h5import/Makefile
- tools/h5import/h5importtestutil.sh
- tools/h5diff/Makefile
- tools/h5diff/testh5diff.sh
- tools/h5diff/testph5diff.sh
- tools/h5jam/Makefile
- tools/h5jam/testh5jam.sh
- tools/h5repack/Makefile
- tools/h5repack/h5repack.sh
- tools/h5repack/h5repack_plugin.sh
- tools/h5ls/Makefile
- tools/h5copy/Makefile
- tools/h5copy/testh5copy.sh
tools/lib/Makefile
- tools/misc/Makefile
- tools/misc/h5cc
- tools/misc/testh5mkgrp.sh
- tools/misc/testh5repart.sh
- tools/misc/vds/Makefile
- tools/h5stat/testh5stat.sh
- tools/h5stat/Makefile
- tools/h5format_convert/Makefile
- tools/h5format_convert/testh5fc.sh
- tools/perform/Makefile
+ tools/src/Makefile
+ tools/src/h5dump/Makefile
+ tools/src/h5import/Makefile
+ tools/src/h5diff/Makefile
+ tools/src/h5jam/Makefile
+ tools/src/h5repack/Makefile
+ tools/src/h5ls/Makefile
+ tools/src/h5copy/Makefile
+ tools/src/misc/Makefile
+ tools/src/misc/h5cc
+ tools/src/h5stat/Makefile
+ tools/test/Makefile
+ tools/test/h5dump/Makefile
+ tools/test/h5dump/testh5dump.sh
+ tools/test/h5dump/testh5dumppbits.sh
+ tools/test/h5dump/testh5dumpvds.sh
+ tools/test/h5dump/testh5dumpxml.sh
+ tools/test/h5ls/testh5ls.sh
+ tools/test/h5ls/testh5lsvds.sh
+ tools/test/h5import/Makefile
+ tools/test/h5import/h5importtestutil.sh
+ tools/test/h5diff/Makefile
+ tools/test/h5diff/testh5diff.sh
+ tools/test/h5diff/testph5diff.sh
+ tools/src/h5format_convert/Makefile
+ tools/test/h5format_convert/Makefile
+ tools/test/h5format_convert/testh5fc.sh
+ tools/test/h5jam/Makefile
+ tools/test/h5jam/testh5jam.sh
+ tools/test/h5repack/Makefile
+ tools/test/h5repack/h5repack.sh
+ tools/test/h5repack/h5repack_plugin.sh
+ tools/test/h5ls/Makefile
+ tools/test/h5copy/Makefile
+ tools/test/h5copy/testh5copy.sh
+ tools/test/misc/Makefile
+ tools/test/misc/testh5mkgrp.sh
+ tools/test/misc/testh5repart.sh
+ tools/test/misc/vds/Makefile
+ tools/test/h5stat/testh5stat.sh
+ tools/test/h5stat/Makefile
+ tools/test/perform/Makefile
examples/Makefile
examples/run-c-ex.sh
examples/testh5cc.sh
@@ -3417,7 +3429,7 @@ AC_CONFIG_COMMANDS([.classes], [], [$MKDIR_P java/src/.classes;
AC_OUTPUT
-chmod 755 tools/misc/h5cc
+chmod 755 tools/src/misc/h5cc
if test "X$HDF_FORTRAN" = "Xyes"; then
chmod 755 fortran/src/h5fc
diff --git a/hl/c++/test/ptableTest.cpp b/hl/c++/test/ptableTest.cpp
index dd3d2ba..c388af3 100644
--- a/hl/c++/test/ptableTest.cpp
+++ b/hl/c++/test/ptableTest.cpp
@@ -38,23 +38,22 @@ int main(void)
}
else {
- num_errors += BasicTest();
+ num_errors += BasicTest();
- num_errors += TestCompoundDatatype();
+ num_errors += TestCompoundDatatype();
- num_errors += TestGetPacket();
+ num_errors += TestGetPacket();
- num_errors += TestGetNext();
+ num_errors += TestGetNext();
- num_errors += TestCompress();
+ num_errors += TestCompress();
- num_errors += TestErrors();
+ num_errors += TestErrors();
- num_errors += SystemTest();
+ num_errors += SystemTest();
-#ifdef VLPT_REMOVED
- num_errors += VariableLengthTest();
-#endif /* VLPT_REMOVED */
+ /* Test data corruption in packed structs */
+ num_errors += TestHDFFV_9758();
/* Terminate access to the file. */
err = H5Fclose(fileID);
@@ -552,7 +551,6 @@ int SystemTest()
return 0;
error:
-
H5E_BEGIN_TRY {
H5Tclose(dtypeID1);
H5Tclose(dtypeID2);
@@ -562,73 +560,136 @@ error:
return 1;
}
-#ifdef VLPT_REMOVED
-int VariableLengthTest(void)
+/*-------------------------------------------------------------------------
+ * TestHDFFV_9758(): Test that a packet table with compound datatype which
+ * contains string type can be created and written correctly. (HDFFV-9758)
+ *
+ * Notes:
+ * Previously, data of the field that follows the string was read back
+ * as garbage when #pragma pack(1) is used.
+ * 2016/10/20 -BMR
+ * Updated:
+ * #pragma pack(1) caused failure on Emu because Sparc cannot
+ * access misaligned data. Changed it to pack() to do the
+ * default alignment.
+ * 2016/10/25 -BMR
+ *-------------------------------------------------------------------------
+ */
+#pragma pack() // default alignment
+const char* ABHI_PT("/abhiTest");
+const hsize_t NUM_PACKETS = 5;
+const int STRING_LENGTH = 19; // including terminating NULL
+int TestHDFFV_9758()
{
- long test_long;
- short test_short;
- hvl_t read_buf;
- VL_PacketTable* test_VLPT;
- PacketTable* new_pt;
-
- TESTING("variable-length packet tables")
-
- /* Create a variable length table */
- test_VLPT = new VL_PacketTable(fileID, "/VariableLengthTest", 1);
-
- /* Verify that the creation succeeded */
- if(! test_VLPT->IsValid())
- goto error;
-
- /* Append some packets */
- test_short = 9;
- test_VLPT->AppendPacket(&test_short, sizeof(short));
- test_long = 16;
- test_VLPT->AppendPacket(&test_long, sizeof(long));
-
- /* Read them back and make sure they are correct */
- test_VLPT->GetNextPackets(1, &read_buf);
-
- if(read_buf.len != sizeof(short))
- goto error;
- if(*(short *)(read_buf.p) != test_short)
- goto error;
-
- /* Free the memory used by the read */
- test_VLPT->FreeReadbuff(1, &read_buf);
-
- /* Read the second record */
- test_VLPT->GetNextPackets(1, &read_buf);
-
- if(read_buf.len != sizeof(long))
- goto error;
- if(*(long *)(read_buf.p) != test_long)
- goto error;
-
- /* Free the memory used by the read */
- test_VLPT->FreeReadbuff(1, &read_buf);
-
- /* Close the packet table */
- delete test_VLPT;
+ hid_t strtype;
+ hid_t compound_type;
+ herr_t err;
+ struct s1_t
+ {
+ int a;
+ float b;
+ double c;
+ char d[STRING_LENGTH]; // null terminated string
+ int e;
+ };
- /* Reopen the packet table and verify that it is variable length */
- new_pt = new PacketTable(fileID, "/VariableLengthTest");
+ s1_t s1[NUM_PACKETS];
+
+ for (hsize_t i = 0; i < NUM_PACKETS; i++)
+ {
+ s1[i].a = i;
+ s1[i].b = 1.f * static_cast<float>(i * i);
+ s1[i].c = 1. / (i + 1);
+ sprintf(s1[i].d, "string%d", (int)i);
+ s1[i].e = 100+i;
+ }
- /* Verify that the open succeeded */
- if(! new_pt->IsValid())
- goto error;
+ TESTING("data corruption in packed structs (HDFFV-9758)")
+
+ // Build a compound datatype
+ compound_type = H5Tcreate(H5T_COMPOUND, sizeof(s1_t));
+ if (compound_type < 0)
+ goto error;
+
+ err = H5Tinsert(compound_type, "a_name", HOFFSET(s1_t, a), H5T_NATIVE_INT);
+ if (err < 0)
+ goto error;
+ err = H5Tinsert(compound_type, "b_name", HOFFSET(s1_t, b), H5T_NATIVE_FLOAT);
+ if (err < 0)
+ goto error;
+ err = H5Tinsert(compound_type, "c_name", HOFFSET(s1_t, c), H5T_NATIVE_DOUBLE);
+ if (err < 0)
+ goto error;
+
+ strtype = H5Tcopy (H5T_C_S1);
+ if (compound_type < 0)
+ goto error;
+ err = H5Tset_size (strtype, STRING_LENGTH); /* create string */
+ if (err < 0)
+ goto error;
+ err = H5Tinsert(compound_type, "d_name", HOFFSET(s1_t, d), strtype);
+ if (err < 0)
+ goto error;
+ err = H5Tinsert(compound_type, "e_name", HOFFSET(s1_t, e), H5T_NATIVE_INT);
+ if (err < 0)
+ goto error;
+
+ { // so ptable will go out of scope before PASSED
+
+ // Create a packet table
+ FL_PacketTable ptable(fileID, "/examplePacketTable", compound_type, 1);
+ if (!ptable.IsValid())
+ goto error;
+
+ // Add packets to the table
+ for (size_t i = 0; i < NUM_PACKETS; i++)
+ {
+ /* Appends one packet at the current position */
+ err = ptable.AppendPacket(s1 + i);
+ if (err < 0) goto error;
+ }
- if(new_pt->IsVariableLength() != 1)
- goto error;
+ // Check packet count
+ const hsize_t count = ptable.GetPacketCount(err);
+ if (err < 0)
+ goto error;
+
+ if (count != NUM_PACKETS)
+ {
+ std::cerr
+ << "Number of packets in packet table should be " << NUM_PACKETS
+ << " but is " << count << endl;
+ }
- /* Close the packet table */
- delete new_pt;
+ // Read and verify the data
+ ptable.ResetIndex();
+ for (size_t i = 0; i < NUM_PACKETS; i++)
+ {
+ s1_t s2;
+ memset(&s2, 0, sizeof(s1_t));
+ err = ptable.GetNextPacket(&s2);
+ if (err < 0)
+ goto error;
+
+ if (s2.a != s1[i].a || s2.e != s1[i].e)
+ goto error;
+ else if (HDstrcmp(s2.d, s1[i].d))
+ goto error;
+ }
+ } // end of ptable block
PASSED();
return 0;
error:
+
+ H5E_BEGIN_TRY {
+ H5Tclose(strtype);
+ H5Tclose(compound_type);
+ H5Fclose(fileID);
+ } H5E_END_TRY;
+
H5_FAILED();
return 1;
}
-#endif /* VLPT_REMOVED */
+
diff --git a/hl/c++/test/ptableTest.h b/hl/c++/test/ptableTest.h
index d351e34..60b55ca 100644
--- a/hl/c++/test/ptableTest.h
+++ b/hl/c++/test/ptableTest.h
@@ -52,7 +52,8 @@ int TestGetPacket(void);
Test for unusual interactions between multiple packet tables. */
int SystemTest(void);
-/* Test the variable length dataset functionality */
-int VariableLengthTest(void);
+/* Create a packet table with compound type, which has a string type. Verify
+ that data was written and read correctly. */
+int TestHDFFV_9758(void);
#endif /* PTABLETEST */
diff --git a/hl/src/H5PT.c b/hl/src/H5PT.c
index 647cbe8..5f0f94f 100644
--- a/hl/src/H5PT.c
+++ b/hl/src/H5PT.c
@@ -141,7 +141,9 @@ hid_t H5PTcreate(hid_t loc_id,
if(H5Pclose(plistcopy_id) < 0)
goto error;
- if((table->type_id = H5Tget_native_type(dtype_id, H5T_DIR_DEFAULT)) < 0)
+ /* Make a copy of caller's datatype and save it in the table structure.
+ It will be closed when the table is closed */
+ if((table->type_id = H5Tcopy(dtype_id)) < 0)
goto error;
H5PT_create_index(table);
@@ -259,12 +261,11 @@ hid_t H5PTcreate_fl ( hid_t loc_id,
if(H5Pclose(plist_id) < 0)
goto error;
+ /* Make a copy of caller's datatype and save it in the table structure.
+ It will be closed when the table is closed */
if((table->type_id = H5Tcopy(dtype_id)) < 0)
goto error;
- if((table->type_id = H5Tget_native_type(table->type_id, H5T_DIR_DEFAULT)) < 0)
- goto error;
-
H5PT_create_index(table);
table->size = 0;
@@ -352,8 +353,9 @@ hid_t H5PTopen( hid_t loc_id,
if((type_id = H5Dget_type(table->dset_id)) < 0)
goto error;
- /* Get the table's native datatype */
- if((table->type_id = H5Tget_native_type(type_id, H5T_DIR_ASCEND)) < 0)
+ /* Make a copy of the datatype obtained and save it in the table structure.
+ It will be closed when the table is closed */
+ if((table->type_id = H5Tcopy(type_id)) < 0)
goto error;
/* Close the disk datatype */
diff --git a/hl/test/test_packet.c b/hl/test/test_packet.c
index e2ca2b5..f577947 100644
--- a/hl/test/test_packet.c
+++ b/hl/test/test_packet.c
@@ -95,8 +95,10 @@ make_particle_type(void)
return FAIL;
/* Insert fields. */
- string_type = H5Tcopy( H5T_C_S1 );
- H5Tset_size( string_type, (size_t)16 );
+ if ((string_type = H5Tcopy(H5T_C_S1)) < 0)
+ return FAIL;
+ if (H5Tset_size(string_type, (size_t)16) < 0)
+ return FAIL;
if ( H5Tinsert(type_id, "Name", HOFFSET(particle_t, name) , string_type ) < 0 )
return FAIL;
@@ -133,8 +135,10 @@ static int create_hl_table(hid_t fid)
herr_t status;
/* Initialize the field field_type */
- string_type = H5Tcopy( H5T_C_S1 );
- H5Tset_size( string_type, (size_t)16 );
+ if ((string_type = H5Tcopy(H5T_C_S1)) < 0)
+ return FAIL;
+ if (H5Tset_size(string_type, (size_t)16) < 0)
+ return FAIL;
field_type[0] = string_type;
field_type[1] = H5T_NATIVE_INT;
field_type[2] = H5T_NATIVE_INT;
@@ -152,12 +156,14 @@ static int create_hl_table(hid_t fid)
field_names, part_offset, field_type,
chunk_size, fill_data, compress, testPart );
-if(status<0)
- return FAIL;
-else
- return SUCCEED;
-}
+ if (H5Tclose(string_type) < 0)
+ return FAIL;
+ if(status<0)
+ return FAIL;
+ else
+ return SUCCEED;
+}
/*-------------------------------------------------------------------------
@@ -183,7 +189,8 @@ static int test_create_close(hid_t fid)
/* Create the table */
table = H5PTcreate_fl(fid, PT_NAME, part_t, (hsize_t)100, -1);
- H5Tclose(part_t);
+ if (H5Tclose(part_t) < 0)
+ goto error;
if( H5PTis_valid(table) < 0)
goto error;
if( H5PTis_varlen(table) != 0)
@@ -248,7 +255,7 @@ static int test_append(hid_t fid)
{
herr_t err;
hid_t table;
- hsize_t count;
+ hsize_t count = 0;
TESTING("H5PTappend");
@@ -458,7 +465,8 @@ static int test_big_table(hid_t fid)
/* Create a new table */
table = H5PTcreate_fl(fid, "Packet Test Dataset2", part_t, (hsize_t)33, -1);
- H5Tclose(part_t);
+ if (H5Tclose(part_t) < 0)
+ goto error;
if( H5PTis_valid(table) < 0)
goto error;
@@ -536,7 +544,8 @@ static int test_opaque(hid_t fid)
/* Create a new table */
table = H5PTcreate_fl(fid, "Packet Test Dataset3", part_t, (hsize_t)100, -1);
- H5Tclose(part_t);
+ if( H5Tclose(part_t) < 0)
+ goto error;
if( H5PTis_valid(table) < 0)
goto error;
@@ -743,9 +752,9 @@ static int test_rw_nonnative_dt(hid_t fid)
/* Create a fixed-length packet table within the file */
/* This table's "packets" will be simple integers and it will use no compression */
if(H5Tget_order(H5T_NATIVE_INT) == H5T_ORDER_LE) {
- ptable = H5PTcreate_fl(fid, "Packet Test Dataset, Non-native", H5T_STD_I32BE, (hsize_t)100, -1);
+ ptable = H5PTcreate(fid, "Packet Test Dataset, Non-native", H5T_STD_I32BE, (hsize_t)100, H5P_DEFAULT);
} else {
- ptable = H5PTcreate_fl(fid, "Packet Test Dataset, Non-native", H5T_STD_I32LE, (hsize_t)100, -1);
+ ptable = H5PTcreate(fid, "Packet Test Dataset, Non-native", H5T_STD_I32LE, (hsize_t)100, H5P_DEFAULT);
}
if(ptable == H5I_INVALID_HID)
goto error;
@@ -973,7 +982,8 @@ int main(void)
status = 1;
/* Close the file */
- H5Fclose(fid);
+ if (H5Fclose(fid) < 0)
+ status = 1;
return status;
}
diff --git a/hl/test/test_packet_vlen.c b/hl/test/test_packet_vlen.c
index f1e4e00..b152a2c 100644
--- a/hl/test/test_packet_vlen.c
+++ b/hl/test/test_packet_vlen.c
@@ -28,7 +28,6 @@
#define PT_COMP_VLEN "Dataset with Compound Type of VL types"
#define PT_VLEN_VLEN "Dataset with VL of VL types"
#define PT_FIXED_LEN "Fixed-length Packet Table"
-#define SPACE3_RANK 1
#define L1_INCM 16
#define L2_INCM 8
#define NAME_BUF_SIZE 80
@@ -149,6 +148,7 @@ static int test_VLof_atomic(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vltype > 0) H5Tclose(vltype);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -228,7 +228,9 @@ static int test_VLof_comptype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release the datatypes */
+ if (H5Tclose(cmptype) < 0)
+ goto error;
if (H5Tclose(vltype) < 0)
goto error;
@@ -286,6 +288,8 @@ static int test_VLof_comptype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (cmptype > 0) H5Tclose(cmptype);
+ if (vltype > 0) H5Tclose(vltype);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -311,13 +315,11 @@ static int test_compound_VL_VLtype(void)
hvl_t v;
} compVLVL_t;
hid_t fid=H5I_INVALID_HID; /* Test file identifier */
- hid_t space=H5I_INVALID_HID; /* Dataspace identifier */
hid_t ptable=H5I_INVALID_HID; /* Packet table identifier */
hid_t vlatomic=H5I_INVALID_HID; /* Variable length datatype */
hid_t vlofvl=H5I_INVALID_HID; /* Variable length datatype */
hid_t comp_vlvl=H5I_INVALID_HID; /* ID of a compound datatype containing
a VL of VL of atomic datatype */
- hsize_t dims1[] = {NRECORDS};
hsize_t count; /* Number of records in the table */
compVLVL_t writeBuf[NRECORDS];/* Buffer to hold data to be written */
compVLVL_t readBuf[NRECORDS]; /* Buffer to hold read data */
@@ -356,11 +358,6 @@ static int test_compound_VL_VLtype(void)
if (fid < 0)
goto error;
- /* Create dataspace for datasets */
- space = H5Screate_simple(SPACE3_RANK, dims1, NULL);
- if (space < 0)
- goto error;
-
/* Create a VL datatype of an atomic type */
vlatomic = H5Tvlen_create (H5T_NATIVE_UINT);
if (vlatomic < 0)
@@ -394,7 +391,11 @@ static int test_compound_VL_VLtype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release datatypes */
+ if (H5Tclose(vlatomic) < 0)
+ goto error;
+ if (H5Tclose(vlofvl) < 0)
+ goto error;
if (H5Tclose(comp_vlvl) < 0)
goto error;
@@ -459,12 +460,6 @@ static int test_compound_VL_VLtype(void)
if (ret < 0)
goto error;
- /* Release datatypes */
- if (H5Tclose(vlatomic) < 0)
- goto error;
- if (H5Tclose(vlofvl) < 0)
- goto error;
-
/* Close the file */
if (H5Fclose(fid) < 0)
goto error;
@@ -473,6 +468,9 @@ static int test_compound_VL_VLtype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vlatomic > 0) H5Tclose(vlatomic);
+ if (vlofvl > 0) H5Tclose(vlofvl);
+ if (comp_vlvl > 0) H5Tclose(comp_vlvl);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -547,7 +545,9 @@ static int test_VLof_VLtype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release datatypes */
+ if (H5Tclose(vlatomic) < 0)
+ goto error;
if (H5Tclose(vlofvl) < 0)
goto error;
@@ -590,6 +590,8 @@ static int test_VLof_VLtype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vlatomic > 0) H5Tclose(vlatomic);
+ if (vlofvl > 0) H5Tclose(vlofvl);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -771,6 +773,10 @@ static int adding_attribute(hid_t fid, const char *table_name, const char *attr_
if (H5Aclose(attr_id) < 0)
goto error;
+ /* Close the dataspace */
+ if (H5Sclose(space_id) < 0)
+ goto error;
+
/* Close the packet table */
if (H5PTclose(ptable) < 0)
goto error;
@@ -778,6 +784,8 @@ static int adding_attribute(hid_t fid, const char *table_name, const char *attr_
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (attr_id > 0) H5Aclose(attr_id);
+ if (space_id > 0) H5Sclose(space_id);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
return ret;
} /* adding_attribute */
@@ -792,19 +800,12 @@ error: /* An error has occurred. Clean up and exit. */
static herr_t verify_attribute(hid_t fid, const char *table_name, const char *attr_name)
{
hid_t ptable=H5I_INVALID_HID; /* Packet table identifier */
- hid_t space_id=H5I_INVALID_HID; /* Dataspace for the attribute */
hid_t attr_id=H5I_INVALID_HID; /* Attribute identifier */
hid_t dset_id=H5I_INVALID_HID; /* Dataset associated with the pt */
- hsize_t dims[] = {ATTR_DIM}; /* Dimensions for dataspace */
int read_data[ATTR_DIM]; /* Output buffer */
int ii;
herr_t ret = FAIL; /* Returned status from a callee */
- /* Create dataspace for attribute */
- space_id = H5Screate_simple(ATTR_RANK, dims, NULL);
- if (space_id < 0)
- goto error;
-
/* Open the named packet table */
ptable = H5PTopen(fid, table_name);
if (ptable < 0)
@@ -907,7 +908,7 @@ static int test_attributes(void)
return(ret);
error: /* An error has occurred. Clean up and exit. */
- H5Fclose(fid);
+ if (fid > 0) H5Fclose(fid);
H5_FAILED();
return FAIL;
} /* test_attributes */
@@ -929,9 +930,8 @@ error: /* An error has occurred. Clean up and exit. */
* 2016/01/27 -BMR
*-------------------------------------------------------------------------
*/
-static herr_t verify_accessors(const char *table_name, herr_t expected_value)
+static herr_t verify_accessors(hid_t fid, const char *table_name, herr_t expected_value)
{
- hid_t fid=H5I_INVALID_HID; /* File identifier */
hid_t ptable=H5I_INVALID_HID; /* Packet table identifier */
hid_t dset_id=H5I_INVALID_HID; /* Dataset associated with the pt */
hid_t dtype_id=H5I_INVALID_HID; /* Dataset identifier */
@@ -940,11 +940,6 @@ static herr_t verify_accessors(const char *table_name, herr_t expected_value)
herr_t is_varlen = 0;
herr_t ret = FAIL; /* Returned status from a callee */
- /* Open the file. */
- fid = H5Fopen(TEST_FILE_NAME, H5F_ACC_RDWR, H5P_DEFAULT);
- if (fid < 0)
- goto error;
-
/* Open the named packet table. */
ptable = H5PTopen(fid, table_name);
if (ptable < 0)
@@ -993,7 +988,8 @@ static herr_t verify_accessors(const char *table_name, herr_t expected_value)
error: /* An error has occurred. Clean up and exit. */
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
- return ret;
+ H5_FAILED();
+ return FAIL;
} /* verify_accessors */
/*-------------------------------------------------------------------------
@@ -1009,7 +1005,6 @@ error: /* An error has occurred. Clean up and exit. */
static int test_accessors(void)
{
hid_t fid=H5I_INVALID_HID; /* File identifier */
- hid_t ptable=H5I_INVALID_HID; /* File identifier */
herr_t ret = FAIL; /* Returned status from a callee */
TESTING("accessor functions");
@@ -1019,11 +1014,11 @@ static int test_accessors(void)
if (fid < 0)
goto error;
- ret = verify_accessors(PT_VLEN_ATOMIC, TRUE);
+ ret = verify_accessors(fid, PT_VLEN_ATOMIC, TRUE);
if (ret < 0)
goto error;
- ret = verify_accessors(PT_FIXED_LEN, FALSE);
+ ret = verify_accessors(fid, PT_FIXED_LEN, FALSE);
if (ret < 0)
goto error;
@@ -1035,7 +1030,6 @@ static int test_accessors(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
- if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5_FAILED();
return FAIL;
@@ -1150,6 +1144,7 @@ static int testfl_VLof_atomic(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vltype > 0) H5Tclose(vltype);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -1229,7 +1224,9 @@ static int testfl_VLof_comptype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release the datatypes */
+ if (H5Tclose(cmptype) < 0)
+ goto error;
if (H5Tclose(vltype) < 0)
goto error;
@@ -1287,6 +1284,8 @@ static int testfl_VLof_comptype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (cmptype > 0) H5Tclose(cmptype);
+ if (vltype > 0) H5Tclose(vltype);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -1312,13 +1311,11 @@ static int testfl_compound_VL_VLtype(void)
hvl_t v;
} compVLVL_t;
hid_t fid=H5I_INVALID_HID; /* Test file identifier */
- hid_t space=H5I_INVALID_HID; /* Dataspace identifier */
hid_t ptable=H5I_INVALID_HID; /* Packet table identifier */
hid_t vlatomic=H5I_INVALID_HID; /* Variable length datatype */
hid_t vlofvl=H5I_INVALID_HID; /* Variable length datatype */
hid_t comp_vlvl=H5I_INVALID_HID; /* ID of a compound datatype containing
a VL of VL of atomic datatype */
- hsize_t dims1[] = {NRECORDS};
hsize_t count; /* Number of records in the table */
compVLVL_t writeBuf[NRECORDS];/* Buffer to hold data to be written */
compVLVL_t readBuf[NRECORDS]; /* Buffer to hold read data */
@@ -1357,11 +1354,6 @@ static int testfl_compound_VL_VLtype(void)
if (fid < 0)
goto error;
- /* Create dataspace for datasets */
- space = H5Screate_simple(SPACE3_RANK, dims1, NULL);
- if (space < 0)
- goto error;
-
/* Create a VL datatype of an atomic type */
vlatomic = H5Tvlen_create (H5T_NATIVE_UINT);
if (vlatomic < 0)
@@ -1395,7 +1387,11 @@ static int testfl_compound_VL_VLtype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release datatypes */
+ if (H5Tclose(vlatomic) < 0)
+ goto error;
+ if (H5Tclose(vlofvl) < 0)
+ goto error;
if (H5Tclose(comp_vlvl) < 0)
goto error;
@@ -1460,12 +1456,6 @@ static int testfl_compound_VL_VLtype(void)
if (ret < 0)
goto error;
- /* Release datatypes */
- if (H5Tclose(vlatomic) < 0)
- goto error;
- if (H5Tclose(vlofvl) < 0)
- goto error;
-
/* Close the file */
if (H5Fclose(fid) < 0)
goto error;
@@ -1474,6 +1464,9 @@ static int testfl_compound_VL_VLtype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vlatomic > 0) H5Tclose(vlatomic);
+ if (vlofvl > 0) H5Tclose(vlofvl);
+ if (comp_vlvl > 0) H5Tclose(comp_vlvl);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -1548,7 +1541,9 @@ static int testfl_VLof_VLtype(void)
if (ptable == H5I_INVALID_HID)
goto error;
- /* Close the vlen datatype */
+ /* Release datatypes */
+ if (H5Tclose(vlatomic) < 0)
+ goto error;
if (H5Tclose(vlofvl) < 0)
goto error;
@@ -1591,6 +1586,8 @@ static int testfl_VLof_VLtype(void)
return SUCCEED;
error: /* An error has occurred. Clean up and exit. */
+ if (vlatomic > 0) H5Tclose(vlatomic);
+ if (vlofvl > 0) H5Tclose(vlofvl);
if (H5PTis_valid(ptable) > 0) H5PTclose(ptable);
if (fid > 0) H5Fclose(fid);
H5PTfree_vlen_buff(ptable, NRECORDS, readBuf);
@@ -1654,7 +1651,6 @@ int test_packet_table_with_varlen(void)
if (test_accessors() < 0)
status = FAIL;
-
/**************************************************************************
Calling test functions for deprecated function H5PTcreate_fl
Mar 2016, -BMR
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 94b2d11..3f03c87 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -44,6 +44,7 @@ IDE_GENERATED_PROPERTIES ("H5A" "${H5A_HDRS}" "${H5A_SOURCES}" )
set (H5AC_SOURCES
${HDF5_SRC_DIR}/H5AC.c
+ ${HDF5_SRC_DIR}/H5ACdbg.c
${HDF5_SRC_DIR}/H5ACmpio.c
)
@@ -83,6 +84,7 @@ IDE_GENERATED_PROPERTIES ("H5B2" "${H5B2_HDRS}" "${H5B2_SOURCES}" )
set (H5C_SOURCES
${HDF5_SRC_DIR}/H5C.c
+ ${HDF5_SRC_DIR}/H5Cdbg.c
${HDF5_SRC_DIR}/H5Cepoch.c
${HDF5_SRC_DIR}/H5Cmpio.c
${HDF5_SRC_DIR}/H5Cquery.c
diff --git a/src/H5AC.c b/src/H5AC.c
index 4dac680..c3c4dd3 100644
--- a/src/H5AC.c
+++ b/src/H5AC.c
@@ -1505,70 +1505,6 @@ done:
FUNC_LEAVE_NOAPI(ret_value)
} /* H5AC_unprotect() */
-#ifndef NDEBUG /* debugging functions */
-
-/*-------------------------------------------------------------------------
- * Function: H5AC_stats
- *
- * Purpose: Prints statistics about the cache.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: Robb Matzke
- * Thursday, October 30, 1997
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5AC_stats(const H5F_t *f)
-{
- FUNC_ENTER_NOAPI_NOINIT_NOERR
-
- /* Sanity checks */
- HDassert(f);
- HDassert(f->shared);
- HDassert(f->shared->cache);
-
- /* at present, this can't fail */
- (void)H5C_stats(f->shared->cache, H5F_OPEN_NAME(f), FALSE);
-
- FUNC_LEAVE_NOAPI(SUCCEED)
-} /* H5AC_stats() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5AC_dump_cache
- *
- * Purpose: Dumps a summary of the contents of the metadata cache
- * to stdout.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * Sunday, October 10, 2010
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5AC_dump_cache(const H5F_t *f)
-{
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_NOAPI(FAIL)
-
- /* Sanity checks */
- HDassert(f);
- HDassert(f->shared);
- HDassert(f->shared->cache);
-
- if(H5C_dump_cache(f->shared->cache, H5F_OPEN_NAME(f)) < 0)
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_dump_cache() failed.")
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-} /* H5AC_dump_cache() */
-#endif /* NDEBUG */
-
/*-------------------------------------------------------------------------
* Function: H5AC_get_cache_auto_resize_config
@@ -1964,121 +1900,6 @@ done:
} /* H5AC_validate_config() */
-/*-------------------------------------------------------------------------
- * Function: H5AC__close_trace_file()
- *
- * Purpose: If a trace file is open, stop logging calls to the cache,
- * and close the file.
- *
- * Note that the function does nothing if there is no trace
- * file.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 6/2/06
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5AC__close_trace_file(H5AC_t *cache_ptr)
-{
- FILE * trace_file_ptr = NULL;
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_STATIC
-
- if(cache_ptr == NULL)
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "NULL cache_ptr on entry.")
-
- if(NULL == (trace_file_ptr = H5C_get_trace_file_ptr(cache_ptr)))
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_get_trace_file_ptr() failed.")
-
- if(trace_file_ptr != NULL) {
- if(H5C_set_trace_file_ptr(cache_ptr, NULL) < 0)
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_set_trace_file_ptr() failed.")
-
- if(HDfclose(trace_file_ptr) != 0)
- HGOTO_ERROR(H5E_FILE, H5E_CANTCLOSEFILE, FAIL, "can't close metadata cache trace file")
- } /* end if */
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-} /* H5AC__close_trace_file() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5AC__open_trace_file()
- *
- * Purpose: Open a trace file, and start logging calls to the cache.
- *
- * This logging is done at the H5C level, and will only take
- * place if H5C_TRACE_FILE_ENABLED (defined in H5Cprivate.h)
- * is TRUE.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 6/1/06
- *
- *-------------------------------------------------------------------------
- */
-static herr_t
-H5AC__open_trace_file(H5AC_t *cache_ptr, const char *trace_file_name)
-{
- char file_name[H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 2];
- FILE * file_ptr = NULL;
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_STATIC
-
- HDassert(cache_ptr);
-
- /* Check args */
- if(cache_ptr == NULL)
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "cache_ptr NULL on entry.")
- if(trace_file_name == NULL)
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "NULL trace_file_name on entry.")
- if(HDstrlen(trace_file_name) > H5AC__MAX_TRACE_FILE_NAME_LEN)
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "trace file name too long.")
- if(NULL != (file_ptr = H5C_get_trace_file_ptr(cache_ptr)))
- HGOTO_ERROR(H5E_CACHE, H5E_FILEOPEN, FAIL, "trace file already open.")
-
-#ifdef H5_HAVE_PARALLEL
-{
- H5AC_aux_t * aux_ptr;
-
- aux_ptr = (H5AC_aux_t *)H5C_get_aux_ptr(cache_ptr);
- if(aux_ptr == NULL)
- sprintf(file_name, "%s", trace_file_name);
- else {
- if(aux_ptr->magic != H5AC__H5AC_AUX_T_MAGIC)
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad aux_ptr->magic.")
-
- sprintf(file_name, "%s.%d", trace_file_name, aux_ptr->mpi_rank);
- } /* end else */
-
- if(HDstrlen(file_name) > H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 1)
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "cooked trace file name too long.")
-}
-#else /* H5_HAVE_PARALLEL */
- HDsnprintf(file_name, (size_t)(H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 1),
- "%s", trace_file_name);
-#endif /* H5_HAVE_PARALLEL */
-
- if((file_ptr = HDfopen(file_name, "w")) == NULL)
- HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, FAIL, "trace file open failed.")
-
- HDfprintf(file_ptr, "### HDF5 metadata cache trace file version 1 ###\n");
-
- if(H5C_set_trace_file_ptr(cache_ptr, file_ptr) < 0)
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_set_trace_file_ptr() failed.")
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-} /* H5AC__open_trace_file() */
-
-
/*************************************************************************/
/**************************** Private Functions: *************************/
/*************************************************************************/
diff --git a/src/H5ACdbg.c b/src/H5ACdbg.c
new file mode 100644
index 0000000..3830606
--- /dev/null
+++ b/src/H5ACdbg.c
@@ -0,0 +1,253 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * 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 files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+/*-------------------------------------------------------------------------
+ *
+ * Created: H5ACdbg.c
+ *
+ * Purpose: Functions for debugging the metadata cache
+ *
+ *-------------------------------------------------------------------------
+ */
+
+/****************/
+/* Module Setup */
+/****************/
+#include "H5ACmodule.h" /* This source code file is part of the H5AC module */
+#define H5F_FRIEND /* Suppress error about including H5Fpkg */
+
+/***********/
+/* Headers */
+/***********/
+#include "H5private.h" /* Generic Functions */
+#include "H5ACpkg.h" /* Metadata cache */
+#include "H5Eprivate.h" /* Error handling */
+#include "H5Fpkg.h" /* Files */
+
+
+/****************/
+/* Local Macros */
+/****************/
+
+
+/******************/
+/* Local Typedefs */
+/******************/
+
+
+/********************/
+/* Package Typedefs */
+/********************/
+
+
+/********************/
+/* Local Prototypes */
+/********************/
+
+
+/*********************/
+/* Package Variables */
+/*********************/
+
+
+/*****************************/
+/* Library Private Variables */
+/*****************************/
+
+
+/*******************/
+/* Local Variables */
+/*******************/
+
+
+#ifndef NDEBUG /* debugging functions */
+
+/*-------------------------------------------------------------------------
+ * Function: H5AC_stats
+ *
+ * Purpose: Prints statistics about the cache.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: Robb Matzke
+ * Thursday, October 30, 1997
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5AC_stats(const H5F_t *f)
+{
+ FUNC_ENTER_NOAPI_NOINIT_NOERR
+
+ /* Sanity checks */
+ HDassert(f);
+ HDassert(f->shared);
+ HDassert(f->shared->cache);
+
+ /* at present, this can't fail */
+ (void)H5C_stats(f->shared->cache, H5F_OPEN_NAME(f), FALSE);
+
+ FUNC_LEAVE_NOAPI(SUCCEED)
+} /* H5AC_stats() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5AC_dump_cache
+ *
+ * Purpose: Dumps a summary of the contents of the metadata cache
+ * to stdout.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * Sunday, October 10, 2010
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5AC_dump_cache(const H5F_t *f)
+{
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ /* Sanity checks */
+ HDassert(f);
+ HDassert(f->shared);
+ HDassert(f->shared->cache);
+
+ if(H5C_dump_cache(f->shared->cache, H5F_OPEN_NAME(f)) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_dump_cache() failed.")
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5AC_dump_cache() */
+#endif /* NDEBUG */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5AC__close_trace_file()
+ *
+ * Purpose: If a trace file is open, stop logging calls to the cache,
+ * and close the file.
+ *
+ * Note that the function does nothing if there is no trace
+ * file.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 6/2/06
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5AC__close_trace_file(H5AC_t *cache_ptr)
+{
+ FILE * trace_file_ptr;
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_PACKAGE
+
+ if(cache_ptr == NULL)
+ HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "NULL cache_ptr on entry.")
+
+ if(NULL == (trace_file_ptr = H5C_get_trace_file_ptr(cache_ptr)))
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_get_trace_file_ptr() failed.")
+
+ if(trace_file_ptr != NULL) {
+ if(H5C_set_trace_file_ptr(cache_ptr, NULL) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_set_trace_file_ptr() failed.")
+
+ if(HDfclose(trace_file_ptr) != 0)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTCLOSEFILE, FAIL, "can't close metadata cache trace file")
+ } /* end if */
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5AC__close_trace_file() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5AC__open_trace_file()
+ *
+ * Purpose: Open a trace file, and start logging calls to the cache.
+ *
+ * This logging is done at the H5C level, and will only take
+ * place if H5C_TRACE_FILE_ENABLED (defined in H5Cprivate.h)
+ * is TRUE.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 6/1/06
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5AC__open_trace_file(H5AC_t *cache_ptr, const char *trace_file_name)
+{
+ char file_name[H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 2];
+ FILE * file_ptr;
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_PACKAGE
+
+ HDassert(cache_ptr);
+
+ /* Check args */
+ if(cache_ptr == NULL)
+ HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "cache_ptr NULL on entry.")
+ if(trace_file_name == NULL)
+ HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "NULL trace_file_name on entry.")
+ if(HDstrlen(trace_file_name) > H5AC__MAX_TRACE_FILE_NAME_LEN)
+ HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "trace file name too long.")
+ if(NULL != (file_ptr = H5C_get_trace_file_ptr(cache_ptr)))
+ HGOTO_ERROR(H5E_CACHE, H5E_FILEOPEN, FAIL, "trace file already open.")
+
+#ifdef H5_HAVE_PARALLEL
+{
+ H5AC_aux_t * aux_ptr;
+
+ aux_ptr = (H5AC_aux_t *)H5C_get_aux_ptr(cache_ptr);
+ if(aux_ptr == NULL)
+ sprintf(file_name, "%s", trace_file_name);
+ else {
+ if(aux_ptr->magic != H5AC__H5AC_AUX_T_MAGIC)
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad aux_ptr->magic.")
+
+ sprintf(file_name, "%s.%d", trace_file_name, aux_ptr->mpi_rank);
+ } /* end else */
+
+ if(HDstrlen(file_name) > H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 1)
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "cooked trace file name too long.")
+}
+#else /* H5_HAVE_PARALLEL */
+ HDsnprintf(file_name, (size_t)(H5AC__MAX_TRACE_FILE_NAME_LEN + H5C__PREFIX_LEN + 1),
+ "%s", trace_file_name);
+#endif /* H5_HAVE_PARALLEL */
+
+ if((file_ptr = HDfopen(file_name, "w")) == NULL)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, FAIL, "trace file open failed.")
+
+ HDfprintf(file_ptr, "### HDF5 metadata cache trace file version 1 ###\n");
+
+ if(H5C_set_trace_file_ptr(cache_ptr, file_ptr) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "H5C_set_trace_file_ptr() failed.")
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5AC__open_trace_file() */
+
diff --git a/src/H5C.c b/src/H5C.c
index 66e3e25..58b5ea3 100644
--- a/src/H5C.c
+++ b/src/H5C.c
@@ -189,11 +189,6 @@ static void H5C__assert_flush_dep_nocycle(const H5C_cache_entry_t * entry,
const H5C_cache_entry_t * base_entry);
#endif /* NDEBUG */
-#if 0 /* debugging routines */
-herr_t H5C_dump_cache(H5C_t * cache_ptr, const char * cache_name);
-herr_t H5C_dump_cache_skip_list(H5C_t * cache_ptr, char * calling_fcn);
-#endif /* debugging routines */
-
/*********************/
/* Package Variables */
@@ -2907,922 +2902,6 @@ done:
/*-------------------------------------------------------------------------
- * Function: H5C_set_prefix
- *
- * Purpose: Set the values of the prefix field of H5C_t. This
- * filed is used to label some debugging output.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 1/20/06
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5C_set_prefix(H5C_t * cache_ptr, char * prefix)
-{
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_NOAPI(FAIL)
-
- if ( ( cache_ptr == NULL ) ||
- ( cache_ptr->magic != H5C__H5C_T_MAGIC ) ||
- ( prefix == NULL ) ||
- ( HDstrlen(prefix) >= H5C__PREFIX_LEN ) ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad param(s) on entry.")
- }
-
- HDstrncpy(&(cache_ptr->prefix[0]), prefix, (size_t)(H5C__PREFIX_LEN));
-
- cache_ptr->prefix[H5C__PREFIX_LEN - 1] = '\0';
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-} /* H5C_set_prefix() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5C_set_trace_file_ptr
- *
- * Purpose: Set the trace_file_ptr field for the cache.
- *
- * This field must either be NULL (which turns of trace
- * file logging), or be a pointer to an open file to which
- * trace file data is to be written.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 1/20/06
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5C_set_trace_file_ptr(H5C_t * cache_ptr,
- FILE * trace_file_ptr)
-{
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_NOAPI(FAIL)
-
- /* This would normally be an assert, but we need to use an HGOTO_ERROR
- * call to shut up the compiler.
- */
- if ( ( ! cache_ptr ) || ( cache_ptr->magic != H5C__H5C_T_MAGIC ) ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad cache_ptr")
- }
-
- cache_ptr->trace_file_ptr = trace_file_ptr;
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-
-} /* H5C_set_trace_file_ptr() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5C_stats
- *
- * Purpose: Prints statistics about the cache.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 6/2/04
- *
- * JRM -- 11/13/08
- * Added code displaying the max_clean_index_size and
- * max_dirty_index_size.
- *
- * MAM -- 01/06/09
- * Added code displaying the calls_to_msic,
- * total_entries_skipped_in_msic, total_entries_scanned_in_msic,
- * and max_entries_skipped_in_msic fields.
- *
- * JRM -- 4/11/15
- * Added code displaying the new slist_scan_restarts,
- * LRU_scan_restarts, and hash_bucket_scan_restarts fields;
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5C_stats(H5C_t * cache_ptr,
- const char * cache_name,
- hbool_t
-#if !H5C_COLLECT_CACHE_STATS
- H5_ATTR_UNUSED
-#endif /* H5C_COLLECT_CACHE_STATS */
- display_detailed_stats)
-{
-#if H5C_COLLECT_CACHE_STATS
- int i;
- int64_t total_hits = 0;
- int64_t total_misses = 0;
- int64_t total_write_protects = 0;
- int64_t total_read_protects = 0;
- int64_t max_read_protects = 0;
- int64_t total_insertions = 0;
- int64_t total_pinned_insertions = 0;
- int64_t total_clears = 0;
- int64_t total_flushes = 0;
- int64_t total_evictions = 0;
- int64_t total_take_ownerships = 0;
- int64_t total_moves = 0;
- int64_t total_entry_flush_moves = 0;
- int64_t total_cache_flush_moves = 0;
- int64_t total_size_increases = 0;
- int64_t total_size_decreases = 0;
- int64_t total_entry_flush_size_changes = 0;
- int64_t total_cache_flush_size_changes = 0;
- int64_t total_pins = 0;
- int64_t total_unpins = 0;
- int64_t total_dirty_pins = 0;
- int64_t total_pinned_flushes = 0;
- int64_t total_pinned_clears = 0;
- int32_t aggregate_max_accesses = 0;
- int32_t aggregate_min_accesses = 1000000;
- int32_t aggregate_max_clears = 0;
- int32_t aggregate_max_flushes = 0;
- size_t aggregate_max_size = 0;
- int32_t aggregate_max_pins = 0;
- double hit_rate;
- double average_successful_search_depth = 0.0f;
- double average_failed_search_depth = 0.0f;
- double average_entries_skipped_per_calls_to_msic = 0.0f;
- double average_entries_scanned_per_calls_to_msic = 0.0f;
-#endif /* H5C_COLLECT_CACHE_STATS */
- herr_t ret_value = SUCCEED; /* Return value */
-
- FUNC_ENTER_NOAPI(FAIL)
-
- HDassert( cache_ptr->magic == H5C__H5C_T_MAGIC );
-
- /* This would normally be an assert, but we need to use an HGOTO_ERROR
- * call to shut up the compiler.
- */
- if ( ( ! cache_ptr ) ||
- ( cache_ptr->magic != H5C__H5C_T_MAGIC ) ||
- ( !cache_name ) ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad cache_ptr or cache_name")
- }
-
-#if H5C_COLLECT_CACHE_STATS
-
- for ( i = 0; i <= cache_ptr->max_type_id; i++ ) {
-
- total_hits += cache_ptr->hits[i];
- total_misses += cache_ptr->misses[i];
- total_write_protects += cache_ptr->write_protects[i];
- total_read_protects += cache_ptr->read_protects[i];
- if ( max_read_protects < cache_ptr->max_read_protects[i] ) {
- max_read_protects = cache_ptr->max_read_protects[i];
- }
- total_insertions += cache_ptr->insertions[i];
- total_pinned_insertions += cache_ptr->pinned_insertions[i];
- total_clears += cache_ptr->clears[i];
- total_flushes += cache_ptr->flushes[i];
- total_evictions += cache_ptr->evictions[i];
- total_take_ownerships += cache_ptr->take_ownerships[i];
- total_moves += cache_ptr->moves[i];
- total_entry_flush_moves += cache_ptr->entry_flush_moves[i];
- total_cache_flush_moves += cache_ptr->cache_flush_moves[i];
- total_size_increases += cache_ptr->size_increases[i];
- total_size_decreases += cache_ptr->size_decreases[i];
- total_entry_flush_size_changes
- += cache_ptr->entry_flush_size_changes[i];
- total_cache_flush_size_changes
- += cache_ptr->cache_flush_size_changes[i];
- total_pins += cache_ptr->pins[i];
- total_unpins += cache_ptr->unpins[i];
- total_dirty_pins += cache_ptr->dirty_pins[i];
- total_pinned_flushes += cache_ptr->pinned_flushes[i];
- total_pinned_clears += cache_ptr->pinned_clears[i];
-#if H5C_COLLECT_CACHE_ENTRY_STATS
- if ( aggregate_max_accesses < cache_ptr->max_accesses[i] )
- aggregate_max_accesses = cache_ptr->max_accesses[i];
- if ( aggregate_min_accesses > aggregate_max_accesses )
- aggregate_min_accesses = aggregate_max_accesses;
- if ( aggregate_min_accesses > cache_ptr->min_accesses[i] )
- aggregate_min_accesses = cache_ptr->min_accesses[i];
- if ( aggregate_max_clears < cache_ptr->max_clears[i] )
- aggregate_max_clears = cache_ptr->max_clears[i];
- if ( aggregate_max_flushes < cache_ptr->max_flushes[i] )
- aggregate_max_flushes = cache_ptr->max_flushes[i];
- if ( aggregate_max_size < cache_ptr->max_size[i] )
- aggregate_max_size = cache_ptr->max_size[i];
- if ( aggregate_max_pins < cache_ptr->max_pins[i] )
- aggregate_max_pins = cache_ptr->max_pins[i];
-#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
- }
-
- if ( ( total_hits > 0 ) || ( total_misses > 0 ) ) {
-
- hit_rate = (double)100.0f * ((double)(total_hits)) /
- ((double)(total_hits + total_misses));
- } else {
- hit_rate = 0.0f;
- }
-
- if ( cache_ptr->successful_ht_searches > 0 ) {
-
- average_successful_search_depth =
- ((double)(cache_ptr->total_successful_ht_search_depth)) /
- ((double)(cache_ptr->successful_ht_searches));
- }
-
- if ( cache_ptr->failed_ht_searches > 0 ) {
-
- average_failed_search_depth =
- ((double)(cache_ptr->total_failed_ht_search_depth)) /
- ((double)(cache_ptr->failed_ht_searches));
- }
-
-
- HDfprintf(stdout, "\n%sH5C: cache statistics for %s\n",
- cache_ptr->prefix, cache_name);
-
- HDfprintf(stdout, "\n");
-
- HDfprintf(stdout,
- "%s hash table insertion / deletions = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->total_ht_insertions),
- (long)(cache_ptr->total_ht_deletions));
-
- HDfprintf(stdout,
- "%s HT successful / failed searches = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->successful_ht_searches),
- (long)(cache_ptr->failed_ht_searches));
-
- HDfprintf(stdout,
- "%s Av. HT suc / failed search depth = %f / %f\n",
- cache_ptr->prefix,
- average_successful_search_depth,
- average_failed_search_depth);
-
- HDfprintf(stdout,
- "%s current (max) index size / length = %ld (%ld) / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->index_size),
- (long)(cache_ptr->max_index_size),
- (long)(cache_ptr->index_len),
- (long)(cache_ptr->max_index_len));
-
- HDfprintf(stdout,
- "%s current (max) clean/dirty idx size = %ld (%ld) / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->clean_index_size),
- (long)(cache_ptr->max_clean_index_size),
- (long)(cache_ptr->dirty_index_size),
- (long)(cache_ptr->max_dirty_index_size));
-
- HDfprintf(stdout,
- "%s current (max) slist size / length = %ld (%ld) / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->slist_size),
- (long)(cache_ptr->max_slist_size),
- (long)(cache_ptr->slist_len),
- (long)(cache_ptr->max_slist_len));
-
- HDfprintf(stdout,
- "%s current (max) PL size / length = %ld (%ld) / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->pl_size),
- (long)(cache_ptr->max_pl_size),
- (long)(cache_ptr->pl_len),
- (long)(cache_ptr->max_pl_len));
-
- HDfprintf(stdout,
- "%s current (max) PEL size / length = %ld (%ld) / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->pel_size),
- (long)(cache_ptr->max_pel_size),
- (long)(cache_ptr->pel_len),
- (long)(cache_ptr->max_pel_len));
-
- HDfprintf(stdout,
- "%s current LRU list size / length = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->LRU_list_size),
- (long)(cache_ptr->LRU_list_len));
-
- HDfprintf(stdout,
- "%s current clean LRU size / length = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->cLRU_list_size),
- (long)(cache_ptr->cLRU_list_len));
-
- HDfprintf(stdout,
- "%s current dirty LRU size / length = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->dLRU_list_size),
- (long)(cache_ptr->dLRU_list_len));
-
- HDfprintf(stdout,
- "%s Total hits / misses / hit_rate = %ld / %ld / %f\n",
- cache_ptr->prefix,
- (long)total_hits,
- (long)total_misses,
- hit_rate);
-
- HDfprintf(stdout,
- "%s Total write / read (max) protects = %ld / %ld (%ld)\n",
- cache_ptr->prefix,
- (long)total_write_protects,
- (long)total_read_protects,
- (long)max_read_protects);
-
- HDfprintf(stdout,
- "%s Total clears / flushes = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_clears,
- (long)total_flushes);
-
- HDfprintf(stdout,
- "%s Total evictions / take ownerships = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_evictions,
- (long)total_take_ownerships);
-
- HDfprintf(stdout,
- "%s Total insertions(pinned) / moves = %ld(%ld) / %ld\n",
- cache_ptr->prefix,
- (long)total_insertions,
- (long)total_pinned_insertions,
- (long)total_moves);
-
- HDfprintf(stdout,
- "%s Total entry / cache flush moves = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_entry_flush_moves,
- (long)total_cache_flush_moves);
-
- HDfprintf(stdout, "%s Total entry size incrs / decrs = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_size_increases,
- (long)total_size_decreases);
-
- HDfprintf(stdout, "%s Ttl entry/cache flush size changes = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_entry_flush_size_changes,
- (long)total_cache_flush_size_changes);
-
- HDfprintf(stdout,
- "%s Total entry pins (dirty) / unpins = %ld (%ld) / %ld\n",
- cache_ptr->prefix,
- (long)total_pins,
- (long)total_dirty_pins,
- (long)total_unpins);
-
- HDfprintf(stdout, "%s Total pinned flushes / clears = %ld / %ld\n",
- cache_ptr->prefix,
- (long)total_pinned_flushes,
- (long)total_pinned_clears);
-
- HDfprintf(stdout, "%s MSIC: (make space in cache) calls = %lld\n",
- cache_ptr->prefix,
- (long long)(cache_ptr->calls_to_msic));
-
- if (cache_ptr->calls_to_msic > 0) {
- average_entries_skipped_per_calls_to_msic =
- (((double)(cache_ptr->total_entries_skipped_in_msic)) /
- ((double)(cache_ptr->calls_to_msic)));
- }
-
- HDfprintf(stdout, "%s MSIC: Average/max entries skipped = %lf / %ld\n",
- cache_ptr->prefix,
- (double)average_entries_skipped_per_calls_to_msic,
- (long)(cache_ptr->max_entries_skipped_in_msic));
-
- if (cache_ptr->calls_to_msic > 0) {
- average_entries_scanned_per_calls_to_msic =
- (((double)(cache_ptr->total_entries_scanned_in_msic)) /
- ((double)(cache_ptr->calls_to_msic)));
- }
-
- HDfprintf(stdout, "%s MSIC: Average/max entries scanned = %lf / %ld\n",
- cache_ptr->prefix,
- (double)average_entries_scanned_per_calls_to_msic,
- (long)(cache_ptr->max_entries_scanned_in_msic));
-
- HDfprintf(stdout, "%s MSIC: Scanned to make space(evict) = %lld\n",
- cache_ptr->prefix,
- (long long)(cache_ptr->entries_scanned_to_make_space));
-
- HDfprintf(stdout, "%s MSIC: Scanned to satisfy min_clean = %lld\n",
- cache_ptr->prefix,
- (long long)(cache_ptr->total_entries_scanned_in_msic -
- cache_ptr->entries_scanned_to_make_space));
-
- HDfprintf(stdout,
- "%s slist/LRU/hash bkt scan restarts = %lld / %lld / %lld.\n",
- cache_ptr->prefix,
- (long long)(cache_ptr->slist_scan_restarts),
- (long long)(cache_ptr->LRU_scan_restarts),
- (long long)(cache_ptr->hash_bucket_scan_restarts));
-
-#if H5C_COLLECT_CACHE_ENTRY_STATS
-
- HDfprintf(stdout, "%s aggregate max / min accesses = %d / %d\n",
- cache_ptr->prefix,
- (int)aggregate_max_accesses,
- (int)aggregate_min_accesses);
-
- HDfprintf(stdout, "%s aggregate max_clears / max_flushes = %d / %d\n",
- cache_ptr->prefix,
- (int)aggregate_max_clears,
- (int)aggregate_max_flushes);
-
- HDfprintf(stdout, "%s aggregate max_size / max_pins = %d / %d\n",
- cache_ptr->prefix,
- (int)aggregate_max_size,
- (int)aggregate_max_pins);
-
-#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
-
- if ( display_detailed_stats )
- {
-
- for ( i = 0; i <= cache_ptr->max_type_id; i++ ) {
-
- HDfprintf(stdout, "\n");
-
- HDfprintf(stdout, "%s Stats on %s:\n",
- cache_ptr->prefix,
- ((cache_ptr->type_name_table_ptr))[i]);
-
- if ( ( cache_ptr->hits[i] > 0 ) || ( cache_ptr->misses[i] > 0 ) ) {
-
- hit_rate = (double)100.0f * ((double)(cache_ptr->hits[i])) /
- ((double)(cache_ptr->hits[i] + cache_ptr->misses[i]));
- } else {
- hit_rate = 0.0f;
- }
-
- HDfprintf(stdout,
- "%s hits / misses / hit_rate = %ld / %ld / %f\n",
- cache_ptr->prefix,
- (long)(cache_ptr->hits[i]),
- (long)(cache_ptr->misses[i]),
- hit_rate);
-
- HDfprintf(stdout,
- "%s write / read (max) protects = %ld / %ld (%d)\n",
- cache_ptr->prefix,
- (long)(cache_ptr->write_protects[i]),
- (long)(cache_ptr->read_protects[i]),
- (int)(cache_ptr->max_read_protects[i]));
-
- HDfprintf(stdout,
- "%s clears / flushes = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->clears[i]),
- (long)(cache_ptr->flushes[i]));
-
- HDfprintf(stdout,
- "%s evictions / take ownerships = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->evictions[i]),
- (long)(cache_ptr->take_ownerships[i]));
-
- HDfprintf(stdout,
- "%s insertions(pinned) / moves = %ld(%ld) / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->insertions[i]),
- (long)(cache_ptr->pinned_insertions[i]),
- (long)(cache_ptr->moves[i]));
-
- HDfprintf(stdout,
- "%s entry / cache flush moves = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->entry_flush_moves[i]),
- (long)(cache_ptr->cache_flush_moves[i]));
-
- HDfprintf(stdout,
- "%s size increases / decreases = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->size_increases[i]),
- (long)(cache_ptr->size_decreases[i]));
-
- HDfprintf(stdout,
- "%s entry/cache flush size changes = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->entry_flush_size_changes[i]),
- (long)(cache_ptr->cache_flush_size_changes[i]));
-
-
- HDfprintf(stdout,
- "%s entry pins / unpins = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->pins[i]),
- (long)(cache_ptr->unpins[i]));
-
- HDfprintf(stdout,
- "%s entry dirty pins/pin'd flushes = %ld / %ld\n",
- cache_ptr->prefix,
- (long)(cache_ptr->dirty_pins[i]),
- (long)(cache_ptr->pinned_flushes[i]));
-
-#if H5C_COLLECT_CACHE_ENTRY_STATS
-
- HDfprintf(stdout,
- "%s entry max / min accesses = %d / %d\n",
- cache_ptr->prefix,
- cache_ptr->max_accesses[i],
- cache_ptr->min_accesses[i]);
-
- HDfprintf(stdout,
- "%s entry max_clears / max_flushes = %d / %d\n",
- cache_ptr->prefix,
- cache_ptr->max_clears[i],
- cache_ptr->max_flushes[i]);
-
- HDfprintf(stdout,
- "%s entry max_size / max_pins = %d / %d\n",
- cache_ptr->prefix,
- (int)(cache_ptr->max_size[i]),
- (int)(cache_ptr->max_pins[i]));
-
-
-#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
-
- }
- }
-
- HDfprintf(stdout, "\n");
-
-#endif /* H5C_COLLECT_CACHE_STATS */
-
-done:
- FUNC_LEAVE_NOAPI(ret_value)
-
-} /* H5C_stats() */
-
-
-/*-------------------------------------------------------------------------
- *
- * Function: H5C_stats__reset
- *
- * Purpose: Reset the stats fields to their initial values.
- *
- * Return: void
- *
- * Programmer: John Mainzer, 4/28/04
- *
- * JRM 11/13/08
- * Added initialization for the new max_clean_index_size and
- * max_dirty_index_size fields.
- *
- * MAM -- 01/06/09
- * Added code to initalize the calls_to_msic,
- * total_entries_skipped_in_msic, total_entries_scanned_in_msic,
- * and max_entries_skipped_in_msic fields.
- *
- * JRM 4/11/15
- * Added code to initialize the new slist_scan_restarts,
- * LRU_scan_restarts, hash_bucket_scan_restarts, and
- * take_ownerships fields.
- *
- *-------------------------------------------------------------------------
- */
-void
-#ifndef NDEBUG
-H5C_stats__reset(H5C_t * cache_ptr)
-#else /* NDEBUG */
-#if H5C_COLLECT_CACHE_STATS
-H5C_stats__reset(H5C_t * cache_ptr)
-#else /* H5C_COLLECT_CACHE_STATS */
-H5C_stats__reset(H5C_t H5_ATTR_UNUSED * cache_ptr)
-#endif /* H5C_COLLECT_CACHE_STATS */
-#endif /* NDEBUG */
-{
-#if H5C_COLLECT_CACHE_STATS
- int i;
-#endif /* H5C_COLLECT_CACHE_STATS */
-
- HDassert( cache_ptr );
- HDassert( cache_ptr->magic == H5C__H5C_T_MAGIC );
-
-#if H5C_COLLECT_CACHE_STATS
- for ( i = 0; i <= cache_ptr->max_type_id; i++ )
- {
- cache_ptr->hits[i] = 0;
- cache_ptr->misses[i] = 0;
- cache_ptr->write_protects[i] = 0;
- cache_ptr->read_protects[i] = 0;
- cache_ptr->max_read_protects[i] = 0;
- cache_ptr->insertions[i] = 0;
- cache_ptr->pinned_insertions[i] = 0;
- cache_ptr->clears[i] = 0;
- cache_ptr->flushes[i] = 0;
- cache_ptr->evictions[i] = 0;
- cache_ptr->take_ownerships[i] = 0;
- cache_ptr->moves[i] = 0;
- cache_ptr->entry_flush_moves[i] = 0;
- cache_ptr->cache_flush_moves[i] = 0;
- cache_ptr->pins[i] = 0;
- cache_ptr->unpins[i] = 0;
- cache_ptr->dirty_pins[i] = 0;
- cache_ptr->pinned_flushes[i] = 0;
- cache_ptr->pinned_clears[i] = 0;
- cache_ptr->size_increases[i] = 0;
- cache_ptr->size_decreases[i] = 0;
- cache_ptr->entry_flush_size_changes[i] = 0;
- cache_ptr->cache_flush_size_changes[i] = 0;
- }
-
- cache_ptr->total_ht_insertions = 0;
- cache_ptr->total_ht_deletions = 0;
- cache_ptr->successful_ht_searches = 0;
- cache_ptr->total_successful_ht_search_depth = 0;
- cache_ptr->failed_ht_searches = 0;
- cache_ptr->total_failed_ht_search_depth = 0;
-
- cache_ptr->max_index_len = 0;
- cache_ptr->max_index_size = (size_t)0;
- cache_ptr->max_clean_index_size = (size_t)0;
- cache_ptr->max_dirty_index_size = (size_t)0;
-
- cache_ptr->max_slist_len = 0;
- cache_ptr->max_slist_size = (size_t)0;
-
- cache_ptr->max_pl_len = 0;
- cache_ptr->max_pl_size = (size_t)0;
-
- cache_ptr->max_pel_len = 0;
- cache_ptr->max_pel_size = (size_t)0;
-
- cache_ptr->calls_to_msic = 0;
- cache_ptr->total_entries_skipped_in_msic = 0;
- cache_ptr->total_entries_scanned_in_msic = 0;
- cache_ptr->max_entries_skipped_in_msic = 0;
- cache_ptr->max_entries_scanned_in_msic = 0;
- cache_ptr->entries_scanned_to_make_space = 0;
-
- cache_ptr->slist_scan_restarts = 0;
- cache_ptr->LRU_scan_restarts = 0;
- cache_ptr->hash_bucket_scan_restarts = 0;
-
-#if H5C_COLLECT_CACHE_ENTRY_STATS
-
- for ( i = 0; i <= cache_ptr->max_type_id; i++ )
- {
- cache_ptr->max_accesses[i] = 0;
- cache_ptr->min_accesses[i] = 1000000;
- cache_ptr->max_clears[i] = 0;
- cache_ptr->max_flushes[i] = 0;
- cache_ptr->max_size[i] = (size_t)0;
- cache_ptr->max_pins[i] = 0;
- }
-
-#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
-#endif /* H5C_COLLECT_CACHE_STATS */
-
- return;
-
-} /* H5C_stats__reset() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5C_dump_cache
- *
- * Purpose: Print a summary of the contents of the metadata cache for
- * debugging purposes.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 10/10/10
- *
- *-------------------------------------------------------------------------
- */
-herr_t
-H5C_dump_cache(H5C_t * cache_ptr,
- const char * cache_name)
-{
- herr_t ret_value = SUCCEED; /* Return value */
- int i;
- H5C_cache_entry_t * entry_ptr = NULL;
- H5SL_t * slist_ptr = NULL;
- H5SL_node_t * node_ptr = NULL;
-
- FUNC_ENTER_NOAPI(FAIL)
-
- HDassert(cache_ptr != NULL);
- HDassert(cache_ptr->magic == H5C__H5C_T_MAGIC);
- HDassert(cache_name != NULL );
-
- /* First, create a skip list */
- slist_ptr = H5SL_create(H5SL_TYPE_HADDR, NULL);
-
- if ( slist_ptr == NULL ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_CANTCREATE, FAIL, "can't create skip list.")
- }
-
- /* Next, scan the index, and insert all entries in the skip list.
- * Do this, as we want to display cache entries in increasing address
- * order.
- */
- for ( i = 0; i < H5C__HASH_TABLE_LEN; i++ ) {
-
- entry_ptr = cache_ptr->index[i];
-
- while ( entry_ptr != NULL ) {
-
- HDassert( entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC );
-
- if ( H5SL_insert(slist_ptr, entry_ptr, &(entry_ptr->addr)) < 0 ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, \
- "Can't insert entry in skip list")
- }
-
- entry_ptr = entry_ptr->ht_next;
- }
- }
-
- /* If we get this far, all entries in the cache are listed in the
- * skip list -- scan the skip list generating the desired output.
- */
-
- HDfprintf(stdout, "\n\nDump of metadata cache \"%s\".\n", cache_name);
- HDfprintf(stdout,
- "Num: Addr: Tag: Len: Type: Prot: Pinned: Dirty: Corked:\n");
-
- i = 0;
-
- node_ptr = H5SL_first(slist_ptr);
-
- if ( node_ptr != NULL ) {
-
- entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
-
- } else {
-
- entry_ptr = NULL;
- }
-
- while ( entry_ptr != NULL ) {
-
- HDassert( entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC );
-
- HDfprintf(stdout,
- "%s%d 0x%16llx 0x%3llx 0x%3llx %2d %d %d %d %d\n",
- cache_ptr->prefix, i,
- (long long)(entry_ptr->addr),
- (long long)(entry_ptr->tag),
- (long long)(entry_ptr->size),
- (int)(entry_ptr->type->id),
- (int)(entry_ptr->is_protected),
- (int)(entry_ptr->is_pinned),
- (int)(entry_ptr->is_dirty),
- (int)(entry_ptr->is_corked));
-
- /* increment node_ptr before we delete its target */
- node_ptr = H5SL_next(node_ptr);
-
- /* remove the first item in the skip list */
- if ( H5SL_remove(slist_ptr, &(entry_ptr->addr)) != entry_ptr ) {
-
- HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, \
- "Can't delete entry from skip list.")
- }
-
- if ( node_ptr != NULL ) {
-
- entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
-
- } else {
-
- entry_ptr = NULL;
- }
-
- i++;
- }
-
- HDfprintf(stdout, "\n\n");
-
- /* Finally, discard the skip list */
-
- HDassert( H5SL_count(slist_ptr) == 0 );
-
- H5SL_close(slist_ptr);
-
-done:
-
- FUNC_LEAVE_NOAPI(ret_value)
-
-} /* H5C_dump_cache() */
-
-
-/*-------------------------------------------------------------------------
- * Function: H5C_dump_cache_skip_list
- *
- * Purpose: Debugging routine that prints a summary of the contents of
- * the skip list used by the metadata cache metadata cache to
- * maintain an address sorted list of dirty entries.
- *
- * Return: Non-negative on success/Negative on failure
- *
- * Programmer: John Mainzer
- * 11/15/14
- *
- *-------------------------------------------------------------------------
- */
-#if 0 /* debugging routine */
-herr_t
-H5C_dump_cache_skip_list(H5C_t * cache_ptr, char * calling_fcn)
-{
- herr_t ret_value = SUCCEED; /* Return value */
- int i;
- H5C_cache_entry_t * entry_ptr = NULL;
- H5SL_node_t * node_ptr = NULL;
-
- FUNC_ENTER_NOAPI(FAIL)
-
- HDassert(cache_ptr != NULL);
- HDassert(cache_ptr->magic == H5C__H5C_T_MAGIC);
- HDassert(calling_fcn != NULL);
-
- HDfprintf(stdout, "\n\nDumping metadata cache skip list from %s.\n",
- calling_fcn);
- HDfprintf(stdout, " slist len = %d.\n", cache_ptr->slist_len);
- HDfprintf(stdout, " slist size = %lld.\n",
- (long long)(cache_ptr->slist_size));
-
- if ( cache_ptr->slist_len > 0 )
- {
- /* If we get this far, all entries in the cache are listed in the
- * skip list -- scan the skip list generating the desired output.
- */
-
- HDfprintf(stdout,
- "Num: Addr: Len: Prot/Pind: Dirty: Type:\n");
-
- i = 0;
-
- node_ptr = H5SL_first(cache_ptr->slist_ptr);
-
- if ( node_ptr != NULL ) {
-
- entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
-
- } else {
-
- entry_ptr = NULL;
- }
-
- while ( entry_ptr != NULL ) {
-
- HDassert( entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC );
-
- HDfprintf(stdout,
- "%s%d 0x%016llx %4lld %d/%d %d %s\n",
- cache_ptr->prefix, i,
- (long long)(entry_ptr->addr),
- (long long)(entry_ptr->size),
- (int)(entry_ptr->is_protected),
- (int)(entry_ptr->is_pinned),
- (int)(entry_ptr->is_dirty),
- entry_ptr->type->name);
-
- HDfprintf(stdout, " node_ptr = 0x%llx, item = 0x%llx\n",
- (unsigned long long)node_ptr,
- (unsigned long long)H5SL_item(node_ptr));
-
- /* increment node_ptr before we delete its target */
- node_ptr = H5SL_next(node_ptr);
-
- if ( node_ptr != NULL ) {
-
- entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
-
- } else {
-
- entry_ptr = NULL;
- }
-
- i++;
- }
- }
-
- HDfprintf(stdout, "\n\n");
-
-done:
-
- FUNC_LEAVE_NOAPI(ret_value)
-
-} /* H5C_dump_cache_skip_list() */
-#endif /* debugging routine */
-
-
-/*-------------------------------------------------------------------------
* Function: H5C_unpin_entry_from_client()
*
* Purpose: Internal routine to unpin a cache entry from a client action.
diff --git a/src/H5Cdbg.c b/src/H5Cdbg.c
new file mode 100644
index 0000000..08a7068
--- /dev/null
+++ b/src/H5Cdbg.c
@@ -0,0 +1,964 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * 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 files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+/*-------------------------------------------------------------------------
+ *
+ * Created: H5Cdbg.c
+ * July 8 2016
+ * Quincey Koziol
+ *
+ * Purpose: Debugging Routines for the generic cache structure or entries.
+ *
+ *-------------------------------------------------------------------------
+ */
+
+/****************/
+/* Module Setup */
+/****************/
+
+#include "H5Cmodule.h" /* This source code file is part of the H5C module */
+
+
+/***********/
+/* Headers */
+/***********/
+#include "H5private.h" /* Generic Functions */
+#include "H5Cpkg.h" /* Cache */
+#include "H5Eprivate.h" /* Error handling */
+
+
+/****************/
+/* Local Macros */
+/****************/
+
+
+/******************/
+/* Local Typedefs */
+/******************/
+
+
+/********************/
+/* Local Prototypes */
+/********************/
+
+#if 0 /* debugging routines */
+herr_t H5C_dump_cache_skip_list(H5C_t *cache_ptr, char *calling_fcn);
+#endif /* debugging routines */
+
+
+/*********************/
+/* Package Variables */
+/*********************/
+
+
+/*****************************/
+/* Library Private Variables */
+/*****************************/
+
+
+/*******************/
+/* Local Variables */
+/*******************/
+
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5C_dump_cache
+ *
+ * Purpose: Print a summary of the contents of the metadata cache for
+ * debugging purposes.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 10/10/10
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5C_dump_cache(H5C_t * cache_ptr, const char * cache_name)
+{
+ H5C_cache_entry_t * entry_ptr;
+ H5SL_t * slist_ptr = NULL;
+ int i; /* Local index variable */
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ /* Sanity check */
+ HDassert(cache_ptr != NULL);
+ HDassert(cache_ptr->magic == H5C__H5C_T_MAGIC);
+ HDassert(cache_name != NULL );
+
+ /* First, create a skip list */
+ if(NULL == (slist_ptr = H5SL_create(H5SL_TYPE_HADDR, NULL)))
+ HGOTO_ERROR(H5E_CACHE, H5E_CANTCREATE, FAIL, "can't create skip list.")
+
+ /* Next, scan the index, and insert all entries in the skip list.
+ * Do this, as we want to display cache entries in increasing address
+ * order.
+ */
+ for(i = 0; i < H5C__HASH_TABLE_LEN; i++) {
+ entry_ptr = cache_ptr->index[i];
+
+ while(entry_ptr != NULL) {
+ HDassert(entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC);
+ if(H5SL_insert(slist_ptr, entry_ptr, &(entry_ptr->addr)) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_BADVALUE, FAIL, "can't insert entry in skip list")
+
+ entry_ptr = entry_ptr->ht_next;
+ } /* end while */
+ } /* end for */
+
+ /* If we get this far, all entries in the cache are listed in the
+ * skip list -- scan the skip list generating the desired output.
+ */
+
+ HDfprintf(stdout, "\n\nDump of metadata cache \"%s\".\n", cache_name);
+ HDfprintf(stdout,
+ "Num: Addr: Len: Type: Prot: Pinned: Dirty:\n");
+
+ i = 0;
+ entry_ptr = (H5C_cache_entry_t *)H5SL_remove_first(slist_ptr);
+ while(entry_ptr != NULL) {
+ HDassert(entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC);
+
+ HDfprintf(stdout,
+ "%s%d 0x%16llx 0x%3llx %2d %d %d %d\n",
+ cache_ptr->prefix, i,
+ (long long)(entry_ptr->addr),
+ (long long)(entry_ptr->size),
+ (int)(entry_ptr->type->id),
+ (int)(entry_ptr->is_protected),
+ (int)(entry_ptr->is_pinned),
+ (int)(entry_ptr->is_dirty));
+
+ /* remove the next (first) item in the skip list */
+ entry_ptr = (H5C_cache_entry_t *)H5SL_remove_first(slist_ptr);
+
+ i++;
+ } /* end while */
+
+ HDfprintf(stdout, "\n\n");
+
+ /* Verify that all the entries were removed from the skip list */
+ HDassert(H5SL_count(slist_ptr) == 0);
+
+done:
+ /* Discard the skip list */
+ if(slist_ptr)
+ H5SL_close(slist_ptr);
+
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5C_dump_cache() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5C_dump_cache_skip_list
+ *
+ * Purpose: Debugging routine that prints a summary of the contents of
+ * the skip list used by the metadata cache metadata cache to
+ * maintain an address sorted list of dirty entries.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 11/15/14
+ *
+ *-------------------------------------------------------------------------
+ */
+#if 0 /* debugging routine */
+herr_t
+H5C_dump_cache_skip_list(H5C_t * cache_ptr, char * calling_fcn)
+{
+ herr_t ret_value = SUCCEED; /* Return value */
+ int i;
+ H5C_cache_entry_t * entry_ptr = NULL;
+ H5SL_node_t * node_ptr = NULL;
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ HDassert(cache_ptr != NULL);
+ HDassert(cache_ptr->magic == H5C__H5C_T_MAGIC);
+ HDassert(calling_fcn != NULL);
+
+ HDfprintf(stdout, "\n\nDumping metadata cache skip list from %s.\n", calling_fcn);
+ HDfprintf(stdout, " slist len = %d.\n", cache_ptr->slist_len);
+ HDfprintf(stdout, " slist size = %lld.\n", (long long)(cache_ptr->slist_size));
+
+ if(cache_ptr->slist_len > 0) {
+ /* If we get this far, all entries in the cache are listed in the
+ * skip list -- scan the skip list generating the desired output.
+ */
+ HDfprintf(stdout,
+ "Num: Addr: Len: Prot/Pind: Dirty: Type:\n");
+
+ i = 0;
+ node_ptr = H5SL_first(cache_ptr->slist_ptr);
+ if(node_ptr != NULL)
+ entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
+ else
+ entry_ptr = NULL;
+
+ while(entry_ptr != NULL) {
+ HDassert( entry_ptr->magic == H5C__H5C_CACHE_ENTRY_T_MAGIC );
+
+ HDfprintf(stdout,
+ "%s%d 0x%016llx %4lld %d/%d %d %s\n",
+ cache_ptr->prefix, i,
+ (long long)(entry_ptr->addr),
+ (long long)(entry_ptr->size),
+ (int)(entry_ptr->is_protected),
+ (int)(entry_ptr->is_pinned),
+ (int)(entry_ptr->is_dirty),
+ entry_ptr->type->name);
+
+ HDfprintf(stdout, " node_ptr = 0x%llx, item = 0x%llx\n",
+ (unsigned long long)node_ptr,
+ (unsigned long long)H5SL_item(node_ptr));
+
+ /* increment node_ptr before we delete its target */
+ node_ptr = H5SL_next(node_ptr);
+ if(node_ptr != NULL)
+ entry_ptr = (H5C_cache_entry_t *)H5SL_item(node_ptr);
+ else
+ entry_ptr = NULL;
+
+ i++;
+ } /* end while */
+ } /* end if */
+
+ HDfprintf(stdout, "\n\n");
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5C_dump_cache_skip_list() */
+#endif /* debugging routine */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5C_set_prefix
+ *
+ * Purpose: Set the values of the prefix field of H5C_t. This
+ * filed is used to label some debugging output.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 1/20/06
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5C_set_prefix(H5C_t * cache_ptr, char * prefix)
+{
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ if((cache_ptr == NULL) || (cache_ptr->magic != H5C__H5C_T_MAGIC) ||
+ (prefix == NULL) || (HDstrlen(prefix) >= H5C__PREFIX_LEN))
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad param(s) on entry.")
+
+ HDstrncpy(&(cache_ptr->prefix[0]), prefix, (size_t)(H5C__PREFIX_LEN));
+
+ cache_ptr->prefix[H5C__PREFIX_LEN - 1] = '\0';
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5C_set_prefix() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5C_set_trace_file_ptr
+ *
+ * Purpose: Set the trace_file_ptr field for the cache.
+ *
+ * This field must either be NULL (which turns of trace
+ * file logging), or be a pointer to an open file to which
+ * trace file data is to be written.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 1/20/06
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5C_set_trace_file_ptr(H5C_t * cache_ptr, FILE * trace_file_ptr)
+{
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ /* This would normally be an assert, but we need to use an HGOTO_ERROR
+ * call to shut up the compiler.
+ */
+ if((NULL == cache_ptr) || (cache_ptr->magic != H5C__H5C_T_MAGIC))
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad cache_ptr")
+
+ cache_ptr->trace_file_ptr = trace_file_ptr;
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5C_set_trace_file_ptr() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: H5C_stats
+ *
+ * Purpose: Prints statistics about the cache.
+ *
+ * Return: Non-negative on success/Negative on failure
+ *
+ * Programmer: John Mainzer
+ * 6/2/04
+ *
+ * JRM -- 11/13/08
+ * Added code displaying the max_clean_index_size and
+ * max_dirty_index_size.
+ *
+ * MAM -- 01/06/09
+ * Added code displaying the calls_to_msic,
+ * total_entries_skipped_in_msic, total_entries_scanned_in_msic,
+ * and max_entries_skipped_in_msic fields.
+ *
+ * JRM -- 4/11/15
+ * Added code displaying the new slist_scan_restarts,
+ * LRU_scan_restarts, and hash_bucket_scan_restarts fields;
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5C_stats(H5C_t * cache_ptr,
+ const char * cache_name,
+ hbool_t
+#if !H5C_COLLECT_CACHE_STATS
+ H5_ATTR_UNUSED
+#endif /* H5C_COLLECT_CACHE_STATS */
+ display_detailed_stats)
+{
+#if H5C_COLLECT_CACHE_STATS
+ int i;
+ int64_t total_hits = 0;
+ int64_t total_misses = 0;
+ int64_t total_write_protects = 0;
+ int64_t total_read_protects = 0;
+ int64_t max_read_protects = 0;
+ int64_t total_insertions = 0;
+ int64_t total_pinned_insertions = 0;
+ int64_t total_clears = 0;
+ int64_t total_flushes = 0;
+ int64_t total_evictions = 0;
+ int64_t total_take_ownerships = 0;
+ int64_t total_moves = 0;
+ int64_t total_entry_flush_moves = 0;
+ int64_t total_cache_flush_moves = 0;
+ int64_t total_size_increases = 0;
+ int64_t total_size_decreases = 0;
+ int64_t total_entry_flush_size_changes = 0;
+ int64_t total_cache_flush_size_changes = 0;
+ int64_t total_pins = 0;
+ int64_t total_unpins = 0;
+ int64_t total_dirty_pins = 0;
+ int64_t total_pinned_flushes = 0;
+ int64_t total_pinned_clears = 0;
+ int32_t aggregate_max_accesses = 0;
+ int32_t aggregate_min_accesses = 1000000;
+ int32_t aggregate_max_clears = 0;
+ int32_t aggregate_max_flushes = 0;
+ size_t aggregate_max_size = 0;
+ int32_t aggregate_max_pins = 0;
+ double hit_rate;
+ double average_successful_search_depth = 0.0f;
+ double average_failed_search_depth = 0.0f;
+ double average_entries_skipped_per_calls_to_msic = 0.0f;
+ double average_entries_scanned_per_calls_to_msic = 0.0f;
+#endif /* H5C_COLLECT_CACHE_STATS */
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ HDassert( cache_ptr->magic == H5C__H5C_T_MAGIC );
+
+ /* This would normally be an assert, but we need to use an HGOTO_ERROR
+ * call to shut up the compiler.
+ */
+ if((NULL == cache_ptr) || (cache_ptr->magic != H5C__H5C_T_MAGIC) ||
+ (NULL == cache_name))
+ HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Bad cache_ptr or cache_name")
+
+#if H5C_COLLECT_CACHE_STATS
+ for(i = 0; i <= cache_ptr->max_type_id; i++ ) {
+ total_hits += cache_ptr->hits[i];
+ total_misses += cache_ptr->misses[i];
+ total_write_protects += cache_ptr->write_protects[i];
+ total_read_protects += cache_ptr->read_protects[i];
+ if(max_read_protects < cache_ptr->max_read_protects[i])
+ max_read_protects = cache_ptr->max_read_protects[i];
+ total_insertions += cache_ptr->insertions[i];
+ total_pinned_insertions += cache_ptr->pinned_insertions[i];
+ total_clears += cache_ptr->clears[i];
+ total_flushes += cache_ptr->flushes[i];
+ total_evictions += cache_ptr->evictions[i];
+ total_take_ownerships += cache_ptr->take_ownerships[i];
+ total_moves += cache_ptr->moves[i];
+ total_entry_flush_moves += cache_ptr->entry_flush_moves[i];
+ total_cache_flush_moves += cache_ptr->cache_flush_moves[i];
+ total_size_increases += cache_ptr->size_increases[i];
+ total_size_decreases += cache_ptr->size_decreases[i];
+ total_entry_flush_size_changes
+ += cache_ptr->entry_flush_size_changes[i];
+ total_cache_flush_size_changes
+ += cache_ptr->cache_flush_size_changes[i];
+ total_pins += cache_ptr->pins[i];
+ total_unpins += cache_ptr->unpins[i];
+ total_dirty_pins += cache_ptr->dirty_pins[i];
+ total_pinned_flushes += cache_ptr->pinned_flushes[i];
+ total_pinned_clears += cache_ptr->pinned_clears[i];
+#if H5C_COLLECT_CACHE_ENTRY_STATS
+ if(aggregate_max_accesses < cache_ptr->max_accesses[i])
+ aggregate_max_accesses = cache_ptr->max_accesses[i];
+ if(aggregate_min_accesses > aggregate_max_accesses)
+ aggregate_min_accesses = aggregate_max_accesses;
+ if(aggregate_min_accesses > cache_ptr->min_accesses[i])
+ aggregate_min_accesses = cache_ptr->min_accesses[i];
+ if(aggregate_max_clears < cache_ptr->max_clears[i])
+ aggregate_max_clears = cache_ptr->max_clears[i];
+ if(aggregate_max_flushes < cache_ptr->max_flushes[i])
+ aggregate_max_flushes = cache_ptr->max_flushes[i];
+ if(aggregate_max_size < cache_ptr->max_size[i])
+ aggregate_max_size = cache_ptr->max_size[i];
+ if(aggregate_max_pins < cache_ptr->max_pins[i])
+ aggregate_max_pins = cache_ptr->max_pins[i];
+#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
+ } /* end for */
+
+ if((total_hits > 0) || (total_misses > 0))
+ hit_rate = (double)100.0f * ((double)(total_hits)) /
+ ((double)(total_hits + total_misses));
+ else
+ hit_rate = 0.0f;
+
+ if(cache_ptr->successful_ht_searches > 0)
+ average_successful_search_depth =
+ ((double)(cache_ptr->total_successful_ht_search_depth)) /
+ ((double)(cache_ptr->successful_ht_searches));
+
+ if(cache_ptr->failed_ht_searches > 0)
+ average_failed_search_depth =
+ ((double)(cache_ptr->total_failed_ht_search_depth)) /
+ ((double)(cache_ptr->failed_ht_searches));
+
+
+ HDfprintf(stdout, "\n%sH5C: cache statistics for %s\n",
+ cache_ptr->prefix, cache_name);
+
+ HDfprintf(stdout, "\n");
+
+ HDfprintf(stdout,
+ "%s hash table insertion / deletions = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->total_ht_insertions),
+ (long)(cache_ptr->total_ht_deletions));
+
+ HDfprintf(stdout,
+ "%s HT successful / failed searches = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->successful_ht_searches),
+ (long)(cache_ptr->failed_ht_searches));
+
+ HDfprintf(stdout,
+ "%s Av. HT suc / failed search depth = %f / %f\n",
+ cache_ptr->prefix,
+ average_successful_search_depth,
+ average_failed_search_depth);
+
+ HDfprintf(stdout,
+ "%s current (max) index size / length = %ld (%ld) / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->index_size),
+ (long)(cache_ptr->max_index_size),
+ (long)(cache_ptr->index_len),
+ (long)(cache_ptr->max_index_len));
+
+ HDfprintf(stdout,
+ "%s current (max) clean/dirty idx size = %ld (%ld) / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->clean_index_size),
+ (long)(cache_ptr->max_clean_index_size),
+ (long)(cache_ptr->dirty_index_size),
+ (long)(cache_ptr->max_dirty_index_size));
+
+ HDfprintf(stdout,
+ "%s current (max) slist size / length = %ld (%ld) / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->slist_size),
+ (long)(cache_ptr->max_slist_size),
+ (long)(cache_ptr->slist_len),
+ (long)(cache_ptr->max_slist_len));
+
+ HDfprintf(stdout,
+ "%s current (max) PL size / length = %ld (%ld) / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->pl_size),
+ (long)(cache_ptr->max_pl_size),
+ (long)(cache_ptr->pl_len),
+ (long)(cache_ptr->max_pl_len));
+
+ HDfprintf(stdout,
+ "%s current (max) PEL size / length = %ld (%ld) / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->pel_size),
+ (long)(cache_ptr->max_pel_size),
+ (long)(cache_ptr->pel_len),
+ (long)(cache_ptr->max_pel_len));
+
+ HDfprintf(stdout,
+ "%s current LRU list size / length = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->LRU_list_size),
+ (long)(cache_ptr->LRU_list_len));
+
+ HDfprintf(stdout,
+ "%s current clean LRU size / length = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->cLRU_list_size),
+ (long)(cache_ptr->cLRU_list_len));
+
+ HDfprintf(stdout,
+ "%s current dirty LRU size / length = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->dLRU_list_size),
+ (long)(cache_ptr->dLRU_list_len));
+
+ HDfprintf(stdout,
+ "%s Total hits / misses / hit_rate = %ld / %ld / %f\n",
+ cache_ptr->prefix,
+ (long)total_hits,
+ (long)total_misses,
+ hit_rate);
+
+ HDfprintf(stdout,
+ "%s Total write / read (max) protects = %ld / %ld (%ld)\n",
+ cache_ptr->prefix,
+ (long)total_write_protects,
+ (long)total_read_protects,
+ (long)max_read_protects);
+
+ HDfprintf(stdout,
+ "%s Total clears / flushes = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_clears,
+ (long)total_flushes);
+
+ HDfprintf(stdout,
+ "%s Total evictions / take ownerships = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_evictions,
+ (long)total_take_ownerships);
+
+ HDfprintf(stdout,
+ "%s Total insertions(pinned) / moves = %ld(%ld) / %ld\n",
+ cache_ptr->prefix,
+ (long)total_insertions,
+ (long)total_pinned_insertions,
+ (long)total_moves);
+
+ HDfprintf(stdout,
+ "%s Total entry / cache flush moves = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_entry_flush_moves,
+ (long)total_cache_flush_moves);
+
+ HDfprintf(stdout, "%s Total entry size incrs / decrs = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_size_increases,
+ (long)total_size_decreases);
+
+ HDfprintf(stdout, "%s Ttl entry/cache flush size changes = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_entry_flush_size_changes,
+ (long)total_cache_flush_size_changes);
+
+ HDfprintf(stdout,
+ "%s Total entry pins (dirty) / unpins = %ld (%ld) / %ld\n",
+ cache_ptr->prefix,
+ (long)total_pins,
+ (long)total_dirty_pins,
+ (long)total_unpins);
+
+ HDfprintf(stdout, "%s Total pinned flushes / clears = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)total_pinned_flushes,
+ (long)total_pinned_clears);
+
+ HDfprintf(stdout, "%s MSIC: (make space in cache) calls = %lld\n",
+ cache_ptr->prefix,
+ (long long)(cache_ptr->calls_to_msic));
+
+ if (cache_ptr->calls_to_msic > 0) {
+ average_entries_skipped_per_calls_to_msic =
+ (((double)(cache_ptr->total_entries_skipped_in_msic)) /
+ ((double)(cache_ptr->calls_to_msic)));
+ }
+
+ HDfprintf(stdout, "%s MSIC: Average/max entries skipped = %lf / %ld\n",
+ cache_ptr->prefix,
+ (double)average_entries_skipped_per_calls_to_msic,
+ (long)(cache_ptr->max_entries_skipped_in_msic));
+
+ if(cache_ptr->calls_to_msic > 0)
+ average_entries_scanned_per_calls_to_msic =
+ (((double)(cache_ptr->total_entries_scanned_in_msic)) /
+ ((double)(cache_ptr->calls_to_msic)));
+
+ HDfprintf(stdout, "%s MSIC: Average/max entries scanned = %lf / %ld\n",
+ cache_ptr->prefix,
+ (double)average_entries_scanned_per_calls_to_msic,
+ (long)(cache_ptr->max_entries_scanned_in_msic));
+
+ HDfprintf(stdout, "%s MSIC: Scanned to make space(evict) = %lld\n",
+ cache_ptr->prefix,
+ (long long)(cache_ptr->entries_scanned_to_make_space));
+
+ HDfprintf(stdout, "%s MSIC: Scanned to satisfy min_clean = %lld\n",
+ cache_ptr->prefix,
+ (long long)(cache_ptr->total_entries_scanned_in_msic -
+ cache_ptr->entries_scanned_to_make_space));
+
+ HDfprintf(stdout,
+ "%s slist/LRU/hash bkt scan restarts = %lld / %lld / %lld.\n",
+ cache_ptr->prefix,
+ (long long)(cache_ptr->slist_scan_restarts),
+ (long long)(cache_ptr->LRU_scan_restarts),
+ (long long)(cache_ptr->hash_bucket_scan_restarts));
+
+#if H5C_COLLECT_CACHE_ENTRY_STATS
+
+ HDfprintf(stdout, "%s aggregate max / min accesses = %d / %d\n",
+ cache_ptr->prefix,
+ (int)aggregate_max_accesses,
+ (int)aggregate_min_accesses);
+
+ HDfprintf(stdout, "%s aggregate max_clears / max_flushes = %d / %d\n",
+ cache_ptr->prefix,
+ (int)aggregate_max_clears,
+ (int)aggregate_max_flushes);
+
+ HDfprintf(stdout, "%s aggregate max_size / max_pins = %d / %d\n",
+ cache_ptr->prefix,
+ (int)aggregate_max_size,
+ (int)aggregate_max_pins);
+
+#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
+
+ if(display_detailed_stats) {
+ for(i = 0; i <= cache_ptr->max_type_id; i++) {
+ HDfprintf(stdout, "\n");
+
+ HDfprintf(stdout, "%s Stats on %s:\n",
+ cache_ptr->prefix,
+ ((cache_ptr->type_name_table_ptr))[i]);
+
+ if((cache_ptr->hits[i] > 0) || (cache_ptr->misses[i] > 0))
+ hit_rate = (double)100.0f * ((double)(cache_ptr->hits[i])) /
+ ((double)(cache_ptr->hits[i] + cache_ptr->misses[i]));
+ else
+ hit_rate = 0.0f;
+
+ HDfprintf(stdout,
+ "%s hits / misses / hit_rate = %ld / %ld / %f\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->hits[i]),
+ (long)(cache_ptr->misses[i]),
+ hit_rate);
+
+ HDfprintf(stdout,
+ "%s write / read (max) protects = %ld / %ld (%d)\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->write_protects[i]),
+ (long)(cache_ptr->read_protects[i]),
+ (int)(cache_ptr->max_read_protects[i]));
+
+ HDfprintf(stdout,
+ "%s clears / flushes = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->clears[i]),
+ (long)(cache_ptr->flushes[i]));
+
+ HDfprintf(stdout,
+ "%s evictions / take ownerships = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->evictions[i]),
+ (long)(cache_ptr->take_ownerships[i]));
+
+ HDfprintf(stdout,
+ "%s insertions(pinned) / moves = %ld(%ld) / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->insertions[i]),
+ (long)(cache_ptr->pinned_insertions[i]),
+ (long)(cache_ptr->moves[i]));
+
+ HDfprintf(stdout,
+ "%s entry / cache flush moves = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->entry_flush_moves[i]),
+ (long)(cache_ptr->cache_flush_moves[i]));
+
+ HDfprintf(stdout,
+ "%s size increases / decreases = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->size_increases[i]),
+ (long)(cache_ptr->size_decreases[i]));
+
+ HDfprintf(stdout,
+ "%s entry/cache flush size changes = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->entry_flush_size_changes[i]),
+ (long)(cache_ptr->cache_flush_size_changes[i]));
+
+
+ HDfprintf(stdout,
+ "%s entry pins / unpins = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->pins[i]),
+ (long)(cache_ptr->unpins[i]));
+
+ HDfprintf(stdout,
+ "%s entry dirty pins/pin'd flushes = %ld / %ld\n",
+ cache_ptr->prefix,
+ (long)(cache_ptr->dirty_pins[i]),
+ (long)(cache_ptr->pinned_flushes[i]));
+
+#if H5C_COLLECT_CACHE_ENTRY_STATS
+
+ HDfprintf(stdout,
+ "%s entry max / min accesses = %d / %d\n",
+ cache_ptr->prefix,
+ cache_ptr->max_accesses[i],
+ cache_ptr->min_accesses[i]);
+
+ HDfprintf(stdout,
+ "%s entry max_clears / max_flushes = %d / %d\n",
+ cache_ptr->prefix,
+ cache_ptr->max_clears[i],
+ cache_ptr->max_flushes[i]);
+
+ HDfprintf(stdout,
+ "%s entry max_size / max_pins = %d / %d\n",
+ cache_ptr->prefix,
+ (int)(cache_ptr->max_size[i]),
+ (int)(cache_ptr->max_pins[i]));
+
+
+#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
+
+ } /* end for */
+ } /* end if */
+
+ HDfprintf(stdout, "\n");
+
+#endif /* H5C_COLLECT_CACHE_STATS */
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* H5C_stats() */
+
+
+/*-------------------------------------------------------------------------
+ *
+ * Function: H5C_stats__reset
+ *
+ * Purpose: Reset the stats fields to their initial values.
+ *
+ * Return: void
+ *
+ * Programmer: John Mainzer, 4/28/04
+ *
+ * JRM 11/13/08
+ * Added initialization for the new max_clean_index_size and
+ * max_dirty_index_size fields.
+ *
+ * MAM -- 01/06/09
+ * Added code to initalize the calls_to_msic,
+ * total_entries_skipped_in_msic, total_entries_scanned_in_msic,
+ * and max_entries_skipped_in_msic fields.
+ *
+ * JRM 4/11/15
+ * Added code to initialize the new slist_scan_restarts,
+ * LRU_scan_restarts, hash_bucket_scan_restarts, and
+ * take_ownerships fields.
+ *
+ *-------------------------------------------------------------------------
+ */
+void
+#ifndef NDEBUG
+H5C_stats__reset(H5C_t * cache_ptr)
+#else /* NDEBUG */
+#if H5C_COLLECT_CACHE_STATS
+H5C_stats__reset(H5C_t * cache_ptr)
+#else /* H5C_COLLECT_CACHE_STATS */
+H5C_stats__reset(H5C_t H5_ATTR_UNUSED * cache_ptr)
+#endif /* H5C_COLLECT_CACHE_STATS */
+#endif /* NDEBUG */
+{
+#if H5C_COLLECT_CACHE_STATS
+ int i;
+#endif /* H5C_COLLECT_CACHE_STATS */
+
+ HDassert(cache_ptr);
+ HDassert(cache_ptr->magic == H5C__H5C_T_MAGIC);
+
+#if H5C_COLLECT_CACHE_STATS
+ for(i = 0; i <= cache_ptr->max_type_id; i++) {
+ cache_ptr->hits[i] = 0;
+ cache_ptr->misses[i] = 0;
+ cache_ptr->write_protects[i] = 0;
+ cache_ptr->read_protects[i] = 0;
+ cache_ptr->max_read_protects[i] = 0;
+ cache_ptr->insertions[i] = 0;
+ cache_ptr->pinned_insertions[i] = 0;
+ cache_ptr->clears[i] = 0;
+ cache_ptr->flushes[i] = 0;
+ cache_ptr->evictions[i] = 0;
+ cache_ptr->take_ownerships[i] = 0;
+ cache_ptr->moves[i] = 0;
+ cache_ptr->entry_flush_moves[i] = 0;
+ cache_ptr->cache_flush_moves[i] = 0;
+ cache_ptr->pins[i] = 0;
+ cache_ptr->unpins[i] = 0;
+ cache_ptr->dirty_pins[i] = 0;
+ cache_ptr->pinned_flushes[i] = 0;
+ cache_ptr->pinned_clears[i] = 0;
+ cache_ptr->size_increases[i] = 0;
+ cache_ptr->size_decreases[i] = 0;
+ cache_ptr->entry_flush_size_changes[i] = 0;
+ cache_ptr->cache_flush_size_changes[i] = 0;
+ } /* end for */
+
+ cache_ptr->total_ht_insertions = 0;
+ cache_ptr->total_ht_deletions = 0;
+ cache_ptr->successful_ht_searches = 0;
+ cache_ptr->total_successful_ht_search_depth = 0;
+ cache_ptr->failed_ht_searches = 0;
+ cache_ptr->total_failed_ht_search_depth = 0;
+
+ cache_ptr->max_index_len = 0;
+ cache_ptr->max_index_size = (size_t)0;
+ cache_ptr->max_clean_index_size = (size_t)0;
+ cache_ptr->max_dirty_index_size = (size_t)0;
+
+ cache_ptr->max_slist_len = 0;
+ cache_ptr->max_slist_size = (size_t)0;
+
+ cache_ptr->max_pl_len = 0;
+ cache_ptr->max_pl_size = (size_t)0;
+
+ cache_ptr->max_pel_len = 0;
+ cache_ptr->max_pel_size = (size_t)0;
+
+ cache_ptr->calls_to_msic = 0;
+ cache_ptr->total_entries_skipped_in_msic = 0;
+ cache_ptr->total_entries_scanned_in_msic = 0;
+ cache_ptr->max_entries_skipped_in_msic = 0;
+ cache_ptr->max_entries_scanned_in_msic = 0;
+ cache_ptr->entries_scanned_to_make_space = 0;
+
+ cache_ptr->slist_scan_restarts = 0;
+ cache_ptr->LRU_scan_restarts = 0;
+ cache_ptr->hash_bucket_scan_restarts = 0;
+
+#if H5C_COLLECT_CACHE_ENTRY_STATS
+ for(i = 0; i <= cache_ptr->max_type_id; i++) {
+ cache_ptr->max_accesses[i] = 0;
+ cache_ptr->min_accesses[i] = 1000000;
+ cache_ptr->max_clears[i] = 0;
+ cache_ptr->max_flushes[i] = 0;
+ cache_ptr->max_size[i] = (size_t)0;
+ cache_ptr->max_pins[i] = 0;
+ } /* end for */
+
+#endif /* H5C_COLLECT_CACHE_ENTRY_STATS */
+#endif /* H5C_COLLECT_CACHE_STATS */
+
+} /* H5C_stats__reset() */
+
+extern void
+H5C__dump_entry(H5C_t *cache_ptr, const H5C_cache_entry_t *entry_ptr,
+ hbool_t dump_parents, const char *prefix, int indent);
+
+static void
+H5C__dump_parents(H5C_t *cache_ptr, const H5C_cache_entry_t *entry_ptr, const char *prefix, int indent)
+{
+ unsigned u;
+
+ for(u = 0; u < entry_ptr->flush_dep_nparents; u++)
+ H5C__dump_entry(cache_ptr, entry_ptr->flush_dep_parent[u], TRUE, prefix, indent + 2);
+}
+
+typedef struct H5C__dump_child_ctx_t {
+ H5C_t *cache_ptr;
+ const H5C_cache_entry_t *parent;
+ hbool_t dump_parents;
+ const char *prefix;
+ int indent;
+} H5C__dump_child_ctx_t;
+
+static int
+H5C__dump_children_cb(H5C_cache_entry_t *entry_ptr, void *_ctx)
+{
+ H5C__dump_child_ctx_t *ctx = (H5C__dump_child_ctx_t *)_ctx;
+
+ if(entry_ptr->tag != entry_ptr->addr) {
+ unsigned u;
+
+ HDassert(entry_ptr->flush_dep_nparents);
+ for(u = 0; u < entry_ptr->flush_dep_nparents; u++)
+ if(ctx->parent == entry_ptr->flush_dep_parent[u])
+ H5C__dump_entry(ctx->cache_ptr, entry_ptr, ctx->dump_parents, ctx->prefix, ctx->indent + 2);
+ } /* end if */
+
+ return(H5_ITER_CONT);
+}
+
+static void
+H5C__dump_children(H5C_t *cache_ptr, const H5C_cache_entry_t *entry_ptr,
+ hbool_t dump_parents, const char *prefix, int indent)
+{
+ H5C__dump_child_ctx_t ctx;
+
+ ctx.cache_ptr = cache_ptr;
+ ctx.parent = entry_ptr;
+ ctx.dump_parents = dump_parents;
+ ctx.prefix = prefix;
+ ctx.indent = indent;
+ H5C__iter_tagged_entries(cache_ptr, entry_ptr->tag, FALSE, H5C__dump_children_cb, &ctx);
+}
+
+void
+H5C__dump_entry(H5C_t *cache_ptr, const H5C_cache_entry_t *entry_ptr,
+ hbool_t dump_parents, const char *prefix, int indent)
+{
+ HDassert(cache_ptr);
+ HDassert(entry_ptr);
+
+ HDfprintf(stderr, "%*s%s: entry_ptr = (%a, '%s', %a, %t, %u, %u/%u)\n", indent, "", prefix, entry_ptr->addr, entry_ptr->type->name, entry_ptr->tag, entry_ptr->is_dirty, entry_ptr->flush_dep_nparents, entry_ptr->flush_dep_nchildren, entry_ptr->flush_dep_ndirty_children);
+ if(dump_parents && entry_ptr->flush_dep_nparents)
+ H5C__dump_parents(cache_ptr, entry_ptr, "Parent", indent);
+ if(entry_ptr->flush_dep_nchildren)
+ H5C__dump_children(cache_ptr, entry_ptr, FALSE, "Child", indent);
+}
diff --git a/src/H5FDint.c b/src/H5FDint.c
index 128f30f..cd48197 100644
--- a/src/H5FDint.c
+++ b/src/H5FDint.c
@@ -93,7 +93,11 @@
*-------------------------------------------------------------------------
*/
herr_t
-H5FD_locate_signature(H5FD_t *file, const H5P_genplist_t *dxpl, haddr_t *sig_addr)
+H5FD_locate_signature(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, haddr_t *sig_addr)
{
haddr_t addr, eoa, eof;
uint8_t buf[H5F_SIGNATURE_LEN];
@@ -158,7 +162,11 @@ done:
*-------------------------------------------------------------------------
*/
herr_t
-H5FD_read(H5FD_t *file, const H5P_genplist_t *dxpl, H5FD_mem_t type, haddr_t addr,
+H5FD_read(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, H5FD_mem_t type, haddr_t addr,
size_t size, void *buf/*out*/)
{
haddr_t eoa = HADDR_UNDEF;
@@ -226,7 +234,11 @@ done:
*-------------------------------------------------------------------------
*/
herr_t
-H5FD_write(H5FD_t *file, const H5P_genplist_t *dxpl, H5FD_mem_t type, haddr_t addr,
+H5FD_write(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, H5FD_mem_t type, haddr_t addr,
size_t size, const void *buf)
{
haddr_t eoa = HADDR_UNDEF;
diff --git a/src/H5FDlog.c b/src/H5FDlog.c
index d0c4647..dae0e4a 100644
--- a/src/H5FDlog.c
+++ b/src/H5FDlog.c
@@ -132,6 +132,7 @@ typedef struct H5FD_log_t {
double total_read_time; /* Total time spent in read operations */
double total_write_time; /* Total time spent in write operations */
double total_seek_time; /* Total time spent in seek operations */
+ double total_truncate_time; /* Total time spent in truncate operations */
size_t iosize; /* Size of I/O information buffers */
FILE *logfp; /* Log file pointer */
H5FD_log_fapl_t fa; /* Driver-specific file access properties */
@@ -170,6 +171,8 @@ static herr_t H5FD_log_close(H5FD_t *_file);
static int H5FD_log_cmp(const H5FD_t *_f1, const H5FD_t *_f2);
static herr_t H5FD_log_query(const H5FD_t *_f1, unsigned long *flags);
static haddr_t H5FD_log_alloc(H5FD_t *_file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size);
+static herr_t H5FD__log_free(H5FD_t *_file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr,
+ hsize_t size);
static haddr_t H5FD_log_get_eoa(const H5FD_t *_file, H5FD_mem_t type);
static herr_t H5FD_log_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t addr);
static haddr_t H5FD_log_get_eof(const H5FD_t *_file, H5FD_mem_t type);
@@ -203,7 +206,7 @@ static const H5FD_class_t H5FD_log_g = {
H5FD_log_query, /*query */
NULL, /*get_type_map */
H5FD_log_alloc, /*alloc */
- NULL, /*free */
+ H5FD__log_free, /*free */
H5FD_log_get_eoa, /*get_eoa */
H5FD_log_set_eoa, /*set_eoa */
H5FD_log_get_eof, /*get_eof */
@@ -735,6 +738,8 @@ H5FD_log_close(H5FD_t *_file)
HDfprintf(file->logfp, "Total time in write operations: %f s\n", file->total_write_time);
if(file->fa.flags & H5FD_LOG_TIME_SEEK)
HDfprintf(file->logfp, "Total time in seek operations: %f s\n", file->total_seek_time);
+ if(file->fa.flags & H5FD_LOG_TIME_TRUNCATE)
+ HDfprintf(file->logfp, "Total time in truncate operations: %f s\n", file->total_truncate_time);
/* Dump the write I/O information */
if(file->fa.flags & H5FD_LOG_FILE_WRITE) {
@@ -957,6 +962,43 @@ H5FD_log_alloc(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, hsi
/*-------------------------------------------------------------------------
+ * Function: H5FD__log_free
+ *
+ * Purpose: Release file memory.
+ *
+ * Return: SUCCEED/FAIL
+ *
+ * Programmer: Quincey Koziol
+ * Wednesday, September 28, 2016
+ *
+ *-------------------------------------------------------------------------
+ */
+static herr_t
+H5FD__log_free(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id,
+ haddr_t addr, hsize_t size)
+{
+ H5FD_log_t *file = (H5FD_log_t *)_file;
+
+ FUNC_ENTER_STATIC_NOERR
+
+ if(file->fa.flags != 0) {
+ /* Reset the flavor of the information in the file */
+ if(file->fa.flags & H5FD_LOG_FLAVOR) {
+ HDassert(addr < file->iosize);
+ H5_CHECK_OVERFLOW(size, hsize_t, size_t);
+ HDmemset(&file->flavor[addr], H5FD_MEM_DEFAULT, (size_t)size);
+ } /* end if */
+
+ /* Log the file memory freed */
+ if(file->fa.flags & H5FD_LOG_FREE)
+ HDfprintf(file->logfp, "%10a-%10a (%10Hu bytes) (%s) Freed\n", addr, (addr + size) - 1, size, flavors[type]);
+ } /* end if */
+
+ FUNC_LEAVE_NOAPI(SUCCEED)
+} /* end H5FD__log_free() */
+
+
+/*-------------------------------------------------------------------------
* Function: H5FD_log_get_eoa
*
* Purpose: Gets the end-of-address marker for the file. The EOA marker
@@ -1004,6 +1046,7 @@ H5FD_log_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t addr)
FUNC_ENTER_NOAPI_NOINIT_NOERR
if(file->fa.flags != 0) {
+ /* Check for increasing file size */
if(H5F_addr_gt(addr, file->eoa) && H5F_addr_gt(addr, 0)) {
hsize_t size = addr - file->eoa;
@@ -1018,6 +1061,22 @@ H5FD_log_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t addr)
if(file->fa.flags & H5FD_LOG_ALLOC)
HDfprintf(file->logfp, "%10a-%10a (%10Hu bytes) (%s) Allocated\n", file->eoa, addr, size, flavors[type]);
} /* end if */
+
+ /* Check for decreasing file size */
+ if(H5F_addr_lt(addr, file->eoa) && H5F_addr_gt(addr, 0)) {
+ hsize_t size = file->eoa - addr;
+
+ /* Reset the flavor of the space freed by the shrink */
+ if(file->fa.flags & H5FD_LOG_FLAVOR) {
+ HDassert((addr + size) < file->iosize);
+ H5_CHECK_OVERFLOW(size, hsize_t, size_t);
+ HDmemset(&file->flavor[addr], H5FD_MEM_DEFAULT, (size_t)size);
+ } /* end if */
+
+ /* Log the shrink like a free */
+ if(file->fa.flags & H5FD_LOG_FREE)
+ HDfprintf(file->logfp, "%10a-%10a (%10Hu bytes) (%s) Freed\n", file->eoa, addr, size, flavors[type]);
+ } /* end if */
} /* end if */
file->eoa = addr;
@@ -1167,7 +1226,7 @@ H5FD_log_read(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, hadd
timeval_diff.tv_sec--;
} /* end if */
time_diff = (double)timeval_diff.tv_sec + ((double)timeval_diff.tv_usec / (double)1000000.0f);
- HDfprintf(file->logfp, " (%f s)\n", time_diff);
+ HDfprintf(file->logfp, " (%fs @ %.6lu.%.6llu)\n", time_diff, (unsigned long long)timeval_start.tv_sec, (unsigned long long)timeval_start.tv_usec);
/* Add to total seek time */
file->total_seek_time += time_diff;
@@ -1241,7 +1300,12 @@ H5FD_log_read(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, hadd
if(file->fa.flags & H5FD_LOG_LOC_READ) {
HDfprintf(file->logfp, "%10a-%10a (%10Zu bytes) (%s) Read", orig_addr, (orig_addr + orig_size) - 1, orig_size, flavors[type]);
- /* XXX: Verify the flavor information, if we have it? */
+ /* Verify that we are reading in the type of data we allocated in this location */
+ if(file->flavor) {
+ HDassert(type == H5FD_MEM_DEFAULT || type == (H5FD_mem_t)file->flavor[orig_addr] || (H5FD_mem_t)file->flavor[orig_addr] == H5FD_MEM_DEFAULT);
+ HDassert(type == H5FD_MEM_DEFAULT || type == (H5FD_mem_t)file->flavor[(orig_addr + orig_size) - 1] || (H5FD_mem_t)file->flavor[(orig_addr + orig_size) - 1] == H5FD_MEM_DEFAULT);
+ } /* end if */
+
#ifdef H5_HAVE_GETTIMEOFDAY
if(file->fa.flags & H5FD_LOG_TIME_READ) {
@@ -1256,7 +1320,7 @@ H5FD_log_read(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, hadd
timeval_diff.tv_sec--;
} /* end if */
time_diff = (double)timeval_diff.tv_sec + ((double)timeval_diff.tv_usec / (double)1000000.0f);
- HDfprintf(file->logfp, " (%f s)\n", time_diff);
+ HDfprintf(file->logfp, " (%fs @ %.6lu.%.6llu)\n", time_diff, (unsigned long long)timeval_start.tv_sec, (unsigned long long)timeval_start.tv_usec);
/* Add to total read time */
file->total_read_time += time_diff;
@@ -1369,7 +1433,7 @@ H5FD_log_write(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, had
timeval_diff.tv_sec--;
} /* end if */
time_diff = (double)timeval_diff.tv_sec + ((double)timeval_diff.tv_usec / (double)1000000.0f);
- HDfprintf(file->logfp, " (%f s)\n", time_diff);
+ HDfprintf(file->logfp, " (%fs @ %.6lu.%.6llu)\n", time_diff, (unsigned long long)timeval_start.tv_sec, (unsigned long long)timeval_start.tv_usec);
/* Add to total seek time */
file->total_seek_time += time_diff;
@@ -1438,8 +1502,10 @@ H5FD_log_write(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, had
/* Check if this is the first write into a "default" section, grabbed by the metadata agregation algorithm */
if(file->fa.flags & H5FD_LOG_FLAVOR) {
- if((H5FD_mem_t)file->flavor[orig_addr] == H5FD_MEM_DEFAULT)
+ if((H5FD_mem_t)file->flavor[orig_addr] == H5FD_MEM_DEFAULT) {
HDmemset(&file->flavor[orig_addr], (int)type, orig_size);
+ HDfprintf(file->logfp, " (fresh)");
+ } /* end if */
} /* end if */
#ifdef H5_HAVE_GETTIMEOFDAY
@@ -1455,7 +1521,7 @@ H5FD_log_write(H5FD_t *_file, H5FD_mem_t type, hid_t H5_ATTR_UNUSED dxpl_id, had
timeval_diff.tv_sec--;
} /* end if */
time_diff = (double)timeval_diff.tv_sec + ((double)timeval_diff.tv_usec / (double)1000000.0f);
- HDfprintf(file->logfp, " (%f s)\n", time_diff);
+ HDfprintf(file->logfp, " (%fs @ %.6lu.%.6llu)\n", time_diff, (unsigned long long)timeval_start.tv_sec, (unsigned long long)timeval_start.tv_usec);
/* Add to total write time */
file->total_write_time += time_diff;
@@ -1509,6 +1575,14 @@ H5FD_log_truncate(H5FD_t *_file, hid_t H5_ATTR_UNUSED dxpl_id, hbool_t H5_ATTR_U
/* Extend the file to make sure it's large enough */
if(!H5F_addr_eq(file->eoa, file->eof)) {
+#ifdef H5_HAVE_GETTIMEOFDAY
+ struct timeval timeval_start, timeval_stop;
+#endif /* H5_HAVE_GETTIMEOFDAY */
+
+#ifdef H5_HAVE_GETTIMEOFDAY
+ if(file->fa.flags & H5FD_LOG_TIME_TRUNCATE)
+ HDgettimeofday(&timeval_start, NULL);
+#endif /* H5_HAVE_GETTIMEOFDAY */
#ifdef H5_HAVE_WIN32_API
LARGE_INTEGER li; /* 64-bit (union) integer for SetFilePointer() call */
DWORD dwPtrLow; /* Low-order pointer bits from SetFilePointer()
@@ -1539,10 +1613,40 @@ H5FD_log_truncate(H5FD_t *_file, hid_t H5_ATTR_UNUSED dxpl_id, hbool_t H5_ATTR_U
if(-1 == HDftruncate(file->fd, (HDoff_t)file->eoa))
HSYS_GOTO_ERROR(H5E_IO, H5E_SEEKERROR, FAIL, "unable to extend file properly")
#endif /* H5_HAVE_WIN32_API */
+#ifdef H5_HAVE_GETTIMEOFDAY
+ if(file->fa.flags & H5FD_LOG_TIME_TRUNCATE)
+ HDgettimeofday(&timeval_stop, NULL);
+#endif /* H5_HAVE_GETTIMEOFDAY */
/* Log information about the truncate */
if(file->fa.flags & H5FD_LOG_NUM_TRUNCATE)
file->total_truncate_ops++;
+ if(file->fa.flags & H5FD_LOG_TRUNCATE) {
+ HDfprintf(file->logfp, "Truncate: To %10a", file->eoa);
+#ifdef H5_HAVE_GETTIMEOFDAY
+ if(file->fa.flags & H5FD_LOG_TIME_TRUNCATE) {
+ struct timeval timeval_diff;
+ double time_diff;
+
+ /* Calculate the elapsed gettimeofday time */
+ timeval_diff.tv_usec = timeval_stop.tv_usec - timeval_start.tv_usec;
+ timeval_diff.tv_sec = timeval_stop.tv_sec - timeval_start.tv_sec;
+ if(timeval_diff.tv_usec < 0) {
+ timeval_diff.tv_usec += 1000000;
+ timeval_diff.tv_sec--;
+ } /* end if */
+ time_diff = (double)timeval_diff.tv_sec + ((double)timeval_diff.tv_usec / (double)1000000.0f);
+ HDfprintf(file->logfp, " (%fs @ %.6lu.%.6llu)\n", time_diff, (unsigned long long)timeval_start.tv_sec, (unsigned long long)timeval_start.tv_usec);
+
+ /* Add to total truncate time */
+ file->total_truncate_time += time_diff;
+ } /* end if */
+ else
+ HDfprintf(file->logfp, "\n");
+#else /* H5_HAVE_GETTIMEOFDAY */
+ HDfprintf(file->logfp, "\n");
+#endif /* H5_HAVE_GETTIMEOFDAY */
+ } /* end if */
/* Update the eof value */
file->eof = file->eoa;
diff --git a/src/H5FDlog.h b/src/H5FDlog.h
index 2f1544e..11044e2 100644
--- a/src/H5FDlog.h
+++ b/src/H5FDlog.h
@@ -25,34 +25,39 @@
#define H5FD_LOG (H5FD_log_init())
/* Flags for H5Pset_fapl_log() */
+/* Flags for tracking 'meta' operations (truncate) */
+#define H5FD_LOG_TRUNCATE 0x00000001
+#define H5FD_LOG_META_IO (H5FD_LOG_TRUNCATE)
/* Flags for tracking where reads/writes/seeks occur */
-#define H5FD_LOG_LOC_READ 0x00000001
-#define H5FD_LOG_LOC_WRITE 0x00000002
-#define H5FD_LOG_LOC_SEEK 0x00000004
+#define H5FD_LOG_LOC_READ 0x00000002
+#define H5FD_LOG_LOC_WRITE 0x00000004
+#define H5FD_LOG_LOC_SEEK 0x00000008
#define H5FD_LOG_LOC_IO (H5FD_LOG_LOC_READ|H5FD_LOG_LOC_WRITE|H5FD_LOG_LOC_SEEK)
/* Flags for tracking number of times each byte is read/written */
-#define H5FD_LOG_FILE_READ 0x00000008
-#define H5FD_LOG_FILE_WRITE 0x00000010
+#define H5FD_LOG_FILE_READ 0x00000010
+#define H5FD_LOG_FILE_WRITE 0x00000020
#define H5FD_LOG_FILE_IO (H5FD_LOG_FILE_READ|H5FD_LOG_FILE_WRITE)
/* Flag for tracking "flavor" (type) of information stored at each byte */
-#define H5FD_LOG_FLAVOR 0x00000020
+#define H5FD_LOG_FLAVOR 0x00000040
/* Flags for tracking total number of reads/writes/seeks/truncates */
-#define H5FD_LOG_NUM_READ 0x00000040
-#define H5FD_LOG_NUM_WRITE 0x00000080
-#define H5FD_LOG_NUM_SEEK 0x00000100
-#define H5FD_LOG_NUM_TRUNCATE 0x00000200
+#define H5FD_LOG_NUM_READ 0x00000080
+#define H5FD_LOG_NUM_WRITE 0x00000100
+#define H5FD_LOG_NUM_SEEK 0x00000200
+#define H5FD_LOG_NUM_TRUNCATE 0x00000400
#define H5FD_LOG_NUM_IO (H5FD_LOG_NUM_READ|H5FD_LOG_NUM_WRITE|H5FD_LOG_NUM_SEEK|H5FD_LOG_NUM_TRUNCATE)
-/* Flags for tracking time spent in open/stat/read/write/seek/close */
-#define H5FD_LOG_TIME_OPEN 0x00000400
-#define H5FD_LOG_TIME_STAT 0x00000800
-#define H5FD_LOG_TIME_READ 0x00001000
-#define H5FD_LOG_TIME_WRITE 0x00002000
-#define H5FD_LOG_TIME_SEEK 0x00004000
-#define H5FD_LOG_TIME_CLOSE 0x00008000
-#define H5FD_LOG_TIME_IO (H5FD_LOG_TIME_OPEN|H5FD_LOG_TIME_STAT|H5FD_LOG_TIME_READ|H5FD_LOG_TIME_WRITE|H5FD_LOG_TIME_SEEK|H5FD_LOG_TIME_CLOSE)
-/* Flag for tracking allocation of space in file */
-#define H5FD_LOG_ALLOC 0x00010000
-#define H5FD_LOG_ALL (H5FD_LOG_ALLOC|H5FD_LOG_TIME_IO|H5FD_LOG_NUM_IO|H5FD_LOG_FLAVOR|H5FD_LOG_FILE_IO|H5FD_LOG_LOC_IO)
+/* Flags for tracking time spent in open/stat/read/write/seek/truncate/close */
+#define H5FD_LOG_TIME_OPEN 0x00000800
+#define H5FD_LOG_TIME_STAT 0x00001000
+#define H5FD_LOG_TIME_READ 0x00002000
+#define H5FD_LOG_TIME_WRITE 0x00004000
+#define H5FD_LOG_TIME_SEEK 0x00008000
+#define H5FD_LOG_TIME_TRUNCATE 0x00010000
+#define H5FD_LOG_TIME_CLOSE 0x00020000
+#define H5FD_LOG_TIME_IO (H5FD_LOG_TIME_OPEN|H5FD_LOG_TIME_STAT|H5FD_LOG_TIME_READ|H5FD_LOG_TIME_WRITE|H5FD_LOG_TIME_SEEK|H5FD_LOG_TIME_TRUNCATE|H5FD_LOG_TIME_CLOSE)
+/* Flags for tracking allocation/release of space in file */
+#define H5FD_LOG_ALLOC 0x00040000
+#define H5FD_LOG_FREE 0x00080000
+#define H5FD_LOG_ALL (H5FD_LOG_FREE|H5FD_LOG_ALLOC|H5FD_LOG_TIME_IO|H5FD_LOG_NUM_IO|H5FD_LOG_FLAVOR|H5FD_LOG_FILE_IO|H5FD_LOG_LOC_IO|H5FD_LOG_META_IO)
#ifdef __cplusplus
extern "C" {
diff --git a/src/H5FDmpio.c b/src/H5FDmpio.c
index ed70e20..a3a404f 100644
--- a/src/H5FDmpio.c
+++ b/src/H5FDmpio.c
@@ -90,7 +90,7 @@ static herr_t H5FD_mpio_read(H5FD_t *_file, H5FD_mem_t type, hid_t dxpl_id, hadd
size_t size, void *buf);
static herr_t H5FD_mpio_write(H5FD_t *_file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr,
size_t size, const void *buf);
-static herr_t H5FD_mpio_flush(H5FD_t *_file, hid_t dxpl_id, unsigned closing);
+static herr_t H5FD_mpio_flush(H5FD_t *_file, hid_t dxpl_id, hbool_t closing);
static herr_t H5FD_mpio_truncate(H5FD_t *_file, hid_t dxpl_id, hbool_t closing);
static int H5FD_mpio_mpi_rank(const H5FD_t *_file);
static int H5FD_mpio_mpi_size(const H5FD_t *_file);
@@ -1866,7 +1866,7 @@ done:
*-------------------------------------------------------------------------
*/
static herr_t
-H5FD_mpio_flush(H5FD_t *_file, hid_t H5_ATTR_UNUSED dxpl_id, unsigned closing)
+H5FD_mpio_flush(H5FD_t *_file, hid_t H5_ATTR_UNUSED dxpl_id, hbool_t closing)
{
H5FD_mpio_t *file = (H5FD_mpio_t*)_file;
int mpi_code; /* mpi return code */
diff --git a/src/H5FDmulti.c b/src/H5FDmulti.c
index d0dfab3..38d0ae3 100644
--- a/src/H5FDmulti.c
+++ b/src/H5FDmulti.c
@@ -1290,7 +1290,7 @@ H5FD_multi_get_eoa(const H5FD_t *_file, H5FD_mem_t type)
} else {
H5FD_mem_t mmt = file->fa.memb_map[type];
- if(H5FD_MEM_DEFAULT==mmt)
+ if(H5FD_MEM_DEFAULT == mmt)
mmt = type;
if(file->memb[mmt]) {
@@ -1358,18 +1358,24 @@ H5FD_multi_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t eoa)
H5Eclear2(H5E_DEFAULT);
mmt = file->fa.memb_map[type];
- if(H5FD_MEM_DEFAULT == mmt)
- mmt = type;
-
- /* Handle backward compatibility in a quick and simple way. v1.6 library had EOA for the entire virtual
- * file. But it wasn't meaningful. So v1.8 library doesn't have it anymore. It saves the EOA for the
- * metadata file, instead. Here we try to figure out whether the EOA is from a v1.6 file by comparing its
- * value. If it is a big value, we assume it's from v1.6 and simply discard it. This is the normal case
- * when the metadata file has the smallest starting address. If the metadata file has the biggest address,
- * the EOAs of v1.6 and v1.8 files are the same. It won't cause any trouble. (Please see Issue 2598
- * in Jira) SLU - 2011/6/21
+ if(H5FD_MEM_DEFAULT == mmt) {
+ if(H5FD_MEM_DEFAULT == type)
+ mmt = H5FD_MEM_SUPER;
+ else
+ mmt = type;
+ } /* end if */
+
+ /* Handle backward compatibility in a quick and simple way. v1.6 library
+ * had EOA for the entire virtual file. But it wasn't meaningful. So v1.8
+ * library doesn't have it anymore. It saves the EOA for the metadata file,
+ * instead. Here we try to figure out whether the EOA is from a v1.6 file
+ * by comparing its value. If it is a big value, we assume it's from v1.6
+ * and simply discard it. This is the normal case when the metadata file
+ * has the smallest starting address. If the metadata file has the biggest
+ * address, the EOAs of v1.6 and v1.8 files are the same. It won't cause
+ * any trouble. (Please see Issue 2598 in Jira) SLU - 2011/6/21
*/
- if(H5FD_MEM_SUPER == type && file->memb_eoa[H5FD_MEM_SUPER] > 0 && eoa > file->memb_eoa[H5FD_MEM_SUPER])
+ if(H5FD_MEM_SUPER == mmt && file->memb_eoa[H5FD_MEM_SUPER] > 0 && eoa > (file->memb_next[H5FD_MEM_SUPER] / 2))
return 0;
assert(eoa >= file->fa.memb_addr[mmt]);
@@ -1378,7 +1384,7 @@ H5FD_multi_set_eoa(H5FD_t *_file, H5FD_mem_t type, haddr_t eoa)
H5E_BEGIN_TRY {
status = H5FDset_eoa(file->memb[mmt], mmt, (eoa - file->fa.memb_addr[mmt]));
} H5E_END_TRY;
- if (status<0)
+ if(status < 0)
H5Epush_ret(func, H5E_ERR_CLS, H5E_FILE, H5E_BADVALUE, "member H5FDset_eoa failed", -1)
return 0;
diff --git a/src/H5FDprivate.h b/src/H5FDprivate.h
index 915f7e1..c40dc54 100644
--- a/src/H5FDprivate.h
+++ b/src/H5FDprivate.h
@@ -130,7 +130,11 @@ struct H5P_genplist_t;
struct H5F_t;
H5_DLL int H5FD_term_interface(void);
-H5_DLL herr_t H5FD_locate_signature(H5FD_t *file, const H5P_genplist_t *dxpl, haddr_t *sig_addr);
+H5_DLL herr_t H5FD_locate_signature(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, haddr_t *sig_addr);
H5_DLL H5FD_class_t *H5FD_get_class(hid_t id);
H5_DLL hsize_t H5FD_sb_size(H5FD_t *file);
H5_DLL herr_t H5FD_sb_encode(H5FD_t *file, char *name/*out*/, uint8_t *buf);
@@ -154,9 +158,17 @@ H5_DLL haddr_t H5FD_get_eof(const H5FD_t *file, H5FD_mem_t type);
H5_DLL haddr_t H5FD_get_maxaddr(const H5FD_t *file);
H5_DLL herr_t H5FD_get_feature_flags(const H5FD_t *file, unsigned long *feature_flags);
H5_DLL herr_t H5FD_get_fs_type_map(const H5FD_t *file, H5FD_mem_t *type_map);
-H5_DLL herr_t H5FD_read(H5FD_t *file, const H5P_genplist_t *dxpl, H5FD_mem_t type,
+H5_DLL herr_t H5FD_read(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, H5FD_mem_t type,
haddr_t addr, size_t size, void *buf/*out*/);
-H5_DLL herr_t H5FD_write(H5FD_t *file, const H5P_genplist_t *dxpl, H5FD_mem_t type,
+H5_DLL herr_t H5FD_write(H5FD_t *file,
+#ifndef H5_DEBUG_BUILD
+const
+#endif /* H5_DEBUG_BUILD */
+H5P_genplist_t *dxpl, H5FD_mem_t type,
haddr_t addr, size_t size, const void *buf);
H5_DLL herr_t H5FD_flush(H5FD_t *file, hid_t dxpl_id, hbool_t closing);
H5_DLL herr_t H5FD_truncate(H5FD_t *file, hid_t dxpl_id, hbool_t closing);
diff --git a/src/H5Fint.c b/src/H5Fint.c
index 5b7fdda..201dd65 100644
--- a/src/H5Fint.c
+++ b/src/H5Fint.c
@@ -1041,16 +1041,12 @@ H5F_open(const char *name, unsigned flags, hid_t fcpl_id, hid_t fapl_id,
* open it are different than the desired flags. Close the tentative
* file and open it for real.
*/
- if(H5FD_close(lf) < 0) {
- file = NULL; /*to prevent destruction of wrong file*/
+ if(H5FD_close(lf) < 0)
HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "unable to close low-level file info")
- } /* end if */
- if(NULL == (lf = H5FD_open(name, flags, fapl_id, HADDR_UNDEF))) {
- file = NULL; /*to prevent destruction of wrong file*/
+
+ if(NULL == (lf = H5FD_open(name, flags, fapl_id, HADDR_UNDEF)))
HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "unable to open file")
- } /* end if */
} /* end if */
-
if(NULL == (file = H5F_new(NULL, flags, fcpl_id, fapl_id, lf)))
HGOTO_ERROR(H5E_FILE, H5E_CANTOPENFILE, NULL, "unable to create new file object")
} /* end else */
diff --git a/src/H5Fsuper.c b/src/H5Fsuper.c
index 23b7f78..66b34bc 100644
--- a/src/H5Fsuper.c
+++ b/src/H5Fsuper.c
@@ -401,7 +401,7 @@ H5F__super_read(H5F_t *f, hid_t dxpl_id, hbool_t initial_read)
* individually.
*/
/* Can skip this test when it is not the initial file open--
- * H5F_super_read() call from H5F_evict_tagged_metadata() for
+ * H5F__super_read() call from H5F_evict_tagged_metadata() for
* refreshing object.
* When flushing file buffers and fractal heap is involved,
* the library will allocate actual space for tmp addresses
@@ -448,8 +448,7 @@ H5F__super_read(H5F_t *f, hid_t dxpl_id, hbool_t initial_read)
* portion of the driver info block
*/
if(H5FD_set_eoa(f->shared->lf, H5FD_MEM_SUPER, sblock->driver_addr + H5F_DRVINFOBLOCK_HDR_SIZE) < 0) /* will extend eoa later if required */
- HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, \
- "set end of space allocation request failed")
+ HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "set end of space allocation request failed")
/* Look up the driver info block */
if(NULL == (drvinfo = (H5O_drvinfo_t *)H5AC_protect(f, dxpl_id, H5AC_DRVRINFO, sblock->driver_addr, &drvrinfo_udata, rw_flags)))
@@ -458,11 +457,8 @@ H5F__super_read(H5F_t *f, hid_t dxpl_id, hbool_t initial_read)
/* Loading the driver info block is enough to set up the right info */
/* Check if we need to rewrite the driver info block info */
- if ( ( (rw_flags & H5AC__READ_ONLY_FLAG) == 0 ) &&
- ( H5F_HAS_FEATURE(f, H5FD_FEAT_DIRTY_DRVRINFO_LOAD) ) ) {
-
+ if(((rw_flags & H5AC__READ_ONLY_FLAG) == 0) && H5F_HAS_FEATURE(f, H5FD_FEAT_DIRTY_DRVRINFO_LOAD))
drvinfo_flags |= H5AC__DIRTIED_FLAG;
- } /* end if */
/* set the pin entry flag so that the driver information block
* cache entry will be pinned in the cache.
@@ -478,7 +474,7 @@ H5F__super_read(H5F_t *f, hid_t dxpl_id, hbool_t initial_read)
} /* end if */
/* (Account for the stored EOA being absolute offset -NAF) */
- if(H5F__set_eoa(f, H5FD_MEM_SUPER, udata.stored_eof - sblock->base_addr) < 0)
+ if(H5F__set_eoa(f, H5FD_MEM_DEFAULT, udata.stored_eof - sblock->base_addr) < 0)
HGOTO_ERROR(H5E_FILE, H5E_CANTSET, FAIL, "unable to set end-of-address marker for file")
/* Decode the optional superblock extension info */
diff --git a/src/H5Gint.c b/src/H5Gint.c
index a0e06f3..90c011a 100644
--- a/src/H5Gint.c
+++ b/src/H5Gint.c
@@ -501,6 +501,14 @@ H5G_close(H5G_t *grp)
if(H5O_close(&(grp->oloc)) < 0)
HGOTO_ERROR(H5E_SYM, H5E_CANTINIT, FAIL, "unable to close")
+ /* Evict group metadata if evicting on close */
+ if(H5F_SHARED(grp->oloc.file) && H5F_EVICT_ON_CLOSE(grp->oloc.file)) {
+ if(H5AC_flush_tagged_metadata(grp->oloc.file, grp->oloc.addr, H5AC_ind_read_dxpl_id) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_CANTFLUSH, FAIL, "unable to flush tagged metadata")
+ if(H5AC_evict_tagged_metadata(grp->oloc.file, grp->oloc.addr, FALSE, H5AC_ind_read_dxpl_id) < 0)
+ HGOTO_ERROR(H5E_CACHE, H5E_CANTFLUSH, FAIL, "unable to evict tagged metadata")
+ } /* end if */
+
/* Free memory */
grp->shared = H5FL_FREE(H5G_shared_t, grp->shared);
} else {
diff --git a/src/H5PL.c b/src/H5PL.c
index d715079..7e4dbcc 100644
--- a/src/H5PL.c
+++ b/src/H5PL.c
@@ -93,7 +93,7 @@ typedef const void *(__cdecl *H5PL_get_plugin_info_t)(void);
#define H5PL_CLOSE_LIB(H) dlclose(H)
/* Clear error */
-#define H5PL_CLR_ERROR dlerror()
+#define H5PL_CLR_ERROR HERROR(H5E_PLUGIN, H5E_CANTGET, "can't dlopen:%s", dlerror())
typedef const void *(*H5PL_get_plugin_info_t)(void);
#endif /* H5_HAVE_WIN32_API */
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h
index b00dc6b..d00b5be 100644
--- a/src/H5Sprivate.h
+++ b/src/H5Sprivate.h
@@ -183,8 +183,8 @@ typedef struct H5S_sel_iter_op_t {
#define H5S_SELECT_IS_SINGLE(S) (H5S_select_is_single(S))
#define H5S_SELECT_IS_REGULAR(S) (H5S_select_is_regular(S))
#define H5S_SELECT_ADJUST_U(S,O) (H5S_select_adjust_u(S, O))
-#define H5S_SELECT_PROJECT_SCALAR(S,O) (H5S_select_project_scalar)(S, O))
-#define H5S_SELECT_PROJECT_SIMPLE(S,NS,O) (H5S_select_project_simple)(S, NS, O))
+#define H5S_SELECT_PROJECT_SCALAR(S,O) (H5S_select_project_scalar(S, O))
+#define H5S_SELECT_PROJECT_SIMPLE(S,NS,O) (H5S_select_project_simple(S, NS, O))
#define H5S_SELECT_ITER_COORDS(ITER,COORDS) (H5S_select_iter_coords(ITER,COORDS))
#define H5S_SELECT_ITER_BLOCK(ITER,START,END) (H5S_select_iter_block(ITER,START,END))
#define H5S_SELECT_ITER_NELMTS(ITER) (H5S_select_iter_nelmts(ITER))
diff --git a/src/Makefile.am b/src/Makefile.am
index 7facf9a..8d9df87 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,10 +42,10 @@ DISTCLEANFILES=H5pubconf.h
# library sources
libhdf5_la_SOURCES= H5.c H5checksum.c H5dbg.c H5system.c H5timer.c H5trace.c \
H5A.c H5Abtree2.c H5Adense.c H5Adeprec.c H5Aint.c H5Atest.c \
- H5AC.c \
+ H5AC.c H5ACdbg.c \
H5B.c H5Bcache.c H5Bdbg.c \
H5B2.c H5B2cache.c H5B2dbg.c H5B2hdr.c H5B2int.c H5B2stat.c H5B2test.c \
- H5C.c H5Cepoch.c H5Cquery.c H5Ctag.c H5Ctest.c \
+ H5C.c H5Cdbg.c H5Cepoch.c H5Cquery.c H5Ctag.c H5Ctest.c \
H5CS.c \
H5D.c H5Dbtree.c H5Dbtree2.c H5Dchunk.c H5Dcompact.c H5Dcontig.c H5Ddbg.c \
H5Ddeprec.c H5Dearray.c H5Defl.c H5Dfarray.c H5Dfill.c H5Dint.c \
diff --git a/test/evict_on_close.c b/test/evict_on_close.c
index 1f515b2..b7482dd 100644
--- a/test/evict_on_close.c
+++ b/test/evict_on_close.c
@@ -27,6 +27,7 @@
#define H5D_TESTING
#define H5F_FRIEND /*suppress error about including H5Fpkg */
#define H5F_TESTING
+#define H5G_FRIEND /*suppress error about including H5Gpkg */
#define H5I_FRIEND /*suppress error about including H5Ipkg */
#define H5I_TESTING
@@ -35,6 +36,7 @@
#include "H5Cpkg.h"
#include "H5Dpkg.h"
#include "H5Fpkg.h"
+#include "H5Gpkg.h"
#include "H5Ipkg.h"
/* Uncomment to manually inspect cache states */
@@ -46,6 +48,12 @@ const char *FILENAMES[] = {
};
#define FILENAME_BUF_SIZE 1024
+/* Group names */
+#define GROUP_OLD_STYLE_1_NAME "old1"
+#define GROUP_OLD_STYLE_2_NAME "old2"
+#define GROUP_NEW_STYLE_1_NAME "new1"
+#define GROUP_NEW_STYLE_2_NAME "new2"
+
/* Dataset names */
#define DSET_COMPACT_NAME "compact"
#define DSET_CONTIGUOUS_NAME "contiguous"
@@ -61,7 +69,8 @@ const char *FILENAMES[] = {
static hbool_t verify_tag_not_in_cache(H5F_t *f, haddr_t tag);
static herr_t check_evict_on_close_api(void);
static hid_t generate_eoc_test_file(hid_t fapl_id);
-static herr_t check_configuration(hid_t fid, const char *dset_name);
+static herr_t check_dset_scheme(hid_t fid, const char *dset_name);
+static herr_t check_group_layout(hid_t fid, const char *group_name, const char *subgroup_name);
/*-------------------------------------------------------------------------
@@ -124,6 +133,7 @@ generate_eoc_test_file(hid_t fapl_id)
char filename[FILENAME_BUF_SIZE]; /* decorated file name */
hid_t fid = -1; /* file ID (returned) */
hid_t fapl_copy_id = -1; /* ID of copied fapl */
+ hid_t gid1 = -1, gid2 = -1; /* group IDs */
hid_t sid = -1; /* dataspace ID */
hid_t dcpl_id = -1; /* dataset creation plist */
hid_t did = -1; /* dataset ID */
@@ -141,21 +151,49 @@ generate_eoc_test_file(hid_t fapl_id)
/* Get a VFD-specific filename */
h5_fixname(FILENAMES[0], fapl_id, filename, sizeof(filename));
+ /* Copy the fapl and set the latest file format */
+ if((fapl_copy_id = H5Pcopy(fapl_id)) < 0)
+ TEST_ERROR;
+ if(H5Pset_libver_bounds(fapl_copy_id, H5F_LIBVER_LATEST, H5F_LIBVER_LATEST) < 0)
+ TEST_ERROR;
+
+ /* Create a data buffer for dataset writes */
+ if(NULL == (data = (int *)HDcalloc(NELEMENTS, sizeof(int))))
+ TEST_ERROR;
+
/* Create file */
if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_id)) < 0)
TEST_ERROR;
- /***********************************************************/
- /* Generate datasets and ensure that the scheme is correct */
- /***********************************************************/
- /* Create the data buffer */
- if(NULL == (data = (int *)HDcalloc(NELEMENTS, sizeof(int))))
+ /*******************************************/
+ /* CREATE OBJECTS WITH THE OLD FILE FORMAT */
+ /*******************************************/
+
+ /*******************/
+ /* Generate groups */
+ /*******************/
+
+ /*********************************************/
+ /* Old-style (version 1 B-tree + local heap) */
+ /*********************************************/
+
+ if((gid1 = H5Gcreate2(fid, GROUP_OLD_STYLE_1_NAME, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
TEST_ERROR;
+ if((gid2 = H5Gcreate2(gid1, GROUP_OLD_STYLE_2_NAME, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ TEST_ERROR;
+ if(H5Gclose(gid1) < 0)
+ TEST_ERROR;
+ if(H5Gclose(gid2) < 0)
+ TEST_ERROR;
+
+ /********************************************************************/
+ /* Generate datasets and ensure that the chunking scheme is correct */
+ /********************************************************************/
- /****************************************************/
- /* Old file format data structures (v1 B-tree only) */
- /****************************************************/
+ /***********************************/
+ /* Old file format data structures */
+ /***********************************/
/********************/
/* Version 1 B-tree */
@@ -198,23 +236,39 @@ generate_eoc_test_file(hid_t fapl_id)
if(H5Pclose(dcpl_id) < 0)
TEST_ERROR;
- /***********************************/
- /* New file format data structures */
- /***********************************/
+
+ /**********************************************/
+ /* CREATE OBJECTS WITH THE LATEST FILE FORMAT */
+ /**********************************************/
/* Close the file */
if(H5Fclose(fid) < 0)
TEST_ERROR;
- /* Copy the fapl and set the latest file format */
- if((fapl_copy_id = H5Pcopy(fapl_id)) < 0)
- TEST_ERROR;
- if(H5Pset_libver_bounds(fapl_copy_id, H5F_LIBVER_LATEST, H5F_LIBVER_LATEST) < 0)
+ /* Reopen the file with the "latest file format" fapl */
+ if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl_copy_id)) < 0)
TEST_ERROR;
- /* Reopen the file */
- if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl_copy_id)) < 0)
+ /*******************/
+ /* Generate groups */
+ /*******************/
+
+ /***********************************************/
+ /* New-style (version 2 B-tree + fractal heap) */
+ /***********************************************/
+
+ if((gid1 = H5Gcreate2(fid, GROUP_NEW_STYLE_1_NAME, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
TEST_ERROR;
+ if((gid2 = H5Gcreate2(gid1, GROUP_NEW_STYLE_2_NAME, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ TEST_ERROR;
+ if(H5Gclose(gid1) < 0)
+ TEST_ERROR;
+ if(H5Gclose(gid2) < 0)
+ TEST_ERROR;
+
+ /********************************************************************/
+ /* Generate datasets and ensure that the scheme is chunking correct */
+ /********************************************************************/
/********************/
/* Extensible Array */
@@ -488,7 +542,112 @@ error:
/*-------------------------------------------------------------------------
- * Function: check_configuration()
+ * Function: check_group_layout()
+ *
+ * Purpose: Verify that the evict-on-close feature works for a given
+ * group layout.
+ *
+ * Return: SUCCEED/FAIL
+ *
+ * Programmer: Dana Robinson
+ * Fall 2016
+ *
+ *-------------------------------------------------------------------------
+ */
+static herr_t
+check_group_layout(hid_t fid, const char *group_name, const char *subgroup_name)
+{
+ H5F_t *file_ptr = NULL; /* ptr to internal file struct */
+ hid_t gid1 = -1, gid2 = -1; /* group IDs */
+ H5G_t *grp_ptr = NULL; /* ptr to internal group struct */
+ haddr_t tag1, tag2; /* MD cache tags for groups */
+ int32_t before, during, after; /* cache sizes */
+
+
+ /* NOTE: The TESTING() macro is called in main() */
+
+ /* Get a pointer to the file struct */
+ if(NULL == (file_ptr = (H5F_t *)H5I_object_verify(fid, H5I_FILE)))
+ TEST_ERROR;
+
+ /* Record the number of cache entries */
+ before = file_ptr->shared->cache->index_len;
+
+#ifdef EOC_MANUAL_INSPECTION
+ HDprintf("\nCACHE BEFORE GROUP OPEN:\n");
+ if(H5AC_dump_cache(file_ptr) < 0)
+ TEST_ERROR;
+ HDprintf("NUMBER OF CACHE ENTRIES: %d\n", before);
+#endif
+
+ /* Open groups and get tags */
+ if((gid1 = H5Gopen2(fid, group_name, H5P_DEFAULT)) < 0)
+ TEST_ERROR;
+ if((gid2 = H5Gopen2(gid1, subgroup_name, H5P_DEFAULT)) < 0)
+ TEST_ERROR;
+
+ if(NULL == (grp_ptr = (H5G_t *)H5I_object_verify(gid1, H5I_GROUP)))
+ TEST_ERROR;
+ tag1 = grp_ptr->oloc.addr;
+
+ if(NULL == (grp_ptr = (H5G_t *)H5I_object_verify(gid2, H5I_GROUP)))
+ TEST_ERROR;
+ tag2 = grp_ptr->oloc.addr;
+
+ /* Record the number of cache entries */
+ during = file_ptr->shared->cache->index_len;
+
+#ifdef EOC_MANUAL_INSPECTION
+ HDprintf("\nCACHE AFTER OPENING GROUPS (WHILE OPEN):\n");
+ if(H5AC_dump_cache(file_ptr) < 0)
+ TEST_ERROR;
+ HDprintf("TAGS: group: %#X, subgroup: %#X\n", tag1, tag2);
+ HDprintf("NUMBER OF CACHE ENTRIES: %d\n", during);
+#endif
+
+ /* Close the groups */
+ if(H5Gclose(gid1) < 0)
+ TEST_ERROR;
+ if(H5Gclose(gid2) < 0)
+ TEST_ERROR;
+
+ /* Record the number of cache entries */
+ after = file_ptr->shared->cache->index_len;
+
+#ifdef EOC_MANUAL_INSPECTION
+ HDprintf("\nCACHE AFTER CLOSING GROUPS:\n");
+ if(H5AC_dump_cache(file_ptr) < 0)
+ TEST_ERROR;
+ HDprintf("NUMBER OF CACHE ENTRIES: %d\n", after);
+#endif
+
+ /* Ensure that the cache does not contain entries with the tags */
+ if(TRUE == verify_tag_not_in_cache(file_ptr, tag1))
+ TEST_ERROR;
+ if(TRUE == verify_tag_not_in_cache(file_ptr, tag2))
+ TEST_ERROR;
+
+ /* Compare the number of cache entries */
+ if(before != after || before == during)
+ TEST_ERROR;
+
+ PASSED();
+ return SUCCEED;
+
+error:
+ H5E_BEGIN_TRY {
+ H5Gclose(gid1);
+ H5Gclose(gid2);
+ } H5E_END_TRY;
+
+ H5_FAILED();
+ return FAIL;
+
+} /* end check_group_layout() */
+
+
+/*-------------------------------------------------------------------------
+ * Function: check_dset_scheme()
*
* Purpose: Verify that the evict-on-close feature works for a given
* dataset layout and/or chunk index.
@@ -501,7 +660,7 @@ error:
*-------------------------------------------------------------------------
*/
static herr_t
-check_configuration(hid_t fid, const char *dset_name)
+check_dset_scheme(hid_t fid, const char *dset_name)
{
H5F_t *file_ptr = NULL; /* ptr to internal file struct */
hid_t did = -1; /* dataset ID */
@@ -537,7 +696,7 @@ check_configuration(hid_t fid, const char *dset_name)
TEST_ERROR;
tag = dset_ptr->oloc.addr;
- /* Read data from the dataset so the cache gets populated with chunk
+ /* Read data from the dataset so the cache gets populated with chunk entries
* and the like.
*/
if(H5Dread(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data) < 0)
@@ -568,7 +727,7 @@ check_configuration(hid_t fid, const char *dset_name)
HDprintf("NUMBER OF CACHE ENTRIES: %d\n", after);
#endif
- /* Ensure that the cache does not contain data items with the tag */
+ /* Ensure that the cache does not contain entries with the tag */
if(TRUE == verify_tag_not_in_cache(file_ptr, tag))
TEST_ERROR;
@@ -589,7 +748,7 @@ error:
H5_FAILED();
return FAIL;
-} /* check_configuration() */
+} /* check_dset_scheme() */
/*-------------------------------------------------------------------------
@@ -694,7 +853,7 @@ main(void)
hid_t fid = -1; /* file ID */
unsigned nerrors = 0; /* number of test errors */
- HDprintf("Testing evict-on-close cache behavior.\n");
+ HDprintf("Testing evict-on-close cache behavior\n");
/* Initialize */
h5_reset();
@@ -724,23 +883,31 @@ main(void)
PUTS_ERROR("Unable to generate test file\n");
} /* end if */
+ /* Run tests with old- and new-style groups
+ * PASSED() and H5_FAILED() are handled in check_configuration()
+ */
+ TESTING("evict on close with old-style groups");
+ nerrors += check_group_layout(fid, GROUP_OLD_STYLE_1_NAME, GROUP_OLD_STYLE_2_NAME) < 0 ? 1 : 0;
+ TESTING("evict on close with new-style groups");
+ nerrors += check_group_layout(fid, GROUP_NEW_STYLE_1_NAME, GROUP_NEW_STYLE_2_NAME) < 0 ? 1 : 0;
+
/* Run tests with a variety of dataset configurations
* PASSED() and H5_FAILED() are handled in check_configuration()
*/
TESTING("evict on close with version 1 B-tree chunk index");
- nerrors += check_configuration(fid, DSET_BTREE_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_BTREE_NAME) < 0 ? 1 : 0;
TESTING("evict on close with extensible array chunk index");
- nerrors += check_configuration(fid, DSET_EARRAY_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_EARRAY_NAME) < 0 ? 1 : 0;
TESTING("evict on close with version 2 B-tree chunk index");
- nerrors += check_configuration(fid, DSET_BT2_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_BT2_NAME) < 0 ? 1 : 0;
TESTING("evict on close with fixed array chunk index");
- nerrors += check_configuration(fid, DSET_FARRAY_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_FARRAY_NAME) < 0 ? 1 : 0;
TESTING("evict on close with \'single chunk\' chunk index");
- nerrors += check_configuration(fid, DSET_SINGLE_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_SINGLE_NAME) < 0 ? 1 : 0;
TESTING("evict on close with contiguous layout");
- nerrors += check_configuration(fid, DSET_CONTIGUOUS_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_CONTIGUOUS_NAME) < 0 ? 1 : 0;
TESTING("evict on close with compact layout");
- nerrors += check_configuration(fid, DSET_COMPACT_NAME) < 0 ? 1 : 0;
+ nerrors += check_dset_scheme(fid, DSET_COMPACT_NAME) < 0 ? 1 : 0;
/* Close the test file */
if(H5Fclose(fid) < 0) {
diff --git a/test/objcopy.c b/test/objcopy.c
index 7f5a9ba..4166284 100644
--- a/test/objcopy.c
+++ b/test/objcopy.c
@@ -10547,7 +10547,7 @@ test_copy_committed_dt_merge_attr(hid_t fcpl_src, hid_t fcpl_dst, hid_t src_fapl
if((aid = H5Acreate2(gid, "attr", tid, sid, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- //if(H5Awrite(aid, tid, buf) < 0) TEST_ERROR
+ if(H5Awrite(aid, tid, buf) < 0) TEST_ERROR
/* close the datatype */
if(H5Tclose(tid) < 0) TEST_ERROR
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 0b6faa8..4b9b765 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -6,11 +6,6 @@ PROJECT (HDF5_TOOLS)
#-----------------------------------------------------------------------------
add_definitions (${HDF_EXTRA_C_FLAGS})
-#-----------------------------------------------------------------------------
-# Setup include Directories
-#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${HDF5_TOOLS_SOURCE_DIR}/lib)
-
# --------------------------------------------------------------------
# If testing was NOT enabled, then we need to build the tools library
# --------------------------------------------------------------------
@@ -18,35 +13,15 @@ if (NOT BUILD_TESTING)
add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/lib)
endif (NOT BUILD_TESTING)
-#-- Add the h5diff and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5diff)
-
-#-- Add the h5ls executable
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5ls)
-
-#-- Misc Executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/misc)
-
-#-- Add the h5import and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5import)
-
-#-- h5Repack executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5repack)
-
-#-- Add the h5dump and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5jam)
-
-#-- Add the h5copy and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5copy)
-
-#-- Add the h5stat and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5stat)
-
-#-- Add the h5dump and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5dump)
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_SOURCE_DIR}/lib)
-#-- Add the h5dump and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5format_convert)
+#-- Add the test sources
+add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/src)
-#-- Add the perform and test executables
-add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/perform)
+#-- Add the tests
+if (BUILD_TESTING)
+ add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/test)
+endif (BUILD_TESTING)
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 887c0f0..cd97069 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -24,7 +24,6 @@ include $(top_srcdir)/config/commence.am
CONFIG=ordered
# All subdirectories
-SUBDIRS=lib h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat \
- h5format_convert perform
+SUBDIRS=lib src test
include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5repack/CMakeLists.txt b/tools/h5repack/CMakeLists.txt
deleted file mode 100644
index 2f2e3e2..0000000
--- a/tools/h5repack/CMakeLists.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5REPACK)
-
-#-----------------------------------------------------------------------------
-# Setup include Directories
-#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
-INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
-
-# --------------------------------------------------------------------
-# Add h5Repack executables
-# --------------------------------------------------------------------
-set (REPACK_COMMON_SOURCES
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_copy.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_filters.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_opttable.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_parse.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_refs.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_verify.c
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack.c
-)
-
-add_executable (h5repack ${REPACK_COMMON_SOURCES} ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repack_main.c)
-TARGET_NAMING (h5repack STATIC)
-TARGET_C_PROPERTIES (h5repack STATIC " " " ")
-target_link_libraries (h5repack ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
-set_target_properties (h5repack PROPERTIES FOLDER tools)
-set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repack")
-
-set (H5_DEP_EXECUTABLES h5repack)
-
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add h5Repack test executables
- # --------------------------------------------------------------------
- add_executable (testh5repack_detect_szip ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testh5repack_detect_szip.c)
- TARGET_NAMING (testh5repack_detect_szip STATIC)
- TARGET_C_PROPERTIES (testh5repack_detect_szip STATIC " " " ")
- target_link_libraries (testh5repack_detect_szip ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
- set_target_properties (testh5repack_detect_szip PROPERTIES FOLDER tools)
-
- add_executable (h5repacktest ${REPACK_COMMON_SOURCES} ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/h5repacktst.c)
- TARGET_NAMING (h5repacktest STATIC)
- TARGET_C_PROPERTIES (h5repacktest STATIC " " " ")
- target_link_libraries (h5repacktest ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
- set_target_properties (h5repacktest PROPERTIES FOLDER tools)
-
- #-----------------------------------------------------------------------------
- # If plugin library tests can be tested
- #-----------------------------------------------------------------------------
- set (HDF5_TOOL_PLUGIN_LIB_CORENAME "dynlibadd")
- set (HDF5_TOOL_PLUGIN_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_TOOL_PLUGIN_LIB_CORENAME}")
- set (HDF5_TOOL_PLUGIN_LIB_TARGET ${HDF5_TOOL_PLUGIN_LIB_CORENAME})
- add_definitions (${HDF_EXTRA_C_FLAGS})
- INCLUDE_DIRECTORIES (${HDF5_SRC_DIR})
-
- add_library (${HDF5_TOOL_PLUGIN_LIB_TARGET} SHARED dynlib_rpk.c)
- TARGET_C_PROPERTIES (${HDF5_TOOL_PLUGIN_LIB_TARGET} SHARED " " " ")
- target_link_libraries (${HDF5_TOOL_PLUGIN_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
- H5_SET_LIB_OPTIONS (${HDF5_TOOL_PLUGIN_LIB_TARGET} ${HDF5_TOOL_PLUGIN_LIB_NAME} SHARED ${HDF5_PACKAGE_SOVERSION})
-
- # make plugins dir
- file (MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/plugins")
- #-----------------------------------------------------------------------------
- # Copy plugin library to a plugins folder
- #-----------------------------------------------------------------------------
- add_custom_command (
- TARGET ${HDF5_TOOL_PLUGIN_LIB_TARGET}
- POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS -E copy_if_different
- "$<TARGET_FILE:${HDF5_TOOL_PLUGIN_LIB_TARGET}>"
- "${CMAKE_BINARY_DIR}/plugins/$<TARGET_FILE_NAME:${HDF5_TOOL_PLUGIN_LIB_TARGET}>"
- )
-
- include (CMakeTests.cmake)
-
-endif (BUILD_TESTING)
-
-##############################################################################
-##############################################################################
-### I N S T A L L A T I O N ###
-##############################################################################
-##############################################################################
-
-#-----------------------------------------------------------------------------
-# Rules for Installation of tools using make Install target
-#-----------------------------------------------------------------------------
-
-#INSTALL_PROGRAM_PDB (h5repack ${HDF5_INSTALL_BIN_DIR} toolsapplications)
-
-install (
- TARGETS
- h5repack
- EXPORT
- ${HDF5_EXPORTED_TARGETS}
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications
-)
diff --git a/tools/misc/testh5repart.sh.in b/tools/misc/testh5repart.sh.in
deleted file mode 100644
index fc33e0e..0000000
--- a/tools/misc/testh5repart.sh.in
+++ /dev/null
@@ -1,116 +0,0 @@
-#! /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 files COPYING and Copyright.html. COPYING can be found at the root
-# of the source code distribution tree; Copyright.html can be found at the
-# root level of an installed copy of the electronic HDF5 document set and
-# is linked from the top-level documents page. It can also be found at
-# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
-# access to either file, you may request a copy from help@hdfgroup.org.
-#
-# Tests for the h5repart tool
-
-srcdir=@srcdir@
-
-TESTNAME=h5repart
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-
-REPART=h5repart # The tool name
-REPART_BIN=`pwd`/$REPART # The path of the tool binary
-
-REPARTED_FAM=repart_test # The test name
-REPARTED_FAM_BIN=`pwd`/$REPARTED_FAM # The path of the test binary
-
-nerrors=0
-verbose=yes
-
-test -d ../testfiles || mkdir ../testfiles
-
-actual_dir=`pwd`/../testfiles
-
-# Print a line-line message left justified in a field of 70 characters
-# beginning with the word "Testing".
-#
-TESTING() {
- SPACES=" "
- echo "Testing $* $SPACES" | cut -c1-70 | tr -d '\012'
-}
-
-# Run a test and print PASS or *FAIL*. If a test fails then increment
-# the `nerrors' global variable.
-#
-TOOLTEST() {
- # Run tool test.
- TESTING $REPART $@
- (
-# echo
- cd $srcdir/../testfiles
- $RUNSERIAL $REPART_BIN $@
- )
-
- if test $? -eq 0; then
- echo " PASSED"
- else
- echo " FAILED"
- nerrors=`expr $nerrors + 1`
- fi
-}
-
-OUTPUTTEST() {
- # Run test program.
- TESTING $REPARTED_FAM $@
- (
- cd $actual_dir
- $RUNSERIAL $REPARTED_FAM_BIN $@
- )
-
- if test $? -eq 0; then
- echo " PASSED"
- else
- echo " FAILED"
- nerrors=`expr $nerrors + 1`
- fi
-}
-
-# Print a "SKIP" message
-SKIP() {
- TESTING $REPART $@
- echo " -SKIP-"
-}
-
-##############################################################################
-##############################################################################
-### T H E T E S T S ###
-##############################################################################
-##############################################################################
-
-# repartition family member size to 20,000 bytes.
-TOOLTEST -m 20000 family_file%05d.h5 $actual_dir/fst_family%05d.h5
-# repartition family member size to 5 KB.
-TOOLTEST -m 5k family_file%05d.h5 $actual_dir/scd_family%05d.h5
-# convert family file to sec2 file of 20,000 bytes
-TOOLTEST -m 20000 -family_to_sec2 family_file%05d.h5 $actual_dir/family_to_sec2.h5
-
-# test the output files repartitioned above.
-OUTPUTTEST
-echo
-
-# Clean up output file
-if test -z "$HDF5_NOCLEANUP"; then
- cd $actual_dir
- rm -f fst_family*.h5 scd_family*.h5 family_to_sec2.h5
-fi
-
-if test $nerrors -eq 0 ; then
- echo "All $TESTNAME tests passed."
- exit $EXIT_SUCCESS
-else
- echo "$TESTNAME tests failed with $nerrors errors."
- exit $EXIT_FAILURE
-fi
diff --git a/tools/perform/pio_standalone.h b/tools/perform/pio_standalone.h
deleted file mode 100644
index 762a564..0000000
--- a/tools/perform/pio_standalone.h
+++ /dev/null
@@ -1,157 +0,0 @@
-/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- * 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 files COPYING and Copyright.html. COPYING can be found at the root *
- * of the source code distribution tree; Copyright.html can be found at the *
- * root level of an installed copy of the electronic HDF5 document set and *
- * is linked from the top-level documents page. It can also be found at *
- * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
- * access to either file, you may request a copy from help@hdfgroup.org. *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-#ifndef PIO_STANDALONE_H__
-#define PIO_PERF_H__
-
-/* Header file for building h5perf by standalone mode.
- * Created: Christian Chilan, 2005/5/18.
- */
-
-/** From H5private.h **/
-
-#include "H5public.h" /* Include Public Definitions */
-
-
-/*
- * Include ANSI-C header files.
- */
-#ifdef H5_STDC_HEADERS
-# include <assert.h>
-# include <ctype.h>
-# include <errno.h>
-# include <fcntl.h>
-# include <float.h>
-# include <limits.h>
-# include <math.h>
-# include <signal.h>
-# include <stdarg.h>
-# include <stdio.h>
-# include <stdlib.h>
-# include <string.h>
-#endif
-
-/*
- * And now for a couple non-Posix functions... Watch out for systems that
- * define these in terms of macros.
- */
-#ifdef H5_HAVE_WIN32_API
-#define HDstrdup(S) _strdup(S)
-#else /* H5_HAVE_WIN32_API */
-
-#if !defined strdup && !defined H5_HAVE_STRDUP
-extern char *strdup(const char *s);
-#endif
-
-#define HDstrdup(S) strdup(S)
-
-#endif /* H5_HAVE_WIN32_API */
-
-H5_DLL int HDfprintf (FILE *stream, const char *fmt, ...);
-#define HDstrcmp(S,T) strcmp(S,T)
-#define HDstrlen(S) strlen(S)
-#define HDstrncmp(S,T,L) strncmp(S,T,L)
-#define HDstrncpy(X,Y,Z) strncpy(X,Y,Z)
-#define HDstrchr(S,C) strchr(S,C)
-#define HDfree(M) free(M)
-
-
-#ifdef _O_BINARY
-#define HDopen(S,F,M) open(S,F|_O_BINARY,M)
-#else
-#define HDopen(S,F,M) open(S,F,M)
-#endif
-#define HDclose(F) close(F)
-
-#ifdef H5_HAVE_WIN32_API
-#define HDlseek(F,O,W) _lseeki64(F,O,W)
-#else
-#define HDlseek(F,O,W) lseek(F,O,W)
-#endif
-
-#define HDwrite(F,M,Z) write(F,M,Z)
-
-#define HDread(F,M,Z) read(F,M,Z)
-
-#ifdef H5_HAVE_WIN32_API
- #define HDstat(S,B) _stati64(S,B)
-#else
-#define HDstat(S,B) stat(S,B)
-#endif
-
-#ifdef H5_HAVE_WIN32_API
-#define HDfstat(F,B) _fstati64(F,B)
-typedef struct _stati64 h5_stat_t;
-typedef __int64 h5_stat_size_t;
-#else
-#define HDfstat(F,B) fstat(F,B)
-typedef struct stat h5_stat_t;
-typedef off_t h5_stat_size_t;
-#endif
-
-/*
- * HDF Boolean type.
- */
-#ifndef FALSE
-# define FALSE false
-#endif
-#ifndef TRUE
-# define TRUE true
-#endif
-
-
-/** From h5test.h **/
-
-#ifdef H5_HAVE_PARALLEL
-extern MPI_Info h5_io_info_g; /* MPI INFO object for IO */
-#endif
-
-#ifdef H5_HAVE_PARALLEL
-H5TEST_DLL int h5_set_info_object(void);
-H5TEST_DLL void h5_dump_info_object(MPI_Info info);
-#endif
-
-
-
-/** From h5tools_utils.h **/
-
-extern int opt_err; /* getoption prints errors if this is on */
-extern int opt_ind; /* token pointer */
-extern const char *opt_arg; /* flag argument (or value) */
-
-
-enum {
- no_arg = 0, /* doesn't take an argument */
- require_arg, /* requires an argument */
- optional_arg /* argument is optional */
-};
-
-
-typedef struct long_options {
- const char *name; /* name of the long option */
- int has_arg; /* whether we should look for an arg */
- char shortval; /* the shortname equivalent of long arg
- * this gets returned from get_option */
-} long_options;
-
-extern int get_option(int argc, const char **argv, const char *opt,
- const struct long_options *l_opt);
-
-extern int nCols; /*max number of columns for outputting */
-
-/* Definitions of useful routines */
-extern void print_version(const char *progname);
-
-#endif
diff --git a/tools/src/CMakeLists.txt b/tools/src/CMakeLists.txt
new file mode 100644
index 0000000..5001b26
--- /dev/null
+++ b/tools/src/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_SRC)
+
+#-----------------------------------------------------------------------------
+# Apply Definitions to compiler in this directory and below
+#-----------------------------------------------------------------------------
+add_definitions (${HDF_EXTRA_C_FLAGS})
+
+#-- Add the h5diff and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5diff)
+
+#-- Add the h5ls executable
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5ls)
+
+#-- Misc Executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/misc)
+
+#-- Add the h5import and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5import)
+
+#-- h5Repack executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5repack)
+
+#-- Add the h5dump and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5jam)
+
+#-- Add the h5copy and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5copy)
+
+#-- Add the h5stat and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5stat)
+
+#-- Add the h5dump and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5dump)
+
+#-- Add the h5format_convert and test executables
+add_subdirectory (${HDF5_TOOLS_SRC_SOURCE_DIR}/h5format_convert)
diff --git a/tools/src/Makefile.am b/tools/src/Makefile.am
new file mode 100644
index 0000000..0cea969
--- /dev/null
+++ b/tools/src/Makefile.am
@@ -0,0 +1,29 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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.
+##
+#
+# Tools HDF5 Makefile(.in)
+#
+
+include $(top_srcdir)/config/commence.am
+
+CONFIG=ordered
+
+# All subdirectories
+SUBDIRS=h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5copy/CMakeLists.txt b/tools/src/h5copy/CMakeLists.txt
index 4fcd19b..2a33c9e 100644
--- a/tools/h5copy/CMakeLists.txt
+++ b/tools/src/h5copy/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5COPY)
+PROJECT (HDF5_TOOLS_SRC_H5COPY)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,7 +9,7 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# --------------------------------------------------------------------
# Add the h5copy and test executables
# --------------------------------------------------------------------
-add_executable (h5copy ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/h5copy.c)
+add_executable (h5copy ${HDF5_TOOLS_SRC_H5COPY_SOURCE_DIR}/h5copy.c)
TARGET_NAMING (h5copy STATIC)
TARGET_C_PROPERTIES (h5copy STATIC " " " ")
target_link_libraries (h5copy ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -18,20 +18,6 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5copy")
set (H5_DEP_EXECUTABLES h5copy)
-if (BUILD_TESTING)
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5copygentest ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/h5copygentest.c)
- TARGET_NAMING (h5copygentest STATIC)
- TARGET_C_PROPERTIES (h5copygentest STATIC " " " ")
- target_link_libraries (h5copygentest ${HDF5_LIB_TARGET})
- set_target_properties (h5copygentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5copygentest COMMAND $<TARGET_FILE:h5copygentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5copy/Makefile.am b/tools/src/h5copy/Makefile.am
new file mode 100644
index 0000000..b2cdf92
--- /dev/null
+++ b/tools/src/h5copy/Makefile.am
@@ -0,0 +1,40 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+# This is our main target, the h5copy tool
+bin_PROGRAMS=h5copy
+check_PROGRAMS=$(TEST_PROG)
+
+# Add h5copy specific linker flags here
+h5copy_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# All programs depend on the hdf5 and h5tools libraries
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+# Temporary files. *.h5 are generated by h5dumpgentest. They should
+# copied to the testfiles/ directory if update is required.
+CHECK_CLEANFILES+=*.h5
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5copy/h5copy.c b/tools/src/h5copy/h5copy.c
index 5371a21..5371a21 100644
--- a/tools/h5copy/h5copy.c
+++ b/tools/src/h5copy/h5copy.c
diff --git a/tools/h5diff/CMakeLists.txt b/tools/src/h5diff/CMakeLists.txt
index 4d386ad..85a24ef 100644
--- a/tools/h5diff/CMakeLists.txt
+++ b/tools/src/h5diff/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5DIFF)
+PROJECT (HDF5_TOOLS_SRC_H5DIFF)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -10,8 +10,8 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# Add the h5diff executables
# --------------------------------------------------------------------
add_executable (h5diff
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/h5diff_common.c
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/h5diff_main.c
+ ${HDF5_TOOLS_SRC_H5DIFF_SOURCE_DIR}/h5diff_common.c
+ ${HDF5_TOOLS_SRC_H5DIFF_SOURCE_DIR}/h5diff_main.c
)
TARGET_NAMING (h5diff STATIC)
TARGET_C_PROPERTIES (h5diff STATIC " " " ")
@@ -23,8 +23,8 @@ set (H5_DEP_EXECUTABLES h5diff)
if (H5_HAVE_PARALLEL)
add_executable (ph5diff
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/h5diff_common.c
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/ph5diff_main.c
+ ${HDF5_TOOLS_SRC_H5DIFF_SOURCE_DIR}/h5diff_common.c
+ ${HDF5_TOOLS_SRC_H5DIFF_SOURCE_DIR}/ph5diff_main.c
)
TARGET_NAMING (ph5diff STATIC)
TARGET_C_PROPERTIES (ph5diff STATIC " " " ")
@@ -33,24 +33,6 @@ if (H5_HAVE_PARALLEL)
set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};ph5diff")
endif (H5_HAVE_PARALLEL)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5diff and test executables
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5diffgentest ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/h5diffgentest.c)
- TARGET_NAMING (h5diffgentest STATIC)
- TARGET_C_PROPERTIES (h5diffgentest STATIC " " " ")
- target_link_libraries (h5diffgentest ${HDF5_LIB_TARGET})
- set_target_properties (h5diffgentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5diffgentest COMMAND $<TARGET_FILE:h5diffgentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5diff/Makefile.am b/tools/src/h5diff/Makefile.am
new file mode 100644
index 0000000..a5af3f2
--- /dev/null
+++ b/tools/src/h5diff/Makefile.am
@@ -0,0 +1,46 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+# Always build and test h5diff but build and test ph5diff only if parallel
+# is enabled.
+if BUILD_PARALLEL_CONDITIONAL
+ H5PDIFF=ph5diff
+endif
+
+# Our main target, h5diff
+bin_PROGRAMS=h5diff $(H5PDIFF)
+
+# Add h5diff specific linker flags here
+h5diff_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# Source files for the program
+h5diff_SOURCES=h5diff_main.c h5diff_common.c
+ph5diff_SOURCES=ph5diff_main.c h5diff_common.c
+
+# Programs depend on the main HDF5 library and tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
+
diff --git a/tools/h5diff/h5diff_common.c b/tools/src/h5diff/h5diff_common.c
index 2453ffc..2453ffc 100644
--- a/tools/h5diff/h5diff_common.c
+++ b/tools/src/h5diff/h5diff_common.c
diff --git a/tools/h5diff/h5diff_common.h b/tools/src/h5diff/h5diff_common.h
index 5b1317f..5b1317f 100644
--- a/tools/h5diff/h5diff_common.h
+++ b/tools/src/h5diff/h5diff_common.h
diff --git a/tools/h5diff/h5diff_main.c b/tools/src/h5diff/h5diff_main.c
index cdaca29..cdaca29 100644
--- a/tools/h5diff/h5diff_main.c
+++ b/tools/src/h5diff/h5diff_main.c
diff --git a/tools/h5diff/ph5diff_main.c b/tools/src/h5diff/ph5diff_main.c
index a26b6e9..a26b6e9 100644
--- a/tools/h5diff/ph5diff_main.c
+++ b/tools/src/h5diff/ph5diff_main.c
diff --git a/tools/h5dump/CMakeLists.txt b/tools/src/h5dump/CMakeLists.txt
index 91c9650..ab310db 100644
--- a/tools/h5dump/CMakeLists.txt
+++ b/tools/src/h5dump/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5DUMP)
+PROJECT (HDF5_TOOLS_SRC_H5DUMP)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -10,9 +10,9 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# Add the h5dump executables
# --------------------------------------------------------------------
add_executable (h5dump
- ${HDF5_TOOLS_H5DUMP_SOURCE_DIR}/h5dump.c
- ${HDF5_TOOLS_H5DUMP_SOURCE_DIR}/h5dump_ddl.c
- ${HDF5_TOOLS_H5DUMP_SOURCE_DIR}/h5dump_xml.c
+ ${HDF5_TOOLS_SRC_H5DUMP_SOURCE_DIR}/h5dump.c
+ ${HDF5_TOOLS_SRC_H5DUMP_SOURCE_DIR}/h5dump_ddl.c
+ ${HDF5_TOOLS_SRC_H5DUMP_SOURCE_DIR}/h5dump_xml.c
)
TARGET_NAMING (h5dump STATIC)
TARGET_C_PROPERTIES (h5dump STATIC " " " ")
@@ -22,29 +22,6 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5dump")
set (H5_DEP_EXECUTABLES h5dump)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5dump test executable
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5dumpgentest ${HDF5_TOOLS_H5DUMP_SOURCE_DIR}/h5dumpgentest.c)
- TARGET_NAMING (h5dumpgentest STATIC)
- TARGET_C_PROPERTIES (h5dumpgentest STATIC " " " ")
- target_link_libraries (h5dumpgentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5dumpgentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5dumpgentest COMMAND $<TARGET_FILE:h5dumpgentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-
- include (CMakeTestsPBITS.cmake)
-
- include (CMakeTestsVDS.cmake)
-
- include (CMakeTestsXML.cmake)
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5dump/Makefile.am b/tools/src/h5dump/Makefile.am
new file mode 100644
index 0000000..dc43065
--- /dev/null
+++ b/tools/src/h5dump/Makefile.am
@@ -0,0 +1,38 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 files in /src directory and /tools/lib directory
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+# Our main target, the h5dump tool.
+bin_PROGRAMS=h5dump
+
+# Add h5dump specific linker flags here
+h5dump_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# All the programs depend on the hdf5 and h5tools libraries
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+# Source files for the program
+h5dump_SOURCES=h5dump.c h5dump_ddl.c h5dump_xml.c
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5dump/h5dump.c b/tools/src/h5dump/h5dump.c
index 562cfd5..562cfd5 100644
--- a/tools/h5dump/h5dump.c
+++ b/tools/src/h5dump/h5dump.c
diff --git a/tools/h5dump/h5dump.h b/tools/src/h5dump/h5dump.h
index 8224c02..8224c02 100644
--- a/tools/h5dump/h5dump.h
+++ b/tools/src/h5dump/h5dump.h
diff --git a/tools/h5dump/h5dump_ddl.c b/tools/src/h5dump/h5dump_ddl.c
index 182d570..182d570 100644
--- a/tools/h5dump/h5dump_ddl.c
+++ b/tools/src/h5dump/h5dump_ddl.c
diff --git a/tools/h5dump/h5dump_ddl.h b/tools/src/h5dump/h5dump_ddl.h
index 2b3f61e..2b3f61e 100644
--- a/tools/h5dump/h5dump_ddl.h
+++ b/tools/src/h5dump/h5dump_ddl.h
diff --git a/tools/h5dump/h5dump_defines.h b/tools/src/h5dump/h5dump_defines.h
index 2be2dcc..2be2dcc 100644
--- a/tools/h5dump/h5dump_defines.h
+++ b/tools/src/h5dump/h5dump_defines.h
diff --git a/tools/h5dump/h5dump_extern.h b/tools/src/h5dump/h5dump_extern.h
index 8fef1b9..8fef1b9 100644
--- a/tools/h5dump/h5dump_extern.h
+++ b/tools/src/h5dump/h5dump_extern.h
diff --git a/tools/h5dump/h5dump_xml.c b/tools/src/h5dump/h5dump_xml.c
index 41f3914..41f3914 100644
--- a/tools/h5dump/h5dump_xml.c
+++ b/tools/src/h5dump/h5dump_xml.c
diff --git a/tools/h5dump/h5dump_xml.h b/tools/src/h5dump/h5dump_xml.h
index c1d6c62..c1d6c62 100644
--- a/tools/h5dump/h5dump_xml.h
+++ b/tools/src/h5dump/h5dump_xml.h
diff --git a/tools/h5format_convert/CMakeLists.txt b/tools/src/h5format_convert/CMakeLists.txt
index 7027566..957055d 100644
--- a/tools/h5format_convert/CMakeLists.txt
+++ b/tools/src/h5format_convert/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5FC)
+PROJECT (HDF5_TOOLS_SRC_H5FC)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,7 +9,7 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# --------------------------------------------------------------------
# Add the h5format_convert executables
# --------------------------------------------------------------------
-add_executable (h5format_convert ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5format_convert.c)
+add_executable (h5format_convert ${HDF5_TOOLS_SRC_H5FC_SOURCE_DIR}/h5format_convert.c)
TARGET_NAMING (h5format_convert STATIC)
TARGET_C_PROPERTIES (h5format_convert STATIC " " " ")
target_link_libraries (h5format_convert ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -18,29 +18,6 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5format_conv
set (H5_DEP_EXECUTABLES h5format_convert)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5format_convert test executables
- # --------------------------------------------------------------------
- add_executable (h5fc_chk_idx ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5fc_chk_idx.c)
- TARGET_NAMING (h5fc_chk_idx STATIC)
- TARGET_C_PROPERTIES (h5fc_chk_idx STATIC " " " ")
- target_link_libraries (h5fc_chk_idx ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5fc_chk_idx PROPERTIES FOLDER tools)
-
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5fc_gentest ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5fc_gentest.c)
- TARGET_NAMING (h5fc_gentest STATIC)
- TARGET_C_PROPERTIES (h5fc_gentest STATIC " " " ")
- target_link_libraries (h5fc_gentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5fc_gentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5fc_gentest COMMAND $<TARGET_FILE:h5fc_gentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5format_convert/Makefile.am b/tools/src/h5format_convert/Makefile.am
new file mode 100644
index 0000000..e2d1acf
--- /dev/null
+++ b/tools/src/h5format_convert/Makefile.am
@@ -0,0 +1,35 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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, the tools
+bin_PROGRAMS=h5format_convert
+
+# Add h5format_convert specific linker flags here
+h5format_convert_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# All programs rely on hdf5 library and h5tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5format_convert/h5format_convert.c b/tools/src/h5format_convert/h5format_convert.c
index 8ce28dd..8ce28dd 100644
--- a/tools/h5format_convert/h5format_convert.c
+++ b/tools/src/h5format_convert/h5format_convert.c
diff --git a/tools/h5import/CMakeLists.txt b/tools/src/h5import/CMakeLists.txt
index 15c8d94..97ab4ec 100644
--- a/tools/h5import/CMakeLists.txt
+++ b/tools/src/h5import/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5IMPORT)
+PROJECT (HDF5_TOOLS_SRC_H5IMPORT)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,7 +9,7 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# --------------------------------------------------------------------
# Add the h5import executables
# --------------------------------------------------------------------
-add_executable (h5import ${HDF5_TOOLS_H5IMPORT_SOURCE_DIR}/h5import.c)
+add_executable (h5import ${HDF5_TOOLS_SRC_H5IMPORT_SOURCE_DIR}/h5import.c)
TARGET_NAMING (h5import STATIC)
TARGET_C_PROPERTIES (h5import STATIC " " " ")
target_link_libraries (h5import ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -19,20 +19,6 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5import")
set (H5_DEP_EXECUTABLES h5import)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5import executables
- # --------------------------------------------------------------------
- add_executable (h5importtest ${HDF5_TOOLS_H5IMPORT_SOURCE_DIR}/h5importtest.c)
- TARGET_NAMING (h5importtest STATIC)
- TARGET_C_PROPERTIES (h5importtest STATIC " " " ")
- target_link_libraries (h5importtest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5importtest PROPERTIES FOLDER tools)
-
- include (CMakeTests.cmake)
-
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5import/Makefile.am b/tools/src/h5import/Makefile.am
new file mode 100644
index 0000000..2eae9ec
--- /dev/null
+++ b/tools/src/h5import/Makefile.am
@@ -0,0 +1,35 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+# Our main targets
+bin_PROGRAMS=h5import
+
+# Add h5import specific linker flags here
+h5import_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# All programs depend on the main hdf5 library and the tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5import/h5import.c b/tools/src/h5import/h5import.c
index d1aab0c..d1aab0c 100644
--- a/tools/h5import/h5import.c
+++ b/tools/src/h5import/h5import.c
diff --git a/tools/h5import/h5import.h b/tools/src/h5import/h5import.h
index c242483..c242483 100644
--- a/tools/h5import/h5import.h
+++ b/tools/src/h5import/h5import.h
diff --git a/tools/h5jam/CMakeLists.txt b/tools/src/h5jam/CMakeLists.txt
index d2600ca..cef54c2 100644
--- a/tools/h5jam/CMakeLists.txt
+++ b/tools/src/h5jam/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5JAM)
+PROJECT (HDF5_TOOLS_SRC_H5JAM)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,26 +9,14 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# --------------------------------------------------------------------
# Add the h5jam executables
# --------------------------------------------------------------------
-add_executable (h5jam ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/h5jam.c)
+add_executable (h5jam ${HDF5_TOOLS_SRC_H5JAM_SOURCE_DIR}/h5jam.c)
TARGET_NAMING (h5jam STATIC)
TARGET_C_PROPERTIES (h5jam STATIC " " " ")
target_link_libraries (h5jam ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
set_target_properties (h5jam PROPERTIES FOLDER tools)
set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5jam")
-add_executable (getub ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/getub.c)
-TARGET_NAMING (getub STATIC)
-TARGET_C_PROPERTIES (getub STATIC " " " ")
-target_link_libraries (getub ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
-set_target_properties (getub PROPERTIES FOLDER tools)
-
-add_executable (tellub ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/tellub.c)
-TARGET_NAMING (tellub STATIC)
-TARGET_C_PROPERTIES (tellub STATIC " " " ")
-target_link_libraries (tellub ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
-set_target_properties (tellub PROPERTIES FOLDER tools)
-
-add_executable (h5unjam ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/h5unjam.c)
+add_executable (h5unjam ${HDF5_TOOLS_SRC_H5JAM_SOURCE_DIR}/h5unjam.c)
TARGET_NAMING (h5unjam STATIC)
TARGET_C_PROPERTIES (h5unjam STATIC " " " ")
target_link_libraries (h5unjam ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -37,29 +25,9 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5unjam")
set (H5_DEP_EXECUTABLES
h5jam
- getub
- tellub
h5unjam
)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5jam test executables
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5jamgentest ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/h5jamgentest.c)
- TARGET_NAMING (h5jamgentest STATIC)
- TARGET_C_PROPERTIES (testhdf5 STATIC " " " ")
- target_link_libraries (h5jamgentest ${HDF5_LIB_TARGET})
- set_target_properties (h5jamgentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5jamgentest COMMAND $<TARGET_FILE:h5jamgentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5jam/Makefile.am b/tools/src/h5jam/Makefile.am
new file mode 100644
index 0000000..e244625
--- /dev/null
+++ b/tools/src/h5jam/Makefile.am
@@ -0,0 +1,35 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+bin_PROGRAMS=h5jam h5unjam
+
+# Add h5jam and h5unjam specific linker flags here
+h5jam_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+h5unjam_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# Link against the main HDF5 library and tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5jam/h5jam.c b/tools/src/h5jam/h5jam.c
index ae45714..ae45714 100644
--- a/tools/h5jam/h5jam.c
+++ b/tools/src/h5jam/h5jam.c
diff --git a/tools/h5jam/h5unjam.c b/tools/src/h5jam/h5unjam.c
index 8f88398..8f88398 100644
--- a/tools/h5jam/h5unjam.c
+++ b/tools/src/h5jam/h5unjam.c
diff --git a/tools/h5ls/CMakeLists.txt b/tools/src/h5ls/CMakeLists.txt
index cb430ec..24e11cc 100644
--- a/tools/h5ls/CMakeLists.txt
+++ b/tools/src/h5ls/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5LS)
+PROJECT (HDF5_TOOLS_SRC_H5LS)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,7 +9,7 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
#-----------------------------------------------------------------------------
# Add the h5ls executable
#-----------------------------------------------------------------------------
-add_executable (h5ls ${HDF5_TOOLS_H5LS_SOURCE_DIR}/h5ls.c)
+add_executable (h5ls ${HDF5_TOOLS_SRC_H5LS_SOURCE_DIR}/h5ls.c)
TARGET_NAMING (h5ls STATIC)
TARGET_C_PROPERTIES (h5ls STATIC " " " ")
target_link_libraries (h5ls ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -20,14 +20,6 @@ set (H5_DEP_EXECUTABLES
h5ls
)
-if (BUILD_TESTING)
-
- include (CMakeTests.cmake)
-
- include (CMakeTestsVDS.cmake)
-
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/h5ls/Makefile.am b/tools/src/h5ls/Makefile.am
index 54a06f1..dfa8bb6 100644
--- a/tools/h5ls/Makefile.am
+++ b/tools/src/h5ls/Makefile.am
@@ -23,11 +23,6 @@ include $(top_srcdir)/config/commence.am
# Include src and tools/lib directories
AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
-# Test programs and scripts
-TEST_SCRIPT=testh5ls.sh testh5lsvds.sh
-check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5ls$(EXEEXT)
-
# This is our main target, the h5ls tool
bin_PROGRAMS=h5ls
diff --git a/tools/h5ls/h5ls.c b/tools/src/h5ls/h5ls.c
index a032f08..a032f08 100644
--- a/tools/h5ls/h5ls.c
+++ b/tools/src/h5ls/h5ls.c
diff --git a/tools/src/h5repack/CMakeLists.txt b/tools/src/h5repack/CMakeLists.txt
new file mode 100644
index 0000000..cb7f5f6
--- /dev/null
+++ b/tools/src/h5repack/CMakeLists.txt
@@ -0,0 +1,50 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_SRC_H5REPACK)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
+
+# --------------------------------------------------------------------
+# Add h5Repack executables
+# --------------------------------------------------------------------
+set (REPACK_COMMON_SOURCES
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_copy.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_filters.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_opttable.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_parse.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_refs.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_verify.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack.c
+)
+
+add_executable (h5repack ${REPACK_COMMON_SOURCES} ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_main.c)
+TARGET_NAMING (h5repack STATIC)
+TARGET_C_PROPERTIES (h5repack STATIC " " " ")
+target_link_libraries (h5repack ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
+set_target_properties (h5repack PROPERTIES FOLDER tools)
+set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repack")
+
+set (H5_DEP_EXECUTABLES h5repack)
+
+##############################################################################
+##############################################################################
+### I N S T A L L A T I O N ###
+##############################################################################
+##############################################################################
+
+#-----------------------------------------------------------------------------
+# Rules for Installation of tools using make Install target
+#-----------------------------------------------------------------------------
+
+#INSTALL_PROGRAM_PDB (h5repack ${HDF5_INSTALL_BIN_DIR} toolsapplications)
+
+install (
+ TARGETS
+ h5repack
+ EXPORT
+ ${HDF5_EXPORTED_TARGETS}
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications
+)
diff --git a/tools/src/h5repack/Makefile.am b/tools/src/h5repack/Makefile.am
new file mode 100644
index 0000000..e6e5a56
--- /dev/null
+++ b/tools/src/h5repack/Makefile.am
@@ -0,0 +1,42 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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, test, and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/tools/lib
+
+# Our main target, h5repack tool
+bin_PROGRAMS=h5repack
+
+# Add h5repack specific linker flags here
+h5repack_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# Depend on the hdf5 library, the tools library, the test library
+LDADD=$(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5)
+
+# Source files
+COMMON_SOURCES=h5repack.c h5repack_copy.c h5repack_filters.c \
+ h5repack_opttable.c h5repack_parse.c h5repack_refs.c \
+ h5repack_verify.c
+
+h5repack_SOURCES=$(COMMON_SOURCES) h5repack_main.c
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5repack/h5repack.c b/tools/src/h5repack/h5repack.c
index ef2085c..ef2085c 100644
--- a/tools/h5repack/h5repack.c
+++ b/tools/src/h5repack/h5repack.c
diff --git a/tools/h5repack/h5repack.h b/tools/src/h5repack/h5repack.h
index d2ab923..d2ab923 100644
--- a/tools/h5repack/h5repack.h
+++ b/tools/src/h5repack/h5repack.h
diff --git a/tools/h5repack/h5repack_copy.c b/tools/src/h5repack/h5repack_copy.c
index 547f61a..547f61a 100644
--- a/tools/h5repack/h5repack_copy.c
+++ b/tools/src/h5repack/h5repack_copy.c
diff --git a/tools/h5repack/h5repack_filters.c b/tools/src/h5repack/h5repack_filters.c
index e21b829..e21b829 100644
--- a/tools/h5repack/h5repack_filters.c
+++ b/tools/src/h5repack/h5repack_filters.c
diff --git a/tools/h5repack/h5repack_main.c b/tools/src/h5repack/h5repack_main.c
index 2d48a04..657e1a9 100644
--- a/tools/h5repack/h5repack_main.c
+++ b/tools/src/h5repack/h5repack_main.c
@@ -235,130 +235,130 @@ static void leave(int ret) {
static
int read_info(const char *filename, pack_opt_t *options) {
- char stype[10];
- char comp_info[1024];
- FILE *fp = NULL;
- char c;
- int i, rc = 1;
- int ret_value = EXIT_SUCCESS;
-
- if ((fp = HDfopen(filename, "r")) == (FILE *) NULL) {
- error_msg("cannot open options file %s\n", filename);
- h5tools_setstatus(EXIT_FAILURE);
- ret_value = EXIT_FAILURE;
- goto done;
- }
+ char stype[10];
+ char comp_info[1024];
+ FILE *fp = NULL;
+ char c;
+ int i, rc = 1;
+ int ret_value = EXIT_SUCCESS;
+
+ if ((fp = HDfopen(filename, "r")) == (FILE *) NULL) {
+ error_msg("cannot open options file %s\n", filename);
+ h5tools_setstatus(EXIT_FAILURE);
+ ret_value = EXIT_FAILURE;
+ goto done;
+ }
- /* cycle until end of file reached */
- while (1) {
- rc = fscanf(fp, "%s", stype);
- if (rc == -1)
- break;
+ /* cycle until end of file reached */
+ while (1) {
+ rc = fscanf(fp, "%s", stype);
+ if (rc == -1)
+ break;
- /*-------------------------------------------------------------------------
- * filter
- *-------------------------------------------------------------------------
- */
- if (HDstrcmp(stype,"-f") == 0) {
- /* find begining of info */
- i = 0;
- c = '0';
- while (c != ' ') {
- if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
+ /*-------------------------------------------------------------------------
+ * filter
+ *-------------------------------------------------------------------------
+ */
+ if (HDstrcmp(stype,"-f") == 0) {
+ /* find begining of info */
+ i = 0;
+ c = '0';
+ while (c != ' ') {
+ if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
error_msg("fscanf error\n");
h5tools_setstatus(EXIT_FAILURE);
ret_value = EXIT_FAILURE;
goto done;
} /* end if */
- if (HDfeof(fp))
- break;
- }
- c = '0';
- /* go until end */
- while (c != ' ') {
- if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
+ if (HDfeof(fp))
+ break;
+ }
+ c = '0';
+ /* go until end */
+ while (c != ' ') {
+ if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
error_msg("fscanf error\n");
h5tools_setstatus(EXIT_FAILURE);
ret_value = EXIT_FAILURE;
goto done;
} /* end if */
- comp_info[i] = c;
- i++;
- if (HDfeof(fp))
- break;
- if (c == 10 /*eol*/)
- break;
- }
- comp_info[i - 1] = '\0'; /*cut the last " */
+ comp_info[i] = c;
+ i++;
+ if (HDfeof(fp))
+ break;
+ if (c == 10 /*eol*/)
+ break;
+ }
+ comp_info[i - 1] = '\0'; /*cut the last " */
- if (h5repack_addfilter(comp_info, options) == -1) {
- error_msg("could not add compression option\n");
- h5tools_setstatus(EXIT_FAILURE);
- ret_value = EXIT_FAILURE;
- goto done;
- }
- }
- /*-------------------------------------------------------------------------
- * layout
- *-------------------------------------------------------------------------
- */
- else if (HDstrcmp(stype,"-l") == 0) {
-
- /* find begining of info */
- i = 0;
- c = '0';
- while (c != ' ') {
- if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
+ if (h5repack_addfilter(comp_info, options) == -1) {
+ error_msg("could not add compression option\n");
+ h5tools_setstatus(EXIT_FAILURE);
+ ret_value = EXIT_FAILURE;
+ goto done;
+ }
+ }
+ /*-------------------------------------------------------------------------
+ * layout
+ *-------------------------------------------------------------------------
+ */
+ else if (HDstrcmp(stype,"-l") == 0) {
+
+ /* find begining of info */
+ i = 0;
+ c = '0';
+ while (c != ' ') {
+ if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
error_msg("fscanf error\n");
h5tools_setstatus(EXIT_FAILURE);
ret_value = EXIT_FAILURE;
goto done;
} /* end if */
- if (HDfeof(fp))
- break;
- }
- c = '0';
- /* go until end */
- while (c != ' ') {
- if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
+ if (HDfeof(fp))
+ break;
+ }
+ c = '0';
+ /* go until end */
+ while (c != ' ') {
+ if(fscanf(fp, "%c", &c) < 0 && HDferror(fp)) {
error_msg("fscanf error\n");
h5tools_setstatus(EXIT_FAILURE);
ret_value = EXIT_FAILURE;
goto done;
} /* end if */
- comp_info[i] = c;
- i++;
- if (HDfeof(fp))
- break;
- if (c == 10 /*eol*/)
- break;
- }
- comp_info[i - 1] = '\0'; /*cut the last " */
+ comp_info[i] = c;
+ i++;
+ if (HDfeof(fp))
+ break;
+ if (c == 10 /*eol*/)
+ break;
+ }
+ comp_info[i - 1] = '\0'; /*cut the last " */
- if (h5repack_addlayout(comp_info, options) == -1) {
- error_msg("could not add chunck option\n");
- h5tools_setstatus(EXIT_FAILURE);
- ret_value = EXIT_FAILURE;
- goto done;
- }
- }
- /*-------------------------------------------------------------------------
- * not valid
- *-------------------------------------------------------------------------
- */
- else {
- error_msg("bad file format for %s", filename);
- h5tools_setstatus(EXIT_FAILURE);
- ret_value = EXIT_FAILURE;
- goto done;
- }
- }
+ if (h5repack_addlayout(comp_info, options) == -1) {
+ error_msg("could not add chunck option\n");
+ h5tools_setstatus(EXIT_FAILURE);
+ ret_value = EXIT_FAILURE;
+ goto done;
+ }
+ }
+ /*-------------------------------------------------------------------------
+ * not valid
+ *-------------------------------------------------------------------------
+ */
+ else {
+ error_msg("bad file format for %s", filename);
+ h5tools_setstatus(EXIT_FAILURE);
+ ret_value = EXIT_FAILURE;
+ goto done;
+ }
+ }
done:
- if (fp)
- HDfclose(fp);
+ if (fp)
+ HDfclose(fp);
- return ret_value;
+ return ret_value;
}
/*-------------------------------------------------------------------------
diff --git a/tools/h5repack/h5repack_opttable.c b/tools/src/h5repack/h5repack_opttable.c
index 8c98b76..8c98b76 100644
--- a/tools/h5repack/h5repack_opttable.c
+++ b/tools/src/h5repack/h5repack_opttable.c
diff --git a/tools/h5repack/h5repack_parse.c b/tools/src/h5repack/h5repack_parse.c
index 004b9e4..004b9e4 100644
--- a/tools/h5repack/h5repack_parse.c
+++ b/tools/src/h5repack/h5repack_parse.c
diff --git a/tools/h5repack/h5repack_refs.c b/tools/src/h5repack/h5repack_refs.c
index f0f32c3..f0f32c3 100644
--- a/tools/h5repack/h5repack_refs.c
+++ b/tools/src/h5repack/h5repack_refs.c
diff --git a/tools/h5repack/h5repack_verify.c b/tools/src/h5repack/h5repack_verify.c
index 6765c49..6765c49 100644
--- a/tools/h5repack/h5repack_verify.c
+++ b/tools/src/h5repack/h5repack_verify.c
diff --git a/tools/h5stat/CMakeLists.txt b/tools/src/h5stat/CMakeLists.txt
index 02721d4..d4e14cb 100644
--- a/tools/h5stat/CMakeLists.txt
+++ b/tools/src/h5stat/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_H5STAT)
+PROJECT (HDF5_TOOLS_SRC_H5STAT)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -9,7 +9,7 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# --------------------------------------------------------------------
# Add the h5stat executables
# --------------------------------------------------------------------
-add_executable (h5stat ${HDF5_TOOLS_H5STAT_SOURCE_DIR}/h5stat.c)
+add_executable (h5stat ${HDF5_TOOLS_SRC_H5STAT_SOURCE_DIR}/h5stat.c)
TARGET_NAMING (h5stat STATIC)
TARGET_C_PROPERTIES (h5stat STATIC " " " ")
target_link_libraries (h5stat ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -18,23 +18,6 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5stat")
set (H5_DEP_EXECUTABLES h5stat)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the h5stat test executables
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5stat_gentest ${HDF5_TOOLS_H5STAT_SOURCE_DIR}/h5stat_gentest.c)
- TARGET_NAMING (h5stat_gentest STATIC)
- TARGET_C_PROPERTIES (h5stat_gentest STATIC " " " ")
- target_link_libraries (h5stat_gentest ${HDF5_LIB_TARGET})
- set_target_properties (h5stat_gentest PROPERTIES FOLDER generator/tools)
-
- #add_test (NAME h5stat_gentest COMMAND $<TARGET_FILE:h5stat_gentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/src/h5stat/Makefile.am b/tools/src/h5stat/Makefile.am
new file mode 100644
index 0000000..b4d81de
--- /dev/null
+++ b/tools/src/h5stat/Makefile.am
@@ -0,0 +1,39 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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, the tools
+bin_PROGRAMS=h5stat
+bin_SCRIPTS=
+
+# Add h5stat specific linker flags here
+h5stat_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+
+# Tell automake to clean h5redeploy script
+CLEANFILES=
+
+# All programs rely on hdf5 library and h5tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5stat/h5stat.c b/tools/src/h5stat/h5stat.c
index a331014..a331014 100644
--- a/tools/h5stat/h5stat.c
+++ b/tools/src/h5stat/h5stat.c
diff --git a/tools/h5stat/testh5stat.sh.in b/tools/src/h5stat/testh5stat.sh.in
index cbb732c..cbb732c 100644
--- a/tools/h5stat/testh5stat.sh.in
+++ b/tools/src/h5stat/testh5stat.sh.in
diff --git a/tools/misc/CMakeLists.txt b/tools/src/misc/CMakeLists.txt
index f7ca039..6fcff9c 100644
--- a/tools/misc/CMakeLists.txt
+++ b/tools/src/misc/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_MISC)
+PROJECT (HDF5_TOOLS_SRC_MISC)
#-----------------------------------------------------------------------------
# Setup include Directories
@@ -10,21 +10,21 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
# Add the misc executables
# --------------------------------------------------------------------
#-- Misc Executables
-add_executable (h5debug ${HDF5_TOOLS_MISC_SOURCE_DIR}/h5debug.c)
+add_executable (h5debug ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5debug.c)
TARGET_NAMING (h5debug STATIC)
TARGET_C_PROPERTIES (h5debug STATIC " " " ")
target_link_libraries (h5debug ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
set_target_properties (h5debug PROPERTIES FOLDER tools)
set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5debug")
-add_executable (h5repart ${HDF5_TOOLS_MISC_SOURCE_DIR}/h5repart.c)
+add_executable (h5repart ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5repart.c)
TARGET_NAMING (h5repart STATIC)
TARGET_C_PROPERTIES (h5repart STATIC " " " ")
target_link_libraries (h5repart ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
set_target_properties (h5repart PROPERTIES FOLDER tools)
set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5repart")
-add_executable (h5mkgrp ${HDF5_TOOLS_MISC_SOURCE_DIR}/h5mkgrp.c)
+add_executable (h5mkgrp ${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5mkgrp.c)
TARGET_NAMING (h5mkgrp STATIC)
TARGET_C_PROPERTIES (h5mkgrp STATIC " " " ")
target_link_libraries (h5mkgrp ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
@@ -41,34 +41,9 @@ set (H5_DEP_EXECUTABLES
# Generate the h5cc file containing settings needed to compile programs
#-----------------------------------------------------------------------------
#if (NOT WIN32)
-# configure_file (${HDF5_TOOLS_MISC_SOURCE_DIR}/h5cc.in ${HDF5_BINARY_DIR}/h5cc @ONLY)
+# configure_file (${HDF5_TOOLS_SRC_MISC_SOURCE_DIR}/h5cc.in ${HDF5_BINARY_DIR}/h5cc @ONLY)
#endif (NOT WIN32)
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # Add the misc test executables
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (h5repart_gentest ${HDF5_TOOLS_MISC_SOURCE_DIR}/h5repart_gentest.c)
- TARGET_NAMING (h5repart_gentest STATIC)
- TARGET_C_PROPERTIES (h5repart_gentest STATIC " " " ")
- target_link_libraries (h5repart_gentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5repart_gentest PROPERTIES FOLDER generator/tools)
- #add_test (NAME h5repart_gentest COMMAND $<TARGET_FILE:h5repart_gentest>)
-
- add_subdirectory (${HDF5_TOOLS_MISC_SOURCE_DIR}/vds)
-
- endif (HDF5_BUILD_GENERATORS)
-
- add_executable (h5repart_test ${HDF5_TOOLS_MISC_SOURCE_DIR}/repart_test.c)
- TARGET_NAMING (h5repart_test STATIC)
- TARGET_C_PROPERTIES (h5repart_test STATIC " " " ")
- target_link_libraries (h5repart_test ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
- set_target_properties (h5repart_test PROPERTIES FOLDER tools)
-
- include (CMakeTests.cmake)
-endif (BUILD_TESTING)
-
##############################################################################
##############################################################################
### I N S T A L L A T I O N ###
diff --git a/tools/misc/Makefile.am b/tools/src/misc/Makefile.am
index fdfe8f7..c069e9a 100644
--- a/tools/misc/Makefile.am
+++ b/tools/src/misc/Makefile.am
@@ -20,19 +20,9 @@
include $(top_srcdir)/config/commence.am
-SUBDIRS=vds
-
# Include src directory
AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
-#test scripts and programs
-TEST_PROG=h5repart_gentest talign
-TEST_SCRIPT=testh5repart.sh testh5mkgrp.sh
-
-check_PROGRAMS=$(TEST_PROG) repart_test
-check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5repart$(EXEEXT) h5mkgrp$(EXEEXT)
-
# These are our main targets, the tools
bin_PROGRAMS=h5debug h5repart h5mkgrp
bin_SCRIPTS=h5redeploy
@@ -45,13 +35,8 @@ h5mkgrp_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
# Tell automake to clean h5redeploy script
CLEANFILES=h5redeploy
-# Temporary files. *.h5 are generated by h5repart_gentest. They should
-# copied to the testfiles/ directory if update is required. fst_family*.h5
-# and scd_family*.h5 were created by setting the HDF5_NOCLEANUP variable.
-CHECK_CLEANFILES+=*.h5 ../testfiles/fst_family*.h5 ../testfiles/scd_family*.h5
-
# These were generated by configure. Remove them only when distclean.
-DISTCLEANFILES=h5cc testh5repart.sh
+DISTCLEANFILES=h5cc
# All programs rely on hdf5 library and h5tools library
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
diff --git a/tools/misc/h5cc.in b/tools/src/misc/h5cc.in
index 1645855..1645855 100644
--- a/tools/misc/h5cc.in
+++ b/tools/src/misc/h5cc.in
diff --git a/tools/misc/h5debug.c b/tools/src/misc/h5debug.c
index ae64952..ae64952 100644
--- a/tools/misc/h5debug.c
+++ b/tools/src/misc/h5debug.c
diff --git a/tools/misc/h5mkgrp.c b/tools/src/misc/h5mkgrp.c
index ad2d306..ad2d306 100644
--- a/tools/misc/h5mkgrp.c
+++ b/tools/src/misc/h5mkgrp.c
diff --git a/tools/misc/h5redeploy.in b/tools/src/misc/h5redeploy.in
index 6b6ef87..6b6ef87 100644
--- a/tools/misc/h5redeploy.in
+++ b/tools/src/misc/h5redeploy.in
diff --git a/tools/misc/h5repart.c b/tools/src/misc/h5repart.c
index e44c957..e44c957 100644
--- a/tools/misc/h5repart.c
+++ b/tools/src/misc/h5repart.c
diff --git a/tools/test/CMakeLists.txt b/tools/test/CMakeLists.txt
new file mode 100644
index 0000000..608dd6e
--- /dev/null
+++ b/tools/test/CMakeLists.txt
@@ -0,0 +1,40 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST)
+
+#-----------------------------------------------------------------------------
+# Apply Definitions to compiler in this directory and below
+#-----------------------------------------------------------------------------
+add_definitions (${HDF_EXTRA_C_FLAGS})
+
+#-- Add the h5diff tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5diff)
+
+#-- Add the h5ls tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5ls)
+
+#-- Misc tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/misc)
+
+#-- Add the h5import tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5import)
+
+#-- h5Repack tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5repack)
+
+#-- Add the h5jam tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5jam)
+
+#-- Add the h5copy tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5copy)
+
+#-- Add the h5stat tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5stat)
+
+#-- Add the h5dump tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5dump)
+
+#-- Add the h5format_convert and test executables
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/h5format_convert)
+
+#-- Add the perform tests
+add_subdirectory (${HDF5_TOOLS_TEST_SOURCE_DIR}/perform)
diff --git a/tools/test/Makefile.am b/tools/test/Makefile.am
new file mode 100644
index 0000000..62193ba
--- /dev/null
+++ b/tools/test/Makefile.am
@@ -0,0 +1,30 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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.
+##
+#
+# Tools HDF5 Makefile(.in)
+#
+
+include $(top_srcdir)/config/commence.am
+
+CONFIG=ordered
+
+# All subdirectories
+SUBDIRS=h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat \
+ perform
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/test/h5copy/CMakeLists.txt b/tools/test/h5copy/CMakeLists.txt
new file mode 100644
index 0000000..5bab57b
--- /dev/null
+++ b/tools/test/h5copy/CMakeLists.txt
@@ -0,0 +1,23 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5COPY)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+# --------------------------------------------------------------------
+# Add the h5copy test executables
+# --------------------------------------------------------------------
+
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5copygentest ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/h5copygentest.c)
+ TARGET_NAMING (h5copygentest STATIC)
+ TARGET_C_PROPERTIES (h5copygentest STATIC " " " ")
+ target_link_libraries (h5copygentest ${HDF5_LIB_TARGET})
+ set_target_properties (h5copygentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5copygentest COMMAND $<TARGET_FILE:h5copygentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5copy/CMakeTests.cmake b/tools/test/h5copy/CMakeTests.cmake
index a32c766..fe36ca9 100644
--- a/tools/h5copy/CMakeTests.cmake
+++ b/tools/test/h5copy/CMakeTests.cmake
@@ -9,14 +9,14 @@
# Copy all the HDF5 files from the source directory into the test directory
# --------------------------------------------------------------------
set (LIST_HDF5_TEST_FILES
- ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/testfiles/h5copy_extlinks_src.h5
- ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/testfiles/h5copy_extlinks_trg.h5
- ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/testfiles/h5copy_ref.h5
- ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/testfiles/h5copytst.h5
+ ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_extlinks_src.h5
+ ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_extlinks_trg.h5
+ ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_ref.h5
+ ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copytst.h5
)
set (LIST_OTHER_TEST_FILES
- ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/testfiles/h5copy_misc1.out
+ ${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_misc1.out
)
file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
diff --git a/tools/h5copy/Makefile.am b/tools/test/h5copy/Makefile.am
index 9d326ce..becb55f 100644
--- a/tools/h5copy/Makefile.am
+++ b/tools/test/h5copy/Makefile.am
@@ -28,15 +28,11 @@ TEST_PROG=h5copygentest
TEST_SCRIPT=testh5copy.sh
check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5copy$(EXEEXT)
+SCRIPT_DEPEND=../../src/h5copy/h5copy$(EXEEXT)
# This is our main target, the h5copy tool
-bin_PROGRAMS=h5copy
check_PROGRAMS=$(TEST_PROG)
-# Add h5copy specific linker flags here
-h5copy_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
-
# source file for the test file generator
h5copygentest_SOURCES=h5copygentest.c
diff --git a/tools/h5copy/h5copygentest.c b/tools/test/h5copy/h5copygentest.c
index 7669702..7669702 100644
--- a/tools/h5copy/h5copygentest.c
+++ b/tools/test/h5copy/h5copygentest.c
diff --git a/tools/h5copy/testfiles/h5copy_extlinks_src.h5 b/tools/test/h5copy/testfiles/h5copy_extlinks_src.h5
index 7b8621e..7b8621e 100644
--- a/tools/h5copy/testfiles/h5copy_extlinks_src.h5
+++ b/tools/test/h5copy/testfiles/h5copy_extlinks_src.h5
Binary files differ
diff --git a/tools/h5copy/testfiles/h5copy_extlinks_src.out.ls b/tools/test/h5copy/testfiles/h5copy_extlinks_src.out.ls
index 0134714..0134714 100644
--- a/tools/h5copy/testfiles/h5copy_extlinks_src.out.ls
+++ b/tools/test/h5copy/testfiles/h5copy_extlinks_src.out.ls
diff --git a/tools/h5copy/testfiles/h5copy_extlinks_trg.h5 b/tools/test/h5copy/testfiles/h5copy_extlinks_trg.h5
index 3a0242d..3a0242d 100644
--- a/tools/h5copy/testfiles/h5copy_extlinks_trg.h5
+++ b/tools/test/h5copy/testfiles/h5copy_extlinks_trg.h5
Binary files differ
diff --git a/tools/h5copy/testfiles/h5copy_misc1.out b/tools/test/h5copy/testfiles/h5copy_misc1.out
index 1624f2b..1624f2b 100644
--- a/tools/h5copy/testfiles/h5copy_misc1.out
+++ b/tools/test/h5copy/testfiles/h5copy_misc1.out
diff --git a/tools/h5copy/testfiles/h5copy_ref.h5 b/tools/test/h5copy/testfiles/h5copy_ref.h5
index bd727e6..bd727e6 100644
--- a/tools/h5copy/testfiles/h5copy_ref.h5
+++ b/tools/test/h5copy/testfiles/h5copy_ref.h5
Binary files differ
diff --git a/tools/h5copy/testfiles/h5copy_ref.out.ls b/tools/test/h5copy/testfiles/h5copy_ref.out.ls
index d685af2..d685af2 100644
--- a/tools/h5copy/testfiles/h5copy_ref.out.ls
+++ b/tools/test/h5copy/testfiles/h5copy_ref.out.ls
diff --git a/tools/h5copy/testfiles/h5copytst.h5 b/tools/test/h5copy/testfiles/h5copytst.h5
index 1d1cbf1..1d1cbf1 100644
--- a/tools/h5copy/testfiles/h5copytst.h5
+++ b/tools/test/h5copy/testfiles/h5copytst.h5
Binary files differ
diff --git a/tools/h5copy/testfiles/h5copytst.out.ls b/tools/test/h5copy/testfiles/h5copytst.out.ls
index 4044aaf..4044aaf 100644
--- a/tools/h5copy/testfiles/h5copytst.out.ls
+++ b/tools/test/h5copy/testfiles/h5copytst.out.ls
diff --git a/tools/h5copy/testfiles/h5copytst_new.h5 b/tools/test/h5copy/testfiles/h5copytst_new.h5
index fd820ca..fd820ca 100644
--- a/tools/h5copy/testfiles/h5copytst_new.h5
+++ b/tools/test/h5copy/testfiles/h5copytst_new.h5
Binary files differ
diff --git a/tools/h5copy/testfiles/h5copytst_new.out.ls b/tools/test/h5copy/testfiles/h5copytst_new.out.ls
index 9df6b2e..9df6b2e 100644
--- a/tools/h5copy/testfiles/h5copytst_new.out.ls
+++ b/tools/test/h5copy/testfiles/h5copytst_new.out.ls
diff --git a/tools/h5copy/testh5copy.sh.in b/tools/test/h5copy/testh5copy.sh.in
index 859d7c8..6d1478a 100644
--- a/tools/h5copy/testh5copy.sh.in
+++ b/tools/test/h5copy/testh5copy.sh.in
@@ -22,17 +22,17 @@
srcdir=@srcdir@
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTNAME=h5copy
EXIT_SUCCESS=0
@@ -60,13 +60,13 @@ LIST_OTHER_TEST_FILES="
$SRC_H5COPY_TESTFILES/h5copy_misc1.out
"
-H5COPY=h5copy # The tool name
+H5COPY=../../src/h5copy/h5copy # The tool name
H5COPY_BIN=`pwd`/$H5COPY # The path of the tool binary
-H5DIFF=h5diff # The h5diff tool name
-H5DIFF_BIN=`pwd`/../h5diff/$H5DIFF # The path of the h5diff tool binary
-H5LS=h5ls # The h5ls tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
+H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
+H5LS=../../src/h5ls/h5ls # The h5ls tool name
H5LS_ARGS=-Svr # Arguments to the h5ls tool
-H5LS_BIN=`pwd`/../h5ls/$H5LS # The path of the h5ls tool binary
+H5LS_BIN=`pwd`/$H5LS # The path of the h5ls tool binary
RM='rm -rf'
CMP='cmp -s'
@@ -170,7 +170,7 @@ VERIFY_OUTPUT()
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If h5copy can complete
# with exit status 0, consider it pass. If a test fails then increment
diff --git a/tools/test/h5diff/CMakeLists.txt b/tools/test/h5diff/CMakeLists.txt
new file mode 100644
index 0000000..2507664
--- /dev/null
+++ b/tools/test/h5diff/CMakeLists.txt
@@ -0,0 +1,22 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5DIFF)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5diff and test executables
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5diffgentest ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/h5diffgentest.c)
+ TARGET_NAMING (h5diffgentest STATIC)
+ TARGET_C_PROPERTIES (h5diffgentest STATIC " " " ")
+ target_link_libraries (h5diffgentest ${HDF5_LIB_TARGET})
+ set_target_properties (h5diffgentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5diffgentest COMMAND $<TARGET_FILE:h5diffgentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5diff/CMakeTests.cmake b/tools/test/h5diff/CMakeTests.cmake
index 5d3d433..7bbff61 100644
--- a/tools/h5diff/CMakeTests.cmake
+++ b/tools/test/h5diff/CMakeTests.cmake
@@ -9,47 +9,47 @@
# Copy all the HDF5 files from the test directory into the source directory
# --------------------------------------------------------------------
set (LIST_HDF5_TEST_FILES
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_basic1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_basic2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_types.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dtypes.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_hyper1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_hyper2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_empty.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_links.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_softlinks.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_linked_softlink.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_extlink_src.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_extlink_trg.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_ext2softlink_src.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_ext2softlink_trg.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset_zero_dim_size1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset_zero_dim_size2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_danglelinks1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_danglelinks2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-3.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude1-1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude1-2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude2-1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude2-2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude3-1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude3-2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_comp_vl_strs.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr_v_level1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr_v_level2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/compounds_array_vlen1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/compounds_array_vlen2.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/non_comparables1.h5
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/non_comparables2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_basic1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_basic2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_types.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dtypes.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_hyper1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_hyper2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_empty.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_links.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_softlinks.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_linked_softlink.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_extlink_src.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_extlink_trg.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_ext2softlink_src.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_ext2softlink_trg.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset_zero_dim_size1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_dset_zero_dim_size2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_danglelinks1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_danglelinks2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_grp_recurse_ext2-3.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude1-1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude1-2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude2-1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude2-2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude3-1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_exclude3-2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_comp_vl_strs.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr_v_level1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr_v_level2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/compounds_array_vlen1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/compounds_array_vlen2.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/non_comparables1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/non_comparables2.h5
# tools/testfiles/vds
${HDF5_TOOLS_DIR}/testfiles/vds/1_a.h5
${HDF5_TOOLS_DIR}/testfiles/vds/1_b.h5
@@ -77,183 +77,183 @@
)
set (LIST_OTHER_TEST_FILES
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_10.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_100.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_11.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_12.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_13.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_14.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_15.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_1.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_2.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_3.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_17.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_171.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_172.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_18_1.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_18.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_20.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_200.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_201.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_202.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_203.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_204.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_205.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_206.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_207.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_208.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_220.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_221.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_222.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_223.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_224.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_21.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_22.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_23.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_24.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_25.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_26.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_27.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_28.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_300.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_400.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_401.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_402.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_403.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_404.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_405.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_406.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_407.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_408.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_409.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_410.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_411.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_412.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_413.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_414.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_415.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_416.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_417.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_418.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_419.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_420.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_421.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_422.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_423.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_424.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_425.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_450.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_451.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_452.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_453.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_454.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_455.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_456.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_457.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_458.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_459.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_465.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_466.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_467.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_468.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_469.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_471.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_472.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_473.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_474.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_475.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_480.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_481.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_482.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_483.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_484.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_485.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_486.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_487.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_50.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_51.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_52.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_53.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_54.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_55.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_56.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_57.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_58.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_59.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_500.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_501.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_502.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_503.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_504.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_505.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_506.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_507.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_508.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_509.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_510.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_511.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_512.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_513.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_514.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_515.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_516.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_517.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_518.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_530.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_540.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_600.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_601.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_603.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_604.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_605.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_606.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_607.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_608.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_609.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_610.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_612.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_613.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_614.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_615.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_616.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_617.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_618.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_619.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_621.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_622.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_623.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_624.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_625.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_626.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_627.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_628.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_629.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_630.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_631.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_640.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_641.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_642.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_643.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_644.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_645.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_646.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_70.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_700.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_701.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_702.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_703.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_704.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_705.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_706.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_707.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_708.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_709.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_710.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_80.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_90.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v1.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v2.txt
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v3.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_10.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_100.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_11.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_12.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_13.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_14.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_15.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_1.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_2.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_16_3.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_17.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_171.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_172.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_18_1.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_18.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_20.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_200.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_201.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_202.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_203.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_204.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_205.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_206.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_207.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_208.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_220.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_221.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_222.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_223.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_224.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_21.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_22.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_23.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_24.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_25.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_26.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_27.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_28.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_300.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_400.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_401.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_402.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_403.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_404.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_405.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_406.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_407.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_408.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_409.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_410.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_411.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_412.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_413.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_414.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_415.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_416.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_417.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_418.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_419.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_420.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_421.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_422.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_423.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_424.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_425.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_450.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_451.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_452.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_453.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_454.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_455.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_456.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_457.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_458.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_459.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_465.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_466.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_467.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_468.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_469.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_471.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_472.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_473.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_474.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_475.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_480.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_481.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_482.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_483.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_484.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_485.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_486.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_487.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_50.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_51.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_52.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_53.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_54.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_55.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_56.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_57.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_58.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_59.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_500.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_501.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_502.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_503.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_504.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_505.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_506.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_507.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_508.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_509.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_510.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_511.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_512.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_513.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_514.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_515.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_516.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_517.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_518.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_530.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_540.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_600.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_601.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_603.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_604.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_605.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_606.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_607.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_608.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_609.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_610.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_612.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_613.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_614.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_615.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_616.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_617.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_618.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_619.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_621.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_622.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_623.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_624.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_625.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_626.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_627.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_628.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_629.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_630.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_631.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_640.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_641.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_642.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_643.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_644.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_645.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_646.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_70.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_700.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_701.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_702.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_703.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_704.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_705.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_706.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_707.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_708.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_709.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_710.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_80.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_90.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v1.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v2.txt
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v3.txt
)
set (LIST_WIN_TEST_FILES
@@ -281,12 +281,12 @@
if (WIN32 AND MSVC_VERSION LESS 1900)
foreach (h5_tstfiles ${LIST_WIN_TEST_FILES})
get_filename_component(fname "${h5_tstfiles}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/testfiles/${fname}.txt" "h5diff_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/testfiles/${fname}.txt" "h5diff_files")
endforeach ()
else ()
foreach (h5_tstfiles ${LIST_WIN_TEST_FILES})
get_filename_component(fname "${h5_tstfiles}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/testfiles/${fname}.txt" "h5diff_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/testfiles/${fname}.txt" "h5diff_files")
endforeach ()
endif ()
add_custom_target(h5diff_files ALL COMMENT "Copying files needed by h5diff tests" DEPENDS ${h5diff_files_list})
diff --git a/tools/h5diff/Makefile.am b/tools/test/h5diff/Makefile.am
index 7e3b620..c366199 100644
--- a/tools/h5diff/Makefile.am
+++ b/tools/test/h5diff/Makefile.am
@@ -26,16 +26,10 @@ AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
# Always build and test h5diff but build and test ph5diff only if parallel
# is enabled.
if BUILD_PARALLEL_CONDITIONAL
- H5PDIFF=ph5diff
+ H5PDIFF=../../src/h5diff/ph5diff
TEST_SCRIPT_PARA=testph5diff.sh
endif
-# Our main target, h5diff
-bin_PROGRAMS=h5diff $(H5PDIFF)
-
-# Add h5diff specific linker flags here
-h5diff_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
-
# Test programs and scripts
TEST_PROG=h5diffgentest
TEST_SCRIPT=testh5diff.sh
@@ -43,11 +37,9 @@ TEST_SCRIPT=testh5diff.sh
check_PROGRAMS=$(TEST_PROG)
check_SCRIPTS=$(TEST_SCRIPT) $(TEST_SCRIPT_PARA)
# The parallel test script testph5diff.sh actually depends on testh5diff.sh.
-SCRIPT_DEPEND=h5diff$(EXEEXT) $(H5PDIFF) testh5diff.sh
+SCRIPT_DEPEND=../../src/h5diff/h5diff$(EXEEXT) $(H5PDIFF) ../../src/h5diff/testh5diff.sh
# Source files for the program
-h5diff_SOURCES=h5diff_main.c h5diff_common.c
-ph5diff_SOURCES=ph5diff_main.c h5diff_common.c
h5diffgentest_SOURCES=h5diffgentest.c
# Programs depend on the main HDF5 library and tools library
diff --git a/tools/h5diff/h5diffgentest.c b/tools/test/h5diff/h5diffgentest.c
index 339ff6c..339ff6c 100644
--- a/tools/h5diff/h5diffgentest.c
+++ b/tools/test/h5diff/h5diffgentest.c
diff --git a/tools/h5diff/testfiles/compounds_array_vlen1.h5 b/tools/test/h5diff/testfiles/compounds_array_vlen1.h5
index 398026c..398026c 100644
--- a/tools/h5diff/testfiles/compounds_array_vlen1.h5
+++ b/tools/test/h5diff/testfiles/compounds_array_vlen1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/compounds_array_vlen2.h5 b/tools/test/h5diff/testfiles/compounds_array_vlen2.h5
index f6f0868..f6f0868 100644
--- a/tools/h5diff/testfiles/compounds_array_vlen2.h5
+++ b/tools/test/h5diff/testfiles/compounds_array_vlen2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_10.txt b/tools/test/h5diff/testfiles/h5diff_10.txt
index a699f00..a699f00 100644
--- a/tools/h5diff/testfiles/h5diff_10.txt
+++ b/tools/test/h5diff/testfiles/h5diff_10.txt
diff --git a/tools/h5diff/testfiles/h5diff_100.txt b/tools/test/h5diff/testfiles/h5diff_100.txt
index 363daa3..363daa3 100644
--- a/tools/h5diff/testfiles/h5diff_100.txt
+++ b/tools/test/h5diff/testfiles/h5diff_100.txt
diff --git a/tools/h5diff/testfiles/h5diff_101.txt b/tools/test/h5diff/testfiles/h5diff_101.txt
index f915439..f915439 100644
--- a/tools/h5diff/testfiles/h5diff_101.txt
+++ b/tools/test/h5diff/testfiles/h5diff_101.txt
diff --git a/tools/h5diff/testfiles/h5diff_101w.txt b/tools/test/h5diff/testfiles/h5diff_101w.txt
index 71f4e87..71f4e87 100644
--- a/tools/h5diff/testfiles/h5diff_101w.txt
+++ b/tools/test/h5diff/testfiles/h5diff_101w.txt
diff --git a/tools/h5diff/testfiles/h5diff_102.txt b/tools/test/h5diff/testfiles/h5diff_102.txt
index 476067b..476067b 100644
--- a/tools/h5diff/testfiles/h5diff_102.txt
+++ b/tools/test/h5diff/testfiles/h5diff_102.txt
diff --git a/tools/h5diff/testfiles/h5diff_102w.txt b/tools/test/h5diff/testfiles/h5diff_102w.txt
index 19a097c..19a097c 100644
--- a/tools/h5diff/testfiles/h5diff_102w.txt
+++ b/tools/test/h5diff/testfiles/h5diff_102w.txt
diff --git a/tools/h5diff/testfiles/h5diff_103.txt b/tools/test/h5diff/testfiles/h5diff_103.txt
index 5700459..5700459 100644
--- a/tools/h5diff/testfiles/h5diff_103.txt
+++ b/tools/test/h5diff/testfiles/h5diff_103.txt
diff --git a/tools/h5diff/testfiles/h5diff_103w.txt b/tools/test/h5diff/testfiles/h5diff_103w.txt
index b1abea2..b1abea2 100644
--- a/tools/h5diff/testfiles/h5diff_103w.txt
+++ b/tools/test/h5diff/testfiles/h5diff_103w.txt
diff --git a/tools/h5diff/testfiles/h5diff_104.txt b/tools/test/h5diff/testfiles/h5diff_104.txt
index 2997f10..2997f10 100644
--- a/tools/h5diff/testfiles/h5diff_104.txt
+++ b/tools/test/h5diff/testfiles/h5diff_104.txt
diff --git a/tools/h5diff/testfiles/h5diff_104w.txt b/tools/test/h5diff/testfiles/h5diff_104w.txt
index 28ef705..28ef705 100644
--- a/tools/h5diff/testfiles/h5diff_104w.txt
+++ b/tools/test/h5diff/testfiles/h5diff_104w.txt
diff --git a/tools/h5diff/testfiles/h5diff_11.txt b/tools/test/h5diff/testfiles/h5diff_11.txt
index c06305c..c06305c 100644
--- a/tools/h5diff/testfiles/h5diff_11.txt
+++ b/tools/test/h5diff/testfiles/h5diff_11.txt
diff --git a/tools/h5diff/testfiles/h5diff_12.txt b/tools/test/h5diff/testfiles/h5diff_12.txt
index 371df79..371df79 100644
--- a/tools/h5diff/testfiles/h5diff_12.txt
+++ b/tools/test/h5diff/testfiles/h5diff_12.txt
diff --git a/tools/h5diff/testfiles/h5diff_13.txt b/tools/test/h5diff/testfiles/h5diff_13.txt
index 729859b..729859b 100644
--- a/tools/h5diff/testfiles/h5diff_13.txt
+++ b/tools/test/h5diff/testfiles/h5diff_13.txt
diff --git a/tools/h5diff/testfiles/h5diff_14.txt b/tools/test/h5diff/testfiles/h5diff_14.txt
index 454463a..454463a 100644
--- a/tools/h5diff/testfiles/h5diff_14.txt
+++ b/tools/test/h5diff/testfiles/h5diff_14.txt
diff --git a/tools/h5diff/testfiles/h5diff_15.txt b/tools/test/h5diff/testfiles/h5diff_15.txt
index 7685f75..7685f75 100644
--- a/tools/h5diff/testfiles/h5diff_15.txt
+++ b/tools/test/h5diff/testfiles/h5diff_15.txt
diff --git a/tools/h5diff/testfiles/h5diff_16_1.txt b/tools/test/h5diff/testfiles/h5diff_16_1.txt
index 482a42f..482a42f 100644
--- a/tools/h5diff/testfiles/h5diff_16_1.txt
+++ b/tools/test/h5diff/testfiles/h5diff_16_1.txt
diff --git a/tools/h5diff/testfiles/h5diff_16_2.txt b/tools/test/h5diff/testfiles/h5diff_16_2.txt
index 34c1afb..34c1afb 100644
--- a/tools/h5diff/testfiles/h5diff_16_2.txt
+++ b/tools/test/h5diff/testfiles/h5diff_16_2.txt
diff --git a/tools/h5diff/testfiles/h5diff_16_3.txt b/tools/test/h5diff/testfiles/h5diff_16_3.txt
index 173a39b..173a39b 100644
--- a/tools/h5diff/testfiles/h5diff_16_3.txt
+++ b/tools/test/h5diff/testfiles/h5diff_16_3.txt
diff --git a/tools/h5diff/testfiles/h5diff_17.txt b/tools/test/h5diff/testfiles/h5diff_17.txt
index 4906a2a..4906a2a 100644
--- a/tools/h5diff/testfiles/h5diff_17.txt
+++ b/tools/test/h5diff/testfiles/h5diff_17.txt
diff --git a/tools/h5diff/testfiles/h5diff_171.txt b/tools/test/h5diff/testfiles/h5diff_171.txt
index aabe16a..aabe16a 100644
--- a/tools/h5diff/testfiles/h5diff_171.txt
+++ b/tools/test/h5diff/testfiles/h5diff_171.txt
diff --git a/tools/h5diff/testfiles/h5diff_172.txt b/tools/test/h5diff/testfiles/h5diff_172.txt
index 852f7b5..852f7b5 100644
--- a/tools/h5diff/testfiles/h5diff_172.txt
+++ b/tools/test/h5diff/testfiles/h5diff_172.txt
diff --git a/tools/h5diff/testfiles/h5diff_18.txt b/tools/test/h5diff/testfiles/h5diff_18.txt
index 1255241..1255241 100644
--- a/tools/h5diff/testfiles/h5diff_18.txt
+++ b/tools/test/h5diff/testfiles/h5diff_18.txt
diff --git a/tools/h5diff/testfiles/h5diff_18_1.txt b/tools/test/h5diff/testfiles/h5diff_18_1.txt
index 0067075..0067075 100644
--- a/tools/h5diff/testfiles/h5diff_18_1.txt
+++ b/tools/test/h5diff/testfiles/h5diff_18_1.txt
diff --git a/tools/h5diff/testfiles/h5diff_19.txt b/tools/test/h5diff/testfiles/h5diff_19.txt
index 1155d55..1155d55 100644
--- a/tools/h5diff/testfiles/h5diff_19.txt
+++ b/tools/test/h5diff/testfiles/h5diff_19.txt
diff --git a/tools/h5diff/testfiles/h5diff_20.txt b/tools/test/h5diff/testfiles/h5diff_20.txt
index 09c20cb..09c20cb 100644
--- a/tools/h5diff/testfiles/h5diff_20.txt
+++ b/tools/test/h5diff/testfiles/h5diff_20.txt
diff --git a/tools/h5diff/testfiles/h5diff_200.txt b/tools/test/h5diff/testfiles/h5diff_200.txt
index 40e3fb6..40e3fb6 100644
--- a/tools/h5diff/testfiles/h5diff_200.txt
+++ b/tools/test/h5diff/testfiles/h5diff_200.txt
diff --git a/tools/h5diff/testfiles/h5diff_201.txt b/tools/test/h5diff/testfiles/h5diff_201.txt
index ede94e1..ede94e1 100644
--- a/tools/h5diff/testfiles/h5diff_201.txt
+++ b/tools/test/h5diff/testfiles/h5diff_201.txt
diff --git a/tools/h5diff/testfiles/h5diff_202.txt b/tools/test/h5diff/testfiles/h5diff_202.txt
index 95ef1da..95ef1da 100644
--- a/tools/h5diff/testfiles/h5diff_202.txt
+++ b/tools/test/h5diff/testfiles/h5diff_202.txt
diff --git a/tools/h5diff/testfiles/h5diff_203.txt b/tools/test/h5diff/testfiles/h5diff_203.txt
index 61a773a..61a773a 100644
--- a/tools/h5diff/testfiles/h5diff_203.txt
+++ b/tools/test/h5diff/testfiles/h5diff_203.txt
diff --git a/tools/h5diff/testfiles/h5diff_204.txt b/tools/test/h5diff/testfiles/h5diff_204.txt
index e02e831..e02e831 100644
--- a/tools/h5diff/testfiles/h5diff_204.txt
+++ b/tools/test/h5diff/testfiles/h5diff_204.txt
diff --git a/tools/h5diff/testfiles/h5diff_205.txt b/tools/test/h5diff/testfiles/h5diff_205.txt
index bf5650f..bf5650f 100644
--- a/tools/h5diff/testfiles/h5diff_205.txt
+++ b/tools/test/h5diff/testfiles/h5diff_205.txt
diff --git a/tools/h5diff/testfiles/h5diff_206.txt b/tools/test/h5diff/testfiles/h5diff_206.txt
index 659321f..659321f 100644
--- a/tools/h5diff/testfiles/h5diff_206.txt
+++ b/tools/test/h5diff/testfiles/h5diff_206.txt
diff --git a/tools/h5diff/testfiles/h5diff_207.txt b/tools/test/h5diff/testfiles/h5diff_207.txt
index 1ef3dbe..1ef3dbe 100644
--- a/tools/h5diff/testfiles/h5diff_207.txt
+++ b/tools/test/h5diff/testfiles/h5diff_207.txt
diff --git a/tools/h5diff/testfiles/h5diff_208.txt b/tools/test/h5diff/testfiles/h5diff_208.txt
index 783be90..783be90 100644
--- a/tools/h5diff/testfiles/h5diff_208.txt
+++ b/tools/test/h5diff/testfiles/h5diff_208.txt
diff --git a/tools/h5diff/testfiles/h5diff_21.txt b/tools/test/h5diff/testfiles/h5diff_21.txt
index 1c625fe..1c625fe 100644
--- a/tools/h5diff/testfiles/h5diff_21.txt
+++ b/tools/test/h5diff/testfiles/h5diff_21.txt
diff --git a/tools/h5diff/testfiles/h5diff_22.txt b/tools/test/h5diff/testfiles/h5diff_22.txt
index 2ef22d0..2ef22d0 100644
--- a/tools/h5diff/testfiles/h5diff_22.txt
+++ b/tools/test/h5diff/testfiles/h5diff_22.txt
diff --git a/tools/h5diff/testfiles/h5diff_220.txt b/tools/test/h5diff/testfiles/h5diff_220.txt
index 0092fc1..0092fc1 100644
--- a/tools/h5diff/testfiles/h5diff_220.txt
+++ b/tools/test/h5diff/testfiles/h5diff_220.txt
diff --git a/tools/h5diff/testfiles/h5diff_221.txt b/tools/test/h5diff/testfiles/h5diff_221.txt
index 5f10860..5f10860 100644
--- a/tools/h5diff/testfiles/h5diff_221.txt
+++ b/tools/test/h5diff/testfiles/h5diff_221.txt
diff --git a/tools/h5diff/testfiles/h5diff_222.txt b/tools/test/h5diff/testfiles/h5diff_222.txt
index 77447da..77447da 100644
--- a/tools/h5diff/testfiles/h5diff_222.txt
+++ b/tools/test/h5diff/testfiles/h5diff_222.txt
diff --git a/tools/h5diff/testfiles/h5diff_223.txt b/tools/test/h5diff/testfiles/h5diff_223.txt
index c8e0f65..c8e0f65 100644
--- a/tools/h5diff/testfiles/h5diff_223.txt
+++ b/tools/test/h5diff/testfiles/h5diff_223.txt
diff --git a/tools/h5diff/testfiles/h5diff_224.txt b/tools/test/h5diff/testfiles/h5diff_224.txt
index a4ebedb..a4ebedb 100644
--- a/tools/h5diff/testfiles/h5diff_224.txt
+++ b/tools/test/h5diff/testfiles/h5diff_224.txt
diff --git a/tools/h5diff/testfiles/h5diff_23.txt b/tools/test/h5diff/testfiles/h5diff_23.txt
index bd1cadb..bd1cadb 100644
--- a/tools/h5diff/testfiles/h5diff_23.txt
+++ b/tools/test/h5diff/testfiles/h5diff_23.txt
diff --git a/tools/h5diff/testfiles/h5diff_24.txt b/tools/test/h5diff/testfiles/h5diff_24.txt
index fa5723a..fa5723a 100644
--- a/tools/h5diff/testfiles/h5diff_24.txt
+++ b/tools/test/h5diff/testfiles/h5diff_24.txt
diff --git a/tools/h5diff/testfiles/h5diff_25.txt b/tools/test/h5diff/testfiles/h5diff_25.txt
index e463ba1..e463ba1 100644
--- a/tools/h5diff/testfiles/h5diff_25.txt
+++ b/tools/test/h5diff/testfiles/h5diff_25.txt
diff --git a/tools/h5diff/testfiles/h5diff_26.txt b/tools/test/h5diff/testfiles/h5diff_26.txt
index 54a5121..54a5121 100644
--- a/tools/h5diff/testfiles/h5diff_26.txt
+++ b/tools/test/h5diff/testfiles/h5diff_26.txt
diff --git a/tools/h5diff/testfiles/h5diff_27.txt b/tools/test/h5diff/testfiles/h5diff_27.txt
index cbc128e..cbc128e 100644
--- a/tools/h5diff/testfiles/h5diff_27.txt
+++ b/tools/test/h5diff/testfiles/h5diff_27.txt
diff --git a/tools/h5diff/testfiles/h5diff_28.txt b/tools/test/h5diff/testfiles/h5diff_28.txt
index 07d01fe..07d01fe 100644
--- a/tools/h5diff/testfiles/h5diff_28.txt
+++ b/tools/test/h5diff/testfiles/h5diff_28.txt
diff --git a/tools/h5diff/testfiles/h5diff_30.txt b/tools/test/h5diff/testfiles/h5diff_30.txt
index 187589a..187589a 100644
--- a/tools/h5diff/testfiles/h5diff_30.txt
+++ b/tools/test/h5diff/testfiles/h5diff_30.txt
diff --git a/tools/h5diff/testfiles/h5diff_300.txt b/tools/test/h5diff/testfiles/h5diff_300.txt
index e51643f..e51643f 100644
--- a/tools/h5diff/testfiles/h5diff_300.txt
+++ b/tools/test/h5diff/testfiles/h5diff_300.txt
diff --git a/tools/h5diff/testfiles/h5diff_400.txt b/tools/test/h5diff/testfiles/h5diff_400.txt
index 8b3c03c..8b3c03c 100644
--- a/tools/h5diff/testfiles/h5diff_400.txt
+++ b/tools/test/h5diff/testfiles/h5diff_400.txt
diff --git a/tools/h5diff/testfiles/h5diff_401.txt b/tools/test/h5diff/testfiles/h5diff_401.txt
index 278729e..278729e 100644
--- a/tools/h5diff/testfiles/h5diff_401.txt
+++ b/tools/test/h5diff/testfiles/h5diff_401.txt
diff --git a/tools/h5diff/testfiles/h5diff_402.txt b/tools/test/h5diff/testfiles/h5diff_402.txt
index b0f30ca..b0f30ca 100644
--- a/tools/h5diff/testfiles/h5diff_402.txt
+++ b/tools/test/h5diff/testfiles/h5diff_402.txt
diff --git a/tools/h5diff/testfiles/h5diff_403.txt b/tools/test/h5diff/testfiles/h5diff_403.txt
index 068d01d..068d01d 100644
--- a/tools/h5diff/testfiles/h5diff_403.txt
+++ b/tools/test/h5diff/testfiles/h5diff_403.txt
diff --git a/tools/h5diff/testfiles/h5diff_404.txt b/tools/test/h5diff/testfiles/h5diff_404.txt
index db317d1..db317d1 100644
--- a/tools/h5diff/testfiles/h5diff_404.txt
+++ b/tools/test/h5diff/testfiles/h5diff_404.txt
diff --git a/tools/h5diff/testfiles/h5diff_405.txt b/tools/test/h5diff/testfiles/h5diff_405.txt
index 890dd33..890dd33 100644
--- a/tools/h5diff/testfiles/h5diff_405.txt
+++ b/tools/test/h5diff/testfiles/h5diff_405.txt
diff --git a/tools/h5diff/testfiles/h5diff_406.txt b/tools/test/h5diff/testfiles/h5diff_406.txt
index 7fa442a..7fa442a 100644
--- a/tools/h5diff/testfiles/h5diff_406.txt
+++ b/tools/test/h5diff/testfiles/h5diff_406.txt
diff --git a/tools/h5diff/testfiles/h5diff_407.txt b/tools/test/h5diff/testfiles/h5diff_407.txt
index 3693ab9..3693ab9 100644
--- a/tools/h5diff/testfiles/h5diff_407.txt
+++ b/tools/test/h5diff/testfiles/h5diff_407.txt
diff --git a/tools/h5diff/testfiles/h5diff_408.txt b/tools/test/h5diff/testfiles/h5diff_408.txt
index e941f9b..e941f9b 100644
--- a/tools/h5diff/testfiles/h5diff_408.txt
+++ b/tools/test/h5diff/testfiles/h5diff_408.txt
diff --git a/tools/h5diff/testfiles/h5diff_409.txt b/tools/test/h5diff/testfiles/h5diff_409.txt
index 007da7d..007da7d 100644
--- a/tools/h5diff/testfiles/h5diff_409.txt
+++ b/tools/test/h5diff/testfiles/h5diff_409.txt
diff --git a/tools/h5diff/testfiles/h5diff_410.txt b/tools/test/h5diff/testfiles/h5diff_410.txt
index 6087bb8..6087bb8 100644
--- a/tools/h5diff/testfiles/h5diff_410.txt
+++ b/tools/test/h5diff/testfiles/h5diff_410.txt
diff --git a/tools/h5diff/testfiles/h5diff_411.txt b/tools/test/h5diff/testfiles/h5diff_411.txt
index 161ab34..161ab34 100644
--- a/tools/h5diff/testfiles/h5diff_411.txt
+++ b/tools/test/h5diff/testfiles/h5diff_411.txt
diff --git a/tools/h5diff/testfiles/h5diff_412.txt b/tools/test/h5diff/testfiles/h5diff_412.txt
index bb8209c..bb8209c 100644
--- a/tools/h5diff/testfiles/h5diff_412.txt
+++ b/tools/test/h5diff/testfiles/h5diff_412.txt
diff --git a/tools/h5diff/testfiles/h5diff_413.txt b/tools/test/h5diff/testfiles/h5diff_413.txt
index 8df3d51..8df3d51 100644
--- a/tools/h5diff/testfiles/h5diff_413.txt
+++ b/tools/test/h5diff/testfiles/h5diff_413.txt
diff --git a/tools/h5diff/testfiles/h5diff_414.txt b/tools/test/h5diff/testfiles/h5diff_414.txt
index a47349e..a47349e 100644
--- a/tools/h5diff/testfiles/h5diff_414.txt
+++ b/tools/test/h5diff/testfiles/h5diff_414.txt
diff --git a/tools/h5diff/testfiles/h5diff_415.txt b/tools/test/h5diff/testfiles/h5diff_415.txt
index 30cc947..30cc947 100644
--- a/tools/h5diff/testfiles/h5diff_415.txt
+++ b/tools/test/h5diff/testfiles/h5diff_415.txt
diff --git a/tools/h5diff/testfiles/h5diff_416.txt b/tools/test/h5diff/testfiles/h5diff_416.txt
index 551a6c3..551a6c3 100644
--- a/tools/h5diff/testfiles/h5diff_416.txt
+++ b/tools/test/h5diff/testfiles/h5diff_416.txt
diff --git a/tools/h5diff/testfiles/h5diff_417.txt b/tools/test/h5diff/testfiles/h5diff_417.txt
index 0ea2542..0ea2542 100644
--- a/tools/h5diff/testfiles/h5diff_417.txt
+++ b/tools/test/h5diff/testfiles/h5diff_417.txt
diff --git a/tools/h5diff/testfiles/h5diff_418.txt b/tools/test/h5diff/testfiles/h5diff_418.txt
index 46222bb..46222bb 100644
--- a/tools/h5diff/testfiles/h5diff_418.txt
+++ b/tools/test/h5diff/testfiles/h5diff_418.txt
diff --git a/tools/h5diff/testfiles/h5diff_419.txt b/tools/test/h5diff/testfiles/h5diff_419.txt
index 387c600..387c600 100644
--- a/tools/h5diff/testfiles/h5diff_419.txt
+++ b/tools/test/h5diff/testfiles/h5diff_419.txt
diff --git a/tools/h5diff/testfiles/h5diff_420.txt b/tools/test/h5diff/testfiles/h5diff_420.txt
index f3e65d9..f3e65d9 100644
--- a/tools/h5diff/testfiles/h5diff_420.txt
+++ b/tools/test/h5diff/testfiles/h5diff_420.txt
diff --git a/tools/h5diff/testfiles/h5diff_421.txt b/tools/test/h5diff/testfiles/h5diff_421.txt
index 833c60c..833c60c 100644
--- a/tools/h5diff/testfiles/h5diff_421.txt
+++ b/tools/test/h5diff/testfiles/h5diff_421.txt
diff --git a/tools/h5diff/testfiles/h5diff_422.txt b/tools/test/h5diff/testfiles/h5diff_422.txt
index 3e675d5..3e675d5 100644
--- a/tools/h5diff/testfiles/h5diff_422.txt
+++ b/tools/test/h5diff/testfiles/h5diff_422.txt
diff --git a/tools/h5diff/testfiles/h5diff_423.txt b/tools/test/h5diff/testfiles/h5diff_423.txt
index 1ebc157..1ebc157 100644
--- a/tools/h5diff/testfiles/h5diff_423.txt
+++ b/tools/test/h5diff/testfiles/h5diff_423.txt
diff --git a/tools/h5diff/testfiles/h5diff_424.txt b/tools/test/h5diff/testfiles/h5diff_424.txt
index 9099c41..9099c41 100644
--- a/tools/h5diff/testfiles/h5diff_424.txt
+++ b/tools/test/h5diff/testfiles/h5diff_424.txt
diff --git a/tools/h5diff/testfiles/h5diff_425.txt b/tools/test/h5diff/testfiles/h5diff_425.txt
index 03ceb78..03ceb78 100644
--- a/tools/h5diff/testfiles/h5diff_425.txt
+++ b/tools/test/h5diff/testfiles/h5diff_425.txt
diff --git a/tools/h5diff/testfiles/h5diff_450.txt b/tools/test/h5diff/testfiles/h5diff_450.txt
index a63d78f..a63d78f 100644
--- a/tools/h5diff/testfiles/h5diff_450.txt
+++ b/tools/test/h5diff/testfiles/h5diff_450.txt
diff --git a/tools/h5diff/testfiles/h5diff_451.txt b/tools/test/h5diff/testfiles/h5diff_451.txt
index fd0691f..fd0691f 100644
--- a/tools/h5diff/testfiles/h5diff_451.txt
+++ b/tools/test/h5diff/testfiles/h5diff_451.txt
diff --git a/tools/h5diff/testfiles/h5diff_452.txt b/tools/test/h5diff/testfiles/h5diff_452.txt
index 05403af..05403af 100644
--- a/tools/h5diff/testfiles/h5diff_452.txt
+++ b/tools/test/h5diff/testfiles/h5diff_452.txt
diff --git a/tools/h5diff/testfiles/h5diff_453.txt b/tools/test/h5diff/testfiles/h5diff_453.txt
index 8a5ca52..8a5ca52 100644
--- a/tools/h5diff/testfiles/h5diff_453.txt
+++ b/tools/test/h5diff/testfiles/h5diff_453.txt
diff --git a/tools/h5diff/testfiles/h5diff_454.txt b/tools/test/h5diff/testfiles/h5diff_454.txt
index dcc2e9c..dcc2e9c 100644
--- a/tools/h5diff/testfiles/h5diff_454.txt
+++ b/tools/test/h5diff/testfiles/h5diff_454.txt
diff --git a/tools/h5diff/testfiles/h5diff_455.txt b/tools/test/h5diff/testfiles/h5diff_455.txt
index dcc2e9c..dcc2e9c 100644
--- a/tools/h5diff/testfiles/h5diff_455.txt
+++ b/tools/test/h5diff/testfiles/h5diff_455.txt
diff --git a/tools/h5diff/testfiles/h5diff_456.txt b/tools/test/h5diff/testfiles/h5diff_456.txt
index 9317988..9317988 100644
--- a/tools/h5diff/testfiles/h5diff_456.txt
+++ b/tools/test/h5diff/testfiles/h5diff_456.txt
diff --git a/tools/h5diff/testfiles/h5diff_457.txt b/tools/test/h5diff/testfiles/h5diff_457.txt
index 762ccdc..762ccdc 100644
--- a/tools/h5diff/testfiles/h5diff_457.txt
+++ b/tools/test/h5diff/testfiles/h5diff_457.txt
diff --git a/tools/h5diff/testfiles/h5diff_458.txt b/tools/test/h5diff/testfiles/h5diff_458.txt
index 067d665..067d665 100644
--- a/tools/h5diff/testfiles/h5diff_458.txt
+++ b/tools/test/h5diff/testfiles/h5diff_458.txt
diff --git a/tools/h5diff/testfiles/h5diff_459.txt b/tools/test/h5diff/testfiles/h5diff_459.txt
index 762ccdc..762ccdc 100644
--- a/tools/h5diff/testfiles/h5diff_459.txt
+++ b/tools/test/h5diff/testfiles/h5diff_459.txt
diff --git a/tools/h5diff/testfiles/h5diff_465.txt b/tools/test/h5diff/testfiles/h5diff_465.txt
index eca5994..eca5994 100644
--- a/tools/h5diff/testfiles/h5diff_465.txt
+++ b/tools/test/h5diff/testfiles/h5diff_465.txt
diff --git a/tools/h5diff/testfiles/h5diff_466.txt b/tools/test/h5diff/testfiles/h5diff_466.txt
index 3e00ca3..3e00ca3 100644
--- a/tools/h5diff/testfiles/h5diff_466.txt
+++ b/tools/test/h5diff/testfiles/h5diff_466.txt
diff --git a/tools/h5diff/testfiles/h5diff_467.txt b/tools/test/h5diff/testfiles/h5diff_467.txt
index f5195c0..f5195c0 100644
--- a/tools/h5diff/testfiles/h5diff_467.txt
+++ b/tools/test/h5diff/testfiles/h5diff_467.txt
diff --git a/tools/h5diff/testfiles/h5diff_468.txt b/tools/test/h5diff/testfiles/h5diff_468.txt
index 75b16c6..75b16c6 100644
--- a/tools/h5diff/testfiles/h5diff_468.txt
+++ b/tools/test/h5diff/testfiles/h5diff_468.txt
diff --git a/tools/h5diff/testfiles/h5diff_469.txt b/tools/test/h5diff/testfiles/h5diff_469.txt
index 594fd80..594fd80 100644
--- a/tools/h5diff/testfiles/h5diff_469.txt
+++ b/tools/test/h5diff/testfiles/h5diff_469.txt
diff --git a/tools/h5diff/testfiles/h5diff_471.txt b/tools/test/h5diff/testfiles/h5diff_471.txt
index 124cdd7..124cdd7 100644
--- a/tools/h5diff/testfiles/h5diff_471.txt
+++ b/tools/test/h5diff/testfiles/h5diff_471.txt
diff --git a/tools/h5diff/testfiles/h5diff_472.txt b/tools/test/h5diff/testfiles/h5diff_472.txt
index 57a8af4..57a8af4 100644
--- a/tools/h5diff/testfiles/h5diff_472.txt
+++ b/tools/test/h5diff/testfiles/h5diff_472.txt
diff --git a/tools/h5diff/testfiles/h5diff_473.txt b/tools/test/h5diff/testfiles/h5diff_473.txt
index 4c1855d..4c1855d 100644
--- a/tools/h5diff/testfiles/h5diff_473.txt
+++ b/tools/test/h5diff/testfiles/h5diff_473.txt
diff --git a/tools/h5diff/testfiles/h5diff_474.txt b/tools/test/h5diff/testfiles/h5diff_474.txt
index 7807551..7807551 100644
--- a/tools/h5diff/testfiles/h5diff_474.txt
+++ b/tools/test/h5diff/testfiles/h5diff_474.txt
diff --git a/tools/h5diff/testfiles/h5diff_475.txt b/tools/test/h5diff/testfiles/h5diff_475.txt
index be6110e..be6110e 100644
--- a/tools/h5diff/testfiles/h5diff_475.txt
+++ b/tools/test/h5diff/testfiles/h5diff_475.txt
diff --git a/tools/h5diff/testfiles/h5diff_480.txt b/tools/test/h5diff/testfiles/h5diff_480.txt
index 3e1f900..3e1f900 100644
--- a/tools/h5diff/testfiles/h5diff_480.txt
+++ b/tools/test/h5diff/testfiles/h5diff_480.txt
diff --git a/tools/h5diff/testfiles/h5diff_481.txt b/tools/test/h5diff/testfiles/h5diff_481.txt
index c4f2448..c4f2448 100644
--- a/tools/h5diff/testfiles/h5diff_481.txt
+++ b/tools/test/h5diff/testfiles/h5diff_481.txt
diff --git a/tools/h5diff/testfiles/h5diff_482.txt b/tools/test/h5diff/testfiles/h5diff_482.txt
index 5b3c8c1..5b3c8c1 100644
--- a/tools/h5diff/testfiles/h5diff_482.txt
+++ b/tools/test/h5diff/testfiles/h5diff_482.txt
diff --git a/tools/h5diff/testfiles/h5diff_483.txt b/tools/test/h5diff/testfiles/h5diff_483.txt
index a45e928..a45e928 100644
--- a/tools/h5diff/testfiles/h5diff_483.txt
+++ b/tools/test/h5diff/testfiles/h5diff_483.txt
diff --git a/tools/h5diff/testfiles/h5diff_484.txt b/tools/test/h5diff/testfiles/h5diff_484.txt
index 87d9c7c..87d9c7c 100644
--- a/tools/h5diff/testfiles/h5diff_484.txt
+++ b/tools/test/h5diff/testfiles/h5diff_484.txt
diff --git a/tools/h5diff/testfiles/h5diff_485.txt b/tools/test/h5diff/testfiles/h5diff_485.txt
index 4175809..4175809 100644
--- a/tools/h5diff/testfiles/h5diff_485.txt
+++ b/tools/test/h5diff/testfiles/h5diff_485.txt
diff --git a/tools/h5diff/testfiles/h5diff_486.txt b/tools/test/h5diff/testfiles/h5diff_486.txt
index 4175809..4175809 100644
--- a/tools/h5diff/testfiles/h5diff_486.txt
+++ b/tools/test/h5diff/testfiles/h5diff_486.txt
diff --git a/tools/h5diff/testfiles/h5diff_487.txt b/tools/test/h5diff/testfiles/h5diff_487.txt
index 8555a71..8555a71 100644
--- a/tools/h5diff/testfiles/h5diff_487.txt
+++ b/tools/test/h5diff/testfiles/h5diff_487.txt
diff --git a/tools/h5diff/testfiles/h5diff_50.txt b/tools/test/h5diff/testfiles/h5diff_50.txt
index 434b458..434b458 100644
--- a/tools/h5diff/testfiles/h5diff_50.txt
+++ b/tools/test/h5diff/testfiles/h5diff_50.txt
diff --git a/tools/h5diff/testfiles/h5diff_500.txt b/tools/test/h5diff/testfiles/h5diff_500.txt
index 7d688d2..7d688d2 100644
--- a/tools/h5diff/testfiles/h5diff_500.txt
+++ b/tools/test/h5diff/testfiles/h5diff_500.txt
diff --git a/tools/h5diff/testfiles/h5diff_501.txt b/tools/test/h5diff/testfiles/h5diff_501.txt
index 75e91da..75e91da 100644
--- a/tools/h5diff/testfiles/h5diff_501.txt
+++ b/tools/test/h5diff/testfiles/h5diff_501.txt
diff --git a/tools/h5diff/testfiles/h5diff_502.txt b/tools/test/h5diff/testfiles/h5diff_502.txt
index d3de6e5..d3de6e5 100644
--- a/tools/h5diff/testfiles/h5diff_502.txt
+++ b/tools/test/h5diff/testfiles/h5diff_502.txt
diff --git a/tools/h5diff/testfiles/h5diff_503.txt b/tools/test/h5diff/testfiles/h5diff_503.txt
index cf01598..cf01598 100644
--- a/tools/h5diff/testfiles/h5diff_503.txt
+++ b/tools/test/h5diff/testfiles/h5diff_503.txt
diff --git a/tools/h5diff/testfiles/h5diff_504.txt b/tools/test/h5diff/testfiles/h5diff_504.txt
index 6cf43b3..6cf43b3 100644
--- a/tools/h5diff/testfiles/h5diff_504.txt
+++ b/tools/test/h5diff/testfiles/h5diff_504.txt
diff --git a/tools/h5diff/testfiles/h5diff_505.txt b/tools/test/h5diff/testfiles/h5diff_505.txt
index 607b99b..607b99b 100644
--- a/tools/h5diff/testfiles/h5diff_505.txt
+++ b/tools/test/h5diff/testfiles/h5diff_505.txt
diff --git a/tools/h5diff/testfiles/h5diff_506.txt b/tools/test/h5diff/testfiles/h5diff_506.txt
index efef9a7..efef9a7 100644
--- a/tools/h5diff/testfiles/h5diff_506.txt
+++ b/tools/test/h5diff/testfiles/h5diff_506.txt
diff --git a/tools/h5diff/testfiles/h5diff_507.txt b/tools/test/h5diff/testfiles/h5diff_507.txt
index 06b7fe6..06b7fe6 100644
--- a/tools/h5diff/testfiles/h5diff_507.txt
+++ b/tools/test/h5diff/testfiles/h5diff_507.txt
diff --git a/tools/h5diff/testfiles/h5diff_508.txt b/tools/test/h5diff/testfiles/h5diff_508.txt
index 9796345..9796345 100644
--- a/tools/h5diff/testfiles/h5diff_508.txt
+++ b/tools/test/h5diff/testfiles/h5diff_508.txt
diff --git a/tools/h5diff/testfiles/h5diff_509.txt b/tools/test/h5diff/testfiles/h5diff_509.txt
index 2e3e87a..2e3e87a 100644
--- a/tools/h5diff/testfiles/h5diff_509.txt
+++ b/tools/test/h5diff/testfiles/h5diff_509.txt
diff --git a/tools/h5diff/testfiles/h5diff_51.txt b/tools/test/h5diff/testfiles/h5diff_51.txt
index 621ba2a..621ba2a 100644
--- a/tools/h5diff/testfiles/h5diff_51.txt
+++ b/tools/test/h5diff/testfiles/h5diff_51.txt
diff --git a/tools/h5diff/testfiles/h5diff_510.txt b/tools/test/h5diff/testfiles/h5diff_510.txt
index 9d92768..9d92768 100644
--- a/tools/h5diff/testfiles/h5diff_510.txt
+++ b/tools/test/h5diff/testfiles/h5diff_510.txt
diff --git a/tools/h5diff/testfiles/h5diff_511.txt b/tools/test/h5diff/testfiles/h5diff_511.txt
index 4bac100..4bac100 100644
--- a/tools/h5diff/testfiles/h5diff_511.txt
+++ b/tools/test/h5diff/testfiles/h5diff_511.txt
diff --git a/tools/h5diff/testfiles/h5diff_512.txt b/tools/test/h5diff/testfiles/h5diff_512.txt
index 23fbc12..23fbc12 100644
--- a/tools/h5diff/testfiles/h5diff_512.txt
+++ b/tools/test/h5diff/testfiles/h5diff_512.txt
diff --git a/tools/h5diff/testfiles/h5diff_513.txt b/tools/test/h5diff/testfiles/h5diff_513.txt
index b0af15d..b0af15d 100644
--- a/tools/h5diff/testfiles/h5diff_513.txt
+++ b/tools/test/h5diff/testfiles/h5diff_513.txt
diff --git a/tools/h5diff/testfiles/h5diff_514.txt b/tools/test/h5diff/testfiles/h5diff_514.txt
index f8e16e9..f8e16e9 100644
--- a/tools/h5diff/testfiles/h5diff_514.txt
+++ b/tools/test/h5diff/testfiles/h5diff_514.txt
diff --git a/tools/h5diff/testfiles/h5diff_515.txt b/tools/test/h5diff/testfiles/h5diff_515.txt
index 263441d..263441d 100644
--- a/tools/h5diff/testfiles/h5diff_515.txt
+++ b/tools/test/h5diff/testfiles/h5diff_515.txt
diff --git a/tools/h5diff/testfiles/h5diff_516.txt b/tools/test/h5diff/testfiles/h5diff_516.txt
index 32f4bd5..32f4bd5 100644
--- a/tools/h5diff/testfiles/h5diff_516.txt
+++ b/tools/test/h5diff/testfiles/h5diff_516.txt
diff --git a/tools/h5diff/testfiles/h5diff_517.txt b/tools/test/h5diff/testfiles/h5diff_517.txt
index 91c69fb..91c69fb 100644
--- a/tools/h5diff/testfiles/h5diff_517.txt
+++ b/tools/test/h5diff/testfiles/h5diff_517.txt
diff --git a/tools/h5diff/testfiles/h5diff_518.txt b/tools/test/h5diff/testfiles/h5diff_518.txt
index f4761ad..f4761ad 100644
--- a/tools/h5diff/testfiles/h5diff_518.txt
+++ b/tools/test/h5diff/testfiles/h5diff_518.txt
diff --git a/tools/h5diff/testfiles/h5diff_52.txt b/tools/test/h5diff/testfiles/h5diff_52.txt
index 6667659..6667659 100644
--- a/tools/h5diff/testfiles/h5diff_52.txt
+++ b/tools/test/h5diff/testfiles/h5diff_52.txt
diff --git a/tools/h5diff/testfiles/h5diff_53.txt b/tools/test/h5diff/testfiles/h5diff_53.txt
index 458d166..458d166 100644
--- a/tools/h5diff/testfiles/h5diff_53.txt
+++ b/tools/test/h5diff/testfiles/h5diff_53.txt
diff --git a/tools/h5diff/testfiles/h5diff_530.txt b/tools/test/h5diff/testfiles/h5diff_530.txt
index 73d736e..73d736e 100644
--- a/tools/h5diff/testfiles/h5diff_530.txt
+++ b/tools/test/h5diff/testfiles/h5diff_530.txt
diff --git a/tools/h5diff/testfiles/h5diff_54.txt b/tools/test/h5diff/testfiles/h5diff_54.txt
index 2ca60f8..2ca60f8 100644
--- a/tools/h5diff/testfiles/h5diff_54.txt
+++ b/tools/test/h5diff/testfiles/h5diff_54.txt
diff --git a/tools/h5diff/testfiles/h5diff_540.txt b/tools/test/h5diff/testfiles/h5diff_540.txt
index a6903c8..a6903c8 100644
--- a/tools/h5diff/testfiles/h5diff_540.txt
+++ b/tools/test/h5diff/testfiles/h5diff_540.txt
diff --git a/tools/h5diff/testfiles/h5diff_55.txt b/tools/test/h5diff/testfiles/h5diff_55.txt
index 1288887..1288887 100644
--- a/tools/h5diff/testfiles/h5diff_55.txt
+++ b/tools/test/h5diff/testfiles/h5diff_55.txt
diff --git a/tools/h5diff/testfiles/h5diff_56.txt b/tools/test/h5diff/testfiles/h5diff_56.txt
index 0e82860..0e82860 100644
--- a/tools/h5diff/testfiles/h5diff_56.txt
+++ b/tools/test/h5diff/testfiles/h5diff_56.txt
diff --git a/tools/h5diff/testfiles/h5diff_57.txt b/tools/test/h5diff/testfiles/h5diff_57.txt
index d5125fe..d5125fe 100644
--- a/tools/h5diff/testfiles/h5diff_57.txt
+++ b/tools/test/h5diff/testfiles/h5diff_57.txt
diff --git a/tools/h5diff/testfiles/h5diff_58.txt b/tools/test/h5diff/testfiles/h5diff_58.txt
index 768dd97..768dd97 100644
--- a/tools/h5diff/testfiles/h5diff_58.txt
+++ b/tools/test/h5diff/testfiles/h5diff_58.txt
diff --git a/tools/h5diff/testfiles/h5diff_59.txt b/tools/test/h5diff/testfiles/h5diff_59.txt
index 996a7b2..996a7b2 100644
--- a/tools/h5diff/testfiles/h5diff_59.txt
+++ b/tools/test/h5diff/testfiles/h5diff_59.txt
diff --git a/tools/h5diff/testfiles/h5diff_600.txt b/tools/test/h5diff/testfiles/h5diff_600.txt
index 3c3ad9f..3c3ad9f 100644
--- a/tools/h5diff/testfiles/h5diff_600.txt
+++ b/tools/test/h5diff/testfiles/h5diff_600.txt
diff --git a/tools/h5diff/testfiles/h5diff_601.txt b/tools/test/h5diff/testfiles/h5diff_601.txt
index eb12f38..eb12f38 100644
--- a/tools/h5diff/testfiles/h5diff_601.txt
+++ b/tools/test/h5diff/testfiles/h5diff_601.txt
diff --git a/tools/h5diff/testfiles/h5diff_603.txt b/tools/test/h5diff/testfiles/h5diff_603.txt
index 087764a..087764a 100644
--- a/tools/h5diff/testfiles/h5diff_603.txt
+++ b/tools/test/h5diff/testfiles/h5diff_603.txt
diff --git a/tools/h5diff/testfiles/h5diff_604.txt b/tools/test/h5diff/testfiles/h5diff_604.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_604.txt
+++ b/tools/test/h5diff/testfiles/h5diff_604.txt
diff --git a/tools/h5diff/testfiles/h5diff_605.txt b/tools/test/h5diff/testfiles/h5diff_605.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_605.txt
+++ b/tools/test/h5diff/testfiles/h5diff_605.txt
diff --git a/tools/h5diff/testfiles/h5diff_606.txt b/tools/test/h5diff/testfiles/h5diff_606.txt
index c31a67e..c31a67e 100644
--- a/tools/h5diff/testfiles/h5diff_606.txt
+++ b/tools/test/h5diff/testfiles/h5diff_606.txt
diff --git a/tools/h5diff/testfiles/h5diff_607.txt b/tools/test/h5diff/testfiles/h5diff_607.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_607.txt
+++ b/tools/test/h5diff/testfiles/h5diff_607.txt
diff --git a/tools/h5diff/testfiles/h5diff_608.txt b/tools/test/h5diff/testfiles/h5diff_608.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_608.txt
+++ b/tools/test/h5diff/testfiles/h5diff_608.txt
diff --git a/tools/h5diff/testfiles/h5diff_609.txt b/tools/test/h5diff/testfiles/h5diff_609.txt
index eca5994..eca5994 100644
--- a/tools/h5diff/testfiles/h5diff_609.txt
+++ b/tools/test/h5diff/testfiles/h5diff_609.txt
diff --git a/tools/h5diff/testfiles/h5diff_610.txt b/tools/test/h5diff/testfiles/h5diff_610.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_610.txt
+++ b/tools/test/h5diff/testfiles/h5diff_610.txt
diff --git a/tools/h5diff/testfiles/h5diff_612.txt b/tools/test/h5diff/testfiles/h5diff_612.txt
index 05318bd..05318bd 100644
--- a/tools/h5diff/testfiles/h5diff_612.txt
+++ b/tools/test/h5diff/testfiles/h5diff_612.txt
diff --git a/tools/h5diff/testfiles/h5diff_613.txt b/tools/test/h5diff/testfiles/h5diff_613.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_613.txt
+++ b/tools/test/h5diff/testfiles/h5diff_613.txt
diff --git a/tools/h5diff/testfiles/h5diff_614.txt b/tools/test/h5diff/testfiles/h5diff_614.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_614.txt
+++ b/tools/test/h5diff/testfiles/h5diff_614.txt
diff --git a/tools/h5diff/testfiles/h5diff_615.txt b/tools/test/h5diff/testfiles/h5diff_615.txt
index fd756b3..fd756b3 100644
--- a/tools/h5diff/testfiles/h5diff_615.txt
+++ b/tools/test/h5diff/testfiles/h5diff_615.txt
diff --git a/tools/h5diff/testfiles/h5diff_616.txt b/tools/test/h5diff/testfiles/h5diff_616.txt
index 3bc194a..3bc194a 100644
--- a/tools/h5diff/testfiles/h5diff_616.txt
+++ b/tools/test/h5diff/testfiles/h5diff_616.txt
diff --git a/tools/h5diff/testfiles/h5diff_617.txt b/tools/test/h5diff/testfiles/h5diff_617.txt
index 3bc194a..3bc194a 100644
--- a/tools/h5diff/testfiles/h5diff_617.txt
+++ b/tools/test/h5diff/testfiles/h5diff_617.txt
diff --git a/tools/h5diff/testfiles/h5diff_618.txt b/tools/test/h5diff/testfiles/h5diff_618.txt
index eca5994..eca5994 100644
--- a/tools/h5diff/testfiles/h5diff_618.txt
+++ b/tools/test/h5diff/testfiles/h5diff_618.txt
diff --git a/tools/h5diff/testfiles/h5diff_619.txt b/tools/test/h5diff/testfiles/h5diff_619.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_619.txt
+++ b/tools/test/h5diff/testfiles/h5diff_619.txt
diff --git a/tools/h5diff/testfiles/h5diff_621.txt b/tools/test/h5diff/testfiles/h5diff_621.txt
index fd8c680..fd8c680 100644
--- a/tools/h5diff/testfiles/h5diff_621.txt
+++ b/tools/test/h5diff/testfiles/h5diff_621.txt
diff --git a/tools/h5diff/testfiles/h5diff_622.txt b/tools/test/h5diff/testfiles/h5diff_622.txt
index f0d38af..f0d38af 100644
--- a/tools/h5diff/testfiles/h5diff_622.txt
+++ b/tools/test/h5diff/testfiles/h5diff_622.txt
diff --git a/tools/h5diff/testfiles/h5diff_623.txt b/tools/test/h5diff/testfiles/h5diff_623.txt
index 4ab66a5..4ab66a5 100644
--- a/tools/h5diff/testfiles/h5diff_623.txt
+++ b/tools/test/h5diff/testfiles/h5diff_623.txt
diff --git a/tools/h5diff/testfiles/h5diff_624.txt b/tools/test/h5diff/testfiles/h5diff_624.txt
index f5e7ee3..f5e7ee3 100644
--- a/tools/h5diff/testfiles/h5diff_624.txt
+++ b/tools/test/h5diff/testfiles/h5diff_624.txt
diff --git a/tools/h5diff/testfiles/h5diff_625.txt b/tools/test/h5diff/testfiles/h5diff_625.txt
index 3bc194a..3bc194a 100644
--- a/tools/h5diff/testfiles/h5diff_625.txt
+++ b/tools/test/h5diff/testfiles/h5diff_625.txt
diff --git a/tools/h5diff/testfiles/h5diff_626.txt b/tools/test/h5diff/testfiles/h5diff_626.txt
index 6494066..6494066 100644
--- a/tools/h5diff/testfiles/h5diff_626.txt
+++ b/tools/test/h5diff/testfiles/h5diff_626.txt
diff --git a/tools/h5diff/testfiles/h5diff_627.txt b/tools/test/h5diff/testfiles/h5diff_627.txt
index db14532..db14532 100644
--- a/tools/h5diff/testfiles/h5diff_627.txt
+++ b/tools/test/h5diff/testfiles/h5diff_627.txt
diff --git a/tools/h5diff/testfiles/h5diff_628.txt b/tools/test/h5diff/testfiles/h5diff_628.txt
index e11d8ee..e11d8ee 100644
--- a/tools/h5diff/testfiles/h5diff_628.txt
+++ b/tools/test/h5diff/testfiles/h5diff_628.txt
diff --git a/tools/h5diff/testfiles/h5diff_629.txt b/tools/test/h5diff/testfiles/h5diff_629.txt
index 962c2b0..962c2b0 100644
--- a/tools/h5diff/testfiles/h5diff_629.txt
+++ b/tools/test/h5diff/testfiles/h5diff_629.txt
diff --git a/tools/h5diff/testfiles/h5diff_630.txt b/tools/test/h5diff/testfiles/h5diff_630.txt
index aaf0148..aaf0148 100644
--- a/tools/h5diff/testfiles/h5diff_630.txt
+++ b/tools/test/h5diff/testfiles/h5diff_630.txt
diff --git a/tools/h5diff/testfiles/h5diff_631.txt b/tools/test/h5diff/testfiles/h5diff_631.txt
index aaf0148..aaf0148 100644
--- a/tools/h5diff/testfiles/h5diff_631.txt
+++ b/tools/test/h5diff/testfiles/h5diff_631.txt
diff --git a/tools/h5diff/testfiles/h5diff_640.txt b/tools/test/h5diff/testfiles/h5diff_640.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_640.txt
+++ b/tools/test/h5diff/testfiles/h5diff_640.txt
diff --git a/tools/h5diff/testfiles/h5diff_641.txt b/tools/test/h5diff/testfiles/h5diff_641.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_641.txt
+++ b/tools/test/h5diff/testfiles/h5diff_641.txt
diff --git a/tools/h5diff/testfiles/h5diff_642.txt b/tools/test/h5diff/testfiles/h5diff_642.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_642.txt
+++ b/tools/test/h5diff/testfiles/h5diff_642.txt
diff --git a/tools/h5diff/testfiles/h5diff_643.txt b/tools/test/h5diff/testfiles/h5diff_643.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_643.txt
+++ b/tools/test/h5diff/testfiles/h5diff_643.txt
diff --git a/tools/h5diff/testfiles/h5diff_644.txt b/tools/test/h5diff/testfiles/h5diff_644.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_644.txt
+++ b/tools/test/h5diff/testfiles/h5diff_644.txt
diff --git a/tools/h5diff/testfiles/h5diff_645.txt b/tools/test/h5diff/testfiles/h5diff_645.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_645.txt
+++ b/tools/test/h5diff/testfiles/h5diff_645.txt
diff --git a/tools/h5diff/testfiles/h5diff_646.txt b/tools/test/h5diff/testfiles/h5diff_646.txt
index 4c956a6..4c956a6 100644
--- a/tools/h5diff/testfiles/h5diff_646.txt
+++ b/tools/test/h5diff/testfiles/h5diff_646.txt
diff --git a/tools/h5diff/testfiles/h5diff_70.txt b/tools/test/h5diff/testfiles/h5diff_70.txt
index 0a6b0c0..0a6b0c0 100644
--- a/tools/h5diff/testfiles/h5diff_70.txt
+++ b/tools/test/h5diff/testfiles/h5diff_70.txt
diff --git a/tools/h5diff/testfiles/h5diff_700.txt b/tools/test/h5diff/testfiles/h5diff_700.txt
index 1cf71dd..1cf71dd 100644
--- a/tools/h5diff/testfiles/h5diff_700.txt
+++ b/tools/test/h5diff/testfiles/h5diff_700.txt
diff --git a/tools/h5diff/testfiles/h5diff_701.txt b/tools/test/h5diff/testfiles/h5diff_701.txt
index 405ab2f..405ab2f 100644
--- a/tools/h5diff/testfiles/h5diff_701.txt
+++ b/tools/test/h5diff/testfiles/h5diff_701.txt
diff --git a/tools/h5diff/testfiles/h5diff_702.txt b/tools/test/h5diff/testfiles/h5diff_702.txt
index 1cf71dd..1cf71dd 100644
--- a/tools/h5diff/testfiles/h5diff_702.txt
+++ b/tools/test/h5diff/testfiles/h5diff_702.txt
diff --git a/tools/h5diff/testfiles/h5diff_703.txt b/tools/test/h5diff/testfiles/h5diff_703.txt
index 405ab2f..405ab2f 100644
--- a/tools/h5diff/testfiles/h5diff_703.txt
+++ b/tools/test/h5diff/testfiles/h5diff_703.txt
diff --git a/tools/h5diff/testfiles/h5diff_704.txt b/tools/test/h5diff/testfiles/h5diff_704.txt
index e752a01..e752a01 100644
--- a/tools/h5diff/testfiles/h5diff_704.txt
+++ b/tools/test/h5diff/testfiles/h5diff_704.txt
diff --git a/tools/h5diff/testfiles/h5diff_705.txt b/tools/test/h5diff/testfiles/h5diff_705.txt
index 2e52f18..2e52f18 100644
--- a/tools/h5diff/testfiles/h5diff_705.txt
+++ b/tools/test/h5diff/testfiles/h5diff_705.txt
diff --git a/tools/h5diff/testfiles/h5diff_706.txt b/tools/test/h5diff/testfiles/h5diff_706.txt
index 5825150..5825150 100644
--- a/tools/h5diff/testfiles/h5diff_706.txt
+++ b/tools/test/h5diff/testfiles/h5diff_706.txt
diff --git a/tools/h5diff/testfiles/h5diff_707.txt b/tools/test/h5diff/testfiles/h5diff_707.txt
index 4d6378b..4d6378b 100644
--- a/tools/h5diff/testfiles/h5diff_707.txt
+++ b/tools/test/h5diff/testfiles/h5diff_707.txt
diff --git a/tools/h5diff/testfiles/h5diff_708.txt b/tools/test/h5diff/testfiles/h5diff_708.txt
index a10a8b7..a10a8b7 100644
--- a/tools/h5diff/testfiles/h5diff_708.txt
+++ b/tools/test/h5diff/testfiles/h5diff_708.txt
diff --git a/tools/h5diff/testfiles/h5diff_709.txt b/tools/test/h5diff/testfiles/h5diff_709.txt
index d0e68bf..d0e68bf 100644
--- a/tools/h5diff/testfiles/h5diff_709.txt
+++ b/tools/test/h5diff/testfiles/h5diff_709.txt
diff --git a/tools/h5diff/testfiles/h5diff_710.txt b/tools/test/h5diff/testfiles/h5diff_710.txt
index 10a8501..10a8501 100644
--- a/tools/h5diff/testfiles/h5diff_710.txt
+++ b/tools/test/h5diff/testfiles/h5diff_710.txt
diff --git a/tools/h5diff/testfiles/h5diff_80.txt b/tools/test/h5diff/testfiles/h5diff_80.txt
index 5957d72..5957d72 100644
--- a/tools/h5diff/testfiles/h5diff_80.txt
+++ b/tools/test/h5diff/testfiles/h5diff_80.txt
diff --git a/tools/h5diff/testfiles/h5diff_90.txt b/tools/test/h5diff/testfiles/h5diff_90.txt
index 9965ab0..9965ab0 100644
--- a/tools/h5diff/testfiles/h5diff_90.txt
+++ b/tools/test/h5diff/testfiles/h5diff_90.txt
diff --git a/tools/h5diff/testfiles/h5diff_attr1.h5 b/tools/test/h5diff/testfiles/h5diff_attr1.h5
index c44066b..c44066b 100644
--- a/tools/h5diff/testfiles/h5diff_attr1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_attr1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_attr2.h5 b/tools/test/h5diff/testfiles/h5diff_attr2.h5
index 5de3303..5de3303 100644
--- a/tools/h5diff/testfiles/h5diff_attr2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_attr2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_attr_v_level1.h5 b/tools/test/h5diff/testfiles/h5diff_attr_v_level1.h5
index 2b1d8a1..2b1d8a1 100644
--- a/tools/h5diff/testfiles/h5diff_attr_v_level1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_attr_v_level1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_attr_v_level2.h5 b/tools/test/h5diff/testfiles/h5diff_attr_v_level2.h5
index 4588fca..4588fca 100644
--- a/tools/h5diff/testfiles/h5diff_attr_v_level2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_attr_v_level2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_basic1.h5 b/tools/test/h5diff/testfiles/h5diff_basic1.h5
index e1396be..e1396be 100644
--- a/tools/h5diff/testfiles/h5diff_basic1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_basic1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_basic2.h5 b/tools/test/h5diff/testfiles/h5diff_basic2.h5
index c0795b6..c0795b6 100644
--- a/tools/h5diff/testfiles/h5diff_basic2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_basic2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_comp_vl_strs.h5 b/tools/test/h5diff/testfiles/h5diff_comp_vl_strs.h5
index 4ad6f19..4ad6f19 100644
--- a/tools/h5diff/testfiles/h5diff_comp_vl_strs.h5
+++ b/tools/test/h5diff/testfiles/h5diff_comp_vl_strs.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_danglelinks1.h5 b/tools/test/h5diff/testfiles/h5diff_danglelinks1.h5
index b8be9bc..b8be9bc 100644
--- a/tools/h5diff/testfiles/h5diff_danglelinks1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_danglelinks1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_danglelinks2.h5 b/tools/test/h5diff/testfiles/h5diff_danglelinks2.h5
index 3c3907c..3c3907c 100644
--- a/tools/h5diff/testfiles/h5diff_danglelinks2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_danglelinks2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_dset1.h5 b/tools/test/h5diff/testfiles/h5diff_dset1.h5
index 123e141..123e141 100644
--- a/tools/h5diff/testfiles/h5diff_dset1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_dset2.h5 b/tools/test/h5diff/testfiles/h5diff_dset2.h5
index 3ae6993..3ae6993 100644
--- a/tools/h5diff/testfiles/h5diff_dset2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5 b/tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5
index cdc7644..cdc7644 100644
--- a/tools/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5 b/tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5
index 4752ed1..4752ed1 100644
--- a/tools/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dset_zero_dim_size2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_dtypes.h5 b/tools/test/h5diff/testfiles/h5diff_dtypes.h5
index ffa5264..ffa5264 100644
--- a/tools/h5diff/testfiles/h5diff_dtypes.h5
+++ b/tools/test/h5diff/testfiles/h5diff_dtypes.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_empty.h5 b/tools/test/h5diff/testfiles/h5diff_empty.h5
index 3f0d1df..3f0d1df 100644
--- a/tools/h5diff/testfiles/h5diff_empty.h5
+++ b/tools/test/h5diff/testfiles/h5diff_empty.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_enum_invalid_values.h5 b/tools/test/h5diff/testfiles/h5diff_enum_invalid_values.h5
index dd02db9..dd02db9 100644
--- a/tools/h5diff/testfiles/h5diff_enum_invalid_values.h5
+++ b/tools/test/h5diff/testfiles/h5diff_enum_invalid_values.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude1-1.h5 b/tools/test/h5diff/testfiles/h5diff_exclude1-1.h5
index 8b675ea..8b675ea 100644
--- a/tools/h5diff/testfiles/h5diff_exclude1-1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude1-1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude1-2.h5 b/tools/test/h5diff/testfiles/h5diff_exclude1-2.h5
index 78854cd..78854cd 100644
--- a/tools/h5diff/testfiles/h5diff_exclude1-2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude1-2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude2-1.h5 b/tools/test/h5diff/testfiles/h5diff_exclude2-1.h5
index 8923111..8923111 100644
--- a/tools/h5diff/testfiles/h5diff_exclude2-1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude2-1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude2-2.h5 b/tools/test/h5diff/testfiles/h5diff_exclude2-2.h5
index 9e42007..9e42007 100644
--- a/tools/h5diff/testfiles/h5diff_exclude2-2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude2-2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude3-1.h5 b/tools/test/h5diff/testfiles/h5diff_exclude3-1.h5
index f9cc83d..f9cc83d 100644
--- a/tools/h5diff/testfiles/h5diff_exclude3-1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude3-1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_exclude3-2.h5 b/tools/test/h5diff/testfiles/h5diff_exclude3-2.h5
index f811905..f811905 100644
--- a/tools/h5diff/testfiles/h5diff_exclude3-2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_exclude3-2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_ext2softlink_src.h5 b/tools/test/h5diff/testfiles/h5diff_ext2softlink_src.h5
index 50b7d2b..50b7d2b 100644
--- a/tools/h5diff/testfiles/h5diff_ext2softlink_src.h5
+++ b/tools/test/h5diff/testfiles/h5diff_ext2softlink_src.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_ext2softlink_trg.h5 b/tools/test/h5diff/testfiles/h5diff_ext2softlink_trg.h5
index 610e890..610e890 100644
--- a/tools/h5diff/testfiles/h5diff_ext2softlink_trg.h5
+++ b/tools/test/h5diff/testfiles/h5diff_ext2softlink_trg.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_extlink_src.h5 b/tools/test/h5diff/testfiles/h5diff_extlink_src.h5
index cfc1066..cfc1066 100644
--- a/tools/h5diff/testfiles/h5diff_extlink_src.h5
+++ b/tools/test/h5diff/testfiles/h5diff_extlink_src.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_extlink_trg.h5 b/tools/test/h5diff/testfiles/h5diff_extlink_trg.h5
index 3a322c9..3a322c9 100644
--- a/tools/h5diff/testfiles/h5diff_extlink_trg.h5
+++ b/tools/test/h5diff/testfiles/h5diff_extlink_trg.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse1.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse1.h5
index cfd4e62..cfd4e62 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse2.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse2.h5
index 54bcdec..54bcdec 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse_ext1.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext1.h5
index 12a534a..12a534a 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse_ext1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5
index 5bb02df..5bb02df 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5
index 312543e..312543e 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5 b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5
index 43ad156..43ad156 100644
--- a/tools/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5
+++ b/tools/test/h5diff/testfiles/h5diff_grp_recurse_ext2-3.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_hyper1.h5 b/tools/test/h5diff/testfiles/h5diff_hyper1.h5
index ceeff80..ceeff80 100644
--- a/tools/h5diff/testfiles/h5diff_hyper1.h5
+++ b/tools/test/h5diff/testfiles/h5diff_hyper1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_hyper2.h5 b/tools/test/h5diff/testfiles/h5diff_hyper2.h5
index 05a2eb1..05a2eb1 100644
--- a/tools/h5diff/testfiles/h5diff_hyper2.h5
+++ b/tools/test/h5diff/testfiles/h5diff_hyper2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_linked_softlink.h5 b/tools/test/h5diff/testfiles/h5diff_linked_softlink.h5
index 03c5dee..03c5dee 100644
--- a/tools/h5diff/testfiles/h5diff_linked_softlink.h5
+++ b/tools/test/h5diff/testfiles/h5diff_linked_softlink.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_links.h5 b/tools/test/h5diff/testfiles/h5diff_links.h5
index 8af66a6..8af66a6 100644
--- a/tools/h5diff/testfiles/h5diff_links.h5
+++ b/tools/test/h5diff/testfiles/h5diff_links.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_softlinks.h5 b/tools/test/h5diff/testfiles/h5diff_softlinks.h5
index 67a843d..67a843d 100644
--- a/tools/h5diff/testfiles/h5diff_softlinks.h5
+++ b/tools/test/h5diff/testfiles/h5diff_softlinks.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_tmp1.txt b/tools/test/h5diff/testfiles/h5diff_tmp1.txt
index 40e3fb6..40e3fb6 100644
--- a/tools/h5diff/testfiles/h5diff_tmp1.txt
+++ b/tools/test/h5diff/testfiles/h5diff_tmp1.txt
diff --git a/tools/h5diff/testfiles/h5diff_tmp2.txt b/tools/test/h5diff/testfiles/h5diff_tmp2.txt
index a2d6da6..a2d6da6 100644
--- a/tools/h5diff/testfiles/h5diff_tmp2.txt
+++ b/tools/test/h5diff/testfiles/h5diff_tmp2.txt
diff --git a/tools/h5diff/testfiles/h5diff_types.h5 b/tools/test/h5diff/testfiles/h5diff_types.h5
index c835069..c835069 100644
--- a/tools/h5diff/testfiles/h5diff_types.h5
+++ b/tools/test/h5diff/testfiles/h5diff_types.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/h5diff_v1.txt b/tools/test/h5diff/testfiles/h5diff_v1.txt
index 8210cf9..8210cf9 100644
--- a/tools/h5diff/testfiles/h5diff_v1.txt
+++ b/tools/test/h5diff/testfiles/h5diff_v1.txt
diff --git a/tools/h5diff/testfiles/h5diff_v2.txt b/tools/test/h5diff/testfiles/h5diff_v2.txt
index aa327b1..aa327b1 100644
--- a/tools/h5diff/testfiles/h5diff_v2.txt
+++ b/tools/test/h5diff/testfiles/h5diff_v2.txt
diff --git a/tools/h5diff/testfiles/h5diff_v3.txt b/tools/test/h5diff/testfiles/h5diff_v3.txt
index 57af303..57af303 100644
--- a/tools/h5diff/testfiles/h5diff_v3.txt
+++ b/tools/test/h5diff/testfiles/h5diff_v3.txt
diff --git a/tools/h5diff/testfiles/non_comparables1.h5 b/tools/test/h5diff/testfiles/non_comparables1.h5
index 7dbb45d..7dbb45d 100644
--- a/tools/h5diff/testfiles/non_comparables1.h5
+++ b/tools/test/h5diff/testfiles/non_comparables1.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/non_comparables2.h5 b/tools/test/h5diff/testfiles/non_comparables2.h5
index a5e7014..a5e7014 100644
--- a/tools/h5diff/testfiles/non_comparables2.h5
+++ b/tools/test/h5diff/testfiles/non_comparables2.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/tmpSingleSiteBethe.output.h5 b/tools/test/h5diff/testfiles/tmpSingleSiteBethe.output.h5
index bbcfb63..bbcfb63 100644
--- a/tools/h5diff/testfiles/tmpSingleSiteBethe.output.h5
+++ b/tools/test/h5diff/testfiles/tmpSingleSiteBethe.output.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/tmpSingleSiteBethe.reference.h5 b/tools/test/h5diff/testfiles/tmpSingleSiteBethe.reference.h5
index 6b19ed7..6b19ed7 100644
--- a/tools/h5diff/testfiles/tmpSingleSiteBethe.reference.h5
+++ b/tools/test/h5diff/testfiles/tmpSingleSiteBethe.reference.h5
Binary files differ
diff --git a/tools/h5diff/testfiles/tmptest.he5 b/tools/test/h5diff/testfiles/tmptest.he5
index edcfcd2..edcfcd2 100644
--- a/tools/h5diff/testfiles/tmptest.he5
+++ b/tools/test/h5diff/testfiles/tmptest.he5
Binary files differ
diff --git a/tools/h5diff/testfiles/tmptest2.he5 b/tools/test/h5diff/testfiles/tmptest2.he5
index a6ab02b..a6ab02b 100644
--- a/tools/h5diff/testfiles/tmptest2.he5
+++ b/tools/test/h5diff/testfiles/tmptest2.he5
Binary files differ
diff --git a/tools/h5diff/testh5diff.sh.in b/tools/test/h5diff/testh5diff.sh.in
index 0df9cb8..da883ac 100644
--- a/tools/h5diff/testh5diff.sh.in
+++ b/tools/test/h5diff/testh5diff.sh.in
@@ -35,7 +35,7 @@ TESTNAME=h5diff
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5DIFF=h5diff # The tool name
+H5DIFF=../../src/h5diff/h5diff # The tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the tool binary
RM='rm -rf'
@@ -48,22 +48,22 @@ AWK='awk'
nerrors=0
verbose=yes
-h5haveexitcode=yes # default is yes
-pmode= # default to run h5diff tests
+h5haveexitcode=yes # default is yes
+pmode= # default to run h5diff tests
mydomainname=`domainname 2>/dev/null`
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
@@ -389,8 +389,8 @@ while [ $# -gt 0 ]; do
case "$1" in
-p) # reset the tool name and bin to run ph5diff tests
TESTNAME=ph5diff
- H5DIFF=ph5diff # The tool name
- H5DIFF_BIN=`pwd`/$H5DIFF
+ H5DIFF=../../src/h5diff/ph5diff # The tool name
+ H5DIFF_BIN=`pwd`/$H5DIFF # The path of the tool binary
pmode=yes
shift
;;
@@ -424,7 +424,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If a test fails then increment
# the `nerrors' global variable and (if $verbose is set) display the
diff --git a/tools/h5diff/testph5diff.sh.in b/tools/test/h5diff/testph5diff.sh.in
index ca212a1..ca212a1 100644
--- a/tools/h5diff/testph5diff.sh.in
+++ b/tools/test/h5diff/testph5diff.sh.in
diff --git a/tools/test/h5dump/CMakeLists.txt b/tools/test/h5dump/CMakeLists.txt
new file mode 100644
index 0000000..1398aca
--- /dev/null
+++ b/tools/test/h5dump/CMakeLists.txt
@@ -0,0 +1,28 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5DUMP)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5dump test executable
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5dumpgentest ${HDF5_TOOLS_TEST_H5DUMP_SOURCE_DIR}/h5dumpgentest.c)
+ TARGET_NAMING (h5dumpgentest STATIC)
+ TARGET_C_PROPERTIES (h5dumpgentest STATIC " " " ")
+ target_link_libraries (h5dumpgentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5dumpgentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5dumpgentest COMMAND $<TARGET_FILE:h5dumpgentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
+
+ include (CMakeTestsPBITS.cmake)
+
+ include (CMakeTestsVDS.cmake)
+
+ include (CMakeTestsXML.cmake)
diff --git a/tools/h5dump/CMakeTests.cmake b/tools/test/h5dump/CMakeTests.cmake
index 895855c..dad3a8b 100644
--- a/tools/h5dump/CMakeTests.cmake
+++ b/tools/test/h5dump/CMakeTests.cmake
@@ -334,10 +334,10 @@
foreach (tst_exp_file ${HDF5_REFERENCE_EXP_FILES})
if (WIN32)
- file (READ ${HDF5_TOOLS_SRC_DIR}/testfiles/${tst_exp_file} TEST_STREAM)
+ file (READ ${HDF5_TOOLS_DIR}/testfiles/${tst_exp_file} TEST_STREAM)
file (WRITE ${PROJECT_BINARY_DIR}/testfiles/std/${tst_exp_file} "${TEST_STREAM}")
else (WIN32)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/${tst_exp_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_exp_file}" "h5dump_std_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/${tst_exp_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_exp_file}" "h5dump_std_files")
endif (WIN32)
endforeach (tst_exp_file ${HDF5_REFERENCE_EXP_FILES})
@@ -354,13 +354,13 @@
# --------------------------------------------------------------------
# Special file handling
# --------------------------------------------------------------------
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SOURCE_DIR}/testfiles/tbin1.ddl" "${PROJECT_BINARY_DIR}/testfiles/std/tbin1LE.ddl" "h5dump_std_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/tbin1.ddl" "${PROJECT_BINARY_DIR}/testfiles/std/tbin1LE.ddl" "h5dump_std_files")
if (WIN32)
- file (READ ${HDF5_TOOLS_SRC_DIR}/testfiles/tbinregR.exp TEST_STREAM)
+ file (READ ${HDF5_TOOLS_DIR}/testfiles/tbinregR.exp TEST_STREAM)
file (WRITE ${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp "${TEST_STREAM}")
else (WIN32)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/tbinregR.exp" "${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp" "h5dump_std_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/tbinregR.exp" "${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp" "h5dump_std_files")
endif (WIN32)
add_custom_target(h5dump_std_files ALL COMMENT "Copying files needed by h5dump_std tests" DEPENDS ${h5dump_std_files_list})
diff --git a/tools/h5dump/CMakeTestsPBITS.cmake b/tools/test/h5dump/CMakeTestsPBITS.cmake
index 681479a..c2ec9cc 100644
--- a/tools/h5dump/CMakeTestsPBITS.cmake
+++ b/tools/test/h5dump/CMakeTestsPBITS.cmake
@@ -93,7 +93,7 @@
foreach (ddl_pbits ${HDF5_REFERENCE_PBITS})
get_filename_component(fname "${ddl_pbits}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/pbits/${ddl_pbits}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${fname}" "h5dump_pbits_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/pbits/${ddl_pbits}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${fname}" "h5dump_pbits_files")
endforeach (ddl_pbits ${HDF5_REFERENCE_PBITS})
foreach (ddl_pbits ${HDF5_ERROR_REFERENCE_PBITS})
diff --git a/tools/h5dump/CMakeTestsVDS.cmake b/tools/test/h5dump/CMakeTestsVDS.cmake
index 32056db..aa85350 100644
--- a/tools/h5dump/CMakeTestsVDS.cmake
+++ b/tools/test/h5dump/CMakeTestsVDS.cmake
@@ -66,13 +66,13 @@
foreach (vds_h5_file ${HDF5_REFERENCE_TEST_VDS})
get_filename_component(fname "${vds_h5_file}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5dump_vds_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5dump_vds_files")
endforeach (vds_h5_file ${HDF5_REFERENCE_TEST_VDS})
foreach (ddl_vds ${HDF5_REFERENCE_VDS})
get_filename_component(fname "${ddl_vds}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/vds/${ddl_vds}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5dump_vds_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/vds/${ddl_vds}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5dump_vds_files")
endforeach (ddl_vds ${HDF5_REFERENCE_VDS})
foreach (ddl_vds ${HDF5_ERROR_REFERENCE_VDS})
diff --git a/tools/h5dump/CMakeTestsXML.cmake b/tools/test/h5dump/CMakeTestsXML.cmake
index 79d3ff8..79d3ff8 100644
--- a/tools/h5dump/CMakeTestsXML.cmake
+++ b/tools/test/h5dump/CMakeTestsXML.cmake
diff --git a/tools/h5dump/Makefile.am b/tools/test/h5dump/Makefile.am
index 93ba195..aed34ec 100644
--- a/tools/h5dump/Makefile.am
+++ b/tools/test/h5dump/Makefile.am
@@ -29,20 +29,11 @@ TEST_SCRIPT=testh5dump.sh testh5dumppbits.sh testh5dumpvds.sh testh5dumpxml.sh
check_PROGRAMS=$(TEST_PROG) binread
check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5dump$(EXEEXT)
-
-# Our main target, the h5dump tool.
-bin_PROGRAMS=h5dump
-
-# Add h5dump specific linker flags here
-h5dump_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+SCRIPT_DEPEND=../../src/h5dump/h5dump$(EXEEXT)
# All the programs depend on the hdf5 and h5tools libraries
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
-# Source files for the program
-h5dump_SOURCES=h5dump.c h5dump_ddl.c h5dump_xml.c
-
# Temporary files. *.h5 are generated by h5dumpgentest. They should
# copied to the testfiles/ directory if update is required.
CHECK_CLEANFILES+=*.h5 *.bin
diff --git a/tools/h5dump/binread.c b/tools/test/h5dump/binread.c
index 74db92c..74db92c 100644
--- a/tools/h5dump/binread.c
+++ b/tools/test/h5dump/binread.c
diff --git a/tools/h5dump/errfiles/filter_fail.err b/tools/test/h5dump/errfiles/filter_fail.err
index db21044..db21044 100644
--- a/tools/h5dump/errfiles/filter_fail.err
+++ b/tools/test/h5dump/errfiles/filter_fail.err
diff --git a/tools/h5dump/errfiles/non_existing.err b/tools/test/h5dump/errfiles/non_existing.err
index f7e3afa..f7e3afa 100644
--- a/tools/h5dump/errfiles/non_existing.err
+++ b/tools/test/h5dump/errfiles/non_existing.err
diff --git a/tools/h5dump/errfiles/tall-1.err b/tools/test/h5dump/errfiles/tall-1.err
index ab9dbe3..ab9dbe3 100644
--- a/tools/h5dump/errfiles/tall-1.err
+++ b/tools/test/h5dump/errfiles/tall-1.err
diff --git a/tools/h5dump/errfiles/tall-2A.err b/tools/test/h5dump/errfiles/tall-2A.err
index ab9dbe3..ab9dbe3 100644
--- a/tools/h5dump/errfiles/tall-2A.err
+++ b/tools/test/h5dump/errfiles/tall-2A.err
diff --git a/tools/h5dump/errfiles/tall-2A0.err b/tools/test/h5dump/errfiles/tall-2A0.err
index ab9dbe3..ab9dbe3 100644
--- a/tools/h5dump/errfiles/tall-2A0.err
+++ b/tools/test/h5dump/errfiles/tall-2A0.err
diff --git a/tools/h5dump/errfiles/tall-2B.err b/tools/test/h5dump/errfiles/tall-2B.err
index ab9dbe3..ab9dbe3 100644
--- a/tools/h5dump/errfiles/tall-2B.err
+++ b/tools/test/h5dump/errfiles/tall-2B.err
diff --git a/tools/h5dump/errfiles/tarray1_big.err b/tools/test/h5dump/errfiles/tarray1_big.err
index 7a0fd7b..7a0fd7b 100644
--- a/tools/h5dump/errfiles/tarray1_big.err
+++ b/tools/test/h5dump/errfiles/tarray1_big.err
diff --git a/tools/h5dump/errfiles/tattr-3.err b/tools/test/h5dump/errfiles/tattr-3.err
index ce8ddda..ce8ddda 100644
--- a/tools/h5dump/errfiles/tattr-3.err
+++ b/tools/test/h5dump/errfiles/tattr-3.err
diff --git a/tools/h5dump/errfiles/tattrregR.err b/tools/test/h5dump/errfiles/tattrregR.err
index 9449a6d..9449a6d 100644
--- a/tools/h5dump/errfiles/tattrregR.err
+++ b/tools/test/h5dump/errfiles/tattrregR.err
diff --git a/tools/h5dump/errfiles/tcomp-3.err b/tools/test/h5dump/errfiles/tcomp-3.err
index ee47ee5..ee47ee5 100644
--- a/tools/h5dump/errfiles/tcomp-3.err
+++ b/tools/test/h5dump/errfiles/tcomp-3.err
diff --git a/tools/h5dump/errfiles/tdataregR.err b/tools/test/h5dump/errfiles/tdataregR.err
index 9449a6d..9449a6d 100644
--- a/tools/h5dump/errfiles/tdataregR.err
+++ b/tools/test/h5dump/errfiles/tdataregR.err
diff --git a/tools/h5dump/errfiles/tdset-2.err b/tools/test/h5dump/errfiles/tdset-2.err
index e594c1b..e594c1b 100644
--- a/tools/h5dump/errfiles/tdset-2.err
+++ b/tools/test/h5dump/errfiles/tdset-2.err
diff --git a/tools/h5dump/errfiles/texceedsubblock.err b/tools/test/h5dump/errfiles/texceedsubblock.err
index 4c87ab9..4c87ab9 100644
--- a/tools/h5dump/errfiles/texceedsubblock.err
+++ b/tools/test/h5dump/errfiles/texceedsubblock.err
diff --git a/tools/h5dump/errfiles/texceedsubcount.err b/tools/test/h5dump/errfiles/texceedsubcount.err
index de1c9d1..de1c9d1 100644
--- a/tools/h5dump/errfiles/texceedsubcount.err
+++ b/tools/test/h5dump/errfiles/texceedsubcount.err
diff --git a/tools/h5dump/errfiles/texceedsubstart.err b/tools/test/h5dump/errfiles/texceedsubstart.err
index 4555224..4555224 100644
--- a/tools/h5dump/errfiles/texceedsubstart.err
+++ b/tools/test/h5dump/errfiles/texceedsubstart.err
diff --git a/tools/h5dump/errfiles/texceedsubstride.err b/tools/test/h5dump/errfiles/texceedsubstride.err
index 32d5725..32d5725 100644
--- a/tools/h5dump/errfiles/texceedsubstride.err
+++ b/tools/test/h5dump/errfiles/texceedsubstride.err
diff --git a/tools/h5dump/errfiles/textlink.err b/tools/test/h5dump/errfiles/textlink.err
index 95556db..95556db 100644
--- a/tools/h5dump/errfiles/textlink.err
+++ b/tools/test/h5dump/errfiles/textlink.err
diff --git a/tools/h5dump/errfiles/textlinkfar.err b/tools/test/h5dump/errfiles/textlinkfar.err
index 5aa7f87..5aa7f87 100644
--- a/tools/h5dump/errfiles/textlinkfar.err
+++ b/tools/test/h5dump/errfiles/textlinkfar.err
diff --git a/tools/h5dump/errfiles/textlinksrc.err b/tools/test/h5dump/errfiles/textlinksrc.err
index 5aa7f87..5aa7f87 100644
--- a/tools/h5dump/errfiles/textlinksrc.err
+++ b/tools/test/h5dump/errfiles/textlinksrc.err
diff --git a/tools/h5dump/errfiles/tgroup-2.err b/tools/test/h5dump/errfiles/tgroup-2.err
index 3659b5c..3659b5c 100644
--- a/tools/h5dump/errfiles/tgroup-2.err
+++ b/tools/test/h5dump/errfiles/tgroup-2.err
diff --git a/tools/h5dump/errfiles/tnofilename-with-packed-bits.err b/tools/test/h5dump/errfiles/tnofilename-with-packed-bits.err
index 84a7011..84a7011 100644
--- a/tools/h5dump/errfiles/tnofilename-with-packed-bits.err
+++ b/tools/test/h5dump/errfiles/tnofilename-with-packed-bits.err
diff --git a/tools/h5dump/errfiles/torderlinks1.err b/tools/test/h5dump/errfiles/torderlinks1.err
index e665f03..e665f03 100644
--- a/tools/h5dump/errfiles/torderlinks1.err
+++ b/tools/test/h5dump/errfiles/torderlinks1.err
diff --git a/tools/h5dump/errfiles/torderlinks2.err b/tools/test/h5dump/errfiles/torderlinks2.err
index e665f03..e665f03 100644
--- a/tools/h5dump/errfiles/torderlinks2.err
+++ b/tools/test/h5dump/errfiles/torderlinks2.err
diff --git a/tools/h5dump/errfiles/tpbitsCharLengthExceeded.err b/tools/test/h5dump/errfiles/tpbitsCharLengthExceeded.err
index e5854ea..e5854ea 100644
--- a/tools/h5dump/errfiles/tpbitsCharLengthExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsCharLengthExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsCharOffsetExceeded.err b/tools/test/h5dump/errfiles/tpbitsCharOffsetExceeded.err
index e5854ea..e5854ea 100644
--- a/tools/h5dump/errfiles/tpbitsCharOffsetExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsCharOffsetExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsIncomplete.err b/tools/test/h5dump/errfiles/tpbitsIncomplete.err
index e0abee5..e0abee5 100644
--- a/tools/h5dump/errfiles/tpbitsIncomplete.err
+++ b/tools/test/h5dump/errfiles/tpbitsIncomplete.err
diff --git a/tools/h5dump/errfiles/tpbitsIntLengthExceeded.err b/tools/test/h5dump/errfiles/tpbitsIntLengthExceeded.err
index 7dd88ed..7dd88ed 100644
--- a/tools/h5dump/errfiles/tpbitsIntLengthExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsIntLengthExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsIntOffsetExceeded.err b/tools/test/h5dump/errfiles/tpbitsIntOffsetExceeded.err
index 7dd88ed..7dd88ed 100644
--- a/tools/h5dump/errfiles/tpbitsIntOffsetExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsIntOffsetExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsLengthExceeded.err b/tools/test/h5dump/errfiles/tpbitsLengthExceeded.err
index d4673f2..d4673f2 100644
--- a/tools/h5dump/errfiles/tpbitsLengthExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsLengthExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsLengthPositive.err b/tools/test/h5dump/errfiles/tpbitsLengthPositive.err
index 4928007..4928007 100644
--- a/tools/h5dump/errfiles/tpbitsLengthPositive.err
+++ b/tools/test/h5dump/errfiles/tpbitsLengthPositive.err
diff --git a/tools/h5dump/errfiles/tpbitsLongLengthExceeded.err b/tools/test/h5dump/errfiles/tpbitsLongLengthExceeded.err
index 0318f79..0318f79 100644
--- a/tools/h5dump/errfiles/tpbitsLongLengthExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsLongLengthExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsLongOffsetExceeded.err b/tools/test/h5dump/errfiles/tpbitsLongOffsetExceeded.err
index 0318f79..0318f79 100644
--- a/tools/h5dump/errfiles/tpbitsLongOffsetExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsLongOffsetExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsMaxExceeded.err b/tools/test/h5dump/errfiles/tpbitsMaxExceeded.err
index a8d12fc..a8d12fc 100644
--- a/tools/h5dump/errfiles/tpbitsMaxExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsMaxExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsOffsetExceeded.err b/tools/test/h5dump/errfiles/tpbitsOffsetExceeded.err
index b7d6dad..b7d6dad 100644
--- a/tools/h5dump/errfiles/tpbitsOffsetExceeded.err
+++ b/tools/test/h5dump/errfiles/tpbitsOffsetExceeded.err
diff --git a/tools/h5dump/errfiles/tpbitsOffsetNegative.err b/tools/test/h5dump/errfiles/tpbitsOffsetNegative.err
index 8a027c1..8a027c1 100644
--- a/tools/h5dump/errfiles/tpbitsOffsetNegative.err
+++ b/tools/test/h5dump/errfiles/tpbitsOffsetNegative.err
diff --git a/tools/h5dump/errfiles/tperror.err b/tools/test/h5dump/errfiles/tperror.err
index b469029..b469029 100644
--- a/tools/h5dump/errfiles/tperror.err
+++ b/tools/test/h5dump/errfiles/tperror.err
diff --git a/tools/h5dump/errfiles/tqmarkfile.err b/tools/test/h5dump/errfiles/tqmarkfile.err
index 06519fb..06519fb 100644
--- a/tools/h5dump/errfiles/tqmarkfile.err
+++ b/tools/test/h5dump/errfiles/tqmarkfile.err
diff --git a/tools/h5dump/errfiles/tslink-D.err b/tools/test/h5dump/errfiles/tslink-D.err
index 924e9cf..924e9cf 100644
--- a/tools/h5dump/errfiles/tslink-D.err
+++ b/tools/test/h5dump/errfiles/tslink-D.err
diff --git a/tools/h5dump/h5dumpgentest.c b/tools/test/h5dump/h5dumpgentest.c
index bbec813..315210b 100644
--- a/tools/h5dump/h5dumpgentest.c
+++ b/tools/test/h5dump/h5dumpgentest.c
@@ -635,7 +635,7 @@ static int gent_softlink2(void)
fileid1 = H5Fcreate(FILE4_1, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
if (fileid1 < 0)
{
- fprintf(stderr, "Error: %s> H5Fcreate failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Fcreate failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -646,7 +646,7 @@ static int gent_softlink2(void)
gid1 = H5Gcreate2(fileid1, "group1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
if (gid1 < 0)
{
- fprintf(stderr, "Error: %s> H5Gcreate2 failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Gcreate2 failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -654,7 +654,7 @@ static int gent_softlink2(void)
gid2 = H5Gcreate2(fileid1, "group_empty", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
if (gid2 < 0)
{
- fprintf(stderr, "Error: %s> H5Gcreate2 failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Gcreate2 failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -666,7 +666,7 @@ static int gent_softlink2(void)
status = H5Tcommit2(fileid1, "dtype", datatype, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Tcommit2 failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Tcommit2 failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -694,7 +694,7 @@ static int gent_softlink2(void)
H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
if (dset1 < 0)
{
- fprintf(stderr, "Error: %s> H5Dcreate2 failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dcreate2 failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -702,7 +702,7 @@ static int gent_softlink2(void)
status = H5Dwrite(dset1, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data1);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Dwrite failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dwrite failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -715,7 +715,7 @@ static int gent_softlink2(void)
H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
if (dset2 < 0)
{
- fprintf(stderr, "Error: %s> H5Dcreate2 failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dcreate2 failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -723,7 +723,7 @@ static int gent_softlink2(void)
status = H5Dwrite(dset2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data2);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Dwrite failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dwrite failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -738,7 +738,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/dset1", fileid1, "soft_dset1", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -747,7 +747,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/dtype", fileid1, "soft_dtype", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -756,7 +756,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/group1", fileid1, "soft_group1", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -765,7 +765,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/group_empty", fileid1, "soft_empty_grp", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -774,7 +774,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("not_yet", fileid1, "soft_dangle", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -786,7 +786,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/dset1", gid1, "soft_dset1", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -795,7 +795,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/dset2", gid1, "soft_dset2", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -804,7 +804,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/dtype", gid1, "soft_dtype", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -813,7 +813,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("/group_empty", gid1, "soft_empty_grp", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -822,7 +822,7 @@ static int gent_softlink2(void)
status = H5Lcreate_soft("not_yet", gid1, "soft_dangle", H5P_DEFAULT, H5P_DEFAULT);
if (status < 0)
{
- fprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Lcreate_soft failed.\n", FILE4_1);
status = FAIL;
goto out;
}
@@ -832,31 +832,31 @@ static int gent_softlink2(void)
* Close/release resources.
*/
if(dataspace >= 0 && H5Sclose(dataspace) < 0) {
- fprintf(stderr, "Error: %s> H5Sclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Sclose failed.\n", FILE4_1);
status = FAIL;
}
if(gid1 >= 0 && H5Gclose(gid1) < 0) {
- fprintf(stderr, "Error: %s> H5Gclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Gclose failed.\n", FILE4_1);
status = FAIL;
}
if(gid2 >= 0 && H5Gclose(gid2) < 0) {
- fprintf(stderr, "Error: %s> H5Gclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Gclose failed.\n", FILE4_1);
status = FAIL;
}
if(datatype >= 0 && H5Tclose(datatype) < 0) {
- fprintf(stderr, "Error: %s> H5Tclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Tclose failed.\n", FILE4_1);
status = FAIL;
}
if(dset1 >= 0 && H5Dclose(dset1) < 0) {
- fprintf(stderr, "Error: %s> H5Dclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dclose failed.\n", FILE4_1);
status = FAIL;
}
if(dset2 >= 0 && H5Dclose(dset2) < 0) {
- fprintf(stderr, "Error: %s> H5Dclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Dclose failed.\n", FILE4_1);
status = FAIL;
}
if(fileid1 >= 0 && H5Fclose(fileid1) < 0) {
- fprintf(stderr, "Error: %s> H5Fclose failed.\n", FILE4_1);
+ HDfprintf(stderr, "Error: %s> H5Fclose failed.\n", FILE4_1);
status = FAIL;
}
@@ -932,7 +932,7 @@ static void gent_udlink(void)
/* This ud link will dangle, but that's okay */
fid = H5Fcreate(FILE54, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
H5Lcreate_ud(fid, "udlink1", (H5L_type_t)MY_LINKCLASS, NULL, 0, H5P_DEFAULT, H5P_DEFAULT);
- strcpy(buf, "foo");
+ HDstrcpy(buf, "foo");
H5Lcreate_ud(fid, "udlink2", (H5L_type_t)MY_LINKCLASS, buf, 4, H5P_DEFAULT, H5P_DEFAULT);
H5Fclose(fid);
@@ -1837,7 +1837,7 @@ static void gent_str(void) {
for(l = 0; l < 10; l++)
comp1[i][j].a[k][l] = (l + j + k) * (l + j + k);
for(k = 0 ; k < 12; k++)
- strcpy(comp1[i][j].s[k], "abcdefgh12345678abcdefgh12345678");
+ HDstrcpy(comp1[i][j].s[k], "abcdefgh12345678abcdefgh12345678");
}
dataset = H5Dcreate2(fid, "/comp1", f_type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
@@ -2469,7 +2469,7 @@ static void gent_nestcomp(void)
*/
status = H5Dwrite(dataset, s2_tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, s1);
if(status < 0)
- fprintf(stderr, "gent_nestcomp H5Dwrite failed\n");
+ HDfprintf(stderr, "gent_nestcomp H5Dwrite failed\n");
/*
* Release resources
@@ -10088,10 +10088,10 @@ static void gent_compound_complex2(void)
/* Set up first nested compound */
buf[i].d.nested_a = (double) i;
- strcpy(buf[i].d.nested_string, "This is a test string.");
+ HDstrcpy(buf[i].d.nested_string, "This is a test string.");
for (j = 0; j < 4; j++)
- strcpy(buf[i].d.nested_string_array[j], "String test");
+ HDstrcpy(buf[i].d.nested_string_array[j], "String test");
/* Set up multiple nested compound */
buf[i].e.a = (float) i;
@@ -10103,9 +10103,9 @@ static void gent_compound_complex2(void)
buf[i].e.b.multiple_nested_d[j] = (long)(j - i*10);
}
- strcpy(buf[i].e.c.further_nested_string, "1234567890");
+ HDstrcpy(buf[i].e.c.further_nested_string, "1234567890");
for (j = 0; j < 4; j++)
- strcpy(buf[i].e.c.further_nested_string_array[j], "STRING ARRAY");
+ HDstrcpy(buf[i].e.c.further_nested_string_array[j], "STRING ARRAY");
for (j = 0; j < 10; j++) {
buf[i].e.c.deep_nest.deep_nested_short[j] = (short)(j + i*10);
@@ -10117,7 +10117,7 @@ static void gent_compound_complex2(void)
}
if (H5Dwrite(dset, type, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0)
- fprintf(stderr, "gent_tcompound_complex2 H5Dwrite failed\n");
+ HDfprintf(stderr, "gent_tcompound_complex2 H5Dwrite failed\n");
H5Dclose(dset);
}
@@ -10252,7 +10252,7 @@ static void gent_vlenstr_array(void)
if ((type = H5Tarray_create2(array_tid, F83_RANK, arraydim)) >= 0) {
if ((dset = H5Dcreate2(file, F83_DATASETNAME, type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) >= 0) {
if (H5Dwrite(dset, type, H5S_ALL, H5S_ALL, H5P_DEFAULT, buffer) < 0)
- fprintf(stderr, "gent_vlenstr_array H5Dwrite failed\n");
+ HDfprintf(stderr, "gent_vlenstr_array H5Dwrite failed\n");
H5Dclose(dset);
}
@@ -10273,7 +10273,7 @@ static void gent_vlenstr_array(void)
if ((dset = H5Dcreate2(file, F83_DATASETNAME2, type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) >= 0) {
if (H5Dwrite(dset, type, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0)
- fprintf(stderr, "gent_vlenstr_array H5Dwrite failed\n");
+ HDfprintf(stderr, "gent_vlenstr_array H5Dwrite failed\n");
H5Dclose(dset);
}
diff --git a/tools/h5dump/testh5dump.sh.in b/tools/test/h5dump/testh5dump.sh.in
index 9108f44..14d753c 100644
--- a/tools/h5dump/testh5dump.sh.in
+++ b/tools/test/h5dump/testh5dump.sh.in
@@ -24,13 +24,13 @@ TESTNAME=h5dump
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=h5dump # The tool name
+DUMPER=../../src/h5dump/h5dump # The tool name
DUMPER_BIN=`pwd`/$DUMPER # The path of the tool binary
-H5DIFF=../h5diff/h5diff # The h5diff tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
-H5IMPORT=../h5import/h5import # The h5import tool name
+H5IMPORT=../../src/h5import/h5import # The h5import tool name
H5IMPORT_BIN=`pwd`/$H5IMPORT # The path of the h5import tool binary
RM='rm -rf'
@@ -48,19 +48,19 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/../"
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_ERRORFILES="$srcdir/errfiles"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TEST_P_DIR=./testfiles
TESTDIR=./testfiles/std
@@ -440,7 +440,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If a test fails then increment
# the `nerrors' global variable and (if $verbose is set) display the
diff --git a/tools/h5dump/testh5dumppbits.sh.in b/tools/test/h5dump/testh5dumppbits.sh.in
index 446020a..92247d3 100644
--- a/tools/h5dump/testh5dumppbits.sh.in
+++ b/tools/test/h5dump/testh5dumppbits.sh.in
@@ -25,13 +25,13 @@ TESTNAME=h5dump
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=h5dump # The tool name
+DUMPER=../../src/h5dump/h5dump # The tool name
DUMPER_BIN=`pwd`/$DUMPER # The path of the tool binary
-H5DIFF=../h5diff/h5diff # The h5diff tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
-H5IMPORT=../h5import/h5import # The h5import tool name
+H5IMPORT=../../src/h5import/h5import # The h5import tool name
H5IMPORT_BIN=`pwd`/$H5IMPORT # The path of the h5import tool binary
RM='rm -rf'
@@ -46,19 +46,19 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/../"
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_ERRORFILES="$srcdir/errfiles"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TEST_P_DIR=./testfiles
TESTDIR=./testfiles/pbits
@@ -207,7 +207,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If a test fails then increment
# the `nerrors' global variable and (if $verbose is set) display the
diff --git a/tools/h5dump/testh5dumpvds.sh.in b/tools/test/h5dump/testh5dumpvds.sh.in
index 16411f5..459d506 100644
--- a/tools/h5dump/testh5dumpvds.sh.in
+++ b/tools/test/h5dump/testh5dumpvds.sh.in
@@ -25,13 +25,13 @@ TESTNAME=h5dump
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=h5dump # The tool name
+DUMPER=../../src/h5dump/h5dump # The tool name
DUMPER_BIN=`pwd`/$DUMPER # The path of the tool binary
-H5DIFF=../h5diff/h5diff # The h5diff tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
-H5IMPORT=../h5import/h5import # The h5import tool name
+H5IMPORT=../../src/h5import/h5import # The h5import tool name
H5IMPORT_BIN=`pwd`/$H5IMPORT # The path of the h5import tool binary
RM='rm -rf'
@@ -46,19 +46,19 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/../"
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_ERRORFILES="$srcdir/errfiles"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TEST_P_DIR=./testfiles
TESTDIR=./testfiles/vds
@@ -186,7 +186,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If a test fails then increment
# the `nerrors' global variable and (if $verbose is set) display the
diff --git a/tools/h5dump/testh5dumpxml.sh.in b/tools/test/h5dump/testh5dumpxml.sh.in
index 33a67c0..638a710 100644
--- a/tools/h5dump/testh5dumpxml.sh.in
+++ b/tools/test/h5dump/testh5dumpxml.sh.in
@@ -21,7 +21,7 @@ TESTNAME=h5dumpxml
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=h5dump # The tool name
+DUMPER=../../src/h5dump/h5dump # The tool name
DUMPER_BIN=`pwd`/$DUMPER # The path of the tool binary
RM='rm -rf'
@@ -36,18 +36,18 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/../"
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TEST_P_DIR=./testfiles
TESTDIR=./testfiles/xml
@@ -238,7 +238,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. If a test fails then increment
# the `nerrors' global variable and (if $verbose is set) display the
diff --git a/tools/test/h5format_convert/CMakeLists.txt b/tools/test/h5format_convert/CMakeLists.txt
new file mode 100644
index 0000000..1d18e9a
--- /dev/null
+++ b/tools/test/h5format_convert/CMakeLists.txt
@@ -0,0 +1,28 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5FC)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5format_convert test executables
+ # --------------------------------------------------------------------
+ add_executable (h5fc_chk_idx ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/h5fc_chk_idx.c)
+ TARGET_NAMING (h5fc_chk_idx STATIC)
+ TARGET_C_PROPERTIES (h5fc_chk_idx STATIC " " " ")
+ target_link_libraries (h5fc_chk_idx ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5fc_chk_idx PROPERTIES FOLDER tools)
+
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5fc_gentest ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/h5fc_gentest.c)
+ TARGET_NAMING (h5fc_gentest STATIC)
+ TARGET_C_PROPERTIES (h5fc_gentest STATIC " " " ")
+ target_link_libraries (h5fc_gentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5fc_gentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5fc_gentest COMMAND $<TARGET_FILE:h5fc_gentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5format_convert/CMakeTests.cmake b/tools/test/h5format_convert/CMakeTests.cmake
index 929230a..68f9318 100644
--- a/tools/h5format_convert/CMakeTests.cmake
+++ b/tools/test/h5format_convert/CMakeTests.cmake
@@ -63,11 +63,11 @@
add_custom_target(h5fc-files ALL COMMENT "Copying files needed by h5fc tests")
foreach (ddl_file ${HDF5_REFERENCE_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${ddl_file}" "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}" "h5fc_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${ddl_file}" "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}" "h5fc_files")
endforeach (ddl_file ${HDF5_REFERENCE_FILES})
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files")
endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
add_custom_target(h5fc_files ALL COMMENT "Copying files needed by h5fc tests" DEPENDS ${h5fc_files_list})
@@ -92,7 +92,7 @@
add_test (
NAME H5FC-${testname}-${testfile}-tmpfile
COMMAND ${CMAKE_COMMAND}
- -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} ./testfiles/outtmp.h5
+ -E copy_if_different ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${testfile} ./testfiles/outtmp.h5
)
set_tests_properties (H5FC-${testname}-${testfile}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
add_test (
@@ -140,7 +140,7 @@
add_test (
NAME H5FC-${testname}-tmpfile
COMMAND ${CMAKE_COMMAND}
- -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/tmp.h5
+ -E copy_if_different ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/tmp.h5
)
set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
add_test (
@@ -184,7 +184,7 @@
add_test (
NAME H5FC-${testname}-tmpfile
COMMAND ${CMAKE_COMMAND}
- -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/chktmp.h5
+ -E copy_if_different ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/chktmp.h5
)
set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
add_test (
@@ -222,7 +222,7 @@
add_test (
NAME H5FC-${testname}-tmpfile
COMMAND ${CMAKE_COMMAND}
- -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testname}.h5 testfiles/dmptmp.h5
+ -E copy_if_different ${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${testname}.h5 testfiles/dmptmp.h5
)
set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
add_test (
diff --git a/tools/h5format_convert/Makefile.am b/tools/test/h5format_convert/Makefile.am
index d3aef7d..5779d4d 100644
--- a/tools/h5format_convert/Makefile.am
+++ b/tools/test/h5format_convert/Makefile.am
@@ -29,13 +29,7 @@ TEST_SCRIPT=testh5fc.sh
check_PROGRAMS=$(TEST_PROG) h5fc_chk_idx
check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5format_convert$(EXEEXT)
-
-# These are our main targets, the tools
-bin_PROGRAMS=h5format_convert
-
-# Add h5format_convert specific linker flags here
-h5format_convert_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+SCRIPT_DEPEND=../../src/h5format_convert/h5format_convert$(EXEEXT)
# Tell automake to clean h5redeploy script
CHECK_CLEANFILES+=*.h5
diff --git a/tools/h5format_convert/h5fc_chk_idx.c b/tools/test/h5format_convert/h5fc_chk_idx.c
index 3a87594..3a87594 100644
--- a/tools/h5format_convert/h5fc_chk_idx.c
+++ b/tools/test/h5format_convert/h5fc_chk_idx.c
diff --git a/tools/h5format_convert/h5fc_gentest.c b/tools/test/h5format_convert/h5fc_gentest.c
index 97def9a..97def9a 100644
--- a/tools/h5format_convert/h5fc_gentest.c
+++ b/tools/test/h5format_convert/h5fc_gentest.c
diff --git a/tools/h5format_convert/testfiles/h5fc_d_file.ddl b/tools/test/h5format_convert/testfiles/h5fc_d_file.ddl
index 38fc432..38fc432 100644
--- a/tools/h5format_convert/testfiles/h5fc_d_file.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_d_file.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_dname.ddl b/tools/test/h5format_convert/testfiles/h5fc_dname.ddl
index 48564b7..48564b7 100644
--- a/tools/h5format_convert/testfiles/h5fc_dname.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_dname.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_edge_v3.h5 b/tools/test/h5format_convert/testfiles/h5fc_edge_v3.h5
index ac7dbd3..ac7dbd3 100644
--- a/tools/h5format_convert/testfiles/h5fc_edge_v3.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_edge_v3.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_err_level.h5 b/tools/test/h5format_convert/testfiles/h5fc_err_level.h5
index a10e8a4..a10e8a4 100644
--- a/tools/h5format_convert/testfiles/h5fc_err_level.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_err_level.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext1_f.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_f.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_f.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext1_f.h5
index 68ba2ac..68ba2ac 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_f.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_f.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext1_i.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_i.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_i.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext1_i.h5
index 1a58089..1a58089 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_i.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_i.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext1_s.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_s.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_s.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext1_s.h5
index 26e9b25..26e9b25 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_s.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext1_s.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext2_if.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_if.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_if.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext2_if.h5
index e5c5e25..e5c5e25 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_if.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_if.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext2_is.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_is.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_is.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext2_is.h5
index 0e3eca7..0e3eca7 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_is.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_is.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext2_sf.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_sf.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_sf.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext2_sf.h5
index cb15f03..cb15f03 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_sf.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext2_sf.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl b/tools/test/h5format_convert/testfiles/h5fc_ext3_isf.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext3_isf.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_ext3_isf.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext3_isf.h5
index d46cef4..d46cef4 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext3_isf.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext3_isf.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_ext_none.h5 b/tools/test/h5format_convert/testfiles/h5fc_ext_none.h5
index defbcb3..defbcb3 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext_none.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_ext_none.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_help.ddl b/tools/test/h5format_convert/testfiles/h5fc_help.ddl
index bc0229c..bc0229c 100644
--- a/tools/h5format_convert/testfiles/h5fc_help.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_help.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_non_v3.h5 b/tools/test/h5format_convert/testfiles/h5fc_non_v3.h5
index 58a340d..58a340d 100644
--- a/tools/h5format_convert/testfiles/h5fc_non_v3.h5
+++ b/tools/test/h5format_convert/testfiles/h5fc_non_v3.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl b/tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl
index 39450c0..39450c0 100644
--- a/tools/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_nonexistfile.ddl b/tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl
index 706ea9d..706ea9d 100644
--- a/tools/h5format_convert/testfiles/h5fc_nonexistfile.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_nooption.ddl b/tools/test/h5format_convert/testfiles/h5fc_nooption.ddl
index bc0229c..bc0229c 100644
--- a/tools/h5format_convert/testfiles/h5fc_nooption.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_nooption.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_all.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_all.ddl
index a1af831..a1af831 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_all.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_all.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_bt1.ddl
index 31de12a..31de12a 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_bt1.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_err.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_err.ddl
index b671db0..b671db0 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_err.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_err.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_n_1d.ddl
index fcdadd8..fcdadd8 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_n_1d.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_n_all.ddl
index 074ce6f..074ce6f 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_n_all.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
index c75699a..c75699a 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
diff --git a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl b/tools/test/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
index 5945389..5945389 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
+++ b/tools/test/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.h5
index 3cbc7f4..3cbc7f4 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_f.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
index d1768c8..d1768c8 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.h5
index a2c9187..a2c9187 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_i.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.h5
index fdf4f33..fdf4f33 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext1_s.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.h5
index 6bf0a2f..6bf0a2f 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_if.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.h5
index c0c7ecc..c0c7ecc 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_is.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
index dae9284..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.h5
index 055cabf..055cabf 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext2_sf.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl b/tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
index 8ec4656..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.h5
index f4caaf4..f4caaf4 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext3_isf.h5
Binary files differ
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext_none.h5 b/tools/test/h5format_convert/testfiles/old_h5fc_ext_none.h5
index d0bf344..d0bf344 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext_none.h5
+++ b/tools/test/h5format_convert/testfiles/old_h5fc_ext_none.h5
Binary files differ
diff --git a/tools/h5format_convert/testh5fc.sh.in b/tools/test/h5format_convert/testh5fc.sh.in
index 0d74697..5384354 100644
--- a/tools/h5format_convert/testh5fc.sh.in
+++ b/tools/test/h5format_convert/testh5fc.sh.in
@@ -31,7 +31,7 @@ TESTNAME=h5format_convert
EXIT_SUCCESS=0
EXIT_FAILURE=1
-FORMCONV=h5format_convert # The tool name
+FORMCONV=../../src/h5format_convert/h5format_convert # The tool name
FORMCONV_BIN=`pwd`/$FORMCONV # The path of the tool binary
CHK_IDX=h5fc_chk_idx # The program name
@@ -41,7 +41,7 @@ RM='rm -rf'
CMP='cmp -s'
DIFF='diff -c'
CP='cp'
-H5DUMP=../h5dump/h5dump # The h5dump tool name
+H5DUMP=../../src/h5dump/h5dump # The h5dump tool name
H5DUMP_BIN=`pwd`/$H5DUMP # The path of the h5dump tool binary
DIRNAME='dirname'
LS='ls'
@@ -51,19 +51,19 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
-SRC_H5FORMCONV_TESTFILES="$SRC_TOOLS/h5format_convert/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
+SRC_H5FORMCONV_TESTFILES="$SRC_TOOLS/test/h5format_convert/testfiles"
TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
diff --git a/tools/test/h5import/CMakeLists.txt b/tools/test/h5import/CMakeLists.txt
new file mode 100644
index 0000000..22491b4
--- /dev/null
+++ b/tools/test/h5import/CMakeLists.txt
@@ -0,0 +1,18 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5IMPORT)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5import executables
+ # --------------------------------------------------------------------
+ add_executable (h5importtest ${HDF5_TOOLS_TEST_H5IMPORT_SOURCE_DIR}/h5importtest.c)
+ TARGET_NAMING (h5importtest STATIC)
+ TARGET_C_PROPERTIES (h5importtest STATIC " " " ")
+ target_link_libraries (h5importtest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5importtest PROPERTIES FOLDER tools)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5import/CMakeTests.cmake b/tools/test/h5import/CMakeTests.cmake
index 0fdf9dd..eb0b413 100644
--- a/tools/h5import/CMakeTests.cmake
+++ b/tools/test/h5import/CMakeTests.cmake
@@ -63,15 +63,15 @@
file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
foreach (conf_file ${HDF5_REFERENCE_CONF_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5IMPORT_SOURCE_DIR}/testfiles/${conf_file}" "${PROJECT_BINARY_DIR}/testfiles/${conf_file}" "h5import_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5IMPORT_SOURCE_DIR}/testfiles/${conf_file}" "${PROJECT_BINARY_DIR}/testfiles/${conf_file}" "h5import_files")
endforeach (conf_file ${HDF5_REFERENCE_CONF_FILES})
foreach (txt_file ${HDF5_REFERENCE_TXT_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5IMPORT_SOURCE_DIR}/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5IMPORT_SOURCE_DIR}/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files")
endforeach (txt_file ${HDF5_REFERENCE_TXT_FILES})
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5IMPORT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5IMPORT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files")
endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
add_custom_target(h5import_files ALL COMMENT "Copying files needed by h5import tests" DEPENDS ${h5import_files_list})
diff --git a/tools/h5import/Makefile.am b/tools/test/h5import/Makefile.am
index af60478..f238f77 100644
--- a/tools/h5import/Makefile.am
+++ b/tools/test/h5import/Makefile.am
@@ -28,14 +28,8 @@ TEST_PROG=h5importtest
TEST_SCRIPT=h5importtestutil.sh
check_PROGRAMS=$(TEST_PROG)
-check_SCRIPT=h5importtestutil.sh
-SCRIPT_DEPEND=h5import$(EXEEXT)
-
-# Our main targets
-bin_PROGRAMS=h5import
-
-# Add h5import specific linker flags here
-h5import_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+check_SCRIPT=$(TEST_SCRIPT)
+SCRIPT_DEPEND=../../src/h5import/h5import$(EXEEXT)
# All programs depend on the main hdf5 library and the tools library
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
diff --git a/tools/h5import/h5importtest.c b/tools/test/h5import/h5importtest.c
index 38fd75b..38fd75b 100644
--- a/tools/h5import/h5importtest.c
+++ b/tools/test/h5import/h5importtest.c
diff --git a/tools/h5import/h5importtestutil.sh.in b/tools/test/h5import/h5importtestutil.sh.in
index 08e0c3f..1a9a3fc 100644
--- a/tools/h5import/h5importtestutil.sh.in
+++ b/tools/test/h5import/h5importtestutil.sh.in
@@ -24,13 +24,13 @@ TESTNAME=h5import
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=../h5dump/h5dump # The tool name
+DUMPER=../../src/h5dump/h5dump # The tool name
DUMPER_BIN=`pwd`/$DUMPER # The path of the tool binary
-H5DIFF=../h5diff/h5diff # The h5diff tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
-H5IMPORT=h5import # The h5import tool name
+H5IMPORT=../../src/h5import/h5import # The h5import tool name
H5IMPORT_BIN=`pwd`/$H5IMPORT # The path of the h5import tool binary
RM='rm -rf'
@@ -43,18 +43,18 @@ AWK='awk'
nerrors=0
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
diff --git a/tools/h5import/testfiles/binfp64.conf b/tools/test/h5import/testfiles/binfp64.conf
index 6b4c361..6b4c361 100644
--- a/tools/h5import/testfiles/binfp64.conf
+++ b/tools/test/h5import/testfiles/binfp64.conf
diff --git a/tools/h5import/testfiles/binfp64.h5 b/tools/test/h5import/testfiles/binfp64.h5
index 80e3a8a..80e3a8a 100644
--- a/tools/h5import/testfiles/binfp64.h5
+++ b/tools/test/h5import/testfiles/binfp64.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binin16.conf b/tools/test/h5import/testfiles/binin16.conf
index 06869cb..06869cb 100644
--- a/tools/h5import/testfiles/binin16.conf
+++ b/tools/test/h5import/testfiles/binin16.conf
diff --git a/tools/h5import/testfiles/binin16.h5 b/tools/test/h5import/testfiles/binin16.h5
index 0825bbc..0825bbc 100644
--- a/tools/h5import/testfiles/binin16.h5
+++ b/tools/test/h5import/testfiles/binin16.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binin32.conf b/tools/test/h5import/testfiles/binin32.conf
index 11996ef..11996ef 100644
--- a/tools/h5import/testfiles/binin32.conf
+++ b/tools/test/h5import/testfiles/binin32.conf
diff --git a/tools/h5import/testfiles/binin32.h5 b/tools/test/h5import/testfiles/binin32.h5
index fd8faa9..fd8faa9 100644
--- a/tools/h5import/testfiles/binin32.h5
+++ b/tools/test/h5import/testfiles/binin32.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binin8.conf b/tools/test/h5import/testfiles/binin8.conf
index 1edd80a..1edd80a 100644
--- a/tools/h5import/testfiles/binin8.conf
+++ b/tools/test/h5import/testfiles/binin8.conf
diff --git a/tools/h5import/testfiles/binin8.h5 b/tools/test/h5import/testfiles/binin8.h5
index a1d1a37..a1d1a37 100644
--- a/tools/h5import/testfiles/binin8.h5
+++ b/tools/test/h5import/testfiles/binin8.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binin8w.conf b/tools/test/h5import/testfiles/binin8w.conf
index fccb4ac..fccb4ac 100644
--- a/tools/h5import/testfiles/binin8w.conf
+++ b/tools/test/h5import/testfiles/binin8w.conf
diff --git a/tools/h5import/testfiles/binin8w.h5 b/tools/test/h5import/testfiles/binin8w.h5
index 64acaed..64acaed 100644
--- a/tools/h5import/testfiles/binin8w.h5
+++ b/tools/test/h5import/testfiles/binin8w.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binuin16.conf b/tools/test/h5import/testfiles/binuin16.conf
index a4603df..a4603df 100644
--- a/tools/h5import/testfiles/binuin16.conf
+++ b/tools/test/h5import/testfiles/binuin16.conf
diff --git a/tools/h5import/testfiles/binuin16.h5 b/tools/test/h5import/testfiles/binuin16.h5
index c486c89..c486c89 100644
--- a/tools/h5import/testfiles/binuin16.h5
+++ b/tools/test/h5import/testfiles/binuin16.h5
Binary files differ
diff --git a/tools/h5import/testfiles/binuin32.conf b/tools/test/h5import/testfiles/binuin32.conf
index a649e97..a649e97 100644
--- a/tools/h5import/testfiles/binuin32.conf
+++ b/tools/test/h5import/testfiles/binuin32.conf
diff --git a/tools/h5import/testfiles/binuin32.h5 b/tools/test/h5import/testfiles/binuin32.h5
index 41699d7..41699d7 100644
--- a/tools/h5import/testfiles/binuin32.h5
+++ b/tools/test/h5import/testfiles/binuin32.h5
Binary files differ
diff --git a/tools/h5import/testfiles/dbinfp64.h5.txt b/tools/test/h5import/testfiles/dbinfp64.h5.txt
index fb88984..fb88984 100644
--- a/tools/h5import/testfiles/dbinfp64.h5.txt
+++ b/tools/test/h5import/testfiles/dbinfp64.h5.txt
diff --git a/tools/h5import/testfiles/dbinin16.h5.txt b/tools/test/h5import/testfiles/dbinin16.h5.txt
index b94781e..b94781e 100644
--- a/tools/h5import/testfiles/dbinin16.h5.txt
+++ b/tools/test/h5import/testfiles/dbinin16.h5.txt
diff --git a/tools/h5import/testfiles/dbinin32.h5.txt b/tools/test/h5import/testfiles/dbinin32.h5.txt
index a35cd79..a35cd79 100644
--- a/tools/h5import/testfiles/dbinin32.h5.txt
+++ b/tools/test/h5import/testfiles/dbinin32.h5.txt
diff --git a/tools/h5import/testfiles/dbinin8.h5.txt b/tools/test/h5import/testfiles/dbinin8.h5.txt
index bbc6c67..bbc6c67 100644
--- a/tools/h5import/testfiles/dbinin8.h5.txt
+++ b/tools/test/h5import/testfiles/dbinin8.h5.txt
diff --git a/tools/h5import/testfiles/dbinin8w.h5.txt b/tools/test/h5import/testfiles/dbinin8w.h5.txt
index 28d43d2..28d43d2 100644
--- a/tools/h5import/testfiles/dbinin8w.h5.txt
+++ b/tools/test/h5import/testfiles/dbinin8w.h5.txt
diff --git a/tools/h5import/testfiles/dbinuin16.h5.txt b/tools/test/h5import/testfiles/dbinuin16.h5.txt
index ecad7a0..ecad7a0 100644
--- a/tools/h5import/testfiles/dbinuin16.h5.txt
+++ b/tools/test/h5import/testfiles/dbinuin16.h5.txt
diff --git a/tools/h5import/testfiles/dbinuin32.h5.txt b/tools/test/h5import/testfiles/dbinuin32.h5.txt
index cc1d9f3..cc1d9f3 100644
--- a/tools/h5import/testfiles/dbinuin32.h5.txt
+++ b/tools/test/h5import/testfiles/dbinuin32.h5.txt
diff --git a/tools/h5import/testfiles/dtxtstr.h5.txt b/tools/test/h5import/testfiles/dtxtstr.h5.txt
index 2170300..2170300 100644
--- a/tools/h5import/testfiles/dtxtstr.h5.txt
+++ b/tools/test/h5import/testfiles/dtxtstr.h5.txt
diff --git a/tools/h5import/testfiles/textpfe.conf b/tools/test/h5import/testfiles/textpfe.conf
index 6404d5f..6404d5f 100644
--- a/tools/h5import/testfiles/textpfe.conf
+++ b/tools/test/h5import/testfiles/textpfe.conf
diff --git a/tools/h5import/testfiles/textpfe.h5 b/tools/test/h5import/testfiles/textpfe.h5
index 213051d..213051d 100644
--- a/tools/h5import/testfiles/textpfe.h5
+++ b/tools/test/h5import/testfiles/textpfe.h5
Binary files differ
diff --git a/tools/h5import/testfiles/textpfe64.txt b/tools/test/h5import/testfiles/textpfe64.txt
index f6dd7f4..f6dd7f4 100644
--- a/tools/h5import/testfiles/textpfe64.txt
+++ b/tools/test/h5import/testfiles/textpfe64.txt
diff --git a/tools/h5import/testfiles/txtfp32.conf b/tools/test/h5import/testfiles/txtfp32.conf
index 9696a7f..9696a7f 100644
--- a/tools/h5import/testfiles/txtfp32.conf
+++ b/tools/test/h5import/testfiles/txtfp32.conf
diff --git a/tools/h5import/testfiles/txtfp32.h5 b/tools/test/h5import/testfiles/txtfp32.h5
index f74e003..f74e003 100644
--- a/tools/h5import/testfiles/txtfp32.h5
+++ b/tools/test/h5import/testfiles/txtfp32.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtfp32.txt b/tools/test/h5import/testfiles/txtfp32.txt
index 142c94f..142c94f 100644
--- a/tools/h5import/testfiles/txtfp32.txt
+++ b/tools/test/h5import/testfiles/txtfp32.txt
diff --git a/tools/h5import/testfiles/txtfp64.conf b/tools/test/h5import/testfiles/txtfp64.conf
index fbab6a6..fbab6a6 100644
--- a/tools/h5import/testfiles/txtfp64.conf
+++ b/tools/test/h5import/testfiles/txtfp64.conf
diff --git a/tools/h5import/testfiles/txtfp64.h5 b/tools/test/h5import/testfiles/txtfp64.h5
index b6ba4f5..b6ba4f5 100644
--- a/tools/h5import/testfiles/txtfp64.h5
+++ b/tools/test/h5import/testfiles/txtfp64.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtfp64.txt b/tools/test/h5import/testfiles/txtfp64.txt
index 6c83dc3..6c83dc3 100644
--- a/tools/h5import/testfiles/txtfp64.txt
+++ b/tools/test/h5import/testfiles/txtfp64.txt
diff --git a/tools/h5import/testfiles/txtin16.conf b/tools/test/h5import/testfiles/txtin16.conf
index d2d11c3..d2d11c3 100644
--- a/tools/h5import/testfiles/txtin16.conf
+++ b/tools/test/h5import/testfiles/txtin16.conf
diff --git a/tools/h5import/testfiles/txtin16.h5 b/tools/test/h5import/testfiles/txtin16.h5
index dc6c1ea..dc6c1ea 100644
--- a/tools/h5import/testfiles/txtin16.h5
+++ b/tools/test/h5import/testfiles/txtin16.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtin16.txt b/tools/test/h5import/testfiles/txtin16.txt
index 0688e9b..0688e9b 100644
--- a/tools/h5import/testfiles/txtin16.txt
+++ b/tools/test/h5import/testfiles/txtin16.txt
diff --git a/tools/h5import/testfiles/txtin32.conf b/tools/test/h5import/testfiles/txtin32.conf
index ca4802a..ca4802a 100644
--- a/tools/h5import/testfiles/txtin32.conf
+++ b/tools/test/h5import/testfiles/txtin32.conf
diff --git a/tools/h5import/testfiles/txtin32.h5 b/tools/test/h5import/testfiles/txtin32.h5
index 350333c..350333c 100644
--- a/tools/h5import/testfiles/txtin32.h5
+++ b/tools/test/h5import/testfiles/txtin32.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtin32.txt b/tools/test/h5import/testfiles/txtin32.txt
index 0688e9b..0688e9b 100644
--- a/tools/h5import/testfiles/txtin32.txt
+++ b/tools/test/h5import/testfiles/txtin32.txt
diff --git a/tools/h5import/testfiles/txtin8.conf b/tools/test/h5import/testfiles/txtin8.conf
index 9dbfd2b..9dbfd2b 100644
--- a/tools/h5import/testfiles/txtin8.conf
+++ b/tools/test/h5import/testfiles/txtin8.conf
diff --git a/tools/h5import/testfiles/txtin8.h5 b/tools/test/h5import/testfiles/txtin8.h5
index 42e7727..42e7727 100644
--- a/tools/h5import/testfiles/txtin8.h5
+++ b/tools/test/h5import/testfiles/txtin8.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtin8.txt b/tools/test/h5import/testfiles/txtin8.txt
index 0688e9b..0688e9b 100644
--- a/tools/h5import/testfiles/txtin8.txt
+++ b/tools/test/h5import/testfiles/txtin8.txt
diff --git a/tools/h5import/testfiles/txtstr.conf b/tools/test/h5import/testfiles/txtstr.conf
index 85079e0..85079e0 100644
--- a/tools/h5import/testfiles/txtstr.conf
+++ b/tools/test/h5import/testfiles/txtstr.conf
diff --git a/tools/h5import/testfiles/txtstr.h5 b/tools/test/h5import/testfiles/txtstr.h5
index ceb0810..ceb0810 100644
--- a/tools/h5import/testfiles/txtstr.h5
+++ b/tools/test/h5import/testfiles/txtstr.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtstr.txt b/tools/test/h5import/testfiles/txtstr.txt
index 25be0a6..25be0a6 100644
--- a/tools/h5import/testfiles/txtstr.txt
+++ b/tools/test/h5import/testfiles/txtstr.txt
diff --git a/tools/h5import/testfiles/txtuin16.conf b/tools/test/h5import/testfiles/txtuin16.conf
index 753e6e8..753e6e8 100644
--- a/tools/h5import/testfiles/txtuin16.conf
+++ b/tools/test/h5import/testfiles/txtuin16.conf
diff --git a/tools/h5import/testfiles/txtuin16.h5 b/tools/test/h5import/testfiles/txtuin16.h5
index 9ee166a..9ee166a 100644
--- a/tools/h5import/testfiles/txtuin16.h5
+++ b/tools/test/h5import/testfiles/txtuin16.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtuin16.txt b/tools/test/h5import/testfiles/txtuin16.txt
index 0688e9b..0688e9b 100644
--- a/tools/h5import/testfiles/txtuin16.txt
+++ b/tools/test/h5import/testfiles/txtuin16.txt
diff --git a/tools/h5import/testfiles/txtuin32.conf b/tools/test/h5import/testfiles/txtuin32.conf
index d61e1a1..d61e1a1 100644
--- a/tools/h5import/testfiles/txtuin32.conf
+++ b/tools/test/h5import/testfiles/txtuin32.conf
diff --git a/tools/h5import/testfiles/txtuin32.h5 b/tools/test/h5import/testfiles/txtuin32.h5
index 1a4dda5..1a4dda5 100644
--- a/tools/h5import/testfiles/txtuin32.h5
+++ b/tools/test/h5import/testfiles/txtuin32.h5
Binary files differ
diff --git a/tools/h5import/testfiles/txtuin32.txt b/tools/test/h5import/testfiles/txtuin32.txt
index 0688e9b..0688e9b 100644
--- a/tools/h5import/testfiles/txtuin32.txt
+++ b/tools/test/h5import/testfiles/txtuin32.txt
diff --git a/tools/test/h5jam/CMakeLists.txt b/tools/test/h5jam/CMakeLists.txt
new file mode 100644
index 0000000..d3980c4
--- /dev/null
+++ b/tools/test/h5jam/CMakeLists.txt
@@ -0,0 +1,34 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5JAM)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5jam test executables
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5jamgentest ${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/h5jamgentest.c)
+ TARGET_NAMING (h5jamgentest STATIC)
+ TARGET_C_PROPERTIES (testhdf5 STATIC " " " ")
+ target_link_libraries (h5jamgentest ${HDF5_LIB_TARGET})
+ set_target_properties (h5jamgentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5jamgentest COMMAND $<TARGET_FILE:h5jamgentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+add_executable (getub ${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/getub.c)
+TARGET_NAMING (getub STATIC)
+TARGET_C_PROPERTIES (getub STATIC " " " ")
+target_link_libraries (getub ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
+set_target_properties (getub PROPERTIES FOLDER tools)
+
+add_executable (tellub ${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/tellub.c)
+TARGET_NAMING (tellub STATIC)
+TARGET_C_PROPERTIES (tellub STATIC " " " ")
+target_link_libraries (tellub ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
+set_target_properties (tellub PROPERTIES FOLDER tools)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5jam/CMakeTests.cmake b/tools/test/h5jam/CMakeTests.cmake
index 96061b0..9ed2015 100644
--- a/tools/h5jam/CMakeTests.cmake
+++ b/tools/test/h5jam/CMakeTests.cmake
@@ -22,11 +22,11 @@
file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5JAM_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5jam_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5jam_files")
endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
foreach (txt_file ${HDF5_REFERENCE_TXT_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5JAM_SOURCE_DIR}/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5jam_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5jam_files")
endforeach (txt_file ${HDF5_REFERENCE_TXT_FILES})
add_custom_target(h5jam_files ALL COMMENT "Copying files needed by h5jam tests" DEPENDS ${h5jam_files_list})
@@ -128,7 +128,7 @@
)
add_test (
NAME H5JAM-${testname}-UNJAM-SETUP
- COMMAND ${CMAKE_COMMAND} -E copy_if_different ${HDF5_TOOLS_H5JAM_SOURCE_DIR}/testfiles/${setfile} ${PROJECT_BINARY_DIR}/${infile}
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${HDF5_TOOLS_TEST_H5JAM_SOURCE_DIR}/testfiles/${setfile} ${PROJECT_BINARY_DIR}/${infile}
)
set_tests_properties (H5JAM-${testname}-UNJAM-SETUP PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-SETUP-clear-objects)
add_test (
diff --git a/tools/h5jam/Makefile.am b/tools/test/h5jam/Makefile.am
index 60a62b9..068f437 100644
--- a/tools/h5jam/Makefile.am
+++ b/tools/test/h5jam/Makefile.am
@@ -23,16 +23,11 @@ include $(top_srcdir)/config/commence.am
# Include src and tools/lib directories
AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
-bin_PROGRAMS=h5jam h5unjam
check_PROGRAMS=tellub h5jamgentest getub
TEST_SCRIPT=testh5jam.sh
-# Add h5jam and h5unjam specific linker flags here
-h5jam_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
-h5unjam_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
-
check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5jam$(EXEEXT) h5unjam$(EXEEXT)
+SCRIPT_DEPEND=../../src/h5jam/h5jam$(EXEEXT) ../../src/h5jam/h5unjam$(EXEEXT)
# Link against the main HDF5 library and tools library
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
diff --git a/tools/h5jam/getub.c b/tools/test/h5jam/getub.c
index 4e02e6b..4e02e6b 100644
--- a/tools/h5jam/getub.c
+++ b/tools/test/h5jam/getub.c
diff --git a/tools/h5jam/h5jamgentest.c b/tools/test/h5jam/h5jamgentest.c
index a12b17a..a12b17a 100644
--- a/tools/h5jam/h5jamgentest.c
+++ b/tools/test/h5jam/h5jamgentest.c
diff --git a/tools/h5jam/tellub.c b/tools/test/h5jam/tellub.c
index b4f87af..b4f87af 100644
--- a/tools/h5jam/tellub.c
+++ b/tools/test/h5jam/tellub.c
diff --git a/tools/h5jam/testfiles/h5jam-help.txt b/tools/test/h5jam/testfiles/h5jam-help.txt
index ce97c22..ce97c22 100644
--- a/tools/h5jam/testfiles/h5jam-help.txt
+++ b/tools/test/h5jam/testfiles/h5jam-help.txt
diff --git a/tools/h5jam/testfiles/h5jam-ub-nohdf5.txt b/tools/test/h5jam/testfiles/h5jam-ub-nohdf5.txt
index 72c0b17..72c0b17 100644
--- a/tools/h5jam/testfiles/h5jam-ub-nohdf5.txt
+++ b/tools/test/h5jam/testfiles/h5jam-ub-nohdf5.txt
diff --git a/tools/h5jam/testfiles/h5unjam-help.txt b/tools/test/h5jam/testfiles/h5unjam-help.txt
index f0d92e9..f0d92e9 100644
--- a/tools/h5jam/testfiles/h5unjam-help.txt
+++ b/tools/test/h5jam/testfiles/h5unjam-help.txt
diff --git a/tools/h5jam/testfiles/tall.h5 b/tools/test/h5jam/testfiles/tall.h5
index 918aeee..918aeee 100644
--- a/tools/h5jam/testfiles/tall.h5
+++ b/tools/test/h5jam/testfiles/tall.h5
Binary files differ
diff --git a/tools/h5jam/testfiles/twithub.h5 b/tools/test/h5jam/testfiles/twithub.h5
index 4bc1833..4bc1833 100644
--- a/tools/h5jam/testfiles/twithub.h5
+++ b/tools/test/h5jam/testfiles/twithub.h5
Binary files differ
diff --git a/tools/h5jam/testfiles/twithub513.h5 b/tools/test/h5jam/testfiles/twithub513.h5
index 0eac208..0eac208 100644
--- a/tools/h5jam/testfiles/twithub513.h5
+++ b/tools/test/h5jam/testfiles/twithub513.h5
Binary files differ
diff --git a/tools/h5jam/testfiles/u10.txt b/tools/test/h5jam/testfiles/u10.txt
index c76a964..c76a964 100644
--- a/tools/h5jam/testfiles/u10.txt
+++ b/tools/test/h5jam/testfiles/u10.txt
diff --git a/tools/h5jam/testfiles/u511.txt b/tools/test/h5jam/testfiles/u511.txt
index bff1736..bff1736 100644
--- a/tools/h5jam/testfiles/u511.txt
+++ b/tools/test/h5jam/testfiles/u511.txt
diff --git a/tools/h5jam/testfiles/u512.txt b/tools/test/h5jam/testfiles/u512.txt
index 33a36c9..33a36c9 100644
--- a/tools/h5jam/testfiles/u512.txt
+++ b/tools/test/h5jam/testfiles/u512.txt
diff --git a/tools/h5jam/testfiles/u513.txt b/tools/test/h5jam/testfiles/u513.txt
index 6b46ebf..6b46ebf 100644
--- a/tools/h5jam/testfiles/u513.txt
+++ b/tools/test/h5jam/testfiles/u513.txt
diff --git a/tools/h5jam/testh5jam.sh.in b/tools/test/h5jam/testh5jam.sh.in
index d8c9274..fb6d9e2 100644
--- a/tools/h5jam/testh5jam.sh.in
+++ b/tools/test/h5jam/testh5jam.sh.in
@@ -21,14 +21,14 @@ srcdir=@srcdir@
USE_FILTER_SZIP="@USE_FILTER_SZIP@"
USE_FILTER_DEFLATE="@USE_FILTER_DEFLATE@"
-TESTNAME=h5jam/h5unjam
+TESTNAME=../../src/h5jam/h5unjam
EXIT_SUCCESS=0
EXIT_FAILURE=1
-DUMPER=h5dump # The dumper to use
+DUMPER=../../src/h5dump/h5dump # The dumper to use
DUMPER_BIN=`pwd`/../$DUMPER # The path of the dumper binary
-JAM=h5jam # Tool to test
-UNJAM=h5unjam # Tool to test
+JAM=../../src/h5jam/h5jam # Tool to test
+UNJAM=../../src/h5jam/h5unjam # Tool to test
JAM_BIN="$RUNSERIAL "`pwd` # The path of the jam binary
UNJAM_BIN=`pwd` # The path of the jam binary
@@ -45,18 +45,18 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
@@ -86,7 +86,7 @@ $SRC_H5JAM_TESTFILES/h5jam-ub-nohdf5.txt
"
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
#
# copy test files and expected output files from source dirs to test dir
diff --git a/tools/test/h5ls/CMakeLists.txt b/tools/test/h5ls/CMakeLists.txt
new file mode 100644
index 0000000..48894fb
--- /dev/null
+++ b/tools/test/h5ls/CMakeLists.txt
@@ -0,0 +1,11 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5LS)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ include (CMakeTests.cmake)
+
+ include (CMakeTestsVDS.cmake)
diff --git a/tools/h5ls/CMakeTests.cmake b/tools/test/h5ls/CMakeTests.cmake
index 816907c..816907c 100644
--- a/tools/h5ls/CMakeTests.cmake
+++ b/tools/test/h5ls/CMakeTests.cmake
diff --git a/tools/h5ls/CMakeTestsVDS.cmake b/tools/test/h5ls/CMakeTestsVDS.cmake
index 0c825cb..72e14a1 100644
--- a/tools/h5ls/CMakeTestsVDS.cmake
+++ b/tools/test/h5ls/CMakeTestsVDS.cmake
@@ -48,7 +48,7 @@
# copy the list of test files
foreach (listfiles ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES})
get_filename_component(fname "${listfiles}" NAME)
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5ls_vds_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/${fname}" "h5ls_vds_files")
endforeach (listfiles ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES})
add_custom_target(h5ls_vds_files ALL COMMENT "Copying files needed by h5ls_vds tests" DEPENDS ${h5ls_vds_files_list})
diff --git a/tools/test/h5ls/Makefile.am b/tools/test/h5ls/Makefile.am
new file mode 100644
index 0000000..6f3d3dd
--- /dev/null
+++ b/tools/test/h5ls/Makefile.am
@@ -0,0 +1,34 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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 and tools/lib directories
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+# Test programs and scripts
+TEST_SCRIPT=testh5ls.sh testh5lsvds.sh
+check_SCRIPTS=$(TEST_SCRIPT)
+SCRIPT_DEPEND=../../src/h5ls/h5ls$(EXEEXT)
+
+# All programs depend on the hdf5 and h5tools libraries
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/h5ls/testh5ls.sh.in b/tools/test/h5ls/testh5ls.sh.in
index e72c875..0637a74 100644
--- a/tools/h5ls/testh5ls.sh.in
+++ b/tools/test/h5ls/testh5ls.sh.in
@@ -21,7 +21,7 @@ TESTNAME=h5ls
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5LS=h5ls # The tool name
+H5LS=../../src/h5ls/h5ls # The tool name
H5LS_BIN=`pwd`/$H5LS # The path of the tool binary
RM='rm -rf'
@@ -40,18 +40,18 @@ verbose=yes
h5haveexitcode=yes # default is yes
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
@@ -213,7 +213,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. For now, if h5ls can complete
# with exit status 0, consider it pass. If a test fails then increment
diff --git a/tools/h5ls/testh5lsvds.sh.in b/tools/test/h5ls/testh5lsvds.sh.in
index 47a48e3..b5c6aac 100644
--- a/tools/h5ls/testh5lsvds.sh.in
+++ b/tools/test/h5ls/testh5lsvds.sh.in
@@ -21,7 +21,7 @@ TESTNAME=h5ls
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5LS=h5ls # The tool name
+H5LS=../../src/h5ls/h5ls # The tool name
H5LS_BIN=`pwd`/$H5LS # The path of the tool binary
RM='rm -rf'
@@ -40,18 +40,18 @@ verbose=yes
h5haveexitcode=yes # default is yes
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TEST_P_DIR=./testfiles
TESTDIR=./testfiles/vds
@@ -164,7 +164,7 @@ TESTING() {
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Run a test and print PASS or *FAIL*. For now, if h5ls can complete
# with exit status 0, consider it pass. If a test fails then increment
diff --git a/tools/test/h5repack/CMakeLists.txt b/tools/test/h5repack/CMakeLists.txt
new file mode 100644
index 0000000..cecec53
--- /dev/null
+++ b/tools/test/h5repack/CMakeLists.txt
@@ -0,0 +1,79 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5REPACK)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/src/h5repack)
+INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
+
+# --------------------------------------------------------------------
+# Add h5Repack test executables
+# --------------------------------------------------------------------
+add_executable (testh5repack_detect_szip ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testh5repack_detect_szip.c)
+TARGET_NAMING (testh5repack_detect_szip STATIC)
+TARGET_C_PROPERTIES (testh5repack_detect_szip STATIC " " " ")
+target_link_libraries (testh5repack_detect_szip ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
+set_target_properties (testh5repack_detect_szip PROPERTIES FOLDER tools)
+
+set (REPACK_COMMON_SOURCES
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_copy.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_filters.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_opttable.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_parse.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_refs.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack_verify.c
+ ${HDF5_TOOLS_SRC_H5REPACK_SOURCE_DIR}/h5repack.c
+)
+add_executable (h5repacktest ${REPACK_COMMON_SOURCES} ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/h5repacktst.c)
+TARGET_NAMING (h5repacktest STATIC)
+TARGET_C_PROPERTIES (h5repacktest STATIC " " " ")
+target_link_libraries (h5repacktest ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
+set_target_properties (h5repacktest PROPERTIES FOLDER tools)
+
+ #-----------------------------------------------------------------------------
+ # If plugin library tests can be tested
+ #-----------------------------------------------------------------------------
+ set (HDF5_TOOL_PLUGIN_LIB_CORENAME "dynlibadd")
+ set (HDF5_TOOL_PLUGIN_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_TOOL_PLUGIN_LIB_CORENAME}")
+ set (HDF5_TOOL_PLUGIN_LIB_TARGET ${HDF5_TOOL_PLUGIN_LIB_CORENAME})
+ set (HDF5_TOOL_PLUGIN_LIB_VCORENAME "dynlibvers")
+ set (HDF5_TOOL_PLUGIN_LIB_VNAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_TOOL_PLUGIN_LIB_VCORENAME}")
+ set (HDF5_TOOL_PLUGIN_LIB_VTARGET ${HDF5_TOOL_PLUGIN_LIB_VCORENAME})
+ add_definitions (${HDF_EXTRA_C_FLAGS})
+ INCLUDE_DIRECTORIES (${HDF5_SRC_DIR})
+
+ add_library (${HDF5_TOOL_PLUGIN_LIB_TARGET} SHARED dynlib_rpk.c)
+ TARGET_C_PROPERTIES (${HDF5_TOOL_PLUGIN_LIB_TARGET} SHARED " " " ")
+ target_link_libraries (${HDF5_TOOL_PLUGIN_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
+ H5_SET_LIB_OPTIONS (${HDF5_TOOL_PLUGIN_LIB_TARGET} ${HDF5_TOOL_PLUGIN_LIB_NAME} SHARED ${HDF5_PACKAGE_SOVERSION})
+
+ add_library (${HDF5_TOOL_PLUGIN_LIB_VTARGET} SHARED dynlib_vrpk.c)
+ TARGET_C_PROPERTIES (${HDF5_TOOL_PLUGIN_LIB_VTARGET} SHARED " " " ")
+ target_link_libraries (${HDF5_TOOL_PLUGIN_LIB_VTARGET} ${HDF5_TEST_LIB_TARGET})
+ H5_SET_LIB_OPTIONS (${HDF5_TOOL_PLUGIN_LIB_VTARGET} ${HDF5_TOOL_PLUGIN_LIB_VNAME} SHARED ${HDF5_PACKAGE_SOVERSION})
+
+ # make plugins dir
+ file (MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/plugins")
+ #-----------------------------------------------------------------------------
+ # Copy plugin library to a plugins folder
+ #-----------------------------------------------------------------------------
+ add_custom_command (
+ TARGET ${HDF5_TOOL_PLUGIN_LIB_TARGET}
+ POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS -E copy_if_different
+ "$<TARGET_FILE:${HDF5_TOOL_PLUGIN_LIB_TARGET}>"
+ "${CMAKE_BINARY_DIR}/plugins/$<TARGET_FILE_NAME:${HDF5_TOOL_PLUGIN_LIB_TARGET}>"
+ )
+ add_custom_command (
+ TARGET ${HDF5_TOOL_PLUGIN_LIB_VTARGET}
+ POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS -E copy_if_different
+ "$<TARGET_FILE:${HDF5_TOOL_PLUGIN_LIB_VTARGET}>"
+ "${CMAKE_BINARY_DIR}/plugins/$<TARGET_FILE_NAME:${HDF5_TOOL_PLUGIN_LIB_VTARGET}>"
+ )
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5repack/CMakeTests.cmake b/tools/test/h5repack/CMakeTests.cmake
index 666f28e..f3ef2a5 100644
--- a/tools/h5repack/CMakeTests.cmake
+++ b/tools/test/h5repack/CMakeTests.cmake
@@ -42,29 +42,29 @@
# Copy all the HDF5 files from the source directory into the test directory
# --------------------------------------------------------------------
set (LIST_HDF5_TEST_FILES
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_attr.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_attr_refs.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_deflate.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_early.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_ext.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_fill.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_filters.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_fletcher.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_hlink.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layouto.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout2.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout3.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.UD.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_named_dtypes.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_nbit.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_objs.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_refs.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_shuffle.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_soffset.h5
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_szip.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_attr.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_attr_refs.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_deflate.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_early.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_ext.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_fill.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_filters.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_fletcher.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_hlink.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layouto.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout2.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout3.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.UD.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_named_dtypes.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_nbit.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_objs.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_refs.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_shuffle.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_soffset.h5
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_szip.h5
# h5diff/testfile
- ${HDF5_TOOLS_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr1.h5
+ ${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_attr1.h5
# tools/testfiles
${HDF5_TOOLS_DIR}/testfiles/tfamily00000.h5
${HDF5_TOOLS_DIR}/testfiles/tfamily00001.h5
@@ -104,24 +104,26 @@
)
set (LIST_OTHER_TEST_FILES
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack-help.txt
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_ext.bin
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/ublock.bin
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack.info
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/deflate_limit.h5repack_layout.h5.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-plugin_test.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/plugin_test.h5repack_layout.h5.tst
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/plugin_none.h5repack_layout.UD.h5.tst
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-plugin_zero.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack-help.txt
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_ext.bin
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/ublock.bin
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack.info
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/deflate_limit.h5repack_layout.h5.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-plugin_test.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/plugin_test.h5repack_layout.h5.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/plugin_none.h5repack_layout.UD.h5.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-plugin_version_test.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/plugin_version_test.h5repack_layout.h5.tst
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa-v.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti-v.ddl
+ ${HDF5_TOOLS_TEST_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.h5-plugin_zero.tst
)
foreach (h5_file ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES})
@@ -1133,6 +1135,7 @@
##############################################################################
### P L U G I N T E S T S
##############################################################################
+ ADD_H5_UD_TEST (plugin_version_test 0 h5repack_layout.h5 -v -f UD=260,4,9,1,9,235)
ADD_H5_UD_TEST (plugin_test 0 h5repack_layout.h5 -v -f UD=257,1,9)
ADD_H5_UD_TEST (plugin_none 0 h5repack_layout.UD.h5 -v -f NONE)
# check for no parameters
diff --git a/tools/h5repack/Makefile.am b/tools/test/h5repack/Makefile.am
index 21ac362..6c045c4 100644
--- a/tools/h5repack/Makefile.am
+++ b/tools/test/h5repack/Makefile.am
@@ -21,14 +21,14 @@
include $(top_srcdir)/config/commence.am
# Include src, test, and tools/lib directories
-AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/tools/lib
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/tools/lib -I$(top_srcdir)/tools/src/h5repack
# Test programs and scripts
TEST_SCRIPT=h5repack.sh
-TEST_PROG=h5repacktst
-noinst_PROGRAMS=testh5repack_detect_szip
-SCRIPT_DEPEND=h5repack$(EXEEXT)
+noinst_PROGRAMS=h5repacktst testh5repack_detect_szip
+
+SCRIPT_DEPEND=../../src/h5repack/h5repack$(EXEEXT) h5repacktst$(EXEEXT)
if HAVE_SHARED_CONDITIONAL
if USE_PLUGINS_CONDITIONAL
TEST_SCRIPT += h5repack_plugin.sh
@@ -36,35 +36,24 @@ endif
endif
check_SCRIPTS=$(TEST_SCRIPT)
-check_PROGRAMS=$(TEST_PROG)
-
-# Our main target, h5repack tool
-bin_PROGRAMS=h5repack
-
-# Add h5repack specific linker flags here
-h5repack_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
# Depend on the hdf5 library, the tools library, the test library
LDADD=$(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5)
-# Source files
-COMMON_SOURCES=h5repack.c h5repack_copy.c h5repack_filters.c \
- h5repack_opttable.c h5repack_parse.c h5repack_refs.c \
- h5repack_verify.c
-
-h5repack_SOURCES=$(COMMON_SOURCES) h5repack_main.c
+testh5repack_detect_szip_SOURCES=testh5repack_detect_szip.c
+# Source files
+COMMON_SOURCES=../../src/h5repack/h5repack.c ../../src/h5repack/h5repack_copy.c ../../src/h5repack/h5repack_filters.c \
+ ../../src/h5repack/h5repack_opttable.c ../../src/h5repack/h5repack_parse.c ../../src/h5repack/h5repack_refs.c \
+ ../../src/h5repack/h5repack_verify.c
h5repacktst_SOURCES=$(COMMON_SOURCES) h5repacktst.c
-testh5repack_detect_szip_SOURCES=testh5repack_detect_szip.c
-
-# The h5repack.sh script needs h5repacktst to run first.
-h5repack.sh.chkexe_: h5repacktst.chkexe_
if HAVE_SHARED_CONDITIONAL
# Build it as shared library if configure is enabled for shared library.
- lib_LTLIBRARIES=libdynlibadd.la
+ lib_LTLIBRARIES=libdynlibadd.la libdynlibvers.la
libdynlibadd_la_SOURCES=dynlib_rpk.c
+ libdynlibvers_la_SOURCES=dynlib_vrpk.c
install-exec-hook:
$(RM) $(DESTDIR)$(libdir)/*dynlib*
diff --git a/tools/h5repack/dynlib_rpk.c b/tools/test/h5repack/dynlib_rpk.c
index 6e8a7b6..3469e58 100644
--- a/tools/h5repack/dynlib_rpk.c
+++ b/tools/test/h5repack/dynlib_rpk.c
@@ -12,10 +12,10 @@
* to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
- * Programmer: Raymond Lu
- * 13 February 2013
+ * Programmer: Raymond Lu
+ * 13 February 2013
*
- * Purpose: Tests the plugin module (H5PL)
+ * Purpose: Tests the plugin module (H5PL)
*/
#include <stdlib.h>
@@ -24,48 +24,36 @@
#define H5Z_FILTER_DYNLIB1 257
-/* gcc attribute support from H5private.h */
-#ifdef __cplusplus
-# define H5_ATTR_CONST /*void*/
-#else /* __cplusplus */
-#if defined(H5_HAVE_ATTRIBUTE) && !defined(__SUNPRO_C)
-# define H5_ATTR_CONST __attribute__((const))
-#else
-# define H5_ATTR_CONST /*void*/
-#endif
-#endif /* __cplusplus */
-
-
static size_t H5Z_filter_dynlib1(unsigned int flags, size_t cd_nelmts,
const unsigned int *cd_values, size_t nbytes, size_t *buf_size, void **buf);
/* This message derives from H5Z */
const H5Z_class2_t H5Z_DYNLIB1[1] = {{
H5Z_CLASS_T_VERS, /* H5Z_class_t version */
- H5Z_FILTER_DYNLIB1, /* Filter id number */
+ H5Z_FILTER_DYNLIB1, /* Filter id number */
1, 1, /* Encoding and decoding enabled */
- "dynlib1", /* Filter name for debugging */
+ "dynlib1", /* Filter name for debugging */
NULL, /* The "can apply" callback */
NULL, /* The "set local" callback */
- (H5Z_func_t)H5Z_filter_dynlib1, /* The actual filter function */
+ (H5Z_func_t)H5Z_filter_dynlib1, /* The actual filter function */
}};
-H5_ATTR_CONST H5PL_type_t H5PLget_plugin_type(void) {return H5PL_TYPE_FILTER;}
-H5_ATTR_CONST const void *H5PLget_plugin_info(void) {return H5Z_DYNLIB1;}
+H5PL_type_t H5PLget_plugin_type(void) {return H5PL_TYPE_FILTER;}
+const void *H5PLget_plugin_info(void) {return H5Z_DYNLIB1;}
/*-------------------------------------------------------------------------
- * Function: H5Z_filter_dynlib1
+ * Function: H5Z_filter_dynlib1
*
- * Purpose: A dynlib1 filter method that adds on and subtract from
- * the original value with another value. It will be built
- * as a shared library. plugin.c test will load and use
- * this filter library.
+ * Purpose: A dynlib1 filter method that adds on and subtract from
+ * the original value with another value. It will be built
+ * as a shared library. plugin.c test will load and use
+ * this filter library.
*
- * Return: Success: Data chunk size
+ * Return: Success: Data chunk size
*
- * Failure: 0
+ * Failure: 0
*
- * Programmer: Raymond Lu
+ * Programmer: Raymond Lu
* 29 March 2013
*
*-------------------------------------------------------------------------
@@ -81,12 +69,12 @@ H5Z_filter_dynlib1(unsigned int flags, size_t cd_nelmts,
/* Check for the correct number of parameters */
if(cd_nelmts == 0)
- return(0);
+ return 0;
/* Check that permanent parameters are set correctly */
if(cd_values[0] > 9)
- return(0);
-
+ return 0;
+
add_on = (int)cd_values[0];
if(flags & H5Z_FLAG_REVERSE) { /*read*/
diff --git a/tools/test/h5repack/dynlib_vrpk.c b/tools/test/h5repack/dynlib_vrpk.c
new file mode 100644
index 0000000..8da0270
--- /dev/null
+++ b/tools/test/h5repack/dynlib_vrpk.c
@@ -0,0 +1,104 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * 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 files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic document set and is *
+ * linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have access *
+ * to either file, you may request a copy from help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+/*
+ * Purpose: Tests the plugin module (H5PL)
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include "H5PLextern.h"
+
+#define H5Z_FILTER_DYNLIB4 260
+
+#define PUSH_ERR(func, minor, str) H5Epush2(H5E_DEFAULT, __FILE__, func, __LINE__, H5E_ERR_CLS, H5E_PLUGIN, minor, str)
+
+static size_t H5Z_filter_dynlib4(unsigned int flags, size_t cd_nelmts,
+ const unsigned int *cd_values, size_t nbytes, size_t *buf_size, void **buf);
+
+/* This message derives from H5Z */
+const H5Z_class2_t H5Z_DYNLIB4[1] = {{
+ H5Z_CLASS_T_VERS, /* H5Z_class_t version */
+ H5Z_FILTER_DYNLIB4, /* Filter id number */
+ 1, 1, /* Encoding and decoding enabled */
+ "dynlib4", /* Filter name for debugging */
+ NULL, /* The "can apply" callback */
+ NULL, /* The "set local" callback */
+ (H5Z_func_t)H5Z_filter_dynlib4, /* The actual filter function */
+}};
+
+H5PL_type_t H5PLget_plugin_type(void) {return H5PL_TYPE_FILTER;}
+const void *H5PLget_plugin_info(void) {return H5Z_DYNLIB4;}
+
+/*-------------------------------------------------------------------------
+ * Function: H5Z_filter_dynlib4
+ *
+ * Purpose: A dynlib4 filter method that adds on and subtract from
+ * the original value with another value. It will be built
+ * as a shared library. plugin.c test will load and use
+ * this filter library. Designed to call a HDF function.
+ *
+ * Return: Success: Data chunk size
+ *
+ * Failure: 0
+ *
+ *-------------------------------------------------------------------------
+ */
+static size_t
+H5Z_filter_dynlib4(unsigned int flags, size_t cd_nelmts,
+ const unsigned int *cd_values, size_t nbytes,
+ size_t *buf_size, void **buf)
+{
+ int *int_ptr = (int *)*buf; /* Pointer to the data values */
+ size_t buf_left = *buf_size; /* Amount of data buffer left to process */
+ int add_on = 0;
+ unsigned ver_info[3];
+
+ /* Check for the library version */
+ if(H5get_libversion(&ver_info[0], &ver_info[1], &ver_info[2]) < 0) {
+ PUSH_ERR("dynlib4", H5E_CALLBACK, "H5get_libversion");
+ return(0);
+ }
+ /* Check for the correct number of parameters */
+ if(cd_nelmts == 0)
+ return(0);
+
+ /* Check that permanent parameters are set correctly */
+ if(cd_values[0] > 9)
+ return(0);
+
+ if(ver_info[0] != cd_values[1] || ver_info[1] != cd_values[2]) {
+ PUSH_ERR("dynlib4", H5E_CALLBACK, "H5get_libversion does not match");
+ return(0);
+ }
+
+ add_on = (int)cd_values[0];
+
+ if(flags & H5Z_FLAG_REVERSE) { /*read*/
+ /* Substract the "add on" value to all the data values */
+ while(buf_left > 0) {
+ *int_ptr++ -= add_on;
+ buf_left -= sizeof(int);
+ } /* end while */
+ } /* end if */
+ else { /*write*/
+ /* Add the "add on" value to all the data values */
+ while(buf_left > 0) {
+ *int_ptr++ += add_on;
+ buf_left -= sizeof(int);
+ } /* end while */
+ } /* end else */
+
+ return nbytes;
+} /* end H5Z_filter_dynlib4() */
+
diff --git a/tools/h5repack/h5repack.sh.in b/tools/test/h5repack/h5repack.sh.in
index c2f0459..4d3cae8 100644
--- a/tools/h5repack/h5repack.sh.in
+++ b/tools/test/h5repack/h5repack.sh.in
@@ -29,13 +29,13 @@ TESTNAME=h5repack
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5REPACK=h5repack # The tool name
+H5REPACK=../../src/h5repack/h5repack # The tool name
H5REPACK_BIN=`pwd`/$H5REPACK # The path of the tool binary
-H5DIFF=../h5diff/h5diff # The h5diff tool name
+H5DIFF=../../src/h5diff/h5diff # The h5diff tool name
H5DIFF_BIN=`pwd`/$H5DIFF # The path of the h5diff tool binary
-H5DUMP=../h5dump/h5dump # The h5dump tool name
+H5DUMP=../../src/h5dump/h5dump # The h5dump tool name
H5DUMP_BIN=`pwd`/$H5DUMP # The path of the h5dump tool binary
RM='rm -rf'
@@ -55,18 +55,18 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
-SRC_H5DIFF_TESTFILES="$SRC_TOOLS/h5diff/testfiles"
-SRC_H5COPY_TESTFILES="$SRC_TOOLS/h5copy/testfiles"
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
-SRC_H5JAM_TESTFILES="$SRC_TOOLS/h5jam/testfiles"
-SRC_H5STAT_TESTFILES="$SRC_TOOLS/h5stat/testfiles"
-SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/h5import/testfiles"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
TESTDIR=./testpack
test -d $TESTDIR || mkdir $TESTDIR
@@ -808,7 +808,7 @@ TOOLTEST_HELP() {
}
-# This is different from $srcdir/../../bin/output_filter.sh
+# This is different from $srcdir/../../../bin/output_filter.sh
STDOUT_FILTER() {
result_file=$1
tmp_file=/tmp/h5test_tmp_$$
diff --git a/tools/h5repack/h5repack_plugin.sh.in b/tools/test/h5repack/h5repack_plugin.sh.in
index a064db6..c7a9a6b 100644
--- a/tools/h5repack/h5repack_plugin.sh.in
+++ b/tools/test/h5repack/h5repack_plugin.sh.in
@@ -21,10 +21,10 @@ DEPRECATED_SYMBOLS="@DEPRECATED_SYMBOLS@"
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5REPACK=h5repack # The tool name
+H5REPACK=../../src/h5repack/h5repack # The tool name
H5REPACK_BIN=`pwd`/$H5REPACK # The path of the tool binary
-H5DUMP=../h5dump/h5dump # The h5dump tool name
+H5DUMP=../../src/h5dump/h5dump # The h5dump tool name
H5DUMP_BIN=`pwd`/$H5DUMP # The path of the h5dump tool binary
nerrors=0
@@ -34,6 +34,7 @@ exit_code=$EXIT_SUCCESS
TEST_NAME=ud_plugin
FROM_DIR=`pwd`/.libs
PLUGIN_LIB="$FROM_DIR/libdynlibadd.*"
+PLUGIN_LIB2="$FROM_DIR/libdynlibvers.*"
PLUGIN_LIBDIR=testdir3
RM='rm -rf'
@@ -44,10 +45,10 @@ LS='ls'
AWK='awk'
# source dirs
-SRC_TOOLS="$srcdir/.."
+SRC_TOOLS="$srcdir/../.."
# testfiles source dirs for tools
-SRC_H5REPACK_TESTFILES="$SRC_TOOLS/h5repack/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
TESTDIR=testplug
test -d $TESTDIR || mkdir $TESTDIR
@@ -65,6 +66,8 @@ LIST_HDF5_TEST_FILES="
$SRC_H5REPACK_TESTFILES/h5repack_layout.h5
$SRC_H5REPACK_TESTFILES/h5repack_layout.h5-plugin_test.ddl
$SRC_H5REPACK_TESTFILES/plugin_test.h5repack_layout.h5.tst
+$SRC_H5REPACK_TESTFILES/h5repack_layout.h5-plugin_version_test.ddl
+$SRC_H5REPACK_TESTFILES/plugin_version_test.h5repack_layout.h5.tst
"
#$SRC_H5REPACK_TESTFILES/h5repack_layout.UD.h5
#$SRC_H5REPACK_TESTFILES/h5repack_layout.UD.h5-plugin_none.ddl
@@ -90,6 +93,11 @@ if [ $? != 0 ]; then
echo "Failed to copy plugin library ($PLUGIN_LIB) for test."
exit $EXIT_FAILURE
fi
+$CP $PLUGIN_LIB2 $PLUGIN_LIBDIR
+if [ $? != 0 ]; then
+ echo "Failed to copy plugin library ($PLUGIN_LIB2) for test."
+ exit $EXIT_FAILURE
+fi
# setup plugin path
ENVCMD="env HDF5_PLUGIN_PATH=../${PLUGIN_LIBDIR}"
@@ -113,7 +121,7 @@ COPY_TESTFILES_TO_TESTDIR()
$CP -f $tstfile $TESTDIR
if [ $? -ne 0 ]; then
echo "Error: FAILED to copy $tstfile ."
-
+
# Comment out this to CREATE expected file
exit $EXIT_FAILURE
fi
@@ -157,7 +165,7 @@ VERIFY() {
MESSAGE "Verifying $*"
}
-# This is different from $srcdir/../../bin/output_filter.sh
+# This is different from $srcdir/../../../bin/output_filter.sh
STDOUT_FILTER() {
result_file=$1
tmp_file=/tmp/h5test_tmp_$$
@@ -168,11 +176,11 @@ STDOUT_FILTER() {
# cleanup
rm -f $tmp_file
}
-
+
# This runs h5repack comparing output with h5dump output
# from -pH option
#
-TOOLTEST_DUMP()
+TOOLTEST_DUMP()
{
echo $@
infile=$2
@@ -186,7 +194,7 @@ TOOLTEST_DUMP()
shift
shift
-
+
# Run test.
TESTING $H5REPACK $@
(
@@ -209,10 +217,10 @@ TOOLTEST_DUMP()
nerrors="`expr $nerrors + 1`"
test yes = "$verbose" && diff -c $expect1 $actual1 |sed 's/^/ /'
fi
- VERIFY h5dump output -pH $outfile
+ VERIFY h5dump output -pH $outfile
(
cd $TESTDIR
- $ENVCMD $H5DUMP_BIN -pH $outfile
+ $ENVCMD $H5DUMP_BIN -pH $outfile
) >$actual2 2>$actual2_err
RET=$?
cat $actual2_err >> $actual2
@@ -225,26 +233,29 @@ TOOLTEST_DUMP()
nerrors="`expr $nerrors + 1`"
test yes = "$verbose" && diff -c $expect2 $actual2 |sed 's/^/ /'
fi
-
+
fi
-
+
rm -f $actual1 $actual1_err $actual2 $actual2_err
rm -f $outfile
}
##############################################################################
-### T H E T E S T S
+### T H E T E S T S
##############################################################################
# prepare for test
COPY_TESTFILES_TO_TESTDIR
# Run the test
+arg="h5repack_layout.h5 -v -f UD=260,4,9,1,9,235"
+TOOLTEST_DUMP plugin_version_test $arg
+
arg="h5repack_layout.h5 -v -f UD=257,1,9"
-TOOLTEST_DUMP plugin_test $arg
+TOOLTEST_DUMP plugin_test $arg
#arg="h5repack_layout.UD.h5 -v -f NONE"
-#TOOLTEST_DUMP plugin_none $arg
+#TOOLTEST_DUMP plugin_none $arg
# print results
if test $nerrors -ne 0 ; then
diff --git a/tools/h5repack/h5repacktst.c b/tools/test/h5repack/h5repacktst.c
index 82b45fc..82b45fc 100644
--- a/tools/h5repack/h5repacktst.c
+++ b/tools/test/h5repack/h5repacktst.c
diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl b/tools/test/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
index fab9494..fab9494 100644
--- a/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
+++ b/tools/test/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl b/tools/test/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
index 51df9dd..51df9dd 100644
--- a/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
+++ b/tools/test/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
diff --git a/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl b/tools/test/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
index dcd172c..dcd172c 100644
--- a/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
+++ b/tools/test/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl b/tools/test/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
index 1e8927c..1e8927c 100644
--- a/tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
+++ b/tools/test/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl b/tools/test/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl
index c499b35..c499b35 100644
--- a/tools/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl
+++ b/tools/test/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl
diff --git a/tools/h5repack/testfiles/README b/tools/test/h5repack/testfiles/README
index 4096dee..4096dee 100644
--- a/tools/h5repack/testfiles/README
+++ b/tools/test/h5repack/testfiles/README
diff --git a/tools/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl b/tools/test/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl
index 75f54fa..75f54fa 100644
--- a/tools/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl
+++ b/tools/test/h5repack/testfiles/deflate_limit.h5repack_layout.h5.ddl
diff --git a/tools/h5repack/testfiles/h5repack-help.txt b/tools/test/h5repack/testfiles/h5repack-help.txt
index 049e27d..049e27d 100644
--- a/tools/h5repack/testfiles/h5repack-help.txt
+++ b/tools/test/h5repack/testfiles/h5repack-help.txt
diff --git a/tools/h5repack/testfiles/h5repack.info b/tools/test/h5repack/testfiles/h5repack.info
index 216948d..216948d 100644
--- a/tools/h5repack/testfiles/h5repack.info
+++ b/tools/test/h5repack/testfiles/h5repack.info
diff --git a/tools/h5repack/testfiles/h5repack_attr.h5 b/tools/test/h5repack/testfiles/h5repack_attr.h5
index 80df0be..80df0be 100644
--- a/tools/h5repack/testfiles/h5repack_attr.h5
+++ b/tools/test/h5repack/testfiles/h5repack_attr.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_attr_refs.h5 b/tools/test/h5repack/testfiles/h5repack_attr_refs.h5
index 1b0ca34..1b0ca34 100644
--- a/tools/h5repack/testfiles/h5repack_attr_refs.h5
+++ b/tools/test/h5repack/testfiles/h5repack_attr_refs.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_deflate.h5 b/tools/test/h5repack/testfiles/h5repack_deflate.h5
index 4988491..4988491 100644
--- a/tools/h5repack/testfiles/h5repack_deflate.h5
+++ b/tools/test/h5repack/testfiles/h5repack_deflate.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_early.h5 b/tools/test/h5repack/testfiles/h5repack_early.h5
index d9a7ece..d9a7ece 100644
--- a/tools/h5repack/testfiles/h5repack_early.h5
+++ b/tools/test/h5repack/testfiles/h5repack_early.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_ext.bin b/tools/test/h5repack/testfiles/h5repack_ext.bin
index f858094..f858094 100644
--- a/tools/h5repack/testfiles/h5repack_ext.bin
+++ b/tools/test/h5repack/testfiles/h5repack_ext.bin
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_ext.h5 b/tools/test/h5repack/testfiles/h5repack_ext.h5
index 8518b5b..8518b5b 100644
--- a/tools/h5repack/testfiles/h5repack_ext.h5
+++ b/tools/test/h5repack/testfiles/h5repack_ext.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_fill.h5 b/tools/test/h5repack/testfiles/h5repack_fill.h5
index ac40089..ac40089 100644
--- a/tools/h5repack/testfiles/h5repack_fill.h5
+++ b/tools/test/h5repack/testfiles/h5repack_fill.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_filters.h5 b/tools/test/h5repack/testfiles/h5repack_filters.h5
index eabade8..eabade8 100644
--- a/tools/h5repack/testfiles/h5repack_filters.h5
+++ b/tools/test/h5repack/testfiles/h5repack_filters.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst b/tools/test/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
index 36e65b9..36e65b9 100644
--- a/tools/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
+++ b/tools/test/h5repack/testfiles/h5repack_filters.h5-gzip_verbose_filters.tst
diff --git a/tools/h5repack/testfiles/h5repack_fletcher.h5 b/tools/test/h5repack/testfiles/h5repack_fletcher.h5
index 16ca4ef..16ca4ef 100644
--- a/tools/h5repack/testfiles/h5repack_fletcher.h5
+++ b/tools/test/h5repack/testfiles/h5repack_fletcher.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_hlink.h5 b/tools/test/h5repack/testfiles/h5repack_hlink.h5
index 80c0fcc..80c0fcc 100644
--- a/tools/h5repack/testfiles/h5repack_hlink.h5
+++ b/tools/test/h5repack/testfiles/h5repack_hlink.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_layout.UD.h5 b/tools/test/h5repack/testfiles/h5repack_layout.UD.h5
index caf2024..caf2024 100644
--- a/tools/h5repack/testfiles/h5repack_layout.UD.h5
+++ b/tools/test/h5repack/testfiles/h5repack_layout.UD.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl b/tools/test/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
index 66c4c69..66c4c69 100644
--- a/tools/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
+++ b/tools/test/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl
diff --git a/tools/h5repack/testfiles/h5repack_layout.h5 b/tools/test/h5repack/testfiles/h5repack_layout.h5
index 4e53766..4e53766 100644
--- a/tools/h5repack/testfiles/h5repack_layout.h5
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst b/tools/test/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
index 95cc4c6..95cc4c6 100644
--- a/tools/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5-dset2_chunk_20x10-errstk.tst
diff --git a/tools/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl
index a8b4562..a8b4562 100644
--- a/tools/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl
diff --git a/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_version_test.ddl b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_version_test.ddl
new file mode 100644
index 0000000..3d09e14
--- /dev/null
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_version_test.ddl
@@ -0,0 +1,158 @@
+HDF5 "out-plugin_version_test.h5repack_layout.h5" {
+GROUP "/" {
+ DATASET "dset1" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset2" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset3" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset4" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset_chunk" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 20, 10 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset_compact" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+ DATASET "dset_contiguous" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 40, 20 ) / ( 40, 20 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 40, 20 )
+ SIZE 3200 (1.000:1 COMPRESSION)
+ }
+ FILTERS {
+ USER_DEFINED_FILTER {
+ FILTER_ID 260
+ COMMENT dynlib4
+ PARAMS { 9 1 9 235 }
+ }
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE H5D_FILL_VALUE_DEFAULT
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ }
+}
+}
diff --git a/tools/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst
index 0993d5b..0993d5b 100644
--- a/tools/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5-plugin_zero.tst
diff --git a/tools/h5repack/testfiles/h5repack_layout.h5.ddl b/tools/test/h5repack/testfiles/h5repack_layout.h5.ddl
index 00c74f4..00c74f4 100644
--- a/tools/h5repack/testfiles/h5repack_layout.h5.ddl
+++ b/tools/test/h5repack/testfiles/h5repack_layout.h5.ddl
diff --git a/tools/h5repack/testfiles/h5repack_layout2.h5 b/tools/test/h5repack/testfiles/h5repack_layout2.h5
index f6821e5..f6821e5 100644
--- a/tools/h5repack/testfiles/h5repack_layout2.h5
+++ b/tools/test/h5repack/testfiles/h5repack_layout2.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_layout3.h5 b/tools/test/h5repack/testfiles/h5repack_layout3.h5
index 6d2de41..6d2de41 100644
--- a/tools/h5repack/testfiles/h5repack_layout3.h5
+++ b/tools/test/h5repack/testfiles/h5repack_layout3.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_layouto.h5 b/tools/test/h5repack/testfiles/h5repack_layouto.h5
index a038e68..a038e68 100644
--- a/tools/h5repack/testfiles/h5repack_layouto.h5
+++ b/tools/test/h5repack/testfiles/h5repack_layouto.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_named_dtypes.h5 b/tools/test/h5repack/testfiles/h5repack_named_dtypes.h5
index 85c1352..85c1352 100644
--- a/tools/h5repack/testfiles/h5repack_named_dtypes.h5
+++ b/tools/test/h5repack/testfiles/h5repack_named_dtypes.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_nbit.h5 b/tools/test/h5repack/testfiles/h5repack_nbit.h5
index ac71bee..ac71bee 100644
--- a/tools/h5repack/testfiles/h5repack_nbit.h5
+++ b/tools/test/h5repack/testfiles/h5repack_nbit.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_nested_8bit_enum.h5 b/tools/test/h5repack/testfiles/h5repack_nested_8bit_enum.h5
index f1bd8e9..f1bd8e9 100644
--- a/tools/h5repack/testfiles/h5repack_nested_8bit_enum.h5
+++ b/tools/test/h5repack/testfiles/h5repack_nested_8bit_enum.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5 b/tools/test/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5
index 2e66da2..2e66da2 100644
--- a/tools/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5
+++ b/tools/test/h5repack/testfiles/h5repack_nested_8bit_enum_deflated.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_objs.h5 b/tools/test/h5repack/testfiles/h5repack_objs.h5
index 284b0ac..284b0ac 100644
--- a/tools/h5repack/testfiles/h5repack_objs.h5
+++ b/tools/test/h5repack/testfiles/h5repack_objs.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_refs.h5 b/tools/test/h5repack/testfiles/h5repack_refs.h5
index 2a1ec9b..2a1ec9b 100644
--- a/tools/h5repack/testfiles/h5repack_refs.h5
+++ b/tools/test/h5repack/testfiles/h5repack_refs.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_shuffle.h5 b/tools/test/h5repack/testfiles/h5repack_shuffle.h5
index c14e2cb..c14e2cb 100644
--- a/tools/h5repack/testfiles/h5repack_shuffle.h5
+++ b/tools/test/h5repack/testfiles/h5repack_shuffle.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_soffset.h5 b/tools/test/h5repack/testfiles/h5repack_soffset.h5
index 2acd867..2acd867 100644
--- a/tools/h5repack/testfiles/h5repack_soffset.h5
+++ b/tools/test/h5repack/testfiles/h5repack_soffset.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/h5repack_szip.h5 b/tools/test/h5repack/testfiles/h5repack_szip.h5
index b16d169..b16d169 100644
--- a/tools/h5repack/testfiles/h5repack_szip.h5
+++ b/tools/test/h5repack/testfiles/h5repack_szip.h5
Binary files differ
diff --git a/tools/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst b/tools/test/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst
index 4fb6906..4fb6906 100644
--- a/tools/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst
+++ b/tools/test/h5repack/testfiles/plugin_none.h5repack_layout.UD.h5.tst
diff --git a/tools/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst b/tools/test/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst
index 7f9bd6e..7f9bd6e 100644
--- a/tools/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst
+++ b/tools/test/h5repack/testfiles/plugin_test.h5repack_layout.h5.tst
diff --git a/tools/test/h5repack/testfiles/plugin_version_test.h5repack_layout.h5.tst b/tools/test/h5repack/testfiles/plugin_version_test.h5repack_layout.h5.tst
new file mode 100644
index 0000000..1a496c6
--- /dev/null
+++ b/tools/test/h5repack/testfiles/plugin_version_test.h5repack_layout.h5.tst
@@ -0,0 +1,14 @@
+Objects to modify layout are...
+Objects to apply filter are...
+ User Defined 260
+-----------------------------------------
+ Type Filter (Compression) Name
+-----------------------------------------
+ group /
+ dset UD (1.000:1) /dset1
+ dset UD (1.000:1) /dset2
+ dset UD (1.000:1) /dset3
+ dset UD (1.000:1) /dset4
+ dset UD (1.000:1) /dset_chunk
+ dset UD (1.000:1) /dset_compact
+ dset UD (1.000:1) /dset_contiguous
diff --git a/tools/h5repack/testfiles/ublock.bin b/tools/test/h5repack/testfiles/ublock.bin
index b2d03f3..b2d03f3 100644
--- a/tools/h5repack/testfiles/ublock.bin
+++ b/tools/test/h5repack/testfiles/ublock.bin
diff --git a/tools/h5repack/testh5repack_detect_szip.c b/tools/test/h5repack/testh5repack_detect_szip.c
index e91b2f7..e91b2f7 100644
--- a/tools/h5repack/testh5repack_detect_szip.c
+++ b/tools/test/h5repack/testh5repack_detect_szip.c
diff --git a/tools/test/h5stat/CMakeLists.txt b/tools/test/h5stat/CMakeLists.txt
new file mode 100644
index 0000000..98cfed7
--- /dev/null
+++ b/tools/test/h5stat/CMakeLists.txt
@@ -0,0 +1,22 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_H5STAT)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the h5stat test executables
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5stat_gentest ${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/h5stat_gentest.c)
+ TARGET_NAMING (h5stat_gentest STATIC)
+ TARGET_C_PROPERTIES (h5stat_gentest STATIC " " " ")
+ target_link_libraries (h5stat_gentest ${HDF5_LIB_TARGET})
+ set_target_properties (h5stat_gentest PROPERTIES FOLDER generator/tools)
+
+ #add_test (NAME h5stat_gentest COMMAND $<TARGET_FILE:h5stat_gentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
diff --git a/tools/h5stat/CMakeTests.cmake b/tools/test/h5stat/CMakeTests.cmake
index fea358a..201e978 100644
--- a/tools/h5stat/CMakeTests.cmake
+++ b/tools/test/h5stat/CMakeTests.cmake
@@ -49,11 +49,11 @@
)
foreach (ddl_file ${HDF5_REFERENCE_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5STAT_SOURCE_DIR}/testfiles/${ddl_file}" "${PROJECT_BINARY_DIR}/${ddl_file}" "h5stat_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/testfiles/${ddl_file}" "${PROJECT_BINARY_DIR}/${ddl_file}" "h5stat_files")
endforeach (ddl_file ${HDF5_REFERENCE_FILES})
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_H5STAT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5stat_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5stat_files")
endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
add_custom_target(h5stat_files ALL COMMENT "Copying files needed by h5stat tests" DEPENDS ${h5stat_files_list})
diff --git a/tools/h5stat/Makefile.am b/tools/test/h5stat/Makefile.am
index 2a5921f..630e896 100644
--- a/tools/h5stat/Makefile.am
+++ b/tools/test/h5stat/Makefile.am
@@ -29,14 +29,7 @@ TEST_SCRIPT=testh5stat.sh
check_PROGRAMS=$(TEST_PROG)
check_SCRIPTS=$(TEST_SCRIPT)
-SCRIPT_DEPEND=h5stat$(EXEEXT)
-
-# These are our main targets, the tools
-bin_PROGRAMS=h5stat
-bin_SCRIPTS=
-
-# Add h5stat specific linker flags here
-h5stat_LDFLAGS = $(LT_STATIC_EXEC) $(AM_LDFLAGS)
+SCRIPT_DEPEND=../../src/h5stat/h5stat$(EXEEXT)
# Tell automake to clean h5redeploy script
CLEANFILES=
diff --git a/tools/h5stat/h5stat_gentest.c b/tools/test/h5stat/h5stat_gentest.c
index b1ab168..b1ab168 100644
--- a/tools/h5stat/h5stat_gentest.c
+++ b/tools/test/h5stat/h5stat_gentest.c
diff --git a/tools/h5stat/testfiles/h5stat_dims1.ddl b/tools/test/h5stat/testfiles/h5stat_dims1.ddl
index 07b2900..07b2900 100644
--- a/tools/h5stat/testfiles/h5stat_dims1.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_dims1.ddl
diff --git a/tools/h5stat/testfiles/h5stat_dims2.ddl b/tools/test/h5stat/testfiles/h5stat_dims2.ddl
index dbccd05..dbccd05 100644
--- a/tools/h5stat/testfiles/h5stat_dims2.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_dims2.ddl
diff --git a/tools/h5stat/testfiles/h5stat_err1_dims.ddl b/tools/test/h5stat/testfiles/h5stat_err1_dims.ddl
index 86d375b..86d375b 100644
--- a/tools/h5stat/testfiles/h5stat_err1_dims.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_err1_dims.ddl
diff --git a/tools/h5stat/testfiles/h5stat_err1_links.ddl b/tools/test/h5stat/testfiles/h5stat_err1_links.ddl
index d43207c..d43207c 100644
--- a/tools/h5stat/testfiles/h5stat_err1_links.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_err1_links.ddl
diff --git a/tools/h5stat/testfiles/h5stat_err1_numattrs.ddl b/tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl
index 01b6c18..01b6c18 100644
--- a/tools/h5stat/testfiles/h5stat_err1_numattrs.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl
diff --git a/tools/h5stat/testfiles/h5stat_err2_numattrs.ddl b/tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl
index 01b6c18..01b6c18 100644
--- a/tools/h5stat/testfiles/h5stat_err2_numattrs.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-F.ddl b/tools/test/h5stat/testfiles/h5stat_filters-F.ddl
index d44445b..d44445b 100644
--- a/tools/h5stat/testfiles/h5stat_filters-F.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-F.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-UD.ddl b/tools/test/h5stat/testfiles/h5stat_filters-UD.ddl
index 4efafd1..4efafd1 100644
--- a/tools/h5stat/testfiles/h5stat_filters-UD.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-UD.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-UT.ddl b/tools/test/h5stat/testfiles/h5stat_filters-UT.ddl
index d8de31f..d8de31f 100644
--- a/tools/h5stat/testfiles/h5stat_filters-UT.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-UT.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-d.ddl b/tools/test/h5stat/testfiles/h5stat_filters-d.ddl
index 6e6dd61..6e6dd61 100644
--- a/tools/h5stat/testfiles/h5stat_filters-d.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-d.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-dT.ddl b/tools/test/h5stat/testfiles/h5stat_filters-dT.ddl
index b14ca9f..b14ca9f 100644
--- a/tools/h5stat/testfiles/h5stat_filters-dT.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-dT.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-file.ddl b/tools/test/h5stat/testfiles/h5stat_filters-file.ddl
index 5f7eff9..5f7eff9 100644
--- a/tools/h5stat/testfiles/h5stat_filters-file.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-file.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters-g.ddl b/tools/test/h5stat/testfiles/h5stat_filters-g.ddl
index 290c82a..290c82a 100644
--- a/tools/h5stat/testfiles/h5stat_filters-g.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters-g.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters.ddl b/tools/test/h5stat/testfiles/h5stat_filters.ddl
index 1a4fd72..1a4fd72 100644
--- a/tools/h5stat/testfiles/h5stat_filters.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_filters.ddl
diff --git a/tools/h5stat/testfiles/h5stat_filters.h5 b/tools/test/h5stat/testfiles/h5stat_filters.h5
index 5b5f4bb..5b5f4bb 100644
--- a/tools/h5stat/testfiles/h5stat_filters.h5
+++ b/tools/test/h5stat/testfiles/h5stat_filters.h5
Binary files differ
diff --git a/tools/h5stat/testfiles/h5stat_help1.ddl b/tools/test/h5stat/testfiles/h5stat_help1.ddl
index d2a8715..d2a8715 100644
--- a/tools/h5stat/testfiles/h5stat_help1.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_help1.ddl
diff --git a/tools/h5stat/testfiles/h5stat_help2.ddl b/tools/test/h5stat/testfiles/h5stat_help2.ddl
index d2a8715..d2a8715 100644
--- a/tools/h5stat/testfiles/h5stat_help2.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_help2.ddl
diff --git a/tools/h5stat/testfiles/h5stat_idx.ddl b/tools/test/h5stat/testfiles/h5stat_idx.ddl
index b26f1a4..b26f1a4 100644
--- a/tools/h5stat/testfiles/h5stat_idx.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_idx.ddl
diff --git a/tools/h5stat/testfiles/h5stat_idx.h5 b/tools/test/h5stat/testfiles/h5stat_idx.h5
index 303d1f8..303d1f8 100644
--- a/tools/h5stat/testfiles/h5stat_idx.h5
+++ b/tools/test/h5stat/testfiles/h5stat_idx.h5
Binary files differ
diff --git a/tools/h5stat/testfiles/h5stat_links1.ddl b/tools/test/h5stat/testfiles/h5stat_links1.ddl
index c650f15..c650f15 100644
--- a/tools/h5stat/testfiles/h5stat_links1.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_links1.ddl
diff --git a/tools/h5stat/testfiles/h5stat_links2.ddl b/tools/test/h5stat/testfiles/h5stat_links2.ddl
index 4622884..4622884 100644
--- a/tools/h5stat/testfiles/h5stat_links2.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_links2.ddl
diff --git a/tools/h5stat/testfiles/h5stat_links3.ddl b/tools/test/h5stat/testfiles/h5stat_links3.ddl
index f80471a..f80471a 100644
--- a/tools/h5stat/testfiles/h5stat_links3.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_links3.ddl
diff --git a/tools/h5stat/testfiles/h5stat_links4.ddl b/tools/test/h5stat/testfiles/h5stat_links4.ddl
index 94feffd..94feffd 100644
--- a/tools/h5stat/testfiles/h5stat_links4.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_links4.ddl
diff --git a/tools/h5stat/testfiles/h5stat_links5.ddl b/tools/test/h5stat/testfiles/h5stat_links5.ddl
index 6f33bed..6f33bed 100644
--- a/tools/h5stat/testfiles/h5stat_links5.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_links5.ddl
diff --git a/tools/h5stat/testfiles/h5stat_newgrat-UA.ddl b/tools/test/h5stat/testfiles/h5stat_newgrat-UA.ddl
index a5ee7e8..a5ee7e8 100644
--- a/tools/h5stat/testfiles/h5stat_newgrat-UA.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_newgrat-UA.ddl
diff --git a/tools/h5stat/testfiles/h5stat_newgrat-UG.ddl b/tools/test/h5stat/testfiles/h5stat_newgrat-UG.ddl
index 41195ac..41195ac 100644
--- a/tools/h5stat/testfiles/h5stat_newgrat-UG.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_newgrat-UG.ddl
diff --git a/tools/h5stat/testfiles/h5stat_newgrat.ddl b/tools/test/h5stat/testfiles/h5stat_newgrat.ddl
index e305f58..e305f58 100644
--- a/tools/h5stat/testfiles/h5stat_newgrat.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_newgrat.ddl
diff --git a/tools/h5stat/testfiles/h5stat_newgrat.h5 b/tools/test/h5stat/testfiles/h5stat_newgrat.h5
index c919b71..c919b71 100644
--- a/tools/h5stat/testfiles/h5stat_newgrat.h5
+++ b/tools/test/h5stat/testfiles/h5stat_newgrat.h5
Binary files differ
diff --git a/tools/h5stat/testfiles/h5stat_nofile.ddl b/tools/test/h5stat/testfiles/h5stat_nofile.ddl
index d8a8b2c..d8a8b2c 100644
--- a/tools/h5stat/testfiles/h5stat_nofile.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_nofile.ddl
diff --git a/tools/h5stat/testfiles/h5stat_notexist.ddl b/tools/test/h5stat/testfiles/h5stat_notexist.ddl
index cc25e43..cc25e43 100644
--- a/tools/h5stat/testfiles/h5stat_notexist.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_notexist.ddl
diff --git a/tools/h5stat/testfiles/h5stat_numattrs1.ddl b/tools/test/h5stat/testfiles/h5stat_numattrs1.ddl
index fb5568d..fb5568d 100644
--- a/tools/h5stat/testfiles/h5stat_numattrs1.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_numattrs1.ddl
diff --git a/tools/h5stat/testfiles/h5stat_numattrs2.ddl b/tools/test/h5stat/testfiles/h5stat_numattrs2.ddl
index ccb23c1..ccb23c1 100644
--- a/tools/h5stat/testfiles/h5stat_numattrs2.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_numattrs2.ddl
diff --git a/tools/h5stat/testfiles/h5stat_numattrs3.ddl b/tools/test/h5stat/testfiles/h5stat_numattrs3.ddl
index de8d6a3..de8d6a3 100644
--- a/tools/h5stat/testfiles/h5stat_numattrs3.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_numattrs3.ddl
diff --git a/tools/h5stat/testfiles/h5stat_numattrs4.ddl b/tools/test/h5stat/testfiles/h5stat_numattrs4.ddl
index 2b0122a..2b0122a 100644
--- a/tools/h5stat/testfiles/h5stat_numattrs4.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_numattrs4.ddl
diff --git a/tools/h5stat/testfiles/h5stat_threshold.h5 b/tools/test/h5stat/testfiles/h5stat_threshold.h5
index 9f7c8c8..9f7c8c8 100644
--- a/tools/h5stat/testfiles/h5stat_threshold.h5
+++ b/tools/test/h5stat/testfiles/h5stat_threshold.h5
Binary files differ
diff --git a/tools/h5stat/testfiles/h5stat_tsohm.ddl b/tools/test/h5stat/testfiles/h5stat_tsohm.ddl
index 4cf33fc..4cf33fc 100644
--- a/tools/h5stat/testfiles/h5stat_tsohm.ddl
+++ b/tools/test/h5stat/testfiles/h5stat_tsohm.ddl
diff --git a/tools/h5stat/testfiles/h5stat_tsohm.h5 b/tools/test/h5stat/testfiles/h5stat_tsohm.h5
index e6c89f6..e6c89f6 100644
--- a/tools/h5stat/testfiles/h5stat_tsohm.h5
+++ b/tools/test/h5stat/testfiles/h5stat_tsohm.h5
Binary files differ
diff --git a/tools/test/h5stat/testh5stat.sh.in b/tools/test/h5stat/testh5stat.sh.in
new file mode 100644
index 0000000..e94f9bd
--- /dev/null
+++ b/tools/test/h5stat/testh5stat.sh.in
@@ -0,0 +1,318 @@
+#! /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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
+# access to either file, you may request a copy from help@hdfgroup.org.
+#
+# Tests for the h5stat tool
+#
+# Modifcations:
+# Vailin Choi; July 2013
+# Add tests for -l, -m, -a options
+#
+
+srcdir=@srcdir@
+
+# Determine which filters are available
+USE_FILTER_SZIP="@USE_FILTER_SZIP@"
+USE_FILTER_DEFLATE="@USE_FILTER_DEFLATE@"
+
+TESTNAME=h5stat
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+
+STAT=../../src/h5stat/h5stat # The tool name
+STAT_BIN=`pwd`/$STAT # The path of the tool binary
+
+RM='rm -rf'
+CMP='cmp -s'
+DIFF='diff -c'
+CP='cp'
+DIRNAME='dirname'
+LS='ls'
+AWK='awk'
+
+nerrors=0
+verbose=yes
+
+# source dirs
+SRC_TOOLS="$srcdir/../.."
+SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
+
+# testfiles source dirs for tools
+SRC_H5LS_TESTFILES="$SRC_TOOLS_TESTFILES"
+SRC_H5DUMP_TESTFILES="$SRC_TOOLS_TESTFILES"
+SRC_H5DIFF_TESTFILES="$SRC_TOOLS/test/h5diff/testfiles"
+SRC_H5COPY_TESTFILES="$SRC_TOOLS/test/h5copy/testfiles"
+SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
+SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
+SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
+SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
+
+TESTDIR=./testfiles
+test -d $TESTDIR || mkdir $TESTDIR
+
+######################################################################
+# test files
+# --------------------------------------------------------------------
+# All the test files copy from source directory to test directory
+# NOTE: Keep this framework to add/remove test files.
+# Any test files from other tools can be used in this framework.
+# This list are also used for checking exist.
+# Comment '#' without space can be used.
+# --------------------------------------------------------------------
+LIST_HDF5_TEST_FILES="
+$SRC_H5STAT_TESTFILES/h5stat_filters.h5
+$SRC_H5STAT_TESTFILES/h5stat_tsohm.h5
+$SRC_H5STAT_TESTFILES/h5stat_newgrat.h5
+$SRC_H5STAT_TESTFILES/h5stat_idx.h5
+$SRC_H5STAT_TESTFILES/h5stat_threshold.h5
+"
+
+LIST_OTHER_TEST_FILES="
+$SRC_H5STAT_TESTFILES/h5stat_help1.ddl
+$SRC_H5STAT_TESTFILES/h5stat_help2.ddl
+$SRC_H5STAT_TESTFILES/h5stat_notexist.ddl
+$SRC_H5STAT_TESTFILES/h5stat_nofile.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-file.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-F.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-d.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-g.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-dT.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-UD.ddl
+$SRC_H5STAT_TESTFILES/h5stat_filters-UT.ddl
+$SRC_H5STAT_TESTFILES/h5stat_tsohm.ddl
+$SRC_H5STAT_TESTFILES/h5stat_newgrat.ddl
+$SRC_H5STAT_TESTFILES/h5stat_newgrat-UG.ddl
+$SRC_H5STAT_TESTFILES/h5stat_newgrat-UA.ddl
+$SRC_H5STAT_TESTFILES/h5stat_idx.ddl
+$SRC_H5STAT_TESTFILES/h5stat_err1_links.ddl
+$SRC_H5STAT_TESTFILES/h5stat_links1.ddl
+$SRC_H5STAT_TESTFILES/h5stat_links2.ddl
+$SRC_H5STAT_TESTFILES/h5stat_links3.ddl
+$SRC_H5STAT_TESTFILES/h5stat_links4.ddl
+$SRC_H5STAT_TESTFILES/h5stat_links5.ddl
+$SRC_H5STAT_TESTFILES/h5stat_err1_dims.ddl
+$SRC_H5STAT_TESTFILES/h5stat_dims1.ddl
+$SRC_H5STAT_TESTFILES/h5stat_dims2.ddl
+$SRC_H5STAT_TESTFILES/h5stat_err1_numattrs.ddl
+$SRC_H5STAT_TESTFILES/h5stat_err2_numattrs.ddl
+$SRC_H5STAT_TESTFILES/h5stat_numattrs1.ddl
+$SRC_H5STAT_TESTFILES/h5stat_numattrs2.ddl
+$SRC_H5STAT_TESTFILES/h5stat_numattrs3.ddl
+$SRC_H5STAT_TESTFILES/h5stat_numattrs4.ddl
+"
+
+#
+# copy test files and expected output files from source dirs to test dir
+#
+COPY_TESTFILES="$LIST_HDF5_TEST_FILES $LIST_OTHER_TEST_FILES"
+
+COPY_TESTFILES_TO_TESTDIR()
+{
+ # copy test files. Used -f to make sure get a new copy
+ for tstfile in $COPY_TESTFILES
+ do
+ # ignore '#' comment
+ echo $tstfile | tr -d ' ' | grep '^#' > /dev/null
+ RET=$?
+ if [ $RET -eq 1 ]; then
+ # skip cp if srcdir is same as destdir
+ # this occurs when build/test performed in source dir and
+ # make cp fail
+ SDIR=`$DIRNAME $tstfile`
+ INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'`
+ INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'`
+ if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then
+ $CP -f $tstfile $TESTDIR
+ if [ $? -ne 0 ]; then
+ echo "Error: FAILED to copy $tstfile ."
+
+ # Comment out this to CREATE expected file
+ exit $EXIT_FAILURE
+ fi
+ fi
+ fi
+ done
+}
+
+CLEAN_TESTFILES_AND_TESTDIR()
+{
+ # skip rm if srcdir is same as destdir
+ # this occurs when build/test performed in source dir and
+ # make cp fail
+ SDIR=$SRC_H5STAT_TESTFILES
+ INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'`
+ INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'`
+ if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then
+ $RM $TESTDIR
+ fi
+}
+
+# Print a line-line message left justified in a field of 70 characters
+# beginning with the word "Testing".
+#
+TESTING() {
+ SPACES=" "
+ echo "Testing $* $SPACES" | cut -c1-70 | tr -d '\012'
+}
+
+# Source in the output filter function definitions.
+. $srcdir/../../../bin/output_filter.sh
+
+# Run a test and print PASS or *FAIL*. If a test fails then increment
+# the `nerrors' global variable and (if $verbose is set) display the
+# difference between the actual output and the expected output. The
+# expected output is given as the first argument to this function and
+# the actual output file is calculated by replacing the `.ddl' with
+# `.out'. The actual output is not removed if $HDF5_NOCLEANUP has a
+# non-zero value.
+#
+TOOLTEST() {
+ expect="$TESTDIR/$1"
+ actual="$TESTDIR/`basename $1 .ddl`.out"
+ actual_err="$TESTDIR/`basename $1 .ddl`.err"
+ actual_sav=${actual}-sav
+ actual_err_sav=${actual_err}-sav
+ shift
+
+ # Run test.
+ TESTING $STAT $@
+ (
+ cd $TESTDIR
+ $RUNSERIAL $STAT_BIN $@
+ ) >$actual 2>$actual_err
+
+ # save actual and actual_err in case they are needed later.
+ cp $actual $actual_sav
+ STDOUT_FILTER $actual
+ cp $actual_err $actual_err_sav
+ STDERR_FILTER $actual_err
+ cat $actual_err >> $actual
+
+ if [ ! -f $expect ]; then
+ # Create the expect file if it doesn't yet exist.
+ echo " CREATED"
+ cp $actual $expect
+ elif $CMP $expect $actual; then
+ echo " PASSED"
+ else
+ echo "*FAILED*"
+ echo " Expected result (*.ddl) differs from actual result (*.out)"
+ nerrors="`expr $nerrors + 1`"
+ test yes = "$verbose" && $DIFF $expect $actual |sed 's/^/ /'
+ fi
+
+ # Clean up output file
+ if test -z "$HDF5_NOCLEANUP"; then
+ rm -f $actual $actual_err $actual_sav $actual_err_sav
+ fi
+}
+
+
+# Print a "SKIP" message
+SKIP() {
+ TESTING $STAT $@
+ echo " -SKIP-"
+}
+
+
+
+##############################################################################
+##############################################################################
+### T H E T E S T S ###
+##############################################################################
+##############################################################################
+# prepare for test
+COPY_TESTFILES_TO_TESTDIR
+
+# Test for help flag
+TOOLTEST h5stat_help1.ddl -h
+TOOLTEST h5stat_help2.ddl --help
+# Test when h5stat a file that does not exist
+TOOLTEST h5stat_notexist.ddl notexist.h5
+TOOLTEST h5stat_nofile.ddl ''
+
+# Test file with groups, compressed datasets, user-applied fileters, etc.
+# h5stat_filters.h5 is a copy of ../../testfiles/tfilters.h5 as of release 1.8.0-alpha4
+TOOLTEST h5stat_filters.ddl h5stat_filters.h5
+TOOLTEST h5stat_filters-file.ddl -f h5stat_filters.h5
+TOOLTEST h5stat_filters-F.ddl -F h5stat_filters.h5
+TOOLTEST h5stat_filters-d.ddl -d h5stat_filters.h5
+TOOLTEST h5stat_filters-g.ddl -g h5stat_filters.h5
+TOOLTEST h5stat_filters-dT.ddl -dT h5stat_filters.h5
+TOOLTEST h5stat_filters-UD.ddl -D h5stat_filters.h5
+TOOLTEST h5stat_filters-UT.ddl -T h5stat_filters.h5
+#
+# h5stat_tsohm.h5 is a copy of ../../../test/tsohm.h5 generated by tsohm.c
+# as of release 1.8.7-snap0 (on a 64-bit machine)
+TOOLTEST h5stat_tsohm.ddl h5stat_tsohm.h5
+# h5stat_newgrat.h5 is generated by h5stat_gentest.c
+TOOLTEST h5stat_newgrat.ddl h5stat_newgrat.h5
+TOOLTEST h5stat_newgrat-UG.ddl -G h5stat_newgrat.h5
+TOOLTEST h5stat_newgrat-UA.ddl -A h5stat_newgrat.h5
+# h5stat_idx.h5 is generated by h5stat_gentest.c
+TOOLTEST h5stat_idx.ddl h5stat_idx.h5
+#
+# Tests for -l (--links) option on h5stat_threshold.h5:
+# -l 0 (incorrect threshold value)
+# -g -l 8
+# --links=8
+# --links=20 -g
+TOOLTEST h5stat_err1_links.ddl -l 0 h5stat_threshold.h5
+TOOLTEST h5stat_links1.ddl -g -l 8 h5stat_threshold.h5
+TOOLTEST h5stat_links2.ddl --links=8 h5stat_threshold.h5
+TOOLTEST h5stat_links3.ddl --links=20 -g h5stat_threshold.h5
+#
+# Tests for -l (--links) option on h5stat_newgrat.h5:
+# -g
+# -g -l 40000
+TOOLTEST h5stat_links4.ddl -g h5stat_newgrat.h5
+TOOLTEST h5stat_links5.ddl -g -l 40000 h5stat_newgrat.h5
+#
+# Tests for -m (--dims) option on h5stat_threshold.h5
+# -d --dims=-1 (incorrect threshold value)
+# -gd -m 5
+# -d --di=15
+TOOLTEST h5stat_err1_dims.ddl -d --dims=-1 h5stat_threshold.h5
+TOOLTEST h5stat_dims1.ddl -gd -m 5 h5stat_threshold.h5
+TOOLTEST h5stat_dims2.ddl -d --di=15 h5stat_threshold.h5
+#
+# Tests for -a option on h5stat_threshold.h5
+# -a -2 (incorrect threshold value)
+# --numattrs (without threshold value)
+# -AS -a 10
+# -a 1
+# -A --numattrs=25
+TOOLTEST h5stat_err1_numattrs.ddl -a -2 h5stat_threshold.h5
+TOOLTEST h5stat_err2_numattrs.ddl --numattrs h5stat_threshold.h5
+TOOLTEST h5stat_numattrs1.ddl -AS -a 10 h5stat_threshold.h5
+TOOLTEST h5stat_numattrs2.ddl -a 1 h5stat_threshold.h5
+TOOLTEST h5stat_numattrs3.ddl -A --numattrs=25 h5stat_threshold.h5
+#
+# Tests for -a option on h5stat_newgrat.h5
+# -A -a 100
+TOOLTEST h5stat_numattrs4.ddl -A -a 100 h5stat_newgrat.h5
+#
+
+# Clean up temporary files/directories
+CLEAN_TESTFILES_AND_TESTDIR
+
+if test $nerrors -eq 0 ; then
+ echo "All $TESTNAME tests passed."
+ exit $EXIT_SUCCESS
+else
+ echo "$TESTNAME tests failed with $nerrors errors."
+ exit $EXIT_FAILURE
+fi
+
diff --git a/tools/test/misc/CMakeLists.txt b/tools/test/misc/CMakeLists.txt
new file mode 100644
index 0000000..db68eb1
--- /dev/null
+++ b/tools/test/misc/CMakeLists.txt
@@ -0,0 +1,30 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_TEST_MISC)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+ # --------------------------------------------------------------------
+ # Add the misc test executables
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (h5repart_gentest ${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/h5repart_gentest.c)
+ TARGET_NAMING (h5repart_gentest STATIC)
+ TARGET_C_PROPERTIES (h5repart_gentest STATIC " " " ")
+ target_link_libraries (h5repart_gentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5repart_gentest PROPERTIES FOLDER generator/tools)
+ #add_test (NAME h5repart_gentest COMMAND $<TARGET_FILE:h5repart_gentest>)
+
+ add_subdirectory (${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/vds)
+
+ endif (HDF5_BUILD_GENERATORS)
+
+ add_executable (h5repart_test ${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/repart_test.c)
+ TARGET_NAMING (h5repart_test STATIC)
+ TARGET_C_PROPERTIES (h5repart_test STATIC " " " ")
+ target_link_libraries (h5repart_test ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (h5repart_test PROPERTIES FOLDER tools)
+
+ include (CMakeTests.cmake)
diff --git a/tools/misc/CMakeTests.cmake b/tools/test/misc/CMakeTests.cmake
index bc2760b..c041b21 100644
--- a/tools/misc/CMakeTests.cmake
+++ b/tools/test/misc/CMakeTests.cmake
@@ -30,7 +30,7 @@
)
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5repart_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5repart_files")
endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
add_custom_target(h5repart_files ALL COMMENT "Copying files needed by h5repart tests" DEPENDS ${h5repart_files_list})
@@ -55,13 +55,13 @@
file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
foreach (h5_mkgrp_file ${HDF5_MKGRP_TEST_FILES})
- HDFTEST_COPY_FILE("${HDF5_TOOLS_SRC_DIR}/testfiles/${h5_mkgrp_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_mkgrp_file}" "h5mkgrp_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_DIR}/testfiles/${h5_mkgrp_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_mkgrp_file}" "h5mkgrp_files")
endforeach (h5_mkgrp_file ${HDF5_MKGRP_TEST_FILES})
- HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/h5mkgrp_help.txt" "${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_help.txt" "h5mkgrp_files")
+ HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/testfiles/h5mkgrp_help.txt" "${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_help.txt" "h5mkgrp_files")
add_custom_target(h5mkgrp_files ALL COMMENT "Copying files needed by h5mkgrp tests" DEPENDS ${h5mkgrp_files_list})
- configure_file (${PROJECT_SOURCE_DIR}/testfiles/h5mkgrp_version.txt.in ${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_version.txt @ONLY)
+ configure_file (${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/testfiles/h5mkgrp_version.txt.in ${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_version.txt @ONLY)
##############################################################################
##############################################################################
diff --git a/tools/test/misc/Makefile.am b/tools/test/misc/Makefile.am
new file mode 100644
index 0000000..4168e8c
--- /dev/null
+++ b/tools/test/misc/Makefile.am
@@ -0,0 +1,47 @@
+#
+# 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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. 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
+
+SUBDIRS=vds
+
+# Include src directory
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+
+#test scripts and programs
+TEST_PROG=h5repart_gentest talign
+TEST_SCRIPT=testh5repart.sh testh5mkgrp.sh
+
+check_PROGRAMS=$(TEST_PROG) repart_test
+check_SCRIPTS=$(TEST_SCRIPT)
+SCRIPT_DEPEND=../../src/misc/h5repart$(EXEEXT) ../../src/misc/h5mkgrp$(EXEEXT)
+
+# Temporary files. *.h5 are generated by h5repart_gentest. They should
+# copied to the testfiles/ directory if update is required. fst_family*.h5
+# and scd_family*.h5 were created by setting the HDF5_NOCLEANUP variable.
+CHECK_CLEANFILES+=*.h5 ../testfiles/fst_family*.h5 ../testfiles/scd_family*.h5
+
+# These were generated by configure. Remove them only when distclean.
+DISTCLEANFILES=testh5repart.sh
+
+# All programs rely on hdf5 library and h5tools library
+LDADD=$(LIBH5TOOLS) $(LIBHDF5)
+
+include $(top_srcdir)/config/conclude.am
diff --git a/tools/misc/h5perf_gentest.c b/tools/test/misc/h5perf_gentest.c
index 50c18c1..50c18c1 100644
--- a/tools/misc/h5perf_gentest.c
+++ b/tools/test/misc/h5perf_gentest.c
diff --git a/tools/misc/h5repart_gentest.c b/tools/test/misc/h5repart_gentest.c
index 8a34694..8a34694 100644
--- a/tools/misc/h5repart_gentest.c
+++ b/tools/test/misc/h5repart_gentest.c
diff --git a/tools/misc/repart_test.c b/tools/test/misc/repart_test.c
index e6da779..e6da779 100644
--- a/tools/misc/repart_test.c
+++ b/tools/test/misc/repart_test.c
diff --git a/tools/misc/talign.c b/tools/test/misc/talign.c
index be373e7..be373e7 100644
--- a/tools/misc/talign.c
+++ b/tools/test/misc/talign.c
diff --git a/tools/misc/testfiles/h5mkgrp_help.txt b/tools/test/misc/testfiles/h5mkgrp_help.txt
index ba130f6..ba130f6 100644
--- a/tools/misc/testfiles/h5mkgrp_help.txt
+++ b/tools/test/misc/testfiles/h5mkgrp_help.txt
diff --git a/tools/misc/testfiles/h5mkgrp_version.txt.in b/tools/test/misc/testfiles/h5mkgrp_version.txt.in
index 75c13a5..75c13a5 100644
--- a/tools/misc/testfiles/h5mkgrp_version.txt.in
+++ b/tools/test/misc/testfiles/h5mkgrp_version.txt.in
diff --git a/tools/misc/testh5mkgrp.sh.in b/tools/test/misc/testh5mkgrp.sh.in
index a0413e1..9252934 100644
--- a/tools/misc/testh5mkgrp.sh.in
+++ b/tools/test/misc/testh5mkgrp.sh.in
@@ -25,14 +25,14 @@ TESTNAME=h5mkgrp
EXIT_SUCCESS=0
EXIT_FAILURE=1
-H5MKGRP=h5mkgrp # The tool name
+H5MKGRP=../../src/misc/h5mkgrp # The tool name
H5MKGRP_BIN=`pwd`/$H5MKGRP # The path of the tool binary
-H5LS=h5ls # The h5ls tool name
+H5LS=../../src/h5ls/h5ls # The h5ls tool name
H5LS_ARGS=-vr # Arguments to the h5ls tool
-H5LS_BIN=`pwd`/../h5ls/$H5LS # The path of the h5ls tool binary
+H5LS_BIN=`pwd`/$H5LS # The path of the h5ls tool binary
RM='rm -rf'
-CMP='cmp'
+CMP='cmp -s'
DIFF='diff -c'
CP='cp'
DIRNAME='dirname'
@@ -43,11 +43,11 @@ nerrors=0
verbose=yes
# source dirs
-SRC_TOOLS="$srcdir/../"
+SRC_TOOLS="$srcdir/../.."
SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
# testfiles source dirs for tools
-SRC_H5MKGRP_TESTFILES="$SRC_TOOLS/misc/testfiles"
+SRC_H5MKGRP_TESTFILES="$SRC_TOOLS/test/misc/testfiles"
TESTDIR=./testgrp
test -d $TESTDIR || mkdir -p $TESTDIR
@@ -62,9 +62,6 @@ test -d $TESTDIR || mkdir -p $TESTDIR
# Comment '#' without space can be used.
# --------------------------------------------------------------------
-CMP='cmp -s'
-DIFF='diff -c'
-
#
# copy test files and expected output files from source dirs to test dir
#
@@ -134,7 +131,7 @@ TESTING()
}
# Source in the output filter function definitions.
-. $srcdir/../../bin/output_filter.sh
+. $srcdir/../../../bin/output_filter.sh
# Print a line-line message left justified in a field of 70 characters
# beginning with the word "Verifying".
diff --git a/tools/test/misc/testh5repart.sh.in b/tools/test/misc/testh5repart.sh.in
new file mode 100644
index 0000000..2106a1d
--- /dev/null
+++ b/tools/test/misc/testh5repart.sh.in
@@ -0,0 +1,197 @@
+#! /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 files COPYING and Copyright.html. COPYING can be found at the root
+# of the source code distribution tree; Copyright.html can be found at the
+# root level of an installed copy of the electronic HDF5 document set and
+# is linked from the top-level documents page. It can also be found at
+# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
+# access to either file, you may request a copy from help@hdfgroup.org.
+#
+# Tests for the h5repart tool
+
+srcdir=@srcdir@
+
+TESTNAME=h5repart
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+
+REPART=../../src/misc/h5repart # The tool name
+REPART_BIN=`pwd`/$REPART # The path of the tool binary
+
+REPARTED_FAM=repart_test # The test name
+REPARTED_FAM_BIN=`pwd`/$REPARTED_FAM # The path of the test binary
+
+RM='rm -rf'
+CMP='cmp -s'
+DIFF='diff -c'
+CP='cp'
+DIRNAME='dirname'
+LS='ls'
+AWK='awk'
+
+nerrors=0
+verbose=yes
+
+# source dirs
+SRC_TOOLS="$srcdir/../.."
+
+SRC_TOOLS_TESTFILES="$SRC_TOOLS/testfiles"
+
+TESTDIR=./testfiles
+test -d $TESTDIR || mkdir -p $TESTDIR
+
+#
+# copy test files and expected output files from source dirs to test dir
+#
+COPY_TESTFILES="
+$SRC_TOOLS_TESTFILES/family_file00000.h5
+$SRC_TOOLS_TESTFILES/family_file00001.h5
+$SRC_TOOLS_TESTFILES/family_file00002.h5
+$SRC_TOOLS_TESTFILES/family_file00003.h5
+$SRC_TOOLS_TESTFILES/family_file00004.h5
+$SRC_TOOLS_TESTFILES/family_file00005.h5
+$SRC_TOOLS_TESTFILES/family_file00006.h5
+$SRC_TOOLS_TESTFILES/family_file00007.h5
+$SRC_TOOLS_TESTFILES/family_file00008.h5
+$SRC_TOOLS_TESTFILES/family_file00009.h5
+$SRC_TOOLS_TESTFILES/family_file00010.h5
+$SRC_TOOLS_TESTFILES/family_file00011.h5
+$SRC_TOOLS_TESTFILES/family_file00012.h5
+$SRC_TOOLS_TESTFILES/family_file00013.h5
+$SRC_TOOLS_TESTFILES/family_file00014.h5
+$SRC_TOOLS_TESTFILES/family_file00015.h5
+$SRC_TOOLS_TESTFILES/family_file00016.h5
+$SRC_TOOLS_TESTFILES/family_file00017.h5
+"
+
+COPY_TESTFILES_TO_TESTDIR()
+{
+ # copy test files. Used -f to make sure get a new copy
+ for tstfile in $COPY_TESTFILES
+ do
+ # ignore '#' comment
+ echo $tstfile | tr -d ' ' | grep '^#' > /dev/null
+ RET=$?
+ if [ $RET -eq 1 ]; then
+ # skip cp if srcdir is same as destdir
+ # this occurs when build/test performed in source dir and
+ # make cp fail
+ SDIR=`$DIRNAME $tstfile`
+ INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'`
+ INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'`
+ if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then
+ $CP -f $tstfile $TESTDIR
+ if [ $? -ne 0 ]; then
+ echo "Error: FAILED to copy $tstfile ."
+
+ # Comment out this to CREATE expected file
+ exit $EXIT_FAILURE
+ fi
+ fi
+ fi
+ done
+}
+
+CLEAN_TESTFILES_AND_TESTDIR()
+{
+ # skip rm if srcdir is same as destdir
+ # this occurs when build/test performed in source dir and
+ # make cp fail
+ SDIR=$SRC_TOOLS_TESTFILES
+ INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'`
+ INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'`
+ if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then
+ $RM $TESTDIR
+ fi
+}
+
+# Print a line-line message left justified in a field of 70 characters
+# beginning with the word "Testing".
+#
+TESTING() {
+ SPACES=" "
+ echo "Testing $* $SPACES" | cut -c1-70 | tr -d '\012'
+}
+
+# Run a test and print PASS or *FAIL*. If a test fails then increment
+# the `nerrors' global variable.
+#
+TOOLTEST() {
+ # Run tool test.
+ TESTING $REPART $@
+ (
+# echo
+ cd $TESTDIR
+ $RUNSERIAL $REPART_BIN $@
+ )
+
+ if test $? -eq 0; then
+ echo " PASSED"
+ else
+ echo " FAILED"
+ nerrors=`expr $nerrors + 1`
+ fi
+}
+
+OUTPUTTEST() {
+ # Run test program.
+ TESTING $REPARTED_FAM $@
+ (
+ cd $TESTDIR
+ $RUNSERIAL $REPARTED_FAM_BIN $@
+ )
+
+ if test $? -eq 0; then
+ echo " PASSED"
+ else
+ echo " FAILED"
+ nerrors=`expr $nerrors + 1`
+ fi
+}
+
+# Print a "SKIP" message
+SKIP() {
+ TESTING $REPART $@
+ echo " -SKIP-"
+}
+
+##############################################################################
+##############################################################################
+### T H E T E S T S ###
+##############################################################################
+##############################################################################
+# prepare for test
+COPY_TESTFILES_TO_TESTDIR
+
+# repartition family member size to 20,000 bytes.
+TOOLTEST -m 20000 family_file%05d.h5 fst_family%05d.h5
+# repartition family member size to 5 KB.
+TOOLTEST -m 5k family_file%05d.h5 scd_family%05d.h5
+# convert family file to sec2 file of 20,000 bytes
+TOOLTEST -m 20000 -family_to_sec2 family_file%05d.h5 family_to_sec2.h5
+
+# test the output files repartitioned above.
+OUTPUTTEST
+echo
+
+# Clean up output file
+CLEAN_TESTFILES_AND_TESTDIR
+
+if test -z "$HDF5_NOCLEANUP"; then
+ cd $actual_dir
+ rm -f fst_family*.h5 scd_family*.h5 family_to_sec2.h5
+fi
+
+if test $nerrors -eq 0 ; then
+ echo "All $TESTNAME tests passed."
+ exit $EXIT_SUCCESS
+else
+ echo "$TESTNAME tests failed with $nerrors errors."
+ exit $EXIT_FAILURE
+fi
diff --git a/tools/misc/vds/CMakeLists.txt b/tools/test/misc/vds/CMakeLists.txt
index dcf883c..23dc85c 100644
--- a/tools/misc/vds/CMakeLists.txt
+++ b/tools/test/misc/vds/CMakeLists.txt
@@ -1,13 +1,13 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_TOOLS_MISC_VDS)
+PROJECT (HDF5_TOOLS_TEST_MISC_VDS)
#-----------------------------------------------------------------------------
# Setup include Directories
#-----------------------------------------------------------------------------
-INCLUDE_DIRECTORIES (${HDF5_TOOLS_SRC_DIR}/lib)
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
MACRO (ADD_H5_GENERATOR genfile)
- add_executable (${genfile} ${HDF5_TOOLS_MISC_VDS_SOURCE_DIR}/${genfile}.c)
+ add_executable (${genfile} ${HDF5_TOOLS_TEST_MISC_VDS_SOURCE_DIR}/${genfile}.c)
TARGET_NAMING (${genfile} STATIC)
TARGET_C_PROPERTIES (${genfile} STATIC " " " ")
target_link_libraries (${genfile} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
diff --git a/tools/misc/vds/Makefile.am b/tools/test/misc/vds/Makefile.am
index f1ef80c..89aed64 100644
--- a/tools/misc/vds/Makefile.am
+++ b/tools/test/misc/vds/Makefile.am
@@ -21,7 +21,7 @@
include $(top_srcdir)/config/commence.am
# Include src directory
-AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
+AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib -I$(top_srcdir)/tools/test/misc/vds
#test scripts and programs
TEST_PROG=UC_1_one_dim_gen UC_2_two_dims_gen UC_3_gaps_gen UC_4_printf_gen \
diff --git a/tools/misc/vds/UC_1.h b/tools/test/misc/vds/UC_1.h
index 2150cfa..2150cfa 100644
--- a/tools/misc/vds/UC_1.h
+++ b/tools/test/misc/vds/UC_1.h
diff --git a/tools/misc/vds/UC_1_one_dim_gen.c b/tools/test/misc/vds/UC_1_one_dim_gen.c
index f47b982..f47b982 100644
--- a/tools/misc/vds/UC_1_one_dim_gen.c
+++ b/tools/test/misc/vds/UC_1_one_dim_gen.c
diff --git a/tools/misc/vds/UC_2.h b/tools/test/misc/vds/UC_2.h
index fe3f350..fe3f350 100644
--- a/tools/misc/vds/UC_2.h
+++ b/tools/test/misc/vds/UC_2.h
diff --git a/tools/misc/vds/UC_2_two_dims_gen.c b/tools/test/misc/vds/UC_2_two_dims_gen.c
index d08cc5f..d08cc5f 100644
--- a/tools/misc/vds/UC_2_two_dims_gen.c
+++ b/tools/test/misc/vds/UC_2_two_dims_gen.c
diff --git a/tools/misc/vds/UC_3.h b/tools/test/misc/vds/UC_3.h
index 0654a48..0654a48 100644
--- a/tools/misc/vds/UC_3.h
+++ b/tools/test/misc/vds/UC_3.h
diff --git a/tools/misc/vds/UC_3_gaps_gen.c b/tools/test/misc/vds/UC_3_gaps_gen.c
index 7cb208b..7cb208b 100644
--- a/tools/misc/vds/UC_3_gaps_gen.c
+++ b/tools/test/misc/vds/UC_3_gaps_gen.c
diff --git a/tools/misc/vds/UC_4.h b/tools/test/misc/vds/UC_4.h
index bfcafed..bfcafed 100644
--- a/tools/misc/vds/UC_4.h
+++ b/tools/test/misc/vds/UC_4.h
diff --git a/tools/misc/vds/UC_4_printf_gen.c b/tools/test/misc/vds/UC_4_printf_gen.c
index d067d47..d067d47 100644
--- a/tools/misc/vds/UC_4_printf_gen.c
+++ b/tools/test/misc/vds/UC_4_printf_gen.c
diff --git a/tools/misc/vds/UC_5.h b/tools/test/misc/vds/UC_5.h
index 96b2af3..96b2af3 100644
--- a/tools/misc/vds/UC_5.h
+++ b/tools/test/misc/vds/UC_5.h
diff --git a/tools/misc/vds/UC_5_stride_gen.c b/tools/test/misc/vds/UC_5_stride_gen.c
index 38d24a6..38d24a6 100644
--- a/tools/misc/vds/UC_5_stride_gen.c
+++ b/tools/test/misc/vds/UC_5_stride_gen.c
diff --git a/tools/misc/vds/UC_common.h b/tools/test/misc/vds/UC_common.h
index 0e61016..0e61016 100644
--- a/tools/misc/vds/UC_common.h
+++ b/tools/test/misc/vds/UC_common.h
diff --git a/tools/perform/CMakeLists.txt b/tools/test/perform/CMakeLists.txt
index 0a38b21..bea2d0c 100644
--- a/tools/perform/CMakeLists.txt
+++ b/tools/test/perform/CMakeLists.txt
@@ -1,5 +1,5 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_PERFORM )
+PROJECT (HDF5_TOOLS_TEST_PERFORM )
#-----------------------------------------------------------------------------
# Apply Definitions to compiler in this directory and below
@@ -17,8 +17,8 @@ INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib )
# --------------------------------------------------------------------
#-- Adding test for h5perf_serial
set (h5perf_serial_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/sio_perf.c
- ${HDF5_PERFORM_SOURCE_DIR}/sio_engine.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/sio_perf.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/sio_engine.c
)
add_executable (h5perf_serial ${h5perf_serial_SOURCES})
TARGET_NAMING (h5perf_serial STATIC)
@@ -29,22 +29,22 @@ set_target_properties (h5perf_serial PROPERTIES FOLDER perform)
if (HDF5_BUILD_PERFORM_STANDALONE)
#-- Adding test for h5perf_serial_alone
set (h5perf_serial_alone_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/sio_perf.c
- ${HDF5_PERFORM_SOURCE_DIR}/sio_engine.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/sio_perf.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/sio_engine.c
)
add_executable (h5perf_serial_alone ${h5perf_serial_alone_SOURCES})
TARGET_NAMING (h5perf_serial_alone STATIC)
TARGET_C_PROPERTIES (h5perf_serial_alone STATIC " " " ")
target_link_libraries (h5perf_serial_alone ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
set_target_properties (h5perf_serial_alone PROPERTIES FOLDER perform)
- set_property (TARGET h5perf_serial_alone
+ set_property (TARGET h5perf_serial_alone
APPEND PROPERTY COMPILE_DEFINITIONS STANDALONE
)
endif (HDF5_BUILD_PERFORM_STANDALONE)
#-- Adding test for chunk
set (chunk_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/chunk.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/chunk.c
)
ADD_EXECUTABLE(chunk ${chunk_SOURCES})
TARGET_NAMING (chunk STATIC)
@@ -54,7 +54,7 @@ set_target_properties (chunk PROPERTIES FOLDER perform)
#-- Adding test for iopipe
set (iopipe_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/iopipe.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/iopipe.c
)
add_executable (iopipe ${iopipe_SOURCES})
TARGET_NAMING (iopipe STATIC)
@@ -64,7 +64,7 @@ set_target_properties (iopipe PROPERTIES FOLDER perform)
#-- Adding test for overhead
set (overhead_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/overhead.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/overhead.c
)
add_executable (overhead ${overhead_SOURCES})
TARGET_NAMING (overhead STATIC)
@@ -72,21 +72,19 @@ TARGET_C_PROPERTIES (overhead STATIC " " " ")
target_link_libraries (overhead ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
set_target_properties (overhead PROPERTIES FOLDER perform)
-if (BUILD_TESTING)
#-- Adding test for perf_meta
set (perf_meta_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/perf_meta.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/perf_meta.c
)
add_executable (perf_meta ${perf_meta_SOURCES})
TARGET_NAMING (perf_meta STATIC)
TARGET_C_PROPERTIES (perf_meta STATIC " " " ")
target_link_libraries (perf_meta ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
set_target_properties (perf_meta PROPERTIES FOLDER perform)
-endif (BUILD_TESTING)
#-- Adding test for zip_perf
set (zip_perf_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/zip_perf.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/zip_perf.c
)
add_executable (zip_perf ${zip_perf_SOURCES})
TARGET_NAMING (zip_perf STATIC)
@@ -97,8 +95,8 @@ set_target_properties (zip_perf PROPERTIES FOLDER perform)
if (H5_HAVE_PARALLEL AND BUILD_TESTING)
#-- Adding test for h5perf
set (h5perf_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/pio_perf.c
- ${HDF5_PERFORM_SOURCE_DIR}/pio_engine.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/pio_perf.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/pio_engine.c
)
add_executable (h5perf ${h5perf_SOURCES})
TARGET_NAMING (h5perf STATIC)
@@ -109,15 +107,15 @@ if (H5_HAVE_PARALLEL AND BUILD_TESTING)
if (HDF5_BUILD_PERFORM_STANDALONE)
#-- Adding test for h5perf
set (h5perf_alone_SOURCES
- ${HDF5_PERFORM_SOURCE_DIR}/pio_perf.c
- ${HDF5_PERFORM_SOURCE_DIR}/pio_engine.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/pio_perf.c
+ ${HDF5_TOOLS_TEST_PERFORM_SOURCE_DIR}/pio_engine.c
)
add_executable (h5perf_alone ${h5perf_alone_SOURCES})
TARGET_NAMING (h5perf_alone STATIC)
TARGET_C_PROPERTIES (h5perf_alone STATIC " " " ")
target_link_libraries (h5perf_alone ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
set_target_properties (h5perf_alone PROPERTIES FOLDER perform)
- set_property (TARGET h5perf_alone
+ set_property (TARGET h5perf_alone
APPEND PROPERTY COMPILE_DEFINITIONS STANDALONE
)
endif (HDF5_BUILD_PERFORM_STANDALONE)
diff --git a/tools/perform/CMakeTests.cmake b/tools/test/perform/CMakeTests.cmake
index 0ea40a3..0ea40a3 100644
--- a/tools/perform/CMakeTests.cmake
+++ b/tools/test/perform/CMakeTests.cmake
diff --git a/tools/perform/COPYING b/tools/test/perform/COPYING
index 6903daf..6903daf 100644
--- a/tools/perform/COPYING
+++ b/tools/test/perform/COPYING
diff --git a/tools/perform/Makefile.am b/tools/test/perform/Makefile.am
index 1af0e7f..1af0e7f 100644
--- a/tools/perform/Makefile.am
+++ b/tools/test/perform/Makefile.am
diff --git a/tools/perform/build_h5perf_alone.sh b/tools/test/perform/build_h5perf_alone.sh
index b65e863..b65e863 100755..100644
--- a/tools/perform/build_h5perf_alone.sh
+++ b/tools/test/perform/build_h5perf_alone.sh
diff --git a/tools/perform/build_h5perf_serial_alone.sh b/tools/test/perform/build_h5perf_serial_alone.sh
index 2566609..2566609 100755..100644
--- a/tools/perform/build_h5perf_serial_alone.sh
+++ b/tools/test/perform/build_h5perf_serial_alone.sh
diff --git a/tools/perform/chunk.c b/tools/test/perform/chunk.c
index b1419ee..b1419ee 100644
--- a/tools/perform/chunk.c
+++ b/tools/test/perform/chunk.c
diff --git a/tools/perform/gen_report.pl b/tools/test/perform/gen_report.pl
index 285f5d7..285f5d7 100755..100644
--- a/tools/perform/gen_report.pl
+++ b/tools/test/perform/gen_report.pl
diff --git a/tools/perform/iopipe.c b/tools/test/perform/iopipe.c
index fd62d37..fd62d37 100644
--- a/tools/perform/iopipe.c
+++ b/tools/test/perform/iopipe.c
diff --git a/tools/perform/overhead.c b/tools/test/perform/overhead.c
index 98093c7..98093c7 100644
--- a/tools/perform/overhead.c
+++ b/tools/test/perform/overhead.c
diff --git a/tools/perform/perf.c b/tools/test/perform/perf.c
index 7b9590c..7b9590c 100644
--- a/tools/perform/perf.c
+++ b/tools/test/perform/perf.c
diff --git a/tools/perform/perf_meta.c b/tools/test/perform/perf_meta.c
index 2c3a19c..2c3a19c 100644
--- a/tools/perform/perf_meta.c
+++ b/tools/test/perform/perf_meta.c
diff --git a/tools/perform/pio_engine.c b/tools/test/perform/pio_engine.c
index eaedcb8..ab11efd 100644
--- a/tools/perform/pio_engine.c
+++ b/tools/test/perform/pio_engine.c
@@ -1,6 +1,5 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* 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 *
diff --git a/tools/perform/pio_perf.c b/tools/test/perform/pio_perf.c
index 1402ec3..c1bfadb 100644
--- a/tools/perform/pio_perf.c
+++ b/tools/test/perform/pio_perf.c
@@ -1,6 +1,5 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* 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 *
@@ -378,7 +377,7 @@ main(int argc, char **argv)
}
if (opts->output_file) {
- if ((output = fopen(opts->output_file, "w")) == NULL) {
+ if ((output = HDfopen(opts->output_file, "w")) == NULL) {
fprintf(stderr, "%s: cannot open output file\n", progname);
perror(opts->output_file);
goto finish;
@@ -1228,7 +1227,7 @@ report_parameters(struct options *opts)
HDfprintf(output, "Contiguous\n");
{
- char *prefix = getenv("HDF5_PARAPREFIX");
+ char *prefix = HDgetenv("HDF5_PARAPREFIX");
HDfprintf(output, "rank %d: Env HDF5_PARAPREFIX=%s\n", rank,
(prefix ? prefix : "not set"));
@@ -1293,7 +1292,7 @@ parse_command_line(int argc, char *argv[])
char buf[10];
int i;
- memset(buf, '\0', sizeof(buf));
+ HDmemset(buf, '\0', sizeof(buf));
for (i = 0; *end != '\0' && *end != ','; ++end)
if (isalnum(*end) && i < 10)
@@ -1345,7 +1344,7 @@ parse_command_line(int argc, char *argv[])
char buf[10];
int i;
- memset(buf, '\0', sizeof(buf));
+ HDmemset(buf, '\0', sizeof(buf));
for (i = 0; *end != '\0' && *end != ','; ++end)
if (isalnum(*end) && i < 10)
@@ -1509,7 +1508,7 @@ parse_size_directive(const char *size)
off_t s;
char *endptr;
- s = strtol(size, &endptr, 10);
+ s = HDstrtol(size, &endptr, 10);
if (endptr && *endptr) {
while (*endptr != '\0' && (*endptr == ' ' || *endptr == '\t'))
diff --git a/tools/perform/pio_perf.h b/tools/test/perform/pio_perf.h
index 0fff7a3..89cf3a8 100644
--- a/tools/perform/pio_perf.h
+++ b/tools/test/perform/pio_perf.h
@@ -1,6 +1,5 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* 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 *
@@ -16,6 +15,7 @@
#ifndef PIO_PERF_H__
#define PIO_PERF_H__
+#include "io_timer.h"
#ifndef STANDALONE
#include "H5private.h"
#include "h5test.h"
@@ -24,7 +24,6 @@
#else
#include "pio_standalone.h"
#endif
-#include "io_timer.h"
/* setup the dataset no fill option if this is v1.5 or more */
#if H5_VERS_MAJOR > 1 || H5_VERS_MINOR > 4
diff --git a/tools/perform/pio_standalone.c b/tools/test/perform/pio_standalone.c
index e404274..475c678 100644
--- a/tools/perform/pio_standalone.c
+++ b/tools/test/perform/pio_standalone.c
@@ -1,6 +1,5 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* 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 *
diff --git a/tools/test/perform/pio_standalone.h b/tools/test/perform/pio_standalone.h
new file mode 100644
index 0000000..f088c93
--- /dev/null
+++ b/tools/test/perform/pio_standalone.h
@@ -0,0 +1,530 @@
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * 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 files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help@hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+#ifndef PIO_STANDALONE_H__
+#define PIO_PERF_H__
+
+/* Header file for building h5perf by standalone mode.
+ * Created: Christian Chilan, 2005/5/18.
+ */
+
+/** From H5private.h **/
+
+#include "H5public.h" /* Include Public Definitions */
+
+
+/*
+ * Include ANSI-C header files.
+ */
+#ifdef H5_STDC_HEADERS
+# include <assert.h>
+# include <ctype.h>
+# include <errno.h>
+# include <fcntl.h>
+# include <float.h>
+# include <limits.h>
+# include <math.h>
+# include <signal.h>
+# include <stdarg.h>
+# include <stdio.h>
+# include <stdlib.h>
+# include <string.h>
+#endif
+
+/*
+ * Redefine all the POSIX functions. We should never see a POSIX
+ * function (or any other non-HDF5 function) in the source!
+ */
+#define HDabort() abort()
+#define HDabs(X) abs(X)
+#ifdef H5_HAVE_WIN32_API
+#define HDaccess(F,M) _access(F, M)
+#define R_OK 4 /* Test for read permission. */
+#define W_OK 2 /* Test for write permission. */
+#define X_OK 1 /* Test for execute permission. */
+#define F_OK 0 /* Test for existence. */
+#else /* H5_HAVE_WIN32_API */
+#define HDaccess(F,M) access(F, M)
+#ifndef F_OK
+#define F_OK 00
+#define W_OK 02
+#define R_OK 04
+#endif
+#endif /* H5_HAVE_WIN32_API */
+#define HDacos(X) acos(X)
+#ifdef H5_HAVE_ALARM
+#define HDalarm(N) alarm(N)
+#else /* H5_HAVE_ALARM */
+#define HDalarm(N) (0)
+#endif /* H5_HAVE_ALARM */
+#define HDasctime(T) asctime(T)
+#define HDasin(X) asin(X)
+#define HDasprintf asprintf /*varargs*/
+#define HDassert(X) assert(X)
+#define HDatan(X) atan(X)
+#define HDatan2(X,Y) atan2(X,Y)
+#define HDatexit(F) atexit(F)
+#define HDatof(S) atof(S)
+#define HDatoi(S) atoi(S)
+#define HDatol(S) atol(S)
+#define HDbsearch(K,B,N,Z,F) bsearch(K,B,N,Z,F)
+#define HDcalloc(N,Z) calloc(N,Z)
+#define HDceil(X) ceil(X)
+#define HDcfgetispeed(T) cfgetispeed(T)
+#define HDcfgetospeed(T) cfgetospeed(T)
+#define HDcfsetispeed(T,S) cfsetispeed(T,S)
+#define HDcfsetospeed(T,S) cfsetospeed(T,S)
+#define HDchdir(S) chdir(S)
+#define HDchmod(S,M) chmod(S,M)
+#define HDchown(S,O,G) chown(S,O,G)
+#define HDclearerr(F) clearerr(F)
+#define HDclock() clock()
+#define HDclose(F) close(F)
+#define HDclosedir(D) closedir(D)
+#define HDcos(X) cos(X)
+#define HDcosh(X) cosh(X)
+#define HDcreat(S,M) creat(S,M)
+#define HDctermid(S) ctermid(S)
+#define HDctime(T) ctime(T)
+#define HDcuserid(S) cuserid(S)
+#ifdef H5_HAVE_DIFFTIME
+#define HDdifftime(X,Y) difftime(X,Y)
+#else
+#define HDdifftime(X,Y) ((double)(X)-(double)(Y))
+#endif
+#define HDdiv(X,Y) div(X,Y)
+#define HDdup(F) dup(F)
+#define HDdup2(F,I) dup2(F,I)
+/* execl() variable arguments */
+/* execle() variable arguments */
+/* execlp() variable arguments */
+#define HDexecv(S,AV) execv(S,AV)
+#define HDexecve(S,AV,E) execve(S,AV,E)
+#define HDexecvp(S,AV) execvp(S,AV)
+#define HDexit(N) exit(N)
+#define HD_exit(N) _exit(N)
+#define HDexp(X) exp(X)
+#define HDfabs(X) fabs(X)
+/* use ABS() because fabsf() fabsl() are not common yet. */
+#define HDfabsf(X) ABS(X)
+#define HDfabsl(X) ABS(X)
+#define HDfclose(F) fclose(F)
+/* fcntl() variable arguments */
+#define HDfdopen(N,S) fdopen(N,S)
+#define HDfeof(F) feof(F)
+#define HDferror(F) ferror(F)
+#define HDfflush(F) fflush(F)
+#define HDfgetc(F) fgetc(F)
+#define HDfgetpos(F,P) fgetpos(F,P)
+#define HDfgets(S,N,F) fgets(S,N,F)
+#ifdef H5_HAVE_WIN32_API
+#define HDfileno(F) _fileno(F)
+#else /* H5_HAVE_WIN32_API */
+#define HDfileno(F) fileno(F)
+#endif /* H5_HAVE_WIN32_API */
+#define HDfloor(X) floor(X)
+#define HDfmod(X,Y) fmod(X,Y)
+#define HDfopen(S,M) fopen(S,M)
+#define HDfork() fork()
+#define HDfpathconf(F,N) fpathconf(F,N)
+H5_DLL int HDfprintf (FILE *stream, const char *fmt, ...);
+#define HDfputc(C,F) fputc(C,F)
+#define HDfputs(S,F) fputs(S,F)
+#define HDfread(M,Z,N,F) fread(M,Z,N,F)
+#define HDfree(M) free(M)
+#define HDfreopen(S,M,F) freopen(S,M,F)
+#define HDfrexp(X,N) frexp(X,N)
+/* Check for Cray-specific 'frexpf()' and 'frexpl()' routines */
+#ifdef H5_HAVE_FREXPF
+#define HDfrexpf(X,N) frexpf(X,N)
+#else /* H5_HAVE_FREXPF */
+#define HDfrexpf(X,N) frexp(X,N)
+#endif /* H5_HAVE_FREXPF */
+#ifdef H5_HAVE_FREXPL
+#define HDfrexpl(X,N) frexpl(X,N)
+#else /* H5_HAVE_FREXPL */
+#define HDfrexpl(X,N) frexp(X,N)
+#endif /* H5_HAVE_FREXPL */
+/* fscanf() variable arguments */
+#ifdef H5_HAVE_FSEEKO
+ #define HDfseek(F,O,W) fseeko(F,O,W)
+#else
+ #define HDfseek(F,O,W) fseek(F,O,W)
+#endif
+#define HDfsetpos(F,P) fsetpos(F,P)
+/* definitions related to the file stat utilities.
+ * Windows have its own function names.
+ * For Unix, if off_t is not 64bit big, try use the pseudo-standard
+ * xxx64 versions if available.
+ */
+#ifdef H5_HAVE_WIN32_API
+ #define HDfstat(F,B) _fstati64(F,B)
+ #define HDlstat(S,B) _lstati64(S,B)
+ #define HDstat(S,B) _stati64(S,B)
+ typedef struct _stati64 h5_stat_t;
+ typedef __int64 h5_stat_size_t;
+ #define HDoff_t __int64
+#elif H5_SIZEOF_OFF_T!=8 && H5_SIZEOF_OFF64_T==8 && defined(H5_HAVE_STAT64)
+ #define HDfstat(F,B) fstat64(F,B)
+ #define HDlstat(S,B) lstat64(S,B)
+ #define HDstat(S,B) stat64(S,B)
+ typedef struct stat64 h5_stat_t;
+ typedef off64_t h5_stat_size_t;
+ #define HDoff_t off64_t
+#else
+ #define HDfstat(F,B) fstat(F,B)
+ #define HDlstat(S,B) lstat(S,B)
+ #define HDstat(S,B) stat(S,B)
+ typedef struct stat h5_stat_t;
+ typedef off_t h5_stat_size_t;
+ #define HDoff_t off_t
+#endif
+
+#ifndef H5_HAVE_WIN32_API
+/* These definitions differ in Windows and are defined in
+ * H5win32defs for that platform.
+ */
+typedef struct stat h5_stat_t;
+typedef off_t h5_stat_size_t;
+#define HDoff_t off_t
+#endif /* H5_HAVE_WIN32_API */
+
+#define HDftell(F) ftell(F)
+#define HDftruncate(F,L) ftruncate(F,L)
+#define HDfwrite(M,Z,N,F) fwrite(M,Z,N,F)
+#define HDgetc(F) getc(F)
+#define HDgetchar() getchar()
+#define HDgetcwd(S,Z) getcwd(S,Z)
+#define HDgetegid() getegid()
+#define HDgetenv(S) getenv(S)
+#define HDgeteuid() geteuid()
+#define HDgetgid() getgid()
+#define HDgetgrgid(G) getgrgid(G)
+#define HDgetgrnam(S) getgrnam(S)
+#define HDgetgroups(Z,G) getgroups(Z,G)
+#ifdef H5_HAVE_WIN32_API
+#define HDgetlogin() Wgetlogin()
+#else /* H5_HAVE_WIN32_API */
+#define HDgetlogin() getlogin()
+#endif /* H5_HAVE_WIN32_API */
+#define HDgetpgrp() getpgrp()
+#define HDgetpid() getpid()
+#define HDgetppid() getppid()
+#define HDgetpwnam(S) getpwnam(S)
+#define HDgetpwuid(U) getpwuid(U)
+#define HDgetrusage(X,S) getrusage(X,S)
+#define HDgets(S) gets(S)
+#ifdef H5_HAVE_WIN32_API
+ H5_DLL int Wgettimeofday(struct timeval *tv, struct timezone *tz);
+#define HDgettimeofday(V,Z) Wgettimeofday(V,Z)
+#else /* H5_HAVE_WIN32_API */
+#define HDgettimeofday(S,P) gettimeofday(S,P)
+#endif /* H5_HAVE_WIN32_API */
+#define HDgetuid() getuid()
+#define HDgmtime(T) gmtime(T)
+#define HDisalnum(C) isalnum((int)(C)) /*cast for solaris warning*/
+#define HDisalpha(C) isalpha((int)(C)) /*cast for solaris warning*/
+#define HDisatty(F) isatty(F)
+#define HDiscntrl(C) iscntrl((int)(C)) /*cast for solaris warning*/
+#define HDisdigit(C) isdigit((int)(C)) /*cast for solaris warning*/
+#define HDisgraph(C) isgraph((int)(C)) /*cast for solaris warning*/
+#define HDislower(C) islower((int)(C)) /*cast for solaris warning*/
+#define HDisprint(C) isprint((int)(C)) /*cast for solaris warning*/
+#define HDispunct(C) ispunct((int)(C)) /*cast for solaris warning*/
+#define HDisspace(C) isspace((int)(C)) /*cast for solaris warning*/
+#define HDisupper(C) isupper((int)(C)) /*cast for solaris warning*/
+#define HDisxdigit(C) isxdigit((int)(C)) /*cast for solaris warning*/
+#define HDkill(P,S) kill(P,S)
+#define HDlabs(X) labs(X)
+#define HDldexp(X,N) ldexp(X,N)
+#define HDldiv(X,Y) ldiv(X,Y)
+#define HDlink(OLD,NEW) link(OLD,NEW)
+#define HDlocaleconv() localeconv()
+#define HDlocaltime(T) localtime(T)
+#define HDlog(X) log(X)
+#define HDlog10(X) log10(X)
+#define HDlongjmp(J,N) longjmp(J,N)
+#ifdef H5_HAVE_WIN32_API
+ #define HDlseek(F,O,W) _lseeki64(F,O,W)
+#else
+ #ifdef H5_HAVE_LSEEK64
+ #define HDlseek(F,O,W) lseek64(F,O,W)
+ #else
+ #define HDlseek(F,O,W) lseek(F,O,W)
+ #endif
+#endif
+#define HDmalloc(Z) malloc(Z)
+#define HDposix_memalign(P,A,Z) posix_memalign(P,A,Z)
+#define HDmblen(S,N) mblen(S,N)
+#define HDmbstowcs(P,S,Z) mbstowcs(P,S,Z)
+#define HDmbtowc(P,S,Z) mbtowc(P,S,Z)
+#define HDmemchr(S,C,Z) memchr(S,C,Z)
+#define HDmemcmp(X,Y,Z) memcmp(X,Y,Z)
+/*
+ * The (char*) casts are required for the DEC when optimizations are turned
+ * on and the source and/or destination are not aligned.
+ */
+#define HDmemcpy(X,Y,Z) memcpy((char*)(X),(const char*)(Y),Z)
+#define HDmemmove(X,Y,Z) memmove((char*)(X),(const char*)(Y),Z)
+/*
+ * The (void*) cast just avoids a compiler warning in H5_HAVE_VISUAL_STUDIO
+ */
+#ifdef H5_HAVE_VISUAL_STUDIO
+#define HDmemset(X,C,Z) memset((void*)(X),C,Z)
+#else /* H5_HAVE_VISUAL_STUDIO */
+#define HDmemset(X,C,Z) memset(X,C,Z)
+#endif /* H5_HAVE_VISUAL_STUDIO */
+#ifdef H5_HAVE_WIN32_API
+#define HDmkdir(S,M) _mkdir(S)
+#else /* H5_HAVE_WIN32_API */
+#define HDmkdir(S,M) mkdir(S,M)
+#endif /* H5_HAVE_WIN32_API */
+#define HDmkfifo(S,M) mkfifo(S,M)
+#define HDmktime(T) mktime(T)
+#define HDmodf(X,Y) modf(X,Y)
+#ifdef _O_BINARY
+#define HDopen(S,F,M) open(S,F|_O_BINARY,M)
+#else
+#define HDopen(S,F,M) open(S,F,M)
+#endif
+#define HDopendir(S) opendir(S)
+#define HDpathconf(S,N) pathconf(S,N)
+#define HDpause() pause()
+#define HDperror(S) perror(S)
+#define HDpipe(F) pipe(F)
+#define HDpow(X,Y) pow(X,Y)
+/* printf() variable arguments */
+#define HDputc(C,F) putc(C,F)
+#define HDputchar(C) putchar(C)
+#define HDputs(S) puts(S)
+#define HDqsort(M,N,Z,F) qsort(M,N,Z,F)
+#define HDraise(N) raise(N)
+
+#ifdef H5_HAVE_RAND_R
+#define HDrandom() HDrand()
+H5_DLL int HDrand(void);
+#elif H5_HAVE_RANDOM
+#define HDrand() random()
+#define HDrandom() random()
+#else
+#define HDrand() rand()
+#define HDrandom() rand()
+#endif
+
+#define HDread(F,M,Z) read(F,M,Z)
+#define HDreaddir(D) readdir(D)
+#define HDrealloc(M,Z) realloc(M,Z)
+#define HDremove(S) remove(S)
+#define HDrename(OLD,NEW) rename(OLD,NEW)
+#define HDrewind(F) rewind(F)
+#define HDrewinddir(D) rewinddir(D)
+#define HDrmdir(S) rmdir(S)
+/* scanf() variable arguments */
+#define HDsetbuf(F,S) setbuf(F,S)
+#define HDsetgid(G) setgid(G)
+#define HDsetjmp(J) setjmp(J)
+#define HDsetlocale(N,S) setlocale(N,S)
+#define HDsetpgid(P,PG) setpgid(P,PG)
+#define HDsetsid() setsid()
+#define HDsetuid(U) setuid(U)
+/* Windows does not permit setting the buffer size to values
+ less than 2. */
+#ifndef H5_HAVE_WIN32_API
+#define HDsetvbuf(F,S,M,Z) setvbuf(F,S,M,Z)
+#else
+#define HDsetvbuf(F,S,M,Z) setvbuf(F,S,M,(Z>1?Z:2))
+#endif
+#define HDsigaddset(S,N) sigaddset(S,N)
+#define HDsigdelset(S,N) sigdelset(S,N)
+#define HDsigemptyset(S) sigemptyset(S)
+#define HDsigfillset(S) sigfillset(S)
+#define HDsigismember(S,N) sigismember(S,N)
+#define HDsiglongjmp(J,N) siglongjmp(J,N)
+#define HDsignal(N,F) signal(N,F)
+#define HDsigpending(S) sigpending(S)
+#define HDsigprocmask(H,S,O) sigprocmask(H,S,O)
+#define HDsigsetjmp(J,N) sigsetjmp(J,N)
+#define HDsigsuspend(S) sigsuspend(S)
+#define HDsin(X) sin(X)
+#define HDsinh(X) sinh(X)
+#define HDsleep(N) sleep(N)
+#ifdef H5_HAVE_WIN32_API
+H5_DLL int c99_snprintf(char* str, size_t size, const char* format, ...);
+#define HDsnprintf c99_snprintf /*varargs*/
+#else
+#define HDsnprintf snprintf /*varargs*/
+#endif
+/* sprintf() variable arguments */
+#define HDsqrt(X) sqrt(X)
+#ifdef H5_HAVE_RAND_R
+H5_DLL void HDsrand(unsigned int seed);
+#define HDsrandom(S) HDsrand(S)
+#elif H5_HAVE_RANDOM
+#define HDsrand(S) srandom(S)
+#define HDsrandom(S) srandom(S)
+#else
+#define HDsrand(S) srand(S)
+#define HDsrandom(S) srand(S)
+#endif
+/* sscanf() variable arguments */
+
+#ifdef H5_HAVE_WIN32_API
+#define HDstrcasecmp(A,B) _stricmp(A,B)
+#else
+#define HDstrcasecmp(X,Y) strcasecmp(X,Y)
+#endif
+#define HDstrcat(X,Y) strcat(X,Y)
+#define HDstrchr(S,C) strchr(S,C)
+#define HDstrcmp(X,Y) strcmp(X,Y)
+#define HDstrcoll(X,Y) strcoll(X,Y)
+#define HDstrcpy(X,Y) strcpy(X,Y)
+#define HDstrcspn(X,Y) strcspn(X,Y)
+#define HDstrerror(N) strerror(N)
+#define HDstrftime(S,Z,F,T) strftime(S,Z,F,T)
+#define HDstrlen(S) strlen(S)
+#define HDstrncat(X,Y,Z) strncat(X,Y,Z)
+#define HDstrncmp(X,Y,Z) strncmp(X,Y,Z)
+#define HDstrncpy(X,Y,Z) strncpy(X,Y,Z)
+#define HDstrpbrk(X,Y) strpbrk(X,Y)
+#define HDstrrchr(S,C) strrchr(S,C)
+#define HDstrspn(X,Y) strspn(X,Y)
+#define HDstrstr(X,Y) strstr(X,Y)
+#define HDstrtod(S,R) strtod(S,R)
+#define HDstrtok(X,Y) strtok(X,Y)
+#define HDstrtol(S,R,N) strtol(S,R,N)
+H5_DLL int64_t HDstrtoll (const char *s, const char **rest, int base);
+#define HDstrtoul(S,R,N) strtoul(S,R,N)
+#ifdef H5_HAVE_WIN32_API
+#define HDstrtoull(S,R,N) _strtoui64(S,R,N)
+#else
+#define HDstrtoull(S,R,N) strtoull(S,R,N)
+#endif
+#define HDstrxfrm(X,Y,Z) strxfrm(X,Y,Z)
+#define HDsysconf(N) sysconf(N)
+#define HDsystem(S) system(S)
+#define HDtan(X) tan(X)
+#define HDtanh(X) tanh(X)
+#define HDtcdrain(F) tcdrain(F)
+#define HDtcflow(F,A) tcflow(F,A)
+#define HDtcflush(F,N) tcflush(F,N)
+#define HDtcgetattr(F,T) tcgetattr(F,T)
+#define HDtcgetpgrp(F) tcgetpgrp(F)
+#define HDtcsendbreak(F,N) tcsendbreak(F,N)
+#define HDtcsetattr(F,O,T) tcsetattr(F,O,T)
+#define HDtcsetpgrp(F,N) tcsetpgrp(F,N)
+#define HDtime(T) time(T)
+#define HDtimes(T) times(T)
+#define HDtmpfile() tmpfile()
+#define HDtmpnam(S) tmpnam(S)
+#define HDtolower(C) tolower(C)
+#define HDtoupper(C) toupper(C)
+#define HDttyname(F) ttyname(F)
+#define HDtzset() tzset()
+#define HDumask(N) umask(N)
+#define HDuname(S) uname(S)
+#define HDungetc(C,F) ungetc(C,F)
+#ifdef H5_HAVE_WIN32_API
+#define HDunlink(S) _unlink(S)
+#else
+#define HDunlink(S) unlink(S)
+#endif
+#define HDutime(S,T) utime(S,T)
+#define HDva_arg(A,T) va_arg(A,T)
+#define HDva_end(A) va_end(A)
+#define HDva_start(A,P) va_start(A,P)
+#define HDvasprintf(RET,FMT,A) vasprintf(RET,FMT,A)
+#define HDvfprintf(F,FMT,A) vfprintf(F,FMT,A)
+#define HDvprintf(FMT,A) vprintf(FMT,A)
+#define HDvsprintf(S,FMT,A) vsprintf(S,FMT,A)
+#ifdef H5_HAVE_WIN32_API
+H5_DLL int c99_vsnprintf(char* str, size_t size, const char* format, va_list ap);
+#define HDvsnprintf c99_vsnprintf
+#else
+# define HDvsnprintf(S,N,FMT,A) vsnprintf(S,N,FMT,A)
+#endif
+#define HDwait(W) wait(W)
+#define HDwaitpid(P,W,O) waitpid(P,W,O)
+#define HDwcstombs(S,P,Z) wcstombs(S,P,Z)
+#define HDwctomb(S,C) wctomb(S,C)
+#define HDwrite(F,M,Z) write(F,M,Z)
+
+/*
+ * And now for a couple non-Posix functions... Watch out for systems that
+ * define these in terms of macros.
+ */
+#ifdef H5_HAVE_WIN32_API
+#define HDstrdup(S) _strdup(S)
+#else /* H5_HAVE_WIN32_API */
+
+#if !defined strdup && !defined H5_HAVE_STRDUP
+extern char *strdup(const char *s);
+#endif
+
+#define HDstrdup(S) strdup(S)
+
+#endif /* H5_HAVE_WIN32_API */
+
+/*
+ * HDF Boolean type.
+ */
+#ifndef FALSE
+# define FALSE false
+#endif
+#ifndef TRUE
+# define TRUE true
+#endif
+
+/** From h5test.h **/
+
+#ifdef H5_HAVE_PARALLEL
+extern MPI_Info h5_io_info_g; /* MPI INFO object for IO */
+#endif
+
+#ifdef H5_HAVE_PARALLEL
+H5TEST_DLL int h5_set_info_object(void);
+H5TEST_DLL void h5_dump_info_object(MPI_Info info);
+#endif
+
+
+
+/** From h5tools_utils.h **/
+
+extern int opt_err; /* getoption prints errors if this is on */
+extern int opt_ind; /* token pointer */
+extern const char *opt_arg; /* flag argument (or value) */
+
+
+enum {
+ no_arg = 0, /* doesn't take an argument */
+ require_arg, /* requires an argument */
+ optional_arg /* argument is optional */
+};
+
+
+typedef struct long_options {
+ const char *name; /* name of the long option */
+ int has_arg; /* whether we should look for an arg */
+ char shortval; /* the shortname equivalent of long arg
+ * this gets returned from get_option */
+} long_options;
+
+extern int get_option(int argc, const char **argv, const char *opt,
+ const struct long_options *l_opt);
+
+extern int nCols; /*max number of columns for outputting */
+
+/* Definitions of useful routines */
+extern void print_version(const char *progname);
+
+#endif
diff --git a/tools/perform/sio_engine.c b/tools/test/perform/sio_engine.c
index abf1fa6..abf1fa6 100644
--- a/tools/perform/sio_engine.c
+++ b/tools/test/perform/sio_engine.c
diff --git a/tools/perform/sio_perf.c b/tools/test/perform/sio_perf.c
index aceccb0..aceccb0 100644
--- a/tools/perform/sio_perf.c
+++ b/tools/test/perform/sio_perf.c
diff --git a/tools/perform/sio_perf.h b/tools/test/perform/sio_perf.h
index 7a7d708..7a7d708 100644
--- a/tools/perform/sio_perf.h
+++ b/tools/test/perform/sio_perf.h
diff --git a/tools/perform/sio_standalone.c b/tools/test/perform/sio_standalone.c
index d92ed30..d92ed30 100644
--- a/tools/perform/sio_standalone.c
+++ b/tools/test/perform/sio_standalone.c
diff --git a/tools/perform/sio_standalone.h b/tools/test/perform/sio_standalone.h
index 63dc7b0..83dffa2 100644
--- a/tools/perform/sio_standalone.h
+++ b/tools/test/perform/sio_standalone.h
@@ -78,6 +78,11 @@
#define F_OK 0 /* Test for existence. */
#else /* H5_HAVE_WIN32_API */
#define HDaccess(F,M) access(F, M)
+#ifndef F_OK
+#define F_OK 00
+#define W_OK 02
+#define R_OK 04
+#endif
#endif /* H5_HAVE_WIN32_API */
#define HDacos(X) acos(X)
#ifdef H5_HAVE_ALARM
diff --git a/tools/perform/zip_perf.c b/tools/test/perform/zip_perf.c
index d9b1fa2..d9b1fa2 100644
--- a/tools/perform/zip_perf.c
+++ b/tools/test/perform/zip_perf.c