summaryrefslogtreecommitdiffstats
path: root/tools/h5copy
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2017-02-06 21:30:08 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2017-02-06 21:30:08 (GMT)
commit78ea0a0c081a1cf07795fffa2100057538510f81 (patch)
treede3d8d848badde9bb35d937b0c42912f3a62ae5f /tools/h5copy
parentb7acf7dd3b44c9263476c884f57e6c0edb811c49 (diff)
downloadhdf5-78ea0a0c081a1cf07795fffa2100057538510f81.zip
hdf5-78ea0a0c081a1cf07795fffa2100057538510f81.tar.gz
hdf5-78ea0a0c081a1cf07795fffa2100057538510f81.tar.bz2
HDFFV-9875 Bring changes from develop branch
Diffstat (limited to 'tools/h5copy')
-rw-r--r--tools/h5copy/CMakeLists.txt37
-rw-r--r--tools/h5copy/CMakeTests.cmake72
2 files changed, 62 insertions, 47 deletions
diff --git a/tools/h5copy/CMakeLists.txt b/tools/h5copy/CMakeLists.txt
index c59675d..406ca12 100644
--- a/tools/h5copy/CMakeLists.txt
+++ b/tools/h5copy/CMakeLists.txt
@@ -18,6 +18,17 @@ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5copy")
set (H5_DEP_EXECUTABLES h5copy)
+if (BUILD_SHARED_LIBS)
+ add_executable (h5copy-shared ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/h5copy.c)
+ TARGET_NAMING (h5copy-shared SHARED)
+ TARGET_C_PROPERTIES (h5copy-shared SHARED " " " ")
+ target_link_libraries (h5copy-shared ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
+ set_target_properties (h5copy-shared PROPERTIES FOLDER tools)
+ set_global_variable (HDF5_UTILS_TO_EXPORT "${HDF5_UTILS_TO_EXPORT};h5copy-shared")
+
+ set (H5_DEP_EXECUTABLES ${H5_DEP_EXECUTABLES} h5copy-shared)
+endif ()
+
if (BUILD_TESTING)
if (HDF5_BUILD_GENERATORS)
add_executable (h5copygentest ${HDF5_TOOLS_H5COPY_SOURCE_DIR}/h5copygentest.c)
@@ -27,10 +38,10 @@ if (BUILD_TESTING)
set_target_properties (h5copygentest PROPERTIES FOLDER generator/tools)
#add_test (NAME h5copygentest COMMAND $<TARGET_FILE:h5copygentest>)
- endif (HDF5_BUILD_GENERATORS)
+ endif ()
include (CMakeTests.cmake)
-endif (BUILD_TESTING)
+endif ()
##############################################################################
##############################################################################
@@ -41,13 +52,17 @@ endif (BUILD_TESTING)
#-----------------------------------------------------------------------------
# Rules for Installation of tools using make Install target
#-----------------------------------------------------------------------------
+if (HDF5_EXPORTED_TARGETS)
+ if (BUILD_SHARED_LIBS)
+ INSTALL_PROGRAM_PDB (h5copy-shared ${HDF5_INSTALL_BIN_DIR} toolsapplications)
+ endif ()
+ INSTALL_PROGRAM_PDB (h5copy ${HDF5_INSTALL_BIN_DIR} toolsapplications)
-#INSTALL_PROGRAM_PDB (h5copy ${HDF5_INSTALL_BIN_DIR} toolsapplications)
-
-install (
- TARGETS
- h5copy
- EXPORT
- ${HDF5_EXPORTED_TARGETS}
- RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications
-)
+ install (
+ TARGETS
+ ${H5_DEP_EXECUTABLES}
+ EXPORT
+ ${HDF5_EXPORTED_TARGETS}
+ RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications
+ )
+endif ()
diff --git a/tools/h5copy/CMakeTests.cmake b/tools/h5copy/CMakeTests.cmake
index 80b7d10..a2131d1 100644
--- a/tools/h5copy/CMakeTests.cmake
+++ b/tools/h5copy/CMakeTests.cmake
@@ -24,7 +24,7 @@
foreach (listfiles ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES})
get_filename_component(fname "${listfiles}" NAME)
HDFTEST_COPY_FILE("${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${fname}" "h5copy_files")
- endforeach (listfiles ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES})
+ endforeach ()
add_custom_target(h5copy_files ALL COMMENT "Copying files needed by h5copy tests" DEPENDS ${h5copy_files_list})
##############################################################################
@@ -45,7 +45,7 @@
-E remove
./testfiles/${testname}.out.h5
)
- endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY_F-${testname}
@@ -54,10 +54,10 @@
if (HDF5_ENABLE_USING_MEMCHECKER)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY_F-${testname} PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
- else (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
+ else ()
set_tests_properties (H5COPY_F-${testname} PROPERTIES DEPENDS H5COPY_F-${testname}-clear-objects)
- endif (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
# resultcode=2 will cause the test to skip the diff test
if (NOT ${resultcode} STREQUAL "2")
@@ -68,9 +68,9 @@
SET_TESTS_PROPERTIES(H5COPY_F-${testname}-DIFF PROPERTIES DEPENDS H5COPY_F-${testname})
if (${resultcode} STREQUAL "1")
set_tests_properties (H5COPY_F-${testname}-DIFF PROPERTIES WILL_FAIL "true")
- endif (${resultcode} STREQUAL "1")
- endif (NOT ${resultcode} STREQUAL "2")
- ENDMACRO (ADD_H5_F_TEST)
+ endif ()
+ endif ()
+ ENDMACRO ()
MACRO (ADD_H5_TEST testname resultcode infile vparam sparam srcname dparam dstname)
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
@@ -81,7 +81,7 @@
-E remove
./testfiles/${testname}.out.h5
)
- endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY-${testname}
@@ -90,10 +90,10 @@
if (HDF5_ENABLE_USING_MEMCHECKER)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY-${testname} PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
- else (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
+ else ()
set_tests_properties (H5COPY-${testname} PROPERTIES DEPENDS H5COPY-${testname}-clear-objects)
- endif (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
# resultcode=2 will cause the test to skip the diff test
if (NOT ${resultcode} STREQUAL "2")
@@ -104,9 +104,9 @@
SET_TESTS_PROPERTIES(H5COPY-${testname}-DIFF PROPERTIES DEPENDS H5COPY-${testname})
if (${resultcode} STREQUAL "1")
set_tests_properties (H5COPY-${testname}-DIFF PROPERTIES WILL_FAIL "true")
- endif (${resultcode} STREQUAL "1")
- endif (NOT ${resultcode} STREQUAL "2")
- ENDMACRO (ADD_H5_TEST)
+ endif ()
+ endif ()
+ ENDMACRO ()
MACRO (ADD_H5_TEST2 testname resultcode infile psparam pdparam vparam sparam srcname dparam dstname)
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
@@ -117,7 +117,7 @@
-E remove
./testfiles/${testname}.out.h5
)
- endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY-${testname}-prefill
@@ -126,10 +126,10 @@
if (HDF5_ENABLE_USING_MEMCHECKER)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY-${testname}-prefill PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
- else (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
+ else ()
set_tests_properties (H5COPY-${testname}-prefill PROPERTIES DEPENDS H5COPY-${testname}-clear-objects)
- endif (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY-${testname}
@@ -145,9 +145,9 @@
SET_TESTS_PROPERTIES(H5COPY-${testname}-DIFF PROPERTIES DEPENDS H5COPY-${testname})
if (${resultcode} STREQUAL "1")
set_tests_properties (H5COPY-${testname}-DIFF PROPERTIES WILL_FAIL "true")
- endif (${resultcode} STREQUAL "1")
- endif (NOT ${resultcode} STREQUAL "2")
- ENDMACRO (ADD_H5_TEST2)
+ endif ()
+ endif ()
+ ENDMACRO ()
MACRO (ADD_H5_TEST_SAME testname resultcode pfile psparam pdparam vparam sparam srcname dparam dstname)
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
@@ -158,7 +158,7 @@
-E remove
./testfiles/${testname}.out.h5
)
- endif (NOT HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY_SAME-${testname}-prefill
@@ -167,10 +167,10 @@
if (HDF5_ENABLE_USING_MEMCHECKER)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY_SAME-${testname}-prefill PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
- else (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
+ else ()
set_tests_properties (H5COPY_SAME-${testname}-prefill PROPERTIES DEPENDS H5COPY_SAME-${testname}-clear-objects)
- endif (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
add_test (
NAME H5COPY_SAME-${testname}
@@ -186,9 +186,9 @@
SET_TESTS_PROPERTIES(H5COPY_SAME-${testname}-DIFF PROPERTIES DEPENDS H5COPY_SAME-${testname})
if (${resultcode} STREQUAL "1")
set_tests_properties (H5COPY_SAME-${testname}-DIFF PROPERTIES WILL_FAIL "true")
- endif (${resultcode} STREQUAL "1")
- endif (NOT ${resultcode} STREQUAL "2")
- ENDMACRO (ADD_H5_TEST_SAME)
+ endif ()
+ endif ()
+ ENDMACRO ()
#
# Similiar to ADD_H5_TEST macro. Compare to outputs from source & target
@@ -200,11 +200,11 @@
add_test (NAME H5COPY-CMP-${testname} COMMAND $<TARGET_FILE:h5copy> -i ./testfiles/${infile} -o ./testfiles/${testname}.out.h5 ${vparam} ${sparam} ${srcname} ${dparam} ${dstname} ${ARGN})
if (${resultcode} STREQUAL "1")
set_tests_properties (H5COPY-CMP-${testname} PROPERTIES WILL_FAIL "true")
- endif (${resultcode} STREQUAL "1")
+ endif ()
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY-CMP-${testname} PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
- else (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
+ else ()
# Remove any output file left over from previous test run
add_test (
NAME H5COPY-CMP-${testname}-clear-objects
@@ -227,8 +227,8 @@
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
set_tests_properties (H5COPY-CMP-${testname} PROPERTIES DEPENDS H5COPY-CMP-${testname}-clear-objects)
- endif (HDF5_ENABLE_USING_MEMCHECKER)
- ENDMACRO (ADD_H5_CMP_TEST)
+ endif ()
+ ENDMACRO ()
##############################################################################
##############################################################################
@@ -288,9 +288,9 @@
set_tests_properties (H5COPY-clearall-objects PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (H5COPY-clearall-objects PROPERTIES DEPENDS ${last_test})
- endif (NOT "${last_test}" STREQUAL "")
+ endif ()
set (last_test "H5COPY-clearall-objects")
- endif (HDF5_ENABLE_USING_MEMCHECKER)
+ endif ()
# "Test copying various forms of datasets"
ADD_H5_TEST (simple 0 ${HDF_FILE1}.h5 -v -s simple -d simple)