summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--MANIFEST18
-rw-r--r--hl/src/CMakeLists.txt2
-rw-r--r--hl/tools/CMakeLists.txt64
-rw-r--r--hl/tools/gif2h5/CMakeLists.txt64
-rw-r--r--hl/tools/gif2h5/CMakeTests.cmake (renamed from hl/tools/CMakeTests.cmake)8
-rw-r--r--hl/tools/h5watch/CMakeLists.txt59
-rw-r--r--hl/tools/h5watch/CMakeTests.cmake191
-rw-r--r--hl/tools/h5watch/testh5watch.sh.in124
-rw-r--r--hl/tools/testfiles/w-err-cmpd1.ddl3
-rw-r--r--hl/tools/testfiles/w-err-cmpd2.ddl3
-rw-r--r--hl/tools/testfiles/w-err-cmpd3.ddl3
-rw-r--r--hl/tools/testfiles/w-err-cmpd4.ddl3
-rw-r--r--hl/tools/testfiles/w-err-cmpd5.ddl3
-rw-r--r--hl/tools/testfiles/w-err-dset-nomax.ddl3
-rw-r--r--hl/tools/testfiles/w-err-dset-none.ddl3
-rw-r--r--hl/tools/testfiles/w-err-dset1.ddl3
-rw-r--r--hl/tools/testfiles/w-err-dset2.ddl3
-rw-r--r--hl/tools/testfiles/w-err-file.ddl3
-rw-r--r--hl/tools/testfiles/w-err-poll.ddl3
-rw-r--r--hl/tools/testfiles/w-err-poll0.ddl3
-rw-r--r--hl/tools/testfiles/w-err-width.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-esc.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-f1.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-f2.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-ff3.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-label.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-two-f1.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-two-f3.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd-two.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-cmpd.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-early.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-late.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-one-d.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-one-simple.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-one.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-two-d.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-two-width.ddl3
-rw-r--r--hl/tools/testfiles/w-ext-two.ddl3
-rw-r--r--hl/tools/testfiles/w-help1.ddl3
-rw-r--r--tools/CMakeLists.txt3
-rw-r--r--tools/Makefile.in4
-rw-r--r--tools/h5format_convert/CMakeLists.txt59
-rw-r--r--tools/h5format_convert/CMakeTests.cmake463
-rw-r--r--tools/h5format_convert/h5format_convert.c356
-rw-r--r--tools/h5format_convert/testfiles/h5fc_d_file.ddl10
-rw-r--r--tools/h5format_convert/testfiles/h5fc_dname.ddl10
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext1_f.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext1_i.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext1_s.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext2_if.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext2_is.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_help.ddl10
-rw-r--r--tools/h5format_convert/testfiles/h5fc_nooption.ddl10
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_all.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_bt1.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_n_all.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl2
-rw-r--r--tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl2
-rw-r--r--tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl2
-rw-r--r--tools/h5format_convert/testh5fc.sh.in159
-rw-r--r--tools/h5repack/CMakeTests.cmake40
-rw-r--r--tools/h5repack/h5repack.sh.in26
-rw-r--r--tools/h5repack/h5repack_main.c1
-rw-r--r--tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl (renamed from tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl)10
-rw-r--r--tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl113
-rw-r--r--tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl70
-rw-r--r--tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl3
-rw-r--r--tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl3
-rw-r--r--tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl147
-rw-r--r--tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl58
-rw-r--r--tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl59
-rw-r--r--tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl58
-rw-r--r--tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl59
87 files changed, 1476 insertions, 932 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 648ae7a..9359084 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -186,6 +186,8 @@ set (HDF5_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/c++)
set (HDF5_CPP_TST_DIR ${HDF5_SOURCE_DIR}/c++/test)
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_F90_SRC_DIR ${HDF5_SOURCE_DIR}/fortran)
diff --git a/MANIFEST b/MANIFEST
index 70b0e58..6641a76 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -2347,16 +2347,11 @@
./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/1_vds.h5-vds_dset_compa-v.ddl
-./tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl
-./tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl
-./tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl
-./tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl
+./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
# jam utility and tests
./tools/h5jam/h5jam.c
@@ -3028,7 +3023,10 @@
./hl/test/CMakeLists.txt
./hl/test/CMakeTests.cmake
./hl/tools/CMakeLists.txt
-./hl/tools/CMakeTests.cmake
+./hl/tools/gif2h5/CMakeLists.txt
+./hl/tools/gif2h5/CMakeTests.cmake
+./hl/tools/h5watch/CMakeLists.txt
+./hl/tools/h5watch/CMakeTests.cmake
./src/CMakeLists.txt
./test/CMakeLists.txt
./test/CMakeTests.cmake
diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt
index a86bf4f..872e42d 100644
--- a/hl/src/CMakeLists.txt
+++ b/hl/src/CMakeLists.txt
@@ -13,6 +13,7 @@ set (HL_SRCS
${HDF5_HL_SRC_SOURCE_DIR}/H5LTparse.c
${HDF5_HL_SRC_SOURCE_DIR}/H5PT.c
${HDF5_HL_SRC_SOURCE_DIR}/H5TB.c
+ ${HDF5_HL_SRC_SOURCE_DIR}/H5LD.c
)
set (HL_HEADERS
@@ -24,6 +25,7 @@ set (HL_HEADERS
${HDF5_HL_SRC_SOURCE_DIR}/H5LTpublic.h
${HDF5_HL_SRC_SOURCE_DIR}/H5PTpublic.h
${HDF5_HL_SRC_SOURCE_DIR}/H5TBpublic.h
+ ${HDF5_HL_SRC_SOURCE_DIR}/H5LDpublic.h
${HDF5_HL_SRC_SOURCE_DIR}/hdf5_hl.h
)
diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt
index 73d1f22..8384b59 100644
--- a/hl/tools/CMakeLists.txt
+++ b/hl/tools/CMakeLists.txt
@@ -1,64 +1,6 @@
cmake_minimum_required (VERSION 3.1.0)
-PROJECT (HDF5_HL_TOOLS)
+PROJECT (HDF5_HL_TOOLS C CXX)
-#-----------------------------------------------------------------------------
-# Define Sources
-#-----------------------------------------------------------------------------
-set (GIF2H5_SRCS
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif.h
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/decompress.c
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif2hdf.c
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif2mem.c
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gifread.c
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/writehdf.c
-)
+add_subdirectory (${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5 ${HDF5_HL_TOOLS_BINARY_DIR}/gif2h5)
-#-- Add gif2hdf5 program
-INCLUDE_DIRECTORIES (${HDF5_TOOLS_SRC_DIR}/lib)
-INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5)
-
-add_executable (gif2h5 ${GIF2H5_SRCS})
-TARGET_NAMING (gif2h5 STATIC)
-TARGET_C_PROPERTIES (gif2h5 STATIC " " " ")
-target_link_libraries (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
-set_target_properties (gif2h5 PROPERTIES FOLDER tools/hl)
-
-#-- Add h52gif program
-set (hdf2gif_SRCS
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdf2gif.c
- ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdfgifwr.c
-)
-add_executable (h52gif ${hdf2gif_SRCS})
-TARGET_NAMING (h52gif STATIC)
-TARGET_C_PROPERTIES (h52gif STATIC " " " ")
-target_link_libraries (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
-set_target_properties (h52gif PROPERTIES FOLDER tools/hl)
-
-if (BUILD_TESTING)
- # --------------------------------------------------------------------
- # This executable can generate the actual test files - Currently not
- # used in the CMake Build system as we rely on the test files that are
- # shipped with HDF5 source archives
- # --------------------------------------------------------------------
- if (HDF5_BUILD_GENERATORS)
- add_executable (hl_h52gifgentest ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/h52gifgentst.c)
- TARGET_NAMING (hl_h52gifgentest STATIC)
- TARGET_C_PROPERTIES (hl_h52gifgentest STATIC " " " ")
- target_link_libraries (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
- set_target_properties (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl)
-
-# add_test (NAME hl_h52gifgentest COMMAND $<TARGET_FILE:hl_h52gifgentest>)
- endif (HDF5_BUILD_GENERATORS)
-
- include (CMakeTests.cmake)
-endif (BUILD_TESTING)
-
-#-----------------------------------------------------------------------------
-# Add file(s) to CMake Install
-#-----------------------------------------------------------------------------
-install (
- TARGETS
- gif2h5
- h52gif
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications
-)
+add_subdirectory (${HDF5_HL_TOOLS_SOURCE_DIR}/h5watch ${HDF5_HL_TOOLS_BINARY_DIR}/h5watch)
diff --git a/hl/tools/gif2h5/CMakeLists.txt b/hl/tools/gif2h5/CMakeLists.txt
new file mode 100644
index 0000000..d7c4319
--- /dev/null
+++ b/hl/tools/gif2h5/CMakeLists.txt
@@ -0,0 +1,64 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_HL_TOOLS_GIF2H5)
+
+#-----------------------------------------------------------------------------
+# Define Sources
+#-----------------------------------------------------------------------------
+set (GIF2H5_SRCS
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif.h
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/decompress.c
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif2hdf.c
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif2mem.c
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gifread.c
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/writehdf.c
+)
+
+#-- Add gif2hdf5 program
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR})
+
+add_executable (gif2h5 ${GIF2H5_SRCS})
+TARGET_NAMING (gif2h5 STATIC)
+TARGET_C_PROPERTIES (gif2h5 STATIC " " " ")
+target_link_libraries (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+set_target_properties (gif2h5 PROPERTIES FOLDER tools/hl)
+
+#-- Add h52gif program
+set (hdf2gif_SRCS
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/hdf2gif.c
+ ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/hdfgifwr.c
+)
+add_executable (h52gif ${hdf2gif_SRCS})
+TARGET_NAMING (h52gif STATIC)
+TARGET_C_PROPERTIES (h52gif STATIC " " " ")
+target_link_libraries (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+set_target_properties (h52gif PROPERTIES FOLDER tools/hl)
+
+if (BUILD_TESTING)
+ # --------------------------------------------------------------------
+ # This executable can generate the actual test files - Currently not
+ # used in the CMake Build system as we rely on the test files that are
+ # shipped with HDF5 source archives
+ # --------------------------------------------------------------------
+ if (HDF5_BUILD_GENERATORS)
+ add_executable (hl_h52gifgentest ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/h52gifgentst.c)
+ TARGET_NAMING (hl_h52gifgentest STATIC)
+ TARGET_C_PROPERTIES (hl_h52gifgentest STATIC " " " ")
+ target_link_libraries (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
+ set_target_properties (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl)
+
+# add_test (NAME hl_h52gifgentest COMMAND $<TARGET_FILE:hl_h52gifgentest>)
+ endif (HDF5_BUILD_GENERATORS)
+
+ include (CMakeTests.cmake)
+endif (BUILD_TESTING)
+
+#-----------------------------------------------------------------------------
+# Add file(s) to CMake Install
+#-----------------------------------------------------------------------------
+install (
+ TARGETS
+ gif2h5
+ h52gif
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications
+)
diff --git a/hl/tools/CMakeTests.cmake b/hl/tools/gif2h5/CMakeTests.cmake
index 4ebd7a2..832d2df 100644
--- a/hl/tools/CMakeTests.cmake
+++ b/hl/tools/gif2h5/CMakeTests.cmake
@@ -16,28 +16,28 @@ add_custom_command (
TARGET gif2h5
POST_BUILD
COMMAND ${CMAKE_COMMAND}
- ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/image1.gif ${PROJECT_BINARY_DIR}/testfiles/image1.gif
+ ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/image1.gif ${PROJECT_BINARY_DIR}/testfiles/image1.gif
)
add_custom_command (
TARGET h52gif
POST_BUILD
COMMAND ${CMAKE_COMMAND}
- ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/h52giftst.h5 ${PROJECT_BINARY_DIR}/testfiles/h52giftst.h5
+ ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/h52giftst.h5 ${PROJECT_BINARY_DIR}/testfiles/h52giftst.h5
)
add_custom_command (
TARGET h52gif
POST_BUILD
COMMAND ${CMAKE_COMMAND}
- ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/ex_image2.h5 ${PROJECT_BINARY_DIR}/testfiles/ex_image2.h5
+ ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/ex_image2.h5 ${PROJECT_BINARY_DIR}/testfiles/ex_image2.h5
)
# Remove any output file left over from previous test run
add_test (
NAME HL_TOOLS-clear-objects
COMMAND ${CMAKE_COMMAND}
- -E remove
+ -E remove
image1.gif
image1.h5
image.gif
diff --git a/hl/tools/h5watch/CMakeLists.txt b/hl/tools/h5watch/CMakeLists.txt
new file mode 100644
index 0000000..a016d53
--- /dev/null
+++ b/hl/tools/h5watch/CMakeLists.txt
@@ -0,0 +1,59 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_HL_TOOLS_H5WATCH)
+
+#-----------------------------------------------------------------------------
+# Define Sources
+#-----------------------------------------------------------------------------
+set (H5WATCH_SRCS
+ ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/h5watch
+)
+
+#-- Add h5watch program
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_DIR}/src)
+INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR})
+
+add_executable (h5watch ${H5WATCH_SRCS})
+TARGET_NAMING (h5watch STATIC)
+TARGET_C_PROPERTIES (h5watch STATIC " " " ")
+target_link_libraries (h5watch ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+set_target_properties (h5watch PROPERTIES FOLDER tools/hl)
+
+if (BUILD_TESTING)
+ #-- Add swmr_check_compat_vfd program
+ set (hl_swmr_check_compat_vfd_SRCS
+ ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/swmr_check_compat_vfd.c
+ )
+ add_executable (hl_swmr_check_compat_vfd ${hl_swmr_check_compat_vfd_SRCS})
+ TARGET_NAMING (hl_swmr_check_compat_vfd STATIC)
+ TARGET_C_PROPERTIES (hl_swmr_check_compat_vfd STATIC " " " ")
+ target_link_libraries (hl_swmr_check_compat_vfd ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (hl_swmr_check_compat_vfd PROPERTIES FOLDER tools/hl)
+
+ #-- Add extend_dset program
+ set (extend_dset_SRCS
+ ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/extend_dset.c
+ )
+ add_executable (extend_dset ${extend_dset_SRCS})
+ TARGET_NAMING (extend_dset STATIC)
+ TARGET_C_PROPERTIES (extend_dset STATIC " " " ")
+ target_link_libraries (extend_dset ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
+ set_target_properties (extend_dset PROPERTIES FOLDER tools/hl)
+
+ add_executable (h5watchgentest ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/h5watchgentest.c)
+ TARGET_NAMING (h5watchgentest STATIC)
+ TARGET_C_PROPERTIES (h5watchgentest STATIC " " " ")
+ target_link_libraries (h5watchgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
+ set_target_properties (h5watchgentest PROPERTIES FOLDER generator/tools/hl)
+
+ include (CMakeTests.cmake)
+endif (BUILD_TESTING)
+
+#-----------------------------------------------------------------------------
+# Add file(s) to CMake Install
+#-----------------------------------------------------------------------------
+install (
+ TARGETS
+ h5watch
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications
+)
diff --git a/hl/tools/h5watch/CMakeTests.cmake b/hl/tools/h5watch/CMakeTests.cmake
new file mode 100644
index 0000000..3242a72
--- /dev/null
+++ b/hl/tools/h5watch/CMakeTests.cmake
@@ -0,0 +1,191 @@
+
+##############################################################################
+##############################################################################
+### T E S T I N G ###
+##############################################################################
+##############################################################################
+
+set (H5WATCH_TEST_FILES
+ w-help1.ddl
+ w-err-cmpd1.ddl
+ w-err-cmpd2.ddl
+ w-err-cmpd3.ddl
+ w-err-cmpd4.ddl
+ w-err-cmpd5.ddl
+ w-err-dset1.ddl
+ w-err-dset2.ddl
+ w-err-dset-nomax.ddl
+ w-err-dset-none.ddl
+ w-err-file.ddl
+ w-err-poll.ddl
+ w-err-poll0.ddl
+ w-err-width.ddl
+ w-ext-cmpd.ddl
+ w-ext-cmpd-esc.ddl
+ w-ext-cmpd-esc-f1.ddl
+ w-ext-cmpd-esc-f3.ddl
+ w-ext-cmpd-esc-ff2.ddl
+ w-ext-cmpd-f1.ddl
+ w-ext-cmpd-f2.ddl
+ w-ext-cmpd-ff3.ddl
+ w-ext-cmpd-label.ddl
+ w-ext-cmpd-two.ddl
+ w-ext-cmpd-two-f1.ddl
+ w-ext-cmpd-two-f3.ddl
+ w-ext-cmpd-two-ff2.ddl
+ w-ext-early.ddl
+ w-ext-late.ddl
+ w-ext-one.ddl
+ w-ext-one-d.ddl
+ w-ext-one-simple.ddl
+ w-ext-two.ddl
+ w-ext-two-d.ddl
+ w-ext-two-width.ddl
+)
+
+# make test dir
+file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+add_custom_target(h5watch-files ALL COMMENT "Copying files needed by h5watch tests")
+
+foreach (h5watch_file ${H5WATCH_TEST_FILES})
+ set (dest "${PROJECT_BINARY_DIR}/testfiles/${h5watch_file}")
+ #message (STATUS " Copying ${h5watch_file}")
+ add_custom_command (
+ TARGET h5watch-files
+ POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS -E copy_if_different ${HDF5_HL_TOOLS_DIR}/testfiles/${h5watch_file} ${dest}
+ )
+endforeach (h5watch_file ${H5WATCH_TEST_FILES})
+
+##############################################################################
+##############################################################################
+### T H E T E S T S M A C R O S ###
+##############################################################################
+##############################################################################
+
+ MACRO (ADD_H5_TEST resultfile resultcode)
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5WATCH_ARGS-${resultfile}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove
+ ${resultfile}.out
+ ${resultfile}.out.err
+ )
+ set_tests_properties (H5WATCH_ARGS-${resultfile}-clear-objects PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5WATCH_ARGS-${resultfile}-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ set (last_test "H5WATCH_ARGS-${resultfile}-clearall-objects")
+ add_test (
+ NAME H5WATCH_ARGS-h5watch-${resultfile}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5watch>"
+ -D "TEST_ARGS:STRING=${ARGN}"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
+ -D "TEST_OUTPUT=${resultfile}.out"
+ -D "TEST_EXPECT=${resultcode}"
+ -D "TEST_REFERENCE=${resultfile}.ddl"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DEPENDS H5WATCH_ARGS-${resultfile}-clear-objects)
+ set (last_test "H5WATCH_ARGS-${resultfile}")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_TEST resultfile resultcode resultoption)
+
+ MACRO (ADD_H5_WATCH resultfile resultcode)
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5WATCH-${resultfile}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove
+ ${resultfile}.h5
+ ${resultfile}.out
+ ${resultfile}.out.err
+ )
+ set_tests_properties (H5WATCH-${resultfile}-clear-objects PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ add_test (
+ NAME H5WATCH-${resultfile}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5watch>"
+ -D "TEST_ARGS:STRING=${ARGN}"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
+ -D "TEST_OUTPUT=${resultfile}.out"
+ -D "TEST_EXPECT=${resultcode}"
+ -D "TEST_REFERENCE=${resultfile}.txt"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5WATCH-${resultfile} PROPERTIES DEPENDS H5WATCH-${resultfile}-clear-objects)
+ endif (NOTHDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_WATCH resultfile resultcode)
+
+##############################################################################
+##############################################################################
+### T H E T E S T S ###
+##############################################################################
+##############################################################################
+
+# Check to see if the VFD specified by the HDF5_DRIVER environment variable
+# supports SWMR.
+set (SWMR_INCOMPAT ${hl_swmr_check_compat_vfd})
+
+IF (NOT SWMR_INCOMPAT)
+# Remove any output file left over from previous test run
+ add_test (
+ NAME H5WATCH-clearall-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove
+ WATCH.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5WATCH-clearall-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ set (last_test "H5WATCH-clearall-objects")
+
+#################################################################################################
+# #
+# WATCH.h5: file with various types of datasets for testing-- #
+# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: #
+# DSET_ONE: one-dimensional dataset #
+# DSET_TWO: two-dimensional dataset #
+# DSET_CMPD: one-dimensional dataset with compound type #
+# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters #
+# DSET_CMPD_TWO: two-dimensional dataset with compound type #
+# #
+# The following datasets are one-dimensional, chunked, max. dimension setting: #
+# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY #
+# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE #
+# #
+# The following datasets are one-dimensional: #
+# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE #
+# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR #
+# #
+#################################################################################################
+# create the output files to be used.
+ add_test (NAME H5WATCH-h5watchgentest COMMAND $<TARGET_FILE:h5watchgentest>)
+ set_tests_properties (H5WATCH-h5watchgentest PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ set_tests_properties (H5WATCH-h5watchgentest PROPERTIES DEPENDS "H5WATCH-clearall-objects")
+ set (last_test "H5WATCH-h5watchgentest")
+
+# Test on --help options
+ ADD_H5_TEST(w-help1 0 --help)
+#
+# Tests on expected failures
+ ADD_H5_TEST(w-err-dset1 1 WATCH.h5)
+ ADD_H5_TEST(w-err-dset2 1 WATCH.h5/group/DSET_CMPD)
+ ADD_H5_TEST(w-err-dset-none 1 WATCH.h5/DSET_NONE)
+ ADD_H5_TEST(w-err-dset-nomax 1 WATCH.h5/DSET_NOMAX)
+ ADD_H5_TEST(w-err-file 1 ../WATCH.h5/DSET_CMPD)
+ ADD_H5_TEST(w-err-width 1 --width=-8 WATCH.h5/DSET_ONE)
+ ADD_H5_TEST(w-err-poll 1 --polling=-8 WATCH.h5/DSET_ONE)
+ ADD_H5_TEST(w-err-poll0 1 --polling=0 WATCH.h5/DSET_ONE)
+#
+# Tests on invalid field names via --fields option for a compound typed dataset: DSET_CMPD
+ ADD_H5_TEST(w-err-cmpd1 1 --fields=fieldx WATCH.h5/DSET_CMPD)
+ ADD_H5_TEST(w-err-cmpd2 1 --fields=field1,field2. WATCH.h5/DSET_CMPD)
+ ADD_H5_TEST(w-err-cmpd3 1 --fields=field1,field2, WATCH.h5/DSET_CMPD)
+ ADD_H5_TEST(w-err-cmpd4 1 --fields=field1,field2.b.k WATCH.h5/DSET_CMPD)
+ ADD_H5_TEST(w-err-cmpd5 1 --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD)
+#
+ENDIF (NOT SWMR_INCOMPAT)
diff --git a/hl/tools/h5watch/testh5watch.sh.in b/hl/tools/h5watch/testh5watch.sh.in
index ff31768..e7b91f2 100644
--- a/hl/tools/h5watch/testh5watch.sh.in
+++ b/hl/tools/h5watch/testh5watch.sh.in
@@ -30,16 +30,16 @@ if [[ $rc != 0 ]] ; then
exit 0
fi
-H5WATCH=h5watch # The tool name
-H5WATCH_BIN=`pwd`/$H5WATCH # The path of H5WATCH
-EXTEND_DSET=extend_dset # Routine to extend the dataset when watching
-EXTEND_BIN=`pwd`/$EXTEND_DSET # The path of EXTEND_DSET
+H5WATCH=h5watch # The tool name
+H5WATCH_BIN=`pwd`/$H5WATCH # The path of H5WATCH
+EXTEND_DSET=extend_dset # Routine to extend the dataset when watching
+EXTEND_BIN=`pwd`/$EXTEND_DSET # The path of EXTEND_DSET
#
EXIT_SUCCESS=0
EXIT_FAILURE=1
#
-GEN_TEST=h5watchgentest # Generate HDF5 file with various datasets
-GEN_TEST_BIN=`pwd`/$GEN_TEST # Path of the binary GEN_TEST
+GEN_TEST=h5watchgentest # Generate HDF5 file with various datasets
+GEN_TEST_BIN=`pwd`/$GEN_TEST # Path of the binary GEN_TEST
WATCHFILE=`pwd`/WATCH.h5 # The HDF5 file generated to test h5watch
TESTFILE=TEST.h5 # The temporary file (a copy of WATCH.h5) used by tests
#
@@ -50,7 +50,7 @@ MESSAGE_TIMEOUT=300 # Message timeout length in secs
#
CMP='cmp -s'
DIFF='diff -c'
-NLINES=20 # Max. lines of output to display if test fails
+NLINES=20 # Max. lines of output to display if test fails
#
# Mac OS: just to make sure echo "backslash backslash" behaves properly
if test `uname -s` = 'Darwin'; then
@@ -80,9 +80,9 @@ TESTING() {
# Overall algorithm:
#
# Run a test and print PASSED or FAILED
-# If a test did not return with the expected return code,
+# If a test did not return with the expected return code,
# increment the `nerrors' global variable and (if $verbose is set) display up to $NLINES
-# lines of the actual output from the test.
+# lines of the actual output from the test.
# If the test did return the expected code,
# compare the actual output with the expected output;
# If the outputs are the same, print PASSED,
@@ -109,35 +109,32 @@ TOOLTEST() {
# any unexpected output from that stream too.
TESTING $H5WATCH $@
(
- $ECHO "#############################"
- $ECHO " output for '$H5WATCH $@'"
- $ECHO "#############################"
$RUNSERIAL $H5WATCH_BIN "$@"
) > $actual 2>$actual_err
exitcode=$?
cat $actual_err >> $actual
if [ $exitcode -ne $retvalexpect ]; then
- $ECHO "*FAILED*"
- nerrors="`expr $nerrors + 1`"
- if [ yes = "$verbose" ]; then
- $ECHO "test returned with exit code $exitcode"
- $ECHO "test output: (up to $NLINES lines)"
- head -$NLINES $actual
- $ECHO "***end of test output***"
- $ECHO ""
- fi
+ $ECHO "*FAILED*"
+ nerrors="`expr $nerrors + 1`"
+ if [ yes = "$verbose" ]; then
+ $ECHO "test returned with exit code $exitcode"
+ $ECHO "test output: (up to $NLINES lines)"
+ head -$NLINES $actual
+ $ECHO "***end of test output***"
+ $ECHO ""
+ fi
elif $CMP $expect $actual; then
$ECHO " PASSED"
else
$ECHO "*FAILED*"
- $ECHO " Expected result differs from actual result"
- nerrors="`expr $nerrors + 1`"
- test yes = "$verbose" && $DIFF $expect $actual |sed 's/^/ /'
+ $ECHO " Expected result differs from actual result"
+ 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
+ rm -f $actual $actual_err
fi
}
#
@@ -170,17 +167,17 @@ TEST_WATCH() {
# Wait for message from "extend_dset" process to start h5watch--
# To wait for the writer message file or till the maximum # of seconds is reached
# This performs similar function as the routine h5_wait_message() in test/h5test.c
- mexist=0 # Indicate whether the message file is found
- t0=`date +%s` # Get current time in seconds
- difft=0 # Initialize the time difference
- while [ $difft -lt $MESSAGE_TIMEOUT ] ; # Loop till message times out
+ mexist=0 # Indicate whether the message file is found
+ t0=`date +%s` # Get current time in seconds
+ difft=0 # Initialize the time difference
+ while [ $difft -lt $MESSAGE_TIMEOUT ] ; # Loop till message times out
do
- t1=`date +%s` # Get current time in seconds
- difft=`expr $t1 - $t0` # Calculate the time difference
- if [ -e $WRITER_MESSAGE ]; then # If message file is found:
- mexist=1 # indicate the message file is found
- rm $WRITER_MESSAGE # remove the message file
- break # get out of the while loop
+ t1=`date +%s` # Get current time in seconds
+ difft=`expr $t1 - $t0` # Calculate the time difference
+ if [ -e $WRITER_MESSAGE ]; then # If message file is found:
+ mexist=1 # indicate the message file is found
+ rm $WRITER_MESSAGE # remove the message file
+ break # get out of the while loop
fi
done;
#
@@ -199,15 +196,14 @@ TEST_WATCH() {
#
# Run h5watch; put in background; collect output to a file
TESTING $H5WATCH $OBJ
- head -n 3 $expect > $actual # copy the first 3 lines from $expect (just the command line)
$RUNSERIAL $H5WATCH_BIN $2 "$TESTFILE/$1" >> $actual &
watch_pid=$! # Get h5watch process ID
cp /dev/null $READER_MESSAGE # Send message to "extend" process to start work
wait $extend_pid # Wait for "extend" process to complete
extend_exit=$? # Collect "extend" process' exit code
sleep 1 # Sleep to make sure output is flushed
- kill $watch_pid # Kill h5watch
- wait $watch_pid # Wait for "h5watch" process to complete
+ kill $watch_pid # Kill h5watch
+ wait $watch_pid # Wait for "h5watch" process to complete
#
if [ $extend_exit -ne 0 ]; then # Error returned from "extend" process
$ECHO "*FAILED*"
@@ -240,41 +236,41 @@ TEST_WATCH() {
##############################################################################
##############################################################################
-### T H E T E S T S ###
+### T H E T E S T S ###
##############################################################################
##############################################################################
#
#
#################################################################################################
-# #
-# WATCH.h5: file with various types of datasets for testing-- #
-# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: #
-# DSET_ONE: one-dimensional dataset #
-# DSET_TWO: two-dimensional dataset #
-# DSET_CMPD: one-dimensional dataset with compound type #
-# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters #
-# DSET_CMPD_TWO: two-dimensional dataset with compound type #
-# #
-# The following datasets are one-dimensional, chunked, max. dimension setting: #
-# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY #
-# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE #
-# #
-# The following datasets are one-dimensional: #
-# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE #
-# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR #
-# #
+# #
+# WATCH.h5: file with various types of datasets for testing-- #
+# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: #
+# DSET_ONE: one-dimensional dataset #
+# DSET_TWO: two-dimensional dataset #
+# DSET_CMPD: one-dimensional dataset with compound type #
+# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters #
+# DSET_CMPD_TWO: two-dimensional dataset with compound type #
+# #
+# The following datasets are one-dimensional, chunked, max. dimension setting: #
+# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY #
+# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE #
+# #
+# The following datasets are one-dimensional: #
+# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE #
+# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR #
+# #
#################################################################################################
#
#
#################################################################################################
-# #
-# Tests on expected failures: #
-# Invalid file name #
-# Unable to find dataset, invalid dataset #
-# DSET_NONE and DSET_NOMAX #
-# Invalid input to options --width and --polling #
-# Invalid field names for -f option #
-# #
+# #
+# Tests on expected failures: #
+# Invalid file name #
+# Unable to find dataset, invalid dataset #
+# DSET_NONE and DSET_NOMAX #
+# Invalid input to options --width and --polling #
+# Invalid field names for -f option #
+# #
#################################################################################################
#
# Generate file with various types of datasets
diff --git a/hl/tools/testfiles/w-err-cmpd1.ddl b/hl/tools/testfiles/w-err-cmpd1.ddl
index 2a3f796..775d6a0 100644
--- a/hl/tools/testfiles/w-err-cmpd1.ddl
+++ b/hl/tools/testfiles/w-err-cmpd1.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch --fields=fieldx WATCH.h5/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: error in processing <list_of_fields>
diff --git a/hl/tools/testfiles/w-err-cmpd2.ddl b/hl/tools/testfiles/w-err-cmpd2.ddl
index 4de3fe2..775d6a0 100644
--- a/hl/tools/testfiles/w-err-cmpd2.ddl
+++ b/hl/tools/testfiles/w-err-cmpd2.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch --fields=field1,field2. WATCH.h5/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: error in processing <list_of_fields>
diff --git a/hl/tools/testfiles/w-err-cmpd3.ddl b/hl/tools/testfiles/w-err-cmpd3.ddl
index f2f462e..775d6a0 100644
--- a/hl/tools/testfiles/w-err-cmpd3.ddl
+++ b/hl/tools/testfiles/w-err-cmpd3.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch --fields=field1,field2, WATCH.h5/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: error in processing <list_of_fields>
diff --git a/hl/tools/testfiles/w-err-cmpd4.ddl b/hl/tools/testfiles/w-err-cmpd4.ddl
index b11277b..775d6a0 100644
--- a/hl/tools/testfiles/w-err-cmpd4.ddl
+++ b/hl/tools/testfiles/w-err-cmpd4.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch --fields=field1,field2.b.k WATCH.h5/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: error in processing <list_of_fields>
diff --git a/hl/tools/testfiles/w-err-cmpd5.ddl b/hl/tools/testfiles/w-err-cmpd5.ddl
index 7174d14..775d6a0 100644
--- a/hl/tools/testfiles/w-err-cmpd5.ddl
+++ b/hl/tools/testfiles/w-err-cmpd5.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: error in processing <list_of_fields>
diff --git a/hl/tools/testfiles/w-err-dset-nomax.ddl b/hl/tools/testfiles/w-err-dset-nomax.ddl
index c2fd65f..b99cf84 100644
--- a/hl/tools/testfiles/w-err-dset-nomax.ddl
+++ b/hl/tools/testfiles/w-err-dset-nomax.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch WATCH.h5/DSET_NOMAX'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: "/DSET_NOMAX" should have unlimited or max. dimension setting
diff --git a/hl/tools/testfiles/w-err-dset-none.ddl b/hl/tools/testfiles/w-err-dset-none.ddl
index f9165aa..cbf6770 100644
--- a/hl/tools/testfiles/w-err-dset-none.ddl
+++ b/hl/tools/testfiles/w-err-dset-none.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch WATCH.h5/DSET_NONE'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: "/DSET_NONE" should be a chunked or virtual dataset
diff --git a/hl/tools/testfiles/w-err-dset1.ddl b/hl/tools/testfiles/w-err-dset1.ddl
index 0594562..433c4d6 100644
--- a/hl/tools/testfiles/w-err-dset1.ddl
+++ b/hl/tools/testfiles/w-err-dset1.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch WATCH.h5'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: no dataset specified
diff --git a/hl/tools/testfiles/w-err-dset2.ddl b/hl/tools/testfiles/w-err-dset2.ddl
index ce26109..81b52de 100644
--- a/hl/tools/testfiles/w-err-dset2.ddl
+++ b/hl/tools/testfiles/w-err-dset2.ddl
@@ -1,5 +1,2 @@
-#############################
- output for 'h5watch WATCH.h5/group/DSET_CMPD'
-#############################
Opened "WATCH.h5" with sec2 driver.
h5watch error: unable to open dataset "/group/DSET_CMPD"
diff --git a/hl/tools/testfiles/w-err-file.ddl b/hl/tools/testfiles/w-err-file.ddl
index 416fd44..015661f 100644
--- a/hl/tools/testfiles/w-err-file.ddl
+++ b/hl/tools/testfiles/w-err-file.ddl
@@ -1,4 +1 @@
-#############################
- output for 'h5watch ../WATCH.h5/DSET_CMPD'
-#############################
h5watch error: unable to open file "../WATCH.h5/DSET_CMPD"
diff --git a/hl/tools/testfiles/w-err-poll.ddl b/hl/tools/testfiles/w-err-poll.ddl
index 56c8d89..e6510f2 100644
--- a/hl/tools/testfiles/w-err-poll.ddl
+++ b/hl/tools/testfiles/w-err-poll.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --polling=-8 WATCH.h5/DSET_ONE'
-#############################
Usage: h5watch [OPTIONS] [OBJECT]
OPTIONS
diff --git a/hl/tools/testfiles/w-err-poll0.ddl b/hl/tools/testfiles/w-err-poll0.ddl
index ff6f322..e6510f2 100644
--- a/hl/tools/testfiles/w-err-poll0.ddl
+++ b/hl/tools/testfiles/w-err-poll0.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --polling=0 WATCH.h5/DSET_ONE'
-#############################
Usage: h5watch [OPTIONS] [OBJECT]
OPTIONS
diff --git a/hl/tools/testfiles/w-err-width.ddl b/hl/tools/testfiles/w-err-width.ddl
index bf405a4..e6510f2 100644
--- a/hl/tools/testfiles/w-err-width.ddl
+++ b/hl/tools/testfiles/w-err-width.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --width=-8 WATCH.h5/DSET_ONE'
-#############################
Usage: h5watch [OPTIONS] [OBJECT]
OPTIONS
diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl
index 6e1d2b5..d85594d 100644
--- a/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field\,1,field2\. TEST.h5/DSET_CMPD_ESC'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_ESC...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl
index 7623f3f..ab6c294 100644
--- a/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2\..\,b.a,field2\..\\K TEST.h5/DSET_CMPD_ESC'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_ESC...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl
index db331f0..039cbf3 100644
--- a/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2\..\,b --fields=field4\, TEST.h5/DSET_CMPD_ESC'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_ESC...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-esc.ddl b/hl/tools/testfiles/w-ext-cmpd-esc.ddl
index 66eb48c..900b3f2 100644
--- a/hl/tools/testfiles/w-ext-cmpd-esc.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-esc.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_CMPD_ESC'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_ESC...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-f1.ddl
index a722f68..7e0a066 100644
--- a/hl/tools/testfiles/w-ext-cmpd-f1.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-f1.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field1,field2 TEST.h5/DSET_CMPD'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-f2.ddl b/hl/tools/testfiles/w-ext-cmpd-f2.ddl
index b6561c5..ea69222 100644
--- a/hl/tools/testfiles/w-ext-cmpd-f2.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-f2.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2.b,field4 TEST.h5/DSET_CMPD'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-ff3.ddl b/hl/tools/testfiles/w-ext-cmpd-ff3.ddl
index c3d22f5..84e2919 100644
--- a/hl/tools/testfiles/w-ext-cmpd-ff3.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-ff3.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2.b.a --fields=field2.c TEST.h5/DSET_CMPD'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-label.ddl b/hl/tools/testfiles/w-ext-cmpd-label.ddl
index 63ac47e..84534ea 100644
--- a/hl/tools/testfiles/w-ext-cmpd-label.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-label.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --label TEST.h5/DSET_CMPD'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl
index a49f9f1..49abde9 100644
--- a/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field1,field2 TEST.h5/DSET_CMPD_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl b/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl
index a0ab9ac..0878f35 100644
--- a/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2.b.a,field2.c TEST.h5/DSET_CMPD_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl b/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl
index e32a818..669547e 100644
--- a/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --fields=field2.b --fields=field4 TEST.h5/DSET_CMPD_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd-two.ddl b/hl/tools/testfiles/w-ext-cmpd-two.ddl
index 90775e3..a461226 100644
--- a/hl/tools/testfiles/w-ext-cmpd-two.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd-two.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_CMPD_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-cmpd.ddl b/hl/tools/testfiles/w-ext-cmpd.ddl
index 5512d17..7e64a14 100644
--- a/hl/tools/testfiles/w-ext-cmpd.ddl
+++ b/hl/tools/testfiles/w-ext-cmpd.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_CMPD'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_CMPD...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-early.ddl b/hl/tools/testfiles/w-ext-early.ddl
index a822540..1d963d7 100644
--- a/hl/tools/testfiles/w-ext-early.ddl
+++ b/hl/tools/testfiles/w-ext-early.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_ALLOC_EARLY'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_ALLOC_EARLY...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-late.ddl b/hl/tools/testfiles/w-ext-late.ddl
index 724562f..f3a7cf2 100644
--- a/hl/tools/testfiles/w-ext-late.ddl
+++ b/hl/tools/testfiles/w-ext-late.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_ALLOC_LATE'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_ALLOC_LATE...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-one-d.ddl b/hl/tools/testfiles/w-ext-one-d.ddl
index 55d55ca..249ff95 100644
--- a/hl/tools/testfiles/w-ext-one-d.ddl
+++ b/hl/tools/testfiles/w-ext-one-d.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --dim TEST.h5/DSET_ONE'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_ONE...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-one-simple.ddl b/hl/tools/testfiles/w-ext-one-simple.ddl
index f657748..3bf0ef5 100644
--- a/hl/tools/testfiles/w-ext-one-simple.ddl
+++ b/hl/tools/testfiles/w-ext-one-simple.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --simple TEST.h5/DSET_ONE'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_ONE...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-one.ddl b/hl/tools/testfiles/w-ext-one.ddl
index b46392e..c4e75eb 100644
--- a/hl/tools/testfiles/w-ext-one.ddl
+++ b/hl/tools/testfiles/w-ext-one.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_ONE'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_ONE...
dimension 0: 10->13 (increases)
diff --git a/hl/tools/testfiles/w-ext-two-d.ddl b/hl/tools/testfiles/w-ext-two-d.ddl
index dda09e6..b71a9a6 100644
--- a/hl/tools/testfiles/w-ext-two-d.ddl
+++ b/hl/tools/testfiles/w-ext-two-d.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --dim TEST.h5/DSET_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-two-width.ddl b/hl/tools/testfiles/w-ext-two-width.ddl
index 47e9221..52903de 100644
--- a/hl/tools/testfiles/w-ext-two-width.ddl
+++ b/hl/tools/testfiles/w-ext-two-width.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --width=30 TEST.h5/DSET_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-ext-two.ddl b/hl/tools/testfiles/w-ext-two.ddl
index a98d333..31df8d5 100644
--- a/hl/tools/testfiles/w-ext-two.ddl
+++ b/hl/tools/testfiles/w-ext-two.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch TEST.h5/DSET_TWO'
-#############################
Opened "TEST.h5" with sec2 driver.
Monitoring dataset /DSET_TWO...
dimension 0: 4->6 (increases)
diff --git a/hl/tools/testfiles/w-help1.ddl b/hl/tools/testfiles/w-help1.ddl
index 8e75242..e6510f2 100644
--- a/hl/tools/testfiles/w-help1.ddl
+++ b/hl/tools/testfiles/w-help1.ddl
@@ -1,6 +1,3 @@
-#############################
- output for 'h5watch --help'
-#############################
Usage: h5watch [OPTIONS] [OBJECT]
OPTIONS
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index fd47379..0b6faa8 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -45,5 +45,8 @@ add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5stat)
#-- Add the h5dump and test executables
add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5dump)
+#-- Add the h5dump and test executables
+add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5format_convert)
+
#-- Add the perform and test executables
add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/perform)
diff --git a/tools/Makefile.in b/tools/Makefile.in
index 5604dbf..3d1791e 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -731,7 +731,9 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
CONFIG = ordered
# All subdirectories
-SUBDIRS = lib h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat h5format_convert perform
+SUBDIRS = lib h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat \
+ h5format_convert perform
+
# Automake needs to be taught how to build lib, progs, and tests targets.
# These will be filled in automatically for the most part (e.g.,
diff --git a/tools/h5format_convert/CMakeLists.txt b/tools/h5format_convert/CMakeLists.txt
new file mode 100644
index 0000000..4f6fdea
--- /dev/null
+++ b/tools/h5format_convert/CMakeLists.txt
@@ -0,0 +1,59 @@
+cmake_minimum_required (VERSION 3.1.0)
+PROJECT (HDF5_TOOLS_H5FC)
+
+#-----------------------------------------------------------------------------
+# Setup include Directories
+#-----------------------------------------------------------------------------
+INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib)
+
+# --------------------------------------------------------------------
+# Add the h5format_convert executables
+# --------------------------------------------------------------------
+add_executable (h5format_convert ${HDF5_TOOLS_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})
+set_target_properties (h5format_convert PROPERTIES FOLDER tools)
+
+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 ###
+##############################################################################
+##############################################################################
+
+#-----------------------------------------------------------------------------
+# Rules for Installation of tools using make Install target
+#-----------------------------------------------------------------------------
+
+#INSTALL_PROGRAM_PDB (h5format_convert ${HDF5_INSTALL_BIN_DIR} toolsapplications)
+
+install (
+ TARGETS
+ h5format_convert
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications
+)
diff --git a/tools/h5format_convert/CMakeTests.cmake b/tools/h5format_convert/CMakeTests.cmake
new file mode 100644
index 0000000..5771aa5
--- /dev/null
+++ b/tools/h5format_convert/CMakeTests.cmake
@@ -0,0 +1,463 @@
+
+##############################################################################
+##############################################################################
+### T E S T I N G ###
+##############################################################################
+##############################################################################
+
+ # --------------------------------------------------------------------
+ # Copy all the HDF5 files from the test directory into the source directory
+ # --------------------------------------------------------------------
+ set (HDF5_REFERENCE_FILES
+ h5fc_help.ddl
+ h5fc_nooption.ddl
+ h5fc_nonexistfile.ddl
+ h5fc_d_file.ddl
+ h5fc_dname.ddl
+ h5fc_nonexistdset_file.ddl
+ h5fc_v_non_chunked.ddl
+ h5fc_v_bt1.ddl
+ h5fc_v_ndata_bt1.ddl
+ h5fc_v_all.ddl
+ h5fc_v_n_1d.ddl
+ h5fc_v_n_all.ddl
+ h5fc_ext1_i.ddl
+ h5fc_ext1_s.ddl
+ h5fc_ext1_f.ddl
+ h5fc_ext2_if.ddl
+ h5fc_ext2_is.ddl
+ h5fc_ext2_sf.ddl
+ h5fc_ext3_isf.ddl
+ old_h5fc_ext1_i.ddl
+ old_h5fc_ext1_s.ddl
+ old_h5fc_ext1_f.ddl
+ old_h5fc_ext2_if.ddl
+ old_h5fc_ext2_is.ddl
+ old_h5fc_ext2_sf.ddl
+ old_h5fc_ext3_isf.ddl
+ )
+ set (HDF5_REFERENCE_TEST_FILES
+ h5fc_non_v3.h5
+ h5fc_edge_v3.h5
+ h5fc_ext_none.h5
+ old_h5fc_ext_none.h5
+ h5fc_ext1_i.h5
+ h5fc_ext1_s.h5
+ h5fc_ext1_f.h5
+ h5fc_ext2_if.h5
+ h5fc_ext2_is.h5
+ h5fc_ext2_sf.h5
+ h5fc_ext3_isf.h5
+ old_h5fc_ext1_i.h5
+ old_h5fc_ext1_s.h5
+ old_h5fc_ext1_f.h5
+ old_h5fc_ext2_if.h5
+ old_h5fc_ext2_is.h5
+ old_h5fc_ext2_sf.h5
+ old_h5fc_ext3_isf.h5
+ )
+
+ file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ add_custom_target(h5fc-files ALL COMMENT "Copying files needed by h5fc tests")
+
+ foreach (ddl_file ${HDF5_REFERENCE_FILES})
+ set (ddldest "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}")
+ #message (STATUS " Translating ${ddl_file}")
+ add_custom_command (
+ TARGET h5fc-files
+ POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${ddl_file} ${ddldest}
+ )
+ endforeach (ddl_file ${HDF5_REFERENCE_FILES})
+
+ foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
+ set (dest "${PROJECT_BINARY_DIR}/testfiles/${h5_file}")
+ #message (STATUS " Copying ${h5_file}")
+ add_custom_command (
+ TARGET h5fc-files
+ POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${h5_file} ${dest}
+ )
+ endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES})
+
+##############################################################################
+##############################################################################
+### T H E T E S T S M A C R O S ###
+##############################################################################
+##############################################################################
+
+ MACRO (ADD_H5_OUTPUT testname resultfile resultcode testfile)
+ # If using memchecker add tests without using scripts
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5FC-${testname}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/outtmp.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ if (NOT "${testfile}" STREQUAL "")
+ add_test (
+ NAME H5FC-${testname}-${testfile}-tmpfile
+ COMMAND ${CMAKE_COMMAND}
+ -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} ./testfiles/outtmp.h5
+ )
+ set_tests_properties (H5FC-${testname}-${testfile}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
+ add_test (
+ NAME H5FC-${testname}-${testfile}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5format_convert>"
+ -D "TEST_ARGS=${ARGN};outtmp.h5"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
+ -D "TEST_OUTPUT=${testname}.out"
+ -D "TEST_EXPECT=${resultcode}"
+ -D "TEST_REFERENCE=${resultfile}"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES DEPENDS "H5FC-${testname}-${testfile}-tmpfile")
+ set (last_test "H5FC-${testname}-${testfile}")
+ else (NOT "${testfile}" STREQUAL "")
+ add_test (
+ NAME H5FC-${testname}-NA
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5format_convert>"
+ -D "TEST_ARGS=${ARGN}"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
+ -D "TEST_OUTPUT=${testname}.out"
+ -D "TEST_EXPECT=${resultcode}"
+ -D "TEST_REFERENCE=${resultfile}"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC-${testname}-NA PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
+ set (last_test "H5FC-${testname}-NA")
+ endif (NOT "${testfile}" STREQUAL "")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_OUTPUT)
+
+ MACRO (ADD_H5_TEST testname resultcode testfile)
+ # If using memchecker add tests without using scripts
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5FC-${testname}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/tmp.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ add_test (
+ NAME H5FC-${testname}-tmpfile
+ COMMAND ${CMAKE_COMMAND}
+ -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/tmp.h5
+ )
+ set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
+ add_test (
+ NAME H5FC-${testname}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5format_convert>"
+ -D "TEST_ARGS=${ARGN};./testfiles/tmp.h5"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
+ -D "TEST_OUTPUT=testfiles/${testname}.out"
+ -D "TEST_SKIP_COMPARE=TRUE"
+ -D "TEST_EXPECT=${resultcode}"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile")
+ set (last_test "H5FC-${testname}")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_TEST)
+
+ MACRO (ADD_H5_CHECK_IDX dependtest testname)
+ # If using memchecker add tests without using scripts
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5FC_CHECK_IDX-${testname}
+ COMMAND "$<TARGET_FILE:h5fc_chk_idx>" "./testfiles/tmp.h5" "${ARGN}"
+ )
+ set_tests_properties (H5FC_CHECK_IDX-${testname} PROPERTIES DEPENDS "H5FC-${dependtest}")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_CHECK_IDX)
+
+ MACRO (ADD_H5_TEST_CHECK_IDX testname resultcode testfile)
+ # If using memchecker add tests without using scripts
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5FC-${testname}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/chktmp.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ add_test (
+ NAME H5FC-${testname}-tmpfile
+ COMMAND ${CMAKE_COMMAND}
+ -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/chktmp.h5
+ )
+ set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
+ add_test (
+ NAME H5FC-${testname}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5format_convert>"
+ -D "TEST_ARGS=-d;${ARGN};./testfiles/chktmp.h5"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
+ -D "TEST_OUTPUT=testfiles/${testname}.out"
+ -D "TEST_SKIP_COMPARE=TRUE"
+ -D "TEST_EXPECT=${resultcode}"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile")
+ add_test (
+ NAME H5FC_CHECK_IDX-${testname}
+ COMMAND "$<TARGET_FILE:h5fc_chk_idx>" "./testfiles/chktmp.h5" "${ARGN}"
+ )
+ set_tests_properties (H5FC_CHECK_IDX-${testname} PROPERTIES DEPENDS "H5FC-${testname}")
+ set (last_test "H5FC_CHECK_IDX-${testname}")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_TEST_CHECK_IDX)
+
+ MACRO (ADD_H5_H5DUMP_CHECK testname)
+ # If using memchecker add tests without using scripts
+ if (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ add_test (
+ NAME H5FC-${testname}-clear-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/dmptmp.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ add_test (
+ NAME H5FC-${testname}-tmpfile
+ COMMAND ${CMAKE_COMMAND}
+ -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testname}.h5 testfiles/dmptmp.h5
+ )
+ set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects")
+ add_test (
+ NAME H5FC-${testname}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5format_convert>"
+ -D "TEST_ARGS=${ARGN};./testfiles/dmptmp.h5"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
+ -D "TEST_OUTPUT=testfiles/${testname}.out"
+ -D "TEST_SKIP_COMPARE=TRUE"
+ -D "TEST_EXPECT=0"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile")
+ add_test (
+ NAME H5FC_CHECK_DUMP-${testname}
+ COMMAND "${CMAKE_COMMAND}"
+ -D "TEST_PROGRAM=$<TARGET_FILE:h5dump>"
+ -D "TEST_ARGS:STRING=-BH;./testfiles/dmptmp.h5"
+ -D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
+ -D "TEST_OUTPUT=testfiles/${testname}.out"
+ -D "TEST_EXPECT=0"
+ -D "TEST_REFERENCE=testfiles/${testname}.ddl"
+ -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
+ )
+ set_tests_properties (H5FC_CHECK_DUMP-${testname} PROPERTIES DEPENDS "H5FC-${testname}")
+ set (last_test "H5FC_CHECK_DUMP-${testname}")
+ endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ ENDMACRO (ADD_H5_H5DUMP_CHECK)
+
+##############################################################################
+##############################################################################
+### T H E T E S T S ###
+##############################################################################
+##############################################################################
+
+ if (HDF5_ENABLE_USING_MEMCHECKER)
+ # Remove any output file left over from previous test run
+ add_test (
+ NAME H5FC-clearall-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove
+ h5fc_help.out
+ h5fc_help.out.err
+ h5fc_nooption.out
+ h5fc_nooption.out.err
+ h5fc_nonexistfile.out
+ h5fc_nonexistfile.out.err
+ h5fc_d_file.out
+ h5fc_d_file.out.err
+ h5fc_d_file-d.out
+ h5fc_d_file-d.out.err
+ h5fc_dname.out
+ h5fc_dname.out.err
+ h5fc_nonexistdset_file.out
+ h5fc_nonexistdset_file.out.err
+ h5fc_v_non_chunked.out
+ h5fc_v_non_chunked.out.err
+ h5fc_v_bt1.out
+ h5fc_v_bt1.out.err
+ h5fc_v_ndata_bt1.out
+ h5fc_v_ndata_bt1.out.err
+ h5fc_v_all.out
+ h5fc_v_all.out.err
+ h5fc_v_n_1d.out
+ h5fc_v_n_1d.out.err
+ h5fc_v_n_all.out
+ h5fc_v_n_all.out.err
+ h5fc_ext1_i.out
+ h5fc_ext1_i.out.err
+ h5fc_ext1_s.out
+ h5fc_ext1_s.out.err
+ h5fc_ext1_f.out
+ h5fc_ext1_f.out.err
+ h5fc_ext2_if.out
+ h5fc_ext2_if.out.err
+ h5fc_ext2_is.out
+ h5fc_ext2_is.out.err
+ h5fc_ext2_sf.out
+ h5fc_ext2_sf.out.err
+ h5fc_ext3_isf.out
+ h5fc_ext3_isf.out.err
+ old_h5fc_ext1_i.out
+ old_h5fc_ext1_i.out.err
+ old_h5fc_ext1_s.out
+ old_h5fc_ext1_s.out.err
+ old_h5fc_ext1_f.out
+ old_h5fc_ext1_f.out.err
+ old_h5fc_ext2_if.out
+ old_h5fc_ext2_is.out.err
+ old_h5fc_ext2_is.out
+ old_h5fc_ext2_sf.out.err
+ old_h5fc_ext3_isf.out
+ old_h5fc_ext3_isf.out.err
+ outtmp.h5
+ tmp.h5
+ chktmp.h5
+ dmptmp.h5
+ )
+ if (NOT "${last_test}" STREQUAL "")
+ set_tests_properties (H5FC-clearall-objects PROPERTIES DEPENDS ${last_test})
+ endif (NOT "${last_test}" STREQUAL "")
+ set (last_test "H5FC-clearall-objects")
+ endif (HDF5_ENABLE_USING_MEMCHECKER)
+
+# h5format_convert --help
+# h5format_convert (no options)
+# h5format_convert nonexist.h5 (no options, file does not exist)
+ ADD_H5_OUTPUT (h5fc_help h5fc_help.ddl 0 "" --help)
+ ADD_H5_OUTPUT (h5fc_nooption h5fc_nooption.ddl 1 "")
+ ADD_H5_OUTPUT (h5fc_nonexistfile h5fc_nonexistfile.ddl 1 "" nonexist.h5)
+#
+#
+# h5format_convert -d old_h5fc_ext_none.h5 (just -d option, file exists)
+# h5format_convert --dname old_h5fc_ext_none.h5 (just --dname option, file exists)
+# h5format_convert --dname (just --dname option)
+# h5format_convert --dname=nonexist old_h5fc_ext_none.h5 (dataset does not exist, file exists)
+ ADD_H5_OUTPUT (h5fc_d_file-d h5fc_d_file.ddl 1 old_h5fc_ext_none.h5 -d)
+ ADD_H5_OUTPUT (h5fc_d_file h5fc_d_file.ddl 1 old_h5fc_ext_none.h5 --dname)
+ ADD_H5_OUTPUT (h5fc_dname h5fc_dname.ddl 1 "" --dname)
+ ADD_H5_OUTPUT (h5fc_nonexistdset_file h5fc_nonexistdset_file.ddl 1 old_h5fc_ext_none.h5 --dname=nonexist)
+#
+#
+#
+# h5format_convert -d /DSET_CONTIGUOUS -v old_h5fc_ext_none.h5 (verbose, contiguous dataset)
+# h5format_convert -d /GROUP/DSET_BT2 --verbose old_h5fc_ext_none.h5 (verbose, bt1 dataset)
+# h5format_convert -d /DSET_NDATA_BT2 -v -n old_h5fc_ext_none.h5 (verbose, noop, bt1+nodata dataset)
+# h5format_convert -v old_h5fc_ext_none.h5 (verbose, all datasets)
+ ADD_H5_OUTPUT (h5fc_v_non_chunked h5fc_v_non_chunked.ddl 0 old_h5fc_ext_none.h5 -d /DSET_CONTIGUOUS -v)
+ ADD_H5_OUTPUT (h5fc_v_bt1 h5fc_v_bt1.ddl 0 old_h5fc_ext_none.h5 -d /GROUP/DSET_BT2 --verbose)
+ ADD_H5_OUTPUT (h5fc_v_ndata_bt1 h5fc_v_ndata_bt1.ddl 0 old_h5fc_ext_none.h5 -d /DSET_NDATA_BT2 -v -n)
+ ADD_H5_OUTPUT (h5fc_v_all h5fc_v_all.ddl 0 old_h5fc_ext_none.h5 -v)
+#
+#
+#
+# h5format_convert -d /DSET_EA -v -n h5fc_ext_none.h5 (verbose, noop, one ea dataset)
+# h5format_convert -v -n h5fc_non_v3.h5 (verbose, noop, all datasets)
+ ADD_H5_OUTPUT (h5fc_v_n_1d h5fc_v_n_1d.ddl 0 h5fc_ext_none.h5 -d /DSET_EA -v -n)
+ ADD_H5_OUTPUT (h5fc_v_n_all h5fc_v_n_all.ddl 0 h5fc_non_v3.h5 -v -n)
+# No output from tests
+# 1) Use the tool to convert the dataset
+# 2) Verify the chunk indexing type is correct
+# h5format_convert -d /DSET_EA h5fc_ext_none.h5
+# h5format_convert -d /GROUP/DSET_NDATA_EA h5fc_ext_none.h5
+# h5format_convert -d /GROUP/DSET_BT2 h5fc_ext_none.h5
+# h5format_convert -d /DSET_NDATA_BT2 h5fc_ext_none.h5
+# h5format_convert -d /DSET_FA h5fc_ext_none.h5
+# h5format_convert -d /GROUP/DSET_FA h5fc_ext_none.h5
+# h5format_convert -d /DSET_NONE h5fc_ext_none.h5
+# h5format_convert -d /GROUP/DSET_NDATA_NONE h5fc_ext_none.h5
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_EA 0 h5fc_ext_none.h5 /DSET_EA)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_EA 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_EA)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_BT 0 h5fc_ext_none.h5 /GROUP/DSET_BT2)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_BT 0 h5fc_ext_none.h5 /DSET_NDATA_BT2)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_FA 0 h5fc_ext_none.h5 /DSET_FA)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_FA 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_FA)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_NONE 0 h5fc_ext_none.h5 /DSET_NONE)
+#
+ ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_NONE 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_NONE)
+#
+#
+#
+# No output from tests: just check exit code
+# h5format_convert -d /DSET_NDATA_BT2 old_h5fc_ext_none.h5 (v1-btree dataset)
+# h5format_convert -d /DSET_CONTIGUOUS h5fc_non_v3.h5 (non-chunked dataset)
+ ADD_H5_TEST (old_h5fc_ext_none 0 old_h5fc_ext_none.h5 -d /DSET_NDATA_BT2)
+ ADD_H5_TEST (old_h5fc_ext_none_CONT 0 h5fc_non_v3.h5 -d /DSET_CONTIGUOUS)
+#
+#
+#
+# No output from tests: just check exit code
+# h5format_convert -d /GROUP/DSET_BT2 -n h5fc_non_v3.h5 (noop, one dataset)
+# h5format_convert -n h5fc_non_v3.h5 (noop, all datasets)
+ ADD_H5_TEST (h5fc_non_v3_BT 0 h5fc_non_v3.h5 -d /GROUP/DSET_BT2 -n)
+ ADD_H5_TEST (h5fc_non_v3-n 0 h5fc_non_v3.h5 -n)
+#
+#
+#
+# No output from tests: just check exit code
+# h5format_convert h5fc_non_v3.h5
+# 1) convert all datasets
+# 2) verify indexing types
+ ADD_H5_TEST (h5fc_non_v3 0 h5fc_non_v3.h5)
+ ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-NEA /DSET_NDATA_EA)
+ ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-NBT /DSET_NDATA_BT2)
+ ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-BT /GROUP/DSET_BT2)
+ ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-EA /GROUP/DSET_EA)
+#
+#
+#
+# No output from test: just check exit code
+# h5format_convert h5fc_edge_v3.h5
+# 1) convert the chunked dataset (filter, no-filter-edge-chunk)
+# 2) verify the indexing type
+ ADD_H5_TEST_CHECK_IDX (h5fc_edge_v3 0 h5fc_edge_v3.h5 /DSET_EDGE)
+#
+#
+
+# The following test files have messages in the superblock extension.
+# Verify h5dump output for correctness after conversion
+ ADD_H5_H5DUMP_CHECK (h5fc_ext1_i)
+ ADD_H5_H5DUMP_CHECK (h5fc_ext1_s)
+ ADD_H5_H5DUMP_CHECK (h5fc_ext1_f)
+#
+ ADD_H5_H5DUMP_CHECK (h5fc_ext2_if)
+ ADD_H5_H5DUMP_CHECK (h5fc_ext2_is)
+ ADD_H5_H5DUMP_CHECK (h5fc_ext2_sf)
+#
+ ADD_H5_H5DUMP_CHECK (h5fc_ext3_isf)
+#
+#
+#
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_i)
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_s)
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_f)
+#
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_if)
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_is)
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_sf)
+#
+ ADD_H5_H5DUMP_CHECK (old_h5fc_ext3_isf)
diff --git a/tools/h5format_convert/h5format_convert.c b/tools/h5format_convert/h5format_convert.c
index 105ac5d..2d7b721 100644
--- a/tools/h5format_convert/h5format_convert.c
+++ b/tools/h5format_convert/h5format_convert.c
@@ -20,7 +20,7 @@
/*
* We include the private header file so we can get to the uniform
- * programming environment it declares.
+ * programming environment it declares.
* HDF5 API functions (except for H5G_basename())
*/
#include "H5private.h"
@@ -44,13 +44,13 @@ static int verbose_g = 0;
static const char *s_opts = "hVvd:n";
static struct long_options l_opts[] = {
{ "help", no_arg, 'h' },
- { "hel", no_arg, 'h'},
- { "he", no_arg, 'h'},
+ { "hel", no_arg, 'h'},
+ { "he", no_arg, 'h'},
{ "version", no_arg, 'V' },
- { "version", no_arg, 'V' },
- { "versio", no_arg, 'V' },
- { "versi", no_arg, 'V' },
- { "vers", no_arg, 'V' },
+ { "version", no_arg, 'V' },
+ { "versio", no_arg, 'V' },
+ { "versi", no_arg, 'V' },
+ { "vers", no_arg, 'V' },
{ "verbose", no_arg, 'v' },
{ "verbos", no_arg, 'v' },
{ "verbo", no_arg, 'v' },
@@ -75,33 +75,33 @@ static struct long_options l_opts[] = {
*
*-------------------------------------------------------------------------
*/
-static void usage(const char *prog)
+static void usage(const char *prog)
{
- printf("usage: %s [OPTIONS] file_name\n", prog);
- printf(" OPTIONS\n");
- printf(" -h, --help Print a usage message and exit\n");
- printf(" -V, --version Print version number and exit\n");
- printf(" -v, --verbose Turn on verbose mode\n");
- printf(" -d dname, --dname=dataset_name Pathname for the dataset\n");
- printf(" -n, --noop Perform all the steps except the actual conversion\n");
- printf("\n");
- printf("Examples of use:\n");
- printf("\n");
- printf("h5format_convert -d /group/dataset file_name\n");
- printf(" Convert the dataset </group/dataset> in the HDF5 file <file_name>:\n");
- printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n");
- printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n");
- printf(" c. virtual dataset: no action\n");
- printf("\n");
- printf("h5format_convert file_name\n");
- printf(" Convert all datasets in the HDF5 file <file_name>:\n");
- printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n");
- printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n");
- printf(" c. virtual dataset: no action\n");
- printf("\n");
- printf("h5format_convert -n -d /group/dataset file_name\n");
- printf(" Go through all the steps except the actual conversion when \n");
- printf(" converting the dataset </group/dataset> in the HDF5 file <file_name>.\n");
+ printf("usage: %s [OPTIONS] file_name\n", prog);
+ printf(" OPTIONS\n");
+ printf(" -h, --help Print a usage message and exit\n");
+ printf(" -V, --version Print version number and exit\n");
+ printf(" -v, --verbose Turn on verbose mode\n");
+ printf(" -d dname, --dname=dataset_name Pathname for the dataset\n");
+ printf(" -n, --noop Perform all the steps except the actual conversion\n");
+ printf("\n");
+ printf("Examples of use:\n");
+ printf("\n");
+ printf("h5format_convert -d /group/dataset file_name\n");
+ printf(" Convert the dataset </group/dataset> in the HDF5 file <file_name>:\n");
+ printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n");
+ printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n");
+ printf(" c. virtual dataset: no action\n");
+ printf("\n");
+ printf("h5format_convert file_name\n");
+ printf(" Convert all datasets in the HDF5 file <file_name>:\n");
+ printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n");
+ printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n");
+ printf(" c. virtual dataset: no action\n");
+ printf("\n");
+ printf("h5format_convert -n -d /group/dataset file_name\n");
+ printf(" Go through all the steps except the actual conversion when \n");
+ printf(" converting the dataset </group/dataset> in the HDF5 file <file_name>.\n");
} /* usage() */
/*-------------------------------------------------------------------------
@@ -110,68 +110,68 @@ static void usage(const char *prog)
* Purpose: parse command line input
*
* Return: Success: 0
- * Failure: 1
+ * Failure: 1
*
*-------------------------------------------------------------------------
*/
static int
-parse_command_line(int argc, const char **argv)
+parse_command_line(int argc, const char **argv)
{
int opt;
/* no arguments */
if (argc == 1) {
usage(h5tools_getprogname());
- h5tools_setstatus(EXIT_FAILURE);
+ h5tools_setstatus(EXIT_FAILURE);
goto error;
}
/* parse command line options */
while ((opt = get_option(argc, argv, s_opts, l_opts)) != EOF) {
- switch((char) opt) {
- case 'h':
- usage(h5tools_getprogname());
- h5tools_setstatus(EXIT_SUCCESS);
- goto error;
-
- case 'V':
- print_version(h5tools_getprogname());
- h5tools_setstatus(EXIT_SUCCESS);
- goto error;
-
- case 'v':
- verbose_g = TRUE;
- break;
-
- case 'd': /* -d dname */
- if(opt_arg != NULL && *opt_arg)
- /* if(opt_arg != NULL)*/
- dname_g = HDstrdup(opt_arg);
- if(dname_g == NULL) {
- h5tools_setstatus(EXIT_FAILURE);
- error_msg("No dataset name\n", opt_arg);
- usage(h5tools_getprogname());
- goto error;
- }
- dset_g = TRUE;
- break;
-
- case 'n': /* -n */
- noop_g = TRUE;
- break;
-
- default:
- h5tools_setstatus(EXIT_FAILURE);
- usage(h5tools_getprogname());
- goto error;
- break;
- } /* switch */
+ switch((char) opt) {
+ case 'h':
+ usage(h5tools_getprogname());
+ h5tools_setstatus(EXIT_SUCCESS);
+ goto error;
+
+ case 'V':
+ print_version(h5tools_getprogname());
+ h5tools_setstatus(EXIT_SUCCESS);
+ goto error;
+
+ case 'v':
+ verbose_g = TRUE;
+ break;
+
+ case 'd': /* -d dname */
+ if(opt_arg != NULL && *opt_arg)
+ /* if(opt_arg != NULL)*/
+ dname_g = HDstrdup(opt_arg);
+ if(dname_g == NULL) {
+ h5tools_setstatus(EXIT_FAILURE);
+ error_msg("No dataset name\n", opt_arg);
+ usage(h5tools_getprogname());
+ goto error;
+ }
+ dset_g = TRUE;
+ break;
+
+ case 'n': /* -n */
+ noop_g = TRUE;
+ break;
+
+ default:
+ h5tools_setstatus(EXIT_FAILURE);
+ usage(h5tools_getprogname());
+ goto error;
+ break;
+ } /* switch */
} /* while */
if (argc <= opt_ind) {
error_msg("missing file name\n");
usage(h5tools_getprogname());
- h5tools_setstatus(EXIT_FAILURE);
+ h5tools_setstatus(EXIT_FAILURE);
goto error;
}
@@ -205,17 +205,17 @@ leave(int ret)
* Function: convert()
*
* Purpose: To downgrade a dataset's indexing type or layout version:
- * For chunked:
- * Downgrade the chunk indexing type to version 1 B-tree
- * If type is already version 1 B-tree, no further action
- * For compact/contiguous:
- * Downgrade the layout version from 4 to 3
- * If version is already <= 3, no further action
- * For virtual:
- * No further action
+ * For chunked:
+ * Downgrade the chunk indexing type to version 1 B-tree
+ * If type is already version 1 B-tree, no further action
+ * For compact/contiguous:
+ * Downgrade the layout version from 4 to 3
+ * If version is already <= 3, no further action
+ * For virtual:
+ * No further action
*
* Return: Success: 0
- * Failure: 1
+ * Failure: 1
*
*-------------------------------------------------------------------------
*/
@@ -229,114 +229,114 @@ convert(hid_t fid, const char *dname)
/* Open the dataset */
if((did = H5Dopen2(fid, dname, H5P_DEFAULT)) < 0) {
- error_msg("unable to open dataset \"%s\"\n", dname);
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ error_msg("unable to open dataset \"%s\"\n", dname);
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
} else if(verbose_g)
- printf("Open the dataset\n");
+ printf("Open the dataset\n");
/* Get the dataset's creation property list */
if((dcpl = H5Dget_create_plist(did)) < 0) {
- error_msg("unable to get the dataset creation property list\n");
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ error_msg("unable to get the dataset creation property list\n");
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
}
/* Get the dataset's layout */
if((layout_type = H5Pget_layout(dcpl)) < 0) {
- error_msg("unable to get the dataset layout type\n");
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ error_msg("unable to get the dataset layout type\n");
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
} else if(verbose_g)
- printf("Retrieve the dataset's layout\n");
+ printf("Retrieve the dataset's layout\n");
switch(layout_type) {
- case H5D_CHUNKED:
- if(verbose_g)
- printf("Dataset is a chunked dataset\n");
-
- /* Get the dataset's chunk indexing type */
- if(H5Dget_chunk_index_type(did, &idx_type) < 0) {
- error_msg("unable to get the chunk indexing type for \"%s\"\n", dname);
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
- } else if(verbose_g)
- printf("Retrieve the dataset's chunk indexing type\n");
-
- if(idx_type == H5D_CHUNK_IDX_BTREE) {
- if(verbose_g)
- printf("Dataset's chunk indexing type is already version 1 B-tree: no further action\n");
- h5tools_setstatus(EXIT_SUCCESS);
- goto done;
- } else if (verbose_g)
- printf("Dataset's chunk indexing type is not version 1 B-tree\n");
- break;
-
- case H5D_CONTIGUOUS:
- if(verbose_g)
- printf("Dataset is a contiguous dataset: downgrade layout version as needed\n");
- break;
+ case H5D_CHUNKED:
+ if(verbose_g)
+ printf("Dataset is a chunked dataset\n");
+
+ /* Get the dataset's chunk indexing type */
+ if(H5Dget_chunk_index_type(did, &idx_type) < 0) {
+ error_msg("unable to get the chunk indexing type for \"%s\"\n", dname);
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
+ } else if(verbose_g)
+ printf("Retrieve the dataset's chunk indexing type\n");
+
+ if(idx_type == H5D_CHUNK_IDX_BTREE) {
+ if(verbose_g)
+ printf("Dataset's chunk indexing type is already version 1 B-tree: no further action\n");
+ h5tools_setstatus(EXIT_SUCCESS);
+ goto done;
+ } else if (verbose_g)
+ printf("Dataset's chunk indexing type is not version 1 B-tree\n");
+ break;
+
+ case H5D_CONTIGUOUS:
+ if(verbose_g)
+ printf("Dataset is a contiguous dataset: downgrade layout version as needed\n");
+ break;
case H5D_COMPACT:
- if(verbose_g)
- printf("Dataset is a compact dataset: downgrade layout version as needed\n");
- break;
+ if(verbose_g)
+ printf("Dataset is a compact dataset: downgrade layout version as needed\n");
+ break;
case H5D_VIRTUAL:
- if(verbose_g)
- printf("No further action for virtual dataset\n");
- goto done;
+ if(verbose_g)
+ printf("No further action for virtual dataset\n");
+ goto done;
- default:
- error_msg("unknown layout type for \"%s\"\n", dname);
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ default:
+ error_msg("unknown layout type for \"%s\"\n", dname);
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
} /* end switch */
/* No further action if it is a noop */
if(noop_g) {
- if(verbose_g)
- printf("Not converting the dataset\n");
- h5tools_setstatus(EXIT_SUCCESS);
- goto done;
+ if(verbose_g)
+ printf("Not converting the dataset\n");
+ h5tools_setstatus(EXIT_SUCCESS);
+ goto done;
}
if(verbose_g)
- printf("Converting the dataset...\n");
+ printf("Converting the dataset...\n");
/* Downgrade the dataset */
if(H5Dformat_convert(did) < 0) {
- error_msg("unable to downgrade dataset for \"%s\"\n", dname);
- h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ error_msg("unable to downgrade dataset for \"%s\"\n", dname);
+ h5tools_setstatus(EXIT_FAILURE);
+ goto error;
} else if(verbose_g)
- printf("Done\n");
+ printf("Done\n");
done:
/* Close the dataset */
if(H5Dclose(did) < 0) {
error_msg("unable to close dataset \"%s\"\n", dname);
h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ goto error;
} else if(verbose_g)
- printf("Close the dataset\n");
-
+ printf("Close the dataset\n");
+
/* Close the dataset creation property list */
if(H5Pclose(dcpl) < 0) {
error_msg("unable to close dataset creation property list\n");
h5tools_setstatus(EXIT_FAILURE);
- goto error;
+ goto error;
} else if(verbose_g)
- printf("Close the dataset creation property list\n");
+ printf("Close the dataset creation property list\n");
return(0);
error:
if(verbose_g)
- printf("Error encountered\n");
+ printf("Error encountered\n");
H5E_BEGIN_TRY {
H5Pclose(dcpl);
@@ -351,10 +351,10 @@ error:
* Function: convert_dsets_cb()
*
* Purpose: The callback routine from the traversal to convert the
- * chunk indexing type of the dataset object.
+ * chunk indexing type of the dataset object.
*
* Return: Success: 0
- * Failure: 1
+ * Failure: 1
*-------------------------------------------------------------------------
*/
static int
@@ -366,11 +366,11 @@ convert_dsets_cb(const char *path, const H5O_info_t *oi, const char *already_vis
if(NULL == already_visited) {
if(oi->type == H5O_TYPE_DATASET) {
- if(verbose_g)
- printf("Going to process dataset:%s...\n", path);
- if(convert(fid, path) < 0)
- goto error;
- }
+ if(verbose_g)
+ printf("Going to process dataset:%s...\n", path);
+ if(convert(fid, path) < 0)
+ goto error;
+ }
} /* end if */
@@ -386,10 +386,10 @@ error:
* Function: main
*
* Purpose: To convert the chunk indexing type of a dataset in a file to
- * version 1 B-tree.
+ * version 1 B-tree.
*
* Return: Success: 0
- * Failure: 1
+ * Failure: 1
*
*-------------------------------------------------------------------------
*/
@@ -412,31 +412,31 @@ main(int argc, const char *argv[])
/* Parse command line options */
if(parse_command_line(argc, argv) < 0)
- goto done;
+ goto done;
else if(verbose_g)
- printf("Process command line options\n");
+ printf("Process command line options\n");
if(noop_g && verbose_g)
- printf("It is noop...\n");
+ printf("It is noop...\n");
/* Open the HDF5 file */
if((fid = h5tools_fopen(fname_g, H5F_ACC_RDWR, H5P_DEFAULT, NULL, NULL, 0)) < 0) {
- error_msg("unable to open file \"%s\"\n", fname_g);
- h5tools_setstatus(EXIT_FAILURE);
- goto done;
+ error_msg("unable to open file \"%s\"\n", fname_g);
+ h5tools_setstatus(EXIT_FAILURE);
+ goto done;
} else if(verbose_g)
- printf("Open the file %s\n", fname_g);
+ printf("Open the file %s\n", fname_g);
if(dset_g) { /* Convert a specified dataset in the file */
- if(verbose_g)
- printf("Going to process dataset: %s...\n", dname_g);
- if(convert(fid, dname_g) < 0)
- goto done;
+ if(verbose_g)
+ printf("Going to process dataset: %s...\n", dname_g);
+ if(convert(fid, dname_g) < 0)
+ goto done;
} else { /* Convert all datasets in the file */
- if(verbose_g)
- printf("Processing all datasets in the file...\n");
- if(h5trav_visit(fid, "/", TRUE, TRUE, convert_dsets_cb, NULL, &fid) < 0)
- goto done;
+ if(verbose_g)
+ printf("Processing all datasets in the file...\n");
+ if(h5trav_visit(fid, "/", TRUE, TRUE, convert_dsets_cb, NULL, &fid) < 0)
+ goto done;
}
if(verbose_g) {
@@ -458,18 +458,18 @@ main(int argc, const char *argv[])
done:
/* Close the file */
if(fid >= 0) {
- if(H5Fclose(fid) < 0) {
- error_msg("unable to close file \"%s\"\n", fname_g);
- h5tools_setstatus(EXIT_FAILURE);
- } else if(verbose_g)
- printf("Close the file\n");
- }
+ if(H5Fclose(fid) < 0) {
+ error_msg("unable to close file \"%s\"\n", fname_g);
+ h5tools_setstatus(EXIT_FAILURE);
+ } else if(verbose_g)
+ printf("Close the file\n");
+ }
if(fname_g)
- HDfree(fname_g);
+ HDfree(fname_g);
if(dname_g)
- HDfree(dname_g);
-
+ HDfree(dname_g);
+
H5Eset_auto2(H5E_DEFAULT, func, edata);
leave(h5tools_getstatus());
diff --git a/tools/h5format_convert/testfiles/h5fc_d_file.ddl b/tools/h5format_convert/testfiles/h5fc_d_file.ddl
index ad7a2f4..38fc432 100644
--- a/tools/h5format_convert/testfiles/h5fc_d_file.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_d_file.ddl
@@ -1,10 +1,10 @@
usage: h5format_convert [OPTIONS] file_name
OPTIONS
- -h, --help Print a usage message and exit
- -V, --version Print version number and exit
- -v, --verbose Turn on verbose mode
- -d dname, --dname=dataset_name Pathname for the dataset
- -n, --noop Perform all the steps except the actual conversion
+ -h, --help Print a usage message and exit
+ -V, --version Print version number and exit
+ -v, --verbose Turn on verbose mode
+ -d dname, --dname=dataset_name Pathname for the dataset
+ -n, --noop Perform all the steps except the actual conversion
Examples of use:
diff --git a/tools/h5format_convert/testfiles/h5fc_dname.ddl b/tools/h5format_convert/testfiles/h5fc_dname.ddl
index 0de42cb..48564b7 100644
--- a/tools/h5format_convert/testfiles/h5fc_dname.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_dname.ddl
@@ -1,10 +1,10 @@
usage: h5format_convert [OPTIONS] file_name
OPTIONS
- -h, --help Print a usage message and exit
- -V, --version Print version number and exit
- -v, --verbose Turn on verbose mode
- -d dname, --dname=dataset_name Pathname for the dataset
- -n, --noop Perform all the steps except the actual conversion
+ -h, --help Print a usage message and exit
+ -V, --version Print version number and exit
+ -v, --verbose Turn on verbose mode
+ -d dname, --dname=dataset_name Pathname for the dataset
+ -n, --noop Perform all the steps except the actual conversion
Examples of use:
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl b/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/h5fc_help.ddl b/tools/h5format_convert/testfiles/h5fc_help.ddl
index aef8c63..bc0229c 100644
--- a/tools/h5format_convert/testfiles/h5fc_help.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_help.ddl
@@ -1,10 +1,10 @@
usage: h5format_convert [OPTIONS] file_name
OPTIONS
- -h, --help Print a usage message and exit
- -V, --version Print version number and exit
- -v, --verbose Turn on verbose mode
- -d dname, --dname=dataset_name Pathname for the dataset
- -n, --noop Perform all the steps except the actual conversion
+ -h, --help Print a usage message and exit
+ -V, --version Print version number and exit
+ -v, --verbose Turn on verbose mode
+ -d dname, --dname=dataset_name Pathname for the dataset
+ -n, --noop Perform all the steps except the actual conversion
Examples of use:
diff --git a/tools/h5format_convert/testfiles/h5fc_nooption.ddl b/tools/h5format_convert/testfiles/h5fc_nooption.ddl
index aef8c63..bc0229c 100644
--- a/tools/h5format_convert/testfiles/h5fc_nooption.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_nooption.ddl
@@ -1,10 +1,10 @@
usage: h5format_convert [OPTIONS] file_name
OPTIONS
- -h, --help Print a usage message and exit
- -V, --version Print version number and exit
- -v, --verbose Turn on verbose mode
- -d dname, --dname=dataset_name Pathname for the dataset
- -n, --noop Perform all the steps except the actual conversion
+ -h, --help Print a usage message and exit
+ -V, --version Print version number and exit
+ -v, --verbose Turn on verbose mode
+ -d dname, --dname=dataset_name Pathname for the dataset
+ -n, --noop Perform all the steps except the actual conversion
Examples of use:
diff --git a/tools/h5format_convert/testfiles/h5fc_v_all.ddl b/tools/h5format_convert/testfiles/h5fc_v_all.ddl
index 5e7365d..a1af831 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_all.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_all.ddl
@@ -1,5 +1,5 @@
Process command line options
-Open the file tmp.h5
+Open the file outtmp.h5
Processing all datasets in the file...
Going to process dataset:/DSET_CONTIGUOUS...
Open the dataset
diff --git a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl b/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl
index c501eb0..31de12a 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl
@@ -1,5 +1,5 @@
Process command line options
-Open the file tmp.h5
+Open the file outtmp.h5
Going to process dataset: /GROUP/DSET_BT2...
Open the dataset
Retrieve the dataset's layout
diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl b/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl
index ff5da4a..fcdadd8 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl
@@ -1,6 +1,6 @@
Process command line options
It is noop...
-Open the file tmp.h5
+Open the file outtmp.h5
Going to process dataset: /DSET_EA...
Open the dataset
Retrieve the dataset's layout
diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl b/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl
index d2ffbbf..074ce6f 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl
@@ -1,6 +1,6 @@
Process command line options
It is noop...
-Open the file tmp.h5
+Open the file outtmp.h5
Processing all datasets in the file...
Going to process dataset:/DSET_CONTIGUOUS...
Open the dataset
diff --git a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl b/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
index ba794a7..c75699a 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
@@ -1,6 +1,6 @@
Process command line options
It is noop...
-Open the file tmp.h5
+Open the file outtmp.h5
Going to process dataset: /DSET_NDATA_BT2...
Open the dataset
Retrieve the dataset's layout
diff --git a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl b/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
index aba0740..5945389 100644
--- a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
+++ b/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
@@ -1,5 +1,5 @@
Process command line options
-Open the file tmp.h5
+Open the file outtmp.h5
Going to process dataset: /DSET_CONTIGUOUS...
Open the dataset
Retrieve the dataset's layout
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
index c906082..d1768c8 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 1
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
index fb5192d..dae9284 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
index 2fff4ac..8ec4656 100644
--- a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
+++ b/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl
@@ -1,4 +1,4 @@
-HDF5 "./testfiles/tmp.h5" {
+HDF5 "./testfiles/dmptmp.h5" {
SUPER_BLOCK {
SUPERBLOCK_VERSION 2
FREELIST_VERSION 0
diff --git a/tools/h5format_convert/testh5fc.sh.in b/tools/h5format_convert/testh5fc.sh.in
index f712434..f3eadd6 100644
--- a/tools/h5format_convert/testh5fc.sh.in
+++ b/tools/h5format_convert/testh5fc.sh.in
@@ -34,8 +34,8 @@ EXIT_FAILURE=1
FORMCONV=h5format_convert # The tool name
FORMCONV_BIN=`pwd`/$FORMCONV # The path of the tool binary
-CHK_IDX=h5fc_chk_idx # The program name
-CHK_IDX_BIN=`pwd`/$CHK_IDX # The program to verify the chunk indexing type is v1 B-tree
+CHK_IDX=h5fc_chk_idx # The program name
+CHK_IDX_BIN=`pwd`/$CHK_IDX # The program to verify the chunk indexing type is v1 B-tree
RM='rm -rf'
CMP='cmp -s'
@@ -69,7 +69,10 @@ TESTDIR=./testfiles
test -d $TESTDIR || mkdir $TESTDIR
# Copy the testfile to a temporary file for testing as h5format_convert is changing the file in place
+TMPOUTFILE=outtmp.h5
TMPFILE=tmp.h5
+TMPCHKFILE=chktmp.h5
+TMPDMPFILE=dmptmp.h5
######################################################################
# test files
@@ -151,10 +154,10 @@ COPY_TESTFILES_TO_TESTDIR()
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
+ $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
@@ -168,13 +171,13 @@ 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=`$DIRNAME $tstfile`
+ SDIR=`$DIRNAME $SRC_H5FORMCONV_TESTFILES/h5fc_help.ddl`
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
else
- $RM $TESTDIR/$TMPFILE
+ $RM $TESTDIR/$TMPFILE
fi
}
@@ -195,13 +198,13 @@ TESTING() {
# non-zero value.
#
# $1: expected output
-# $2: the test file name
-# --fname might be empty or fname does not exist
-# --fname is copied to a temporary file for testing
+# $2: the test file name
+# --fname might be empty or fname does not exist
+# --fname is copied to a temporary file for testing
# $3 to at most $6--options to the tool such as:
-# -d dname or --dname=dname
-# -v or --verbose
-# -n or --noop
+# -d dname or --dname=dname
+# -v or --verbose
+# -n or --noop
TOOLTEST_OUT() {
# Prepare expected and actual output
expect="$TESTDIR/$1"
@@ -211,18 +214,18 @@ TOOLTEST_OUT() {
actual_err_sav=${actual_err}-sav
# Prepare the test file
- $RM $TESTDIR/$TMPFILE
+ $RM $TESTDIR/$TMPOUTFILE
TFILE=$2
if [ ! -z "$2" ] && [ -e $TESTDIR/$2 ] ; then
- $CP $TESTDIR/$2 $TESTDIR/$TMPFILE
- TFILE=$TMPFILE
+ $CP $TESTDIR/$2 $TESTDIR/$TMPOUTFILE
+ TFILE=$TMPOUTFILE
fi
# Run test.
TESTING $FORMCONV $3 $4 $5 $6 $2
(
- cd $TESTDIR
- $RUNSERIAL $FORMCONV_BIN $3 $4 $5 $6 $TFILE
+ cd $TESTDIR
+ $RUNSERIAL $FORMCONV_BIN $3 $4 $5 $6 $TFILE
) >$actual 2>$actual_err
cp $actual $actual_sav
cp $actual_err $actual_err_sav
@@ -233,19 +236,19 @@ TOOLTEST_OUT() {
# Clean up output file
if test -z "$HDF5_NOCLEANUP"; then
- $RM $actual $actual_err
- $RM $actual $actual_err $actual_sav $actual_err_sav
+ $RM $actual $actual_err
+ $RM $actual $actual_err $actual_sav $actual_err_sav
fi
}
-# To check that the tool exits success, no output
+# To check that the tool exits success, no output
# Assume all short options
-# $1 is the test file name
-# --fname exists
-# --fname is copied to a temporary file for testing
+# $1 is the test file name
+# --fname exists
+# --fname is copied to a temporary file for testing
# $2 to at most $4--options to the tool such as:
-# -d dname
-# -n
+# -d dname
+# -n
TOOLTEST() {
TESTING $FORMCONV $2 $3 $4 $1
$RM $TESTDIR/$TMPFILE
@@ -253,11 +256,41 @@ TOOLTEST() {
$RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPFILE
exitcode=$?
if [ $exitcode -ne 0 ]; then
- echo "*FAILED*"
- echo " The tool exits failure"
- nerrors="`expr $nerrors + 1`"
+ echo "*FAILED*"
+ echo " The tool exits failure"
+ nerrors="`expr $nerrors + 1`"
+ else
+ echo " PASSED"
+ fi
+}
+# Like TOOLTEST but tmpfile is for IDX_CHECK
+TOOLTEST_CHK() {
+ TESTING $FORMCONV $2 $3 $4 $1
+ $RM $TESTDIR/$TMPCHKFILE
+ $CP $TESTDIR/$1 $TESTDIR/$TMPCHKFILE
+ $RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPCHKFILE
+ exitcode=$?
+ if [ $exitcode -ne 0 ]; then
+ echo "*FAILED*"
+ echo " The tool exits failure"
+ nerrors="`expr $nerrors + 1`"
+ else
+ echo " PASSED"
+ fi
+}
+# Like TOOLTEST but tmpfile is for H5DUMP_CHECK
+TOOLTEST_DMP() {
+ TESTING $FORMCONV $2 $3 $4 $1
+ $RM $TESTDIR/$TMPDMPFILE
+ $CP $TESTDIR/$1 $TESTDIR/$TMPDMPFILE
+ $RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPDMPFILE
+ exitcode=$?
+ if [ $exitcode -ne 0 ]; then
+ echo "*FAILED*"
+ echo " The tool exits failure"
+ nerrors="`expr $nerrors + 1`"
else
- echo " PASSED"
+ echo " PASSED"
fi
}
@@ -270,14 +303,14 @@ CHECKING() {
# $1 dataset name
IDX_CHECK() {
CHECKING $1
- $RUNSERIAL $CHK_IDX_BIN $TESTDIR/$TMPFILE $1
+ $RUNSERIAL $CHK_IDX_BIN $TESTDIR/$TMPCHKFILE $1
ret=$?
if [ $ret -eq 0 ]; then
- echo " PASSED"
+ echo " PASSED"
else
- echo "*FAILED*"
- echo " The chunk indexing type is not correct"
- nerrors="`expr $nerrors + 1`"
+ echo "*FAILED*"
+ echo " The chunk indexing type is not correct"
+ nerrors="`expr $nerrors + 1`"
fi
}
@@ -302,7 +335,7 @@ H5DUMP_CHECK() {
expect="$TESTDIR/$2"
actual="$TESTDIR/`basename $2 .ddl`.out"
actual_err="$TESTDIR/`basename $2 .ddl`.err"
- $RUNSERIAL $H5DUMP_BIN -BH $TESTDIR/$TMPFILE > $actual 2>$actual_err
+ $RUNSERIAL $H5DUMP_BIN -BH $TESTDIR/$TMPDMPFILE > $actual 2>$actual_err
cat $actual_err >> $actual
# Compare output
@@ -310,7 +343,7 @@ H5DUMP_CHECK() {
# Clean up output file
if test -z "$HDF5_NOCLEANUP"; then
- $RM $actual $actual_err
+ $RM $actual $actual_err
fi
}
@@ -319,12 +352,12 @@ SKIP() {
TESTING $STAT $@
echo " -SKIP-"
}
-
+
##############################################################################
##############################################################################
-### T H E T E S T S ###
+### T H E T E S T S ###
##############################################################################
##############################################################################
# prepare for test
@@ -380,28 +413,28 @@ TOOLTEST_OUT h5fc_v_n_all.ddl h5fc_non_v3.h5 -v -n
# h5format_convert -d /GROUP/DSET_FA h5fc_ext_none.h5
# h5format_convert -d /DSET_NONE h5fc_ext_none.h5
# h5format_convert -d /GROUP/DSET_NDATA_NONE h5fc_ext_none.h5
-TOOLTEST h5fc_ext_none.h5 -d /DSET_EA
+TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_EA
IDX_CHECK /DSET_EA
#
-TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_EA
+TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_EA
IDX_CHECK /GROUP/DSET_NDATA_EA
#
-TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_BT2
+TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_BT2
IDX_CHECK /GROUP/DSET_BT2
#
-TOOLTEST h5fc_ext_none.h5 -d /DSET_NDATA_BT2
+TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_NDATA_BT2
IDX_CHECK /DSET_NDATA_BT2
#
-TOOLTEST h5fc_ext_none.h5 -d /DSET_FA
+TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_FA
IDX_CHECK /DSET_FA
#
-TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_FA
+TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_FA
IDX_CHECK /GROUP/DSET_NDATA_FA
#
-TOOLTEST h5fc_ext_none.h5 -d /DSET_NONE
+TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_NONE
IDX_CHECK /DSET_NONE
#
-TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_NONE
+TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_NONE
IDX_CHECK /GROUP/DSET_NDATA_NONE
#
#
@@ -424,9 +457,9 @@ TOOLTEST h5fc_non_v3.h5 -n
#
# No output from tests: just check exit code
# h5format_convert h5fc_non_v3.h5
-# 1) convert all datasets
+# 1) convert all datasets
# 2) verify indexing types
-TOOLTEST h5fc_non_v3.h5
+TOOLTEST_CHK h5fc_non_v3.h5
IDX_CHECK /DSET_NDATA_EA
IDX_CHECK /DSET_NDATA_BT2
IDX_CHECK /GROUP/DSET_BT2
@@ -438,47 +471,47 @@ IDX_CHECK /GROUP/DSET_EA
# h5format_convert h5fc_edge_v3.h5
# 1) convert the chunked dataset (filter, no-filter-edge-chunk)
# 2) verify the indexing type
-TOOLTEST h5fc_edge_v3.h5
+TOOLTEST_CHK h5fc_edge_v3.h5
IDX_CHECK /DSET_EDGE
#
#
# The following test files have messages in the superblock extension.
# Verify h5dump output for correctness after conversion
-TOOLTEST h5fc_ext1_i.h5
+TOOLTEST_DMP h5fc_ext1_i.h5
H5DUMP_CHECK h5fc_ext1_i.h5 h5fc_ext1_i.ddl
-TOOLTEST h5fc_ext1_s.h5
+TOOLTEST_DMP h5fc_ext1_s.h5
H5DUMP_CHECK h5fc_ext1_s.h5 h5fc_ext1_s.ddl
-TOOLTEST h5fc_ext1_f.h5
+TOOLTEST_DMP h5fc_ext1_f.h5
H5DUMP_CHECK h5fc_ext1_f.h5 h5fc_ext1_f.ddl
#
-TOOLTEST h5fc_ext2_if.h5
+TOOLTEST_DMP h5fc_ext2_if.h5
H5DUMP_CHECK h5fc_ext2_if.h5 h5fc_ext2_if.ddl
-TOOLTEST h5fc_ext2_is.h5
+TOOLTEST_DMP h5fc_ext2_is.h5
H5DUMP_CHECK h5fc_ext2_is.h5 h5fc_ext2_is.ddl
-TOOLTEST h5fc_ext2_sf.h5
+TOOLTEST_DMP h5fc_ext2_sf.h5
H5DUMP_CHECK h5fc_ext2_sf.h5 h5fc_ext2_sf.ddl
#
-TOOLTEST h5fc_ext3_isf.h5
+TOOLTEST_DMP h5fc_ext3_isf.h5
H5DUMP_CHECK h5fc_ext3_isf.h5 h5fc_ext3_isf.ddl
#
#
#
-TOOLTEST old_h5fc_ext1_i.h5
+TOOLTEST_DMP old_h5fc_ext1_i.h5
H5DUMP_CHECK old_h5fc_ext1_i.h5 old_h5fc_ext1_i.ddl
-TOOLTEST old_h5fc_ext1_s.h5
+TOOLTEST_DMP old_h5fc_ext1_s.h5
H5DUMP_CHECK old_h5fc_ext1_s.h5 old_h5fc_ext1_s.ddl
-TOOLTEST old_h5fc_ext1_f.h5
+TOOLTEST_DMP old_h5fc_ext1_f.h5
H5DUMP_CHECK old_h5fc_ext1_f.h5 old_h5fc_ext1_f.ddl
#
-TOOLTEST old_h5fc_ext2_if.h5
+TOOLTEST_DMP old_h5fc_ext2_if.h5
H5DUMP_CHECK old_h5fc_ext2_if.h5 old_h5fc_ext2_if.ddl
-TOOLTEST old_h5fc_ext2_is.h5
+TOOLTEST_DMP old_h5fc_ext2_is.h5
H5DUMP_CHECK old_h5fc_ext2_is.h5 old_h5fc_ext2_is.ddl
-TOOLTEST old_h5fc_ext2_sf.h5
+TOOLTEST_DMP old_h5fc_ext2_sf.h5
H5DUMP_CHECK old_h5fc_ext2_sf.h5 old_h5fc_ext2_sf.ddl
#
-TOOLTEST old_h5fc_ext3_isf.h5
+TOOLTEST_DMP old_h5fc_ext3_isf.h5
H5DUMP_CHECK old_h5fc_ext3_isf.h5 old_h5fc_ext3_isf.ddl
#
# Clean up temporary files/directories
diff --git a/tools/h5repack/CMakeTests.cmake b/tools/h5repack/CMakeTests.cmake
index 1f4887f..4ec9ff2 100644
--- a/tools/h5repack/CMakeTests.cmake
+++ b/tools/h5repack/CMakeTests.cmake
@@ -117,15 +117,10 @@
${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_compa-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_conti-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_null_compa-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_null_conti-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa_compa-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa_conti-v.ddl
+ ${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_compa-v.ddl
- ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti_conti-v.ddl
${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti-v.ddl
)
@@ -361,22 +356,22 @@
if ("${testtype}" STREQUAL "SKIP")
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
add_test (
- NAME H5REPACK_VERIFY_LAYOUT-${testname}-SKIPPED
+ NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}-SKIPPED
COMMAND ${CMAKE_COMMAND} -E echo "SKIP -d ${testdset} -pH ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile}"
)
endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
else ("${testtype}" STREQUAL "SKIP")
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
add_test (
- NAME H5REPACK_VERIFY_LAYOUT-${testname}
+ NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}
COMMAND $<TARGET_FILE:h5repack> ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile}
)
- set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
if (NOT "${last_test}" STREQUAL "")
- set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname} PROPERTIES DEPENDS ${last_test})
+ set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname} PROPERTIES DEPENDS ${last_test})
endif (NOT "${last_test}" STREQUAL "")
add_test (
- NAME H5REPACK_VERIFY_LAYOUT-${testname}_DMP
+ NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP
COMMAND "${CMAKE_COMMAND}"
-D "TEST_PROGRAM=$<TARGET_FILE:h5dump>"
-D "TEST_ARGS:STRING=-d;${testdset};-p;out-${testname}.${testfile}"
@@ -386,8 +381,8 @@
-D "TEST_REFERENCE=${testfile}-${testname}-v.ddl"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
- set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
- set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES DEPENDS H5REPACK_VERIFY_LAYOUT-${testname})
+ set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
+ set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP PROPERTIES DEPENDS H5REPACK_VERIFY_LAYOUT_VDS-${testname})
endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
endif ("${testtype}" STREQUAL "SKIP")
ENDMACRO (ADD_H5_VERIFY_VDS)
@@ -1104,21 +1099,12 @@
# VDS tests
-#########################################################
-# layout options
-#########################################################
- ADD_H5_VERIFY_VDS (vds_dset_conti "TEST" 0 ${FILEV1} vds_dset CONTIGUOUS -l vds_dset:CONTI)
- ADD_H5_VERIFY_VDS (vds_null_conti "TEST" 1 ${FILEV2} null CONTIGUOUS -l CONTI)
- ADD_H5_VERIFY_VDS (vds_dset_compa "TEST" 0 ${FILEV1} vds_dset COMPACT -l vds_dset:COMPA)
- ADD_H5_VERIFY_VDS (vds_null_compa "TEST" 1 ${FILEV2} null COMPACT -l COMPA)
-
################################################################
# layout conversions
###############################################################
- ADD_H5_VERIFY_VDS (vds_compa_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI)
- ADD_H5_VERIFY_VDS (vds_compa_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA)
- ADD_H5_VERIFY_VDS (vds_conti_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA)
- ADD_H5_VERIFY_VDS (vds_conti_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI)
+ ADD_H5_VERIFY_VDS (vds_dset_chunk20x10x5 "TEST" 0 ${FILEV1} vds_dset CHUNKED -l vds_dset:CHUNK=20x10x5)
+ ADD_H5_VERIFY_VDS (vds_chunk2x5x8 "TEST" 0 ${FILEV3_1} vds_dset CHUNKED -l vds_dset:CHUNK=2x5x8)
+ ADD_H5_VERIFY_VDS (vds_chunk3x6x9 "TEST" 0 ${FILEV2} vds_dset CHUNKED -l vds_dset:CHUNK=3x6x9)
ADD_H5_VERIFY_VDS (vds_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA)
ADD_H5_VERIFY_VDS (vds_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI)
diff --git a/tools/h5repack/h5repack.sh.in b/tools/h5repack/h5repack.sh.in
index bb686db..a721c8f 100644
--- a/tools/h5repack/h5repack.sh.in
+++ b/tools/h5repack/h5repack.sh.in
@@ -150,15 +150,10 @@ $SRC_H5REPACK_TESTFILES/h5repack_layout.h5.ddl
$SRC_H5REPACK_TESTFILES/h5repack_filters.h5.tst
$SRC_H5REPACK_TESTFILES/h5repack_layout.h5-plugin_test.ddl
$SRC_H5REPACK_TESTFILES/plugin_test.h5repack_layout.h5.tst
-$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_compa-v.ddl
-$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_conti-v.ddl
-$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_null_compa-v.ddl
-$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_null_conti-v.ddl
-$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa_compa-v.ddl
-$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa_conti-v.ddl
+$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
+$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_chunk3x6x9-v.ddl
+$SRC_H5REPACK_TESTFILES/3_1_vds.h5-vds_chunk2x5x8-v.ddl
$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa-v.ddl
-$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti_compa-v.ddl
-$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti_conti-v.ddl
$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti-v.ddl
"
@@ -1164,21 +1159,12 @@ TOOLTEST_META meta_long h5repack_layout.h5 --metadata_block_size=8192
# VDS tests
-#########################################################
-# layout options
-#########################################################
-VERIFY_LAYOUT_VDS vds_dset_conti 1_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI
-VERIFY_LAYOUT_ALL vds_null_conti 2_vds.h5 CONTIGUOUS -l CONTI
-VERIFY_LAYOUT_VDS vds_dset_compa 1_vds.h5 vds_dset COMPACT -l vds_dset:COMPA
-VERIFY_LAYOUT_ALL vds_null_compa 2_vds.h5 COMPACT -l COMPA
-
################################################################
# layout conversions
###############################################################
-VERIFY_LAYOUT_VDS vds_compa_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI
-VERIFY_LAYOUT_VDS vds_compa_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA
-VERIFY_LAYOUT_VDS vds_conti_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA
-VERIFY_LAYOUT_VDS vds_conti_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI
+VERIFY_LAYOUT_VDS vds_dset_chunk_20x10x5 1_vds.h5 vds_dset CHUNKED --layout vds_dset:CHUNK=20x10x5
+VERIFY_LAYOUT_VDS vds_chunk2x5x8 3_1_vds.h5 vds_dset CHUNKED -l vds_dset:CHUNK=2x5x8
+VERIFY_LAYOUT_VDS vds_chunk3x6x9 2_vds.h5 vds_dset CHUNKED -l vds_dset:CHUNK=3x6x9
VERIFY_LAYOUT_VDS vds_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA
VERIFY_LAYOUT_VDS vds_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI
diff --git a/tools/h5repack/h5repack_main.c b/tools/h5repack/h5repack_main.c
index 708c173..c03b7a7 100644
--- a/tools/h5repack/h5repack_main.c
+++ b/tools/h5repack/h5repack_main.c
@@ -193,7 +193,6 @@ static void usage(const char *prog) {
printf("\n");
}
-
/*-------------------------------------------------------------------------
* Function: leave
*
diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl b/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
index 781c7dc..fab9494 100644
--- a/tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl
+++ b/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl
@@ -1,10 +1,10 @@
-HDF5 "out-vds_dset_compa.1_vds.h5" {
+HDF5 "out-vds_dset_chunk20x10x5.1_vds.h5" {
DATASET "vds_dset" {
DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 5, 18, 8 ) / ( 5, 18, 8 ) }
+ DATASPACE SIMPLE { ( 5, 18, 8 ) / ( H5S_UNLIMITED, 18, 8 ) }
STORAGE_LAYOUT {
- COMPACT
- SIZE 2880
+ CHUNKED ( 20, 10, 5 )
+ SIZE 16000
}
FILTERS {
NONE
@@ -14,7 +14,7 @@ DATASET "vds_dset" {
VALUE -9
}
ALLOCATION_TIME {
- H5D_ALLOC_TIME_EARLY
+ H5D_ALLOC_TIME_INCR
}
DATA {
(0,0,0): 10, 10, 10, 10, 10, 10, 10, 10,
diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl b/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl
deleted file mode 100644
index 994129b..0000000
--- a/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl
+++ /dev/null
@@ -1,113 +0,0 @@
-HDF5 "out-vds_dset_conti.1_vds.h5" {
-DATASET "vds_dset" {
- DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 5, 18, 8 ) / ( 5, 18, 8 ) }
- STORAGE_LAYOUT {
- CONTIGUOUS
- SIZE 2880
- OFFSET 2144
- }
- FILTERS {
- NONE
- }
- FILLVALUE {
- FILL_TIME H5D_FILL_TIME_IFSET
- VALUE -9
- }
- ALLOCATION_TIME {
- H5D_ALLOC_TIME_LATE
- }
- DATA {
- (0,0,0): 10, 10, 10, 10, 10, 10, 10, 10,
- (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10,
- (0,2,0): 20, 20, 20, 20, 20, 20, 20, 20,
- (0,3,0): 20, 20, 20, 20, 20, 20, 20, 20,
- (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20,
- (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20,
- (0,6,0): 30, 30, 30, 30, 30, 30, 30, 30,
- (0,7,0): 30, 30, 30, 30, 30, 30, 30, 30,
- (0,8,0): 40, 40, 40, 40, 40, 40, 40, 40,
- (0,9,0): 40, 40, 40, 40, 40, 40, 40, 40,
- (0,10,0): 40, 40, 40, 40, 40, 40, 40, 40,
- (0,11,0): 40, 40, 40, 40, 40, 40, 40, 40,
- (0,12,0): 50, 50, 50, 50, 50, 50, 50, 50,
- (0,13,0): 50, 50, 50, 50, 50, 50, 50, 50,
- (0,14,0): 60, 60, 60, 60, 60, 60, 60, 60,
- (0,15,0): 60, 60, 60, 60, 60, 60, 60, 60,
- (0,16,0): 60, 60, 60, 60, 60, 60, 60, 60,
- (0,17,0): 60, 60, 60, 60, 60, 60, 60, 60,
- (1,0,0): 11, 11, 11, 11, 11, 11, 11, 11,
- (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11,
- (1,2,0): 21, 21, 21, 21, 21, 21, 21, 21,
- (1,3,0): 21, 21, 21, 21, 21, 21, 21, 21,
- (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21,
- (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21,
- (1,6,0): 31, 31, 31, 31, 31, 31, 31, 31,
- (1,7,0): 31, 31, 31, 31, 31, 31, 31, 31,
- (1,8,0): 41, 41, 41, 41, 41, 41, 41, 41,
- (1,9,0): 41, 41, 41, 41, 41, 41, 41, 41,
- (1,10,0): 41, 41, 41, 41, 41, 41, 41, 41,
- (1,11,0): 41, 41, 41, 41, 41, 41, 41, 41,
- (1,12,0): 51, 51, 51, 51, 51, 51, 51, 51,
- (1,13,0): 51, 51, 51, 51, 51, 51, 51, 51,
- (1,14,0): 61, 61, 61, 61, 61, 61, 61, 61,
- (1,15,0): 61, 61, 61, 61, 61, 61, 61, 61,
- (1,16,0): 61, 61, 61, 61, 61, 61, 61, 61,
- (1,17,0): 61, 61, 61, 61, 61, 61, 61, 61,
- (2,0,0): 12, 12, 12, 12, 12, 12, 12, 12,
- (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12,
- (2,2,0): 22, 22, 22, 22, 22, 22, 22, 22,
- (2,3,0): 22, 22, 22, 22, 22, 22, 22, 22,
- (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22,
- (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22,
- (2,6,0): 32, 32, 32, 32, 32, 32, 32, 32,
- (2,7,0): 32, 32, 32, 32, 32, 32, 32, 32,
- (2,8,0): 42, 42, 42, 42, 42, 42, 42, 42,
- (2,9,0): 42, 42, 42, 42, 42, 42, 42, 42,
- (2,10,0): 42, 42, 42, 42, 42, 42, 42, 42,
- (2,11,0): 42, 42, 42, 42, 42, 42, 42, 42,
- (2,12,0): 52, 52, 52, 52, 52, 52, 52, 52,
- (2,13,0): 52, 52, 52, 52, 52, 52, 52, 52,
- (2,14,0): 62, 62, 62, 62, 62, 62, 62, 62,
- (2,15,0): 62, 62, 62, 62, 62, 62, 62, 62,
- (2,16,0): 62, 62, 62, 62, 62, 62, 62, 62,
- (2,17,0): 62, 62, 62, 62, 62, 62, 62, 62,
- (3,0,0): 13, 13, 13, 13, 13, 13, 13, 13,
- (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13,
- (3,2,0): 23, 23, 23, 23, 23, 23, 23, 23,
- (3,3,0): 23, 23, 23, 23, 23, 23, 23, 23,
- (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23,
- (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23,
- (3,6,0): 33, 33, 33, 33, 33, 33, 33, 33,
- (3,7,0): 33, 33, 33, 33, 33, 33, 33, 33,
- (3,8,0): 43, 43, 43, 43, 43, 43, 43, 43,
- (3,9,0): 43, 43, 43, 43, 43, 43, 43, 43,
- (3,10,0): 43, 43, 43, 43, 43, 43, 43, 43,
- (3,11,0): 43, 43, 43, 43, 43, 43, 43, 43,
- (3,12,0): 53, 53, 53, 53, 53, 53, 53, 53,
- (3,13,0): 53, 53, 53, 53, 53, 53, 53, 53,
- (3,14,0): 63, 63, 63, 63, 63, 63, 63, 63,
- (3,15,0): 63, 63, 63, 63, 63, 63, 63, 63,
- (3,16,0): 63, 63, 63, 63, 63, 63, 63, 63,
- (3,17,0): 63, 63, 63, 63, 63, 63, 63, 63,
- (4,0,0): 14, 14, 14, 14, 14, 14, 14, 14,
- (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14,
- (4,2,0): 24, 24, 24, 24, 24, 24, 24, 24,
- (4,3,0): 24, 24, 24, 24, 24, 24, 24, 24,
- (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24,
- (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24,
- (4,6,0): 34, 34, 34, 34, 34, 34, 34, 34,
- (4,7,0): 34, 34, 34, 34, 34, 34, 34, 34,
- (4,8,0): 44, 44, 44, 44, 44, 44, 44, 44,
- (4,9,0): 44, 44, 44, 44, 44, 44, 44, 44,
- (4,10,0): 44, 44, 44, 44, 44, 44, 44, 44,
- (4,11,0): 44, 44, 44, 44, 44, 44, 44, 44,
- (4,12,0): 54, 54, 54, 54, 54, 54, 54, 54,
- (4,13,0): 54, 54, 54, 54, 54, 54, 54, 54,
- (4,14,0): 64, 64, 64, 64, 64, 64, 64, 64,
- (4,15,0): 64, 64, 64, 64, 64, 64, 64, 64,
- (4,16,0): 64, 64, 64, 64, 64, 64, 64, 64,
- (4,17,0): 64, 64, 64, 64, 64, 64, 64, 64
- }
-}
-}
diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
new file mode 100644
index 0000000..51df9dd
--- /dev/null
+++ b/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl
@@ -0,0 +1,70 @@
+HDF5 "out-vds_chunk3x6x9.2_vds.h5" {
+DATASET "vds_dset" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 6, 8, 14 ) / ( H5S_UNLIMITED, 8, 14 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 3, 6, 9 )
+ SIZE 5184
+ }
+ FILTERS {
+ NONE
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE -9
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ DATA {
+ (0,0,0): 10, 10, 10, 10, 10, 10, 10, 40, 40, 40, 40, 40, 40, 40,
+ (0,1,0): 10, 10, 10, 10, 10, 10, 10, 40, 40, 40, 40, 40, 40, 40,
+ (0,2,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40,
+ (0,3,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40,
+ (0,4,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40,
+ (0,5,0): 20, 20, 20, 20, 20, 20, 20, 50, 50, 50, 50, 50, 50, 50,
+ (0,6,0): 30, 30, 30, 30, 30, 30, 30, 50, 50, 50, 50, 50, 50, 50,
+ (0,7,0): 30, 30, 30, 30, 30, 30, 30, 50, 50, 50, 50, 50, 50, 50,
+ (1,0,0): 11, 11, 11, 11, 11, 11, 11, 41, 41, 41, 41, 41, 41, 41,
+ (1,1,0): 11, 11, 11, 11, 11, 11, 11, 41, 41, 41, 41, 41, 41, 41,
+ (1,2,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41,
+ (1,3,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41,
+ (1,4,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41,
+ (1,5,0): 21, 21, 21, 21, 21, 21, 21, 51, 51, 51, 51, 51, 51, 51,
+ (1,6,0): 31, 31, 31, 31, 31, 31, 31, 51, 51, 51, 51, 51, 51, 51,
+ (1,7,0): 31, 31, 31, 31, 31, 31, 31, 51, 51, 51, 51, 51, 51, 51,
+ (2,0,0): 12, 12, 12, 12, 12, 12, 12, 42, 42, 42, 42, 42, 42, 42,
+ (2,1,0): 12, 12, 12, 12, 12, 12, 12, 42, 42, 42, 42, 42, 42, 42,
+ (2,2,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42,
+ (2,3,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42,
+ (2,4,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42,
+ (2,5,0): 22, 22, 22, 22, 22, 22, 22, 52, 52, 52, 52, 52, 52, 52,
+ (2,6,0): 32, 32, 32, 32, 32, 32, 32, 52, 52, 52, 52, 52, 52, 52,
+ (2,7,0): 32, 32, 32, 32, 32, 32, 32, 52, 52, 52, 52, 52, 52, 52,
+ (3,0,0): 13, 13, 13, 13, 13, 13, 13, 43, 43, 43, 43, 43, 43, 43,
+ (3,1,0): 13, 13, 13, 13, 13, 13, 13, 43, 43, 43, 43, 43, 43, 43,
+ (3,2,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43,
+ (3,3,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43,
+ (3,4,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43,
+ (3,5,0): 23, 23, 23, 23, 23, 23, 23, 53, 53, 53, 53, 53, 53, 53,
+ (3,6,0): 33, 33, 33, 33, 33, 33, 33, 53, 53, 53, 53, 53, 53, 53,
+ (3,7,0): 33, 33, 33, 33, 33, 33, 33, 53, 53, 53, 53, 53, 53, 53,
+ (4,0,0): 14, 14, 14, 14, 14, 14, 14, 44, 44, 44, 44, 44, 44, 44,
+ (4,1,0): 14, 14, 14, 14, 14, 14, 14, 44, 44, 44, 44, 44, 44, 44,
+ (4,2,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44,
+ (4,3,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44,
+ (4,4,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44,
+ (4,5,0): 24, 24, 24, 24, 24, 24, 24, 54, 54, 54, 54, 54, 54, 54,
+ (4,6,0): 34, 34, 34, 34, 34, 34, 34, 54, 54, 54, 54, 54, 54, 54,
+ (4,7,0): 34, 34, 34, 34, 34, 34, 34, 54, 54, 54, 54, 54, 54, 54,
+ (5,0,0): 15, 15, 15, 15, 15, 15, 15, 45, 45, 45, 45, 45, 45, 45,
+ (5,1,0): 15, 15, 15, 15, 15, 15, 15, 45, 45, 45, 45, 45, 45, 45,
+ (5,2,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45,
+ (5,3,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45,
+ (5,4,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45,
+ (5,5,0): 25, 25, 25, 25, 25, 25, 25, 55, 55, 55, 55, 55, 55, 55,
+ (5,6,0): 35, 35, 35, 35, 35, 35, 35, 55, 55, 55, 55, 55, 55, 55,
+ (5,7,0): 35, 35, 35, 35, 35, 35, 35, 55, 55, 55, 55, 55, 55, 55
+ }
+}
+}
diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl
deleted file mode 100644
index 0efa6b4..0000000
--- a/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl
+++ /dev/null
@@ -1,3 +0,0 @@
-HDF5 "out-vds_null_compa.2_vds.h5" {
-}
-h5dump error: unable to get link info from "null"
diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl
deleted file mode 100644
index ceb8cf7..0000000
--- a/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl
+++ /dev/null
@@ -1,3 +0,0 @@
-HDF5 "out-vds_null_conti.2_vds.h5" {
-}
-h5dump error: unable to get link info from "null"
diff --git a/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl b/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
new file mode 100644
index 0000000..dcd172c
--- /dev/null
+++ b/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl
@@ -0,0 +1,147 @@
+HDF5 "out-vds_chunk2x5x8.3_1_vds.h5" {
+DATASET "vds_dset" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 5, 25, 8 ) / ( H5S_UNLIMITED, 25, 8 ) }
+ STORAGE_LAYOUT {
+ CHUNKED ( 2, 5, 8 )
+ SIZE 4800
+ }
+ FILTERS {
+ NONE
+ }
+ FILLVALUE {
+ FILL_TIME H5D_FILL_TIME_IFSET
+ VALUE -9
+ }
+ ALLOCATION_TIME {
+ H5D_ALLOC_TIME_INCR
+ }
+ DATA {
+ (0,0,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10,
+ (0,2,0): 10, 10, 10, 10, 10, 10, 10, 10,
+ (0,3,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20,
+ (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20,
+ (0,6,0): 20, 20, 20, 20, 20, 20, 20, 20,
+ (0,7,0): 20, 20, 20, 20, 20, 20, 20, 20,
+ (0,8,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,9,0): 30, 30, 30, 30, 30, 30, 30, 30,
+ (0,10,0): 30, 30, 30, 30, 30, 30, 30, 30,
+ (0,11,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,12,0): 40, 40, 40, 40, 40, 40, 40, 40,
+ (0,13,0): 40, 40, 40, 40, 40, 40, 40, 40,
+ (0,14,0): 40, 40, 40, 40, 40, 40, 40, 40,
+ (0,15,0): 40, 40, 40, 40, 40, 40, 40, 40,
+ (0,16,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,17,0): 50, 50, 50, 50, 50, 50, 50, 50,
+ (0,18,0): 50, 50, 50, 50, 50, 50, 50, 50,
+ (0,19,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (0,20,0): 60, 60, 60, 60, 60, 60, 60, 60,
+ (0,21,0): 60, 60, 60, 60, 60, 60, 60, 60,
+ (0,22,0): 60, 60, 60, 60, 60, 60, 60, 60,
+ (0,23,0): 60, 60, 60, 60, 60, 60, 60, 60,
+ (0,24,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,0,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11,
+ (1,2,0): 11, 11, 11, 11, 11, 11, 11, 11,
+ (1,3,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21,
+ (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21,
+ (1,6,0): 21, 21, 21, 21, 21, 21, 21, 21,
+ (1,7,0): 21, 21, 21, 21, 21, 21, 21, 21,
+ (1,8,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,9,0): 31, 31, 31, 31, 31, 31, 31, 31,
+ (1,10,0): 31, 31, 31, 31, 31, 31, 31, 31,
+ (1,11,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,12,0): 41, 41, 41, 41, 41, 41, 41, 41,
+ (1,13,0): 41, 41, 41, 41, 41, 41, 41, 41,
+ (1,14,0): 41, 41, 41, 41, 41, 41, 41, 41,
+ (1,15,0): 41, 41, 41, 41, 41, 41, 41, 41,
+ (1,16,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,17,0): 51, 51, 51, 51, 51, 51, 51, 51,
+ (1,18,0): 51, 51, 51, 51, 51, 51, 51, 51,
+ (1,19,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (1,20,0): 61, 61, 61, 61, 61, 61, 61, 61,
+ (1,21,0): 61, 61, 61, 61, 61, 61, 61, 61,
+ (1,22,0): 61, 61, 61, 61, 61, 61, 61, 61,
+ (1,23,0): 61, 61, 61, 61, 61, 61, 61, 61,
+ (1,24,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,0,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12,
+ (2,2,0): 12, 12, 12, 12, 12, 12, 12, 12,
+ (2,3,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22,
+ (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22,
+ (2,6,0): 22, 22, 22, 22, 22, 22, 22, 22,
+ (2,7,0): 22, 22, 22, 22, 22, 22, 22, 22,
+ (2,8,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,9,0): 32, 32, 32, 32, 32, 32, 32, 32,
+ (2,10,0): 32, 32, 32, 32, 32, 32, 32, 32,
+ (2,11,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,12,0): 42, 42, 42, 42, 42, 42, 42, 42,
+ (2,13,0): 42, 42, 42, 42, 42, 42, 42, 42,
+ (2,14,0): 42, 42, 42, 42, 42, 42, 42, 42,
+ (2,15,0): 42, 42, 42, 42, 42, 42, 42, 42,
+ (2,16,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,17,0): 52, 52, 52, 52, 52, 52, 52, 52,
+ (2,18,0): 52, 52, 52, 52, 52, 52, 52, 52,
+ (2,19,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (2,20,0): 62, 62, 62, 62, 62, 62, 62, 62,
+ (2,21,0): 62, 62, 62, 62, 62, 62, 62, 62,
+ (2,22,0): 62, 62, 62, 62, 62, 62, 62, 62,
+ (2,23,0): 62, 62, 62, 62, 62, 62, 62, 62,
+ (2,24,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,0,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13,
+ (3,2,0): 13, 13, 13, 13, 13, 13, 13, 13,
+ (3,3,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23,
+ (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23,
+ (3,6,0): 23, 23, 23, 23, 23, 23, 23, 23,
+ (3,7,0): 23, 23, 23, 23, 23, 23, 23, 23,
+ (3,8,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,9,0): 33, 33, 33, 33, 33, 33, 33, 33,
+ (3,10,0): 33, 33, 33, 33, 33, 33, 33, 33,
+ (3,11,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,12,0): 43, 43, 43, 43, 43, 43, 43, 43,
+ (3,13,0): 43, 43, 43, 43, 43, 43, 43, 43,
+ (3,14,0): 43, 43, 43, 43, 43, 43, 43, 43,
+ (3,15,0): 43, 43, 43, 43, 43, 43, 43, 43,
+ (3,16,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,17,0): 53, 53, 53, 53, 53, 53, 53, 53,
+ (3,18,0): 53, 53, 53, 53, 53, 53, 53, 53,
+ (3,19,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (3,20,0): 63, 63, 63, 63, 63, 63, 63, 63,
+ (3,21,0): 63, 63, 63, 63, 63, 63, 63, 63,
+ (3,22,0): 63, 63, 63, 63, 63, 63, 63, 63,
+ (3,23,0): 63, 63, 63, 63, 63, 63, 63, 63,
+ (3,24,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,0,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14,
+ (4,2,0): 14, 14, 14, 14, 14, 14, 14, 14,
+ (4,3,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24,
+ (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24,
+ (4,6,0): 24, 24, 24, 24, 24, 24, 24, 24,
+ (4,7,0): 24, 24, 24, 24, 24, 24, 24, 24,
+ (4,8,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,9,0): 34, 34, 34, 34, 34, 34, 34, 34,
+ (4,10,0): 34, 34, 34, 34, 34, 34, 34, 34,
+ (4,11,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,12,0): 44, 44, 44, 44, 44, 44, 44, 44,
+ (4,13,0): 44, 44, 44, 44, 44, 44, 44, 44,
+ (4,14,0): 44, 44, 44, 44, 44, 44, 44, 44,
+ (4,15,0): 44, 44, 44, 44, 44, 44, 44, 44,
+ (4,16,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,17,0): 54, 54, 54, 54, 54, 54, 54, 54,
+ (4,18,0): 54, 54, 54, 54, 54, 54, 54, 54,
+ (4,19,0): -9, -9, -9, -9, -9, -9, -9, -9,
+ (4,20,0): 64, 64, 64, 64, 64, 64, 64, 64,
+ (4,21,0): 64, 64, 64, 64, 64, 64, 64, 64,
+ (4,22,0): 64, 64, 64, 64, 64, 64, 64, 64,
+ (4,23,0): 64, 64, 64, 64, 64, 64, 64, 64,
+ (4,24,0): -9, -9, -9, -9, -9, -9, -9, -9
+ }
+}
+}
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl
deleted file mode 100644
index 1b7cdc0..0000000
--- a/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl
+++ /dev/null
@@ -1,58 +0,0 @@
-HDF5 "out-vds_compa_compa.4_vds.h5" {
-DATASET "vds_dset" {
- DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) }
- STORAGE_LAYOUT {
- COMPACT
- SIZE 576
- }
- FILTERS {
- NONE
- }
- FILLVALUE {
- FILL_TIME H5D_FILL_TIME_IFSET
- VALUE -9
- }
- ALLOCATION_TIME {
- H5D_ALLOC_TIME_EARLY
- }
- DATA {
- (0,0,0): 10, 10, 10, 10,
- (0,1,0): 10, 10, 10, 10,
- (0,2,0): 10, 10, 10, 10,
- (0,3,0): 10, 10, 10, 10,
- (1,0,0): 11, 11, 11, 11,
- (1,1,0): 11, 11, 11, 11,
- (1,2,0): 11, 11, 11, 11,
- (1,3,0): 11, 11, 11, 11,
- (2,0,0): 12, 12, 12, 12,
- (2,1,0): 12, 12, 12, 12,
- (2,2,0): 12, 12, 12, 12,
- (2,3,0): 12, 12, 12, 12,
- (3,0,0): 20, 20, 20, 20,
- (3,1,0): 20, 20, 20, 20,
- (3,2,0): 20, 20, 20, 20,
- (3,3,0): 20, 20, 20, 20,
- (4,0,0): 21, 21, 21, 21,
- (4,1,0): 21, 21, 21, 21,
- (4,2,0): 21, 21, 21, 21,
- (4,3,0): 21, 21, 21, 21,
- (5,0,0): 22, 22, 22, 22,
- (5,1,0): 22, 22, 22, 22,
- (5,2,0): 22, 22, 22, 22,
- (5,3,0): 22, 22, 22, 22,
- (6,0,0): 30, 30, 30, 30,
- (6,1,0): 30, 30, 30, 30,
- (6,2,0): 30, 30, 30, 30,
- (6,3,0): 30, 30, 30, 30,
- (7,0,0): 31, 31, 31, 31,
- (7,1,0): 31, 31, 31, 31,
- (7,2,0): 31, 31, 31, 31,
- (7,3,0): 31, 31, 31, 31,
- (8,0,0): 32, 32, 32, 32,
- (8,1,0): 32, 32, 32, 32,
- (8,2,0): 32, 32, 32, 32,
- (8,3,0): 32, 32, 32, 32
- }
-}
-}
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl
deleted file mode 100644
index 1a4b4b5..0000000
--- a/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl
+++ /dev/null
@@ -1,59 +0,0 @@
-HDF5 "out-vds_compa_conti.4_vds.h5" {
-DATASET "vds_dset" {
- DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) }
- STORAGE_LAYOUT {
- CONTIGUOUS
- SIZE 576
- OFFSET 2144
- }
- FILTERS {
- NONE
- }
- FILLVALUE {
- FILL_TIME H5D_FILL_TIME_IFSET
- VALUE -9
- }
- ALLOCATION_TIME {
- H5D_ALLOC_TIME_LATE
- }
- DATA {
- (0,0,0): 10, 10, 10, 10,
- (0,1,0): 10, 10, 10, 10,
- (0,2,0): 10, 10, 10, 10,
- (0,3,0): 10, 10, 10, 10,
- (1,0,0): 11, 11, 11, 11,
- (1,1,0): 11, 11, 11, 11,
- (1,2,0): 11, 11, 11, 11,
- (1,3,0): 11, 11, 11, 11,
- (2,0,0): 12, 12, 12, 12,
- (2,1,0): 12, 12, 12, 12,
- (2,2,0): 12, 12, 12, 12,
- (2,3,0): 12, 12, 12, 12,
- (3,0,0): 20, 20, 20, 20,
- (3,1,0): 20, 20, 20, 20,
- (3,2,0): 20, 20, 20, 20,
- (3,3,0): 20, 20, 20, 20,
- (4,0,0): 21, 21, 21, 21,
- (4,1,0): 21, 21, 21, 21,
- (4,2,0): 21, 21, 21, 21,
- (4,3,0): 21, 21, 21, 21,
- (5,0,0): 22, 22, 22, 22,
- (5,1,0): 22, 22, 22, 22,
- (5,2,0): 22, 22, 22, 22,
- (5,3,0): 22, 22, 22, 22,
- (6,0,0): 30, 30, 30, 30,
- (6,1,0): 30, 30, 30, 30,
- (6,2,0): 30, 30, 30, 30,
- (6,3,0): 30, 30, 30, 30,
- (7,0,0): 31, 31, 31, 31,
- (7,1,0): 31, 31, 31, 31,
- (7,2,0): 31, 31, 31, 31,
- (7,3,0): 31, 31, 31, 31,
- (8,0,0): 32, 32, 32, 32,
- (8,1,0): 32, 32, 32, 32,
- (8,2,0): 32, 32, 32, 32,
- (8,3,0): 32, 32, 32, 32
- }
-}
-}
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl
deleted file mode 100644
index bc4fdd1..0000000
--- a/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl
+++ /dev/null
@@ -1,58 +0,0 @@
-HDF5 "out-vds_conti_compa.4_vds.h5" {
-DATASET "vds_dset" {
- DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) }
- STORAGE_LAYOUT {
- COMPACT
- SIZE 576
- }
- FILTERS {
- NONE
- }
- FILLVALUE {
- FILL_TIME H5D_FILL_TIME_IFSET
- VALUE -9
- }
- ALLOCATION_TIME {
- H5D_ALLOC_TIME_EARLY
- }
- DATA {
- (0,0,0): 10, 10, 10, 10,
- (0,1,0): 10, 10, 10, 10,
- (0,2,0): 10, 10, 10, 10,
- (0,3,0): 10, 10, 10, 10,
- (1,0,0): 11, 11, 11, 11,
- (1,1,0): 11, 11, 11, 11,
- (1,2,0): 11, 11, 11, 11,
- (1,3,0): 11, 11, 11, 11,
- (2,0,0): 12, 12, 12, 12,
- (2,1,0): 12, 12, 12, 12,
- (2,2,0): 12, 12, 12, 12,
- (2,3,0): 12, 12, 12, 12,
- (3,0,0): 20, 20, 20, 20,
- (3,1,0): 20, 20, 20, 20,
- (3,2,0): 20, 20, 20, 20,
- (3,3,0): 20, 20, 20, 20,
- (4,0,0): 21, 21, 21, 21,
- (4,1,0): 21, 21, 21, 21,
- (4,2,0): 21, 21, 21, 21,
- (4,3,0): 21, 21, 21, 21,
- (5,0,0): 22, 22, 22, 22,
- (5,1,0): 22, 22, 22, 22,
- (5,2,0): 22, 22, 22, 22,
- (5,3,0): 22, 22, 22, 22,
- (6,0,0): 30, 30, 30, 30,
- (6,1,0): 30, 30, 30, 30,
- (6,2,0): 30, 30, 30, 30,
- (6,3,0): 30, 30, 30, 30,
- (7,0,0): 31, 31, 31, 31,
- (7,1,0): 31, 31, 31, 31,
- (7,2,0): 31, 31, 31, 31,
- (7,3,0): 31, 31, 31, 31,
- (8,0,0): 32, 32, 32, 32,
- (8,1,0): 32, 32, 32, 32,
- (8,2,0): 32, 32, 32, 32,
- (8,3,0): 32, 32, 32, 32
- }
-}
-}
diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl
deleted file mode 100644
index 88b1ab6..0000000
--- a/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl
+++ /dev/null
@@ -1,59 +0,0 @@
-HDF5 "out-vds_conti_conti.4_vds.h5" {
-DATASET "vds_dset" {
- DATATYPE H5T_STD_I32LE
- DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) }
- STORAGE_LAYOUT {
- CONTIGUOUS
- SIZE 576
- OFFSET 2144
- }
- FILTERS {
- NONE
- }
- FILLVALUE {
- FILL_TIME H5D_FILL_TIME_IFSET
- VALUE -9
- }
- ALLOCATION_TIME {
- H5D_ALLOC_TIME_LATE
- }
- DATA {
- (0,0,0): 10, 10, 10, 10,
- (0,1,0): 10, 10, 10, 10,
- (0,2,0): 10, 10, 10, 10,
- (0,3,0): 10, 10, 10, 10,
- (1,0,0): 11, 11, 11, 11,
- (1,1,0): 11, 11, 11, 11,
- (1,2,0): 11, 11, 11, 11,
- (1,3,0): 11, 11, 11, 11,
- (2,0,0): 12, 12, 12, 12,
- (2,1,0): 12, 12, 12, 12,
- (2,2,0): 12, 12, 12, 12,
- (2,3,0): 12, 12, 12, 12,
- (3,0,0): 20, 20, 20, 20,
- (3,1,0): 20, 20, 20, 20,
- (3,2,0): 20, 20, 20, 20,
- (3,3,0): 20, 20, 20, 20,
- (4,0,0): 21, 21, 21, 21,
- (4,1,0): 21, 21, 21, 21,
- (4,2,0): 21, 21, 21, 21,
- (4,3,0): 21, 21, 21, 21,
- (5,0,0): 22, 22, 22, 22,
- (5,1,0): 22, 22, 22, 22,
- (5,2,0): 22, 22, 22, 22,
- (5,3,0): 22, 22, 22, 22,
- (6,0,0): 30, 30, 30, 30,
- (6,1,0): 30, 30, 30, 30,
- (6,2,0): 30, 30, 30, 30,
- (6,3,0): 30, 30, 30, 30,
- (7,0,0): 31, 31, 31, 31,
- (7,1,0): 31, 31, 31, 31,
- (7,2,0): 31, 31, 31, 31,
- (7,3,0): 31, 31, 31, 31,
- (8,0,0): 32, 32, 32, 32,
- (8,1,0): 32, 32, 32, 32,
- (8,2,0): 32, 32, 32, 32,
- (8,3,0): 32, 32, 32, 32
- }
-}
-}