mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
[svn-r19870] Add tests for examples.
Tested: local linux
This commit is contained in:
parent
109294e6e2
commit
449373deb3
@ -26,6 +26,8 @@ FOREACH (example ${examples})
|
||||
TARGET_WIN_PROPERTIES (cpp_ex_${example})
|
||||
TARGET_LINK_LIBRARIES (cpp_ex_${example} ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
|
||||
|
||||
ADD_TEST (NAME cpp_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME cpp_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
||||
ENDFOREACH (example ${examples})
|
||||
|
@ -15,11 +15,12 @@
|
||||
# HDF5_VERSION_MINOR - minor part (e.g. 5)
|
||||
#
|
||||
# The following boolean vars will be defined
|
||||
# HDF5_ENABLE_PARALLEL - 1 if HDF5 parallel supported
|
||||
# HDF5_BUILD_FORTRAN - 1 if HDF5 was compiled with fortran on
|
||||
# HDF5_BUILD_CPP_LIB - 1 if HDF5 was compiled with cpp on
|
||||
# HDF5_BUILD_TOOLS - 1 if HDF5 was compiled with tools on
|
||||
# HDF5_BUILD_HL_LIB - 1 if HDF5 was compiled with parallel on
|
||||
# HDF5_ENABLE_PARALLEL - 1 if HDF5 parallel supported
|
||||
# HDF5_BUILD_FORTRAN - 1 if HDF5 was compiled with fortran on
|
||||
# HDF5_BUILD_CPP_LIB - 1 if HDF5 was compiled with cpp on
|
||||
# HDF5_BUILD_TOOLS - 1 if HDF5 was compiled with tools on
|
||||
# HDF5_BUILD_HL_LIB - 1 if HDF5 was compiled with high level on
|
||||
# HDF5_BUILD_HL_CPP_LIB - 1 if HDF5 was compiled with high level and cpp on
|
||||
#
|
||||
# Target names that are valid (depending on enabled options)
|
||||
# will be the following
|
||||
@ -35,22 +36,49 @@
|
||||
# hdf5_hl_cpp : High Level cpp interface library
|
||||
#
|
||||
# To aid in finding HDF5 as part of a subproject set
|
||||
# HDF5_ROOT_DIR_HINT to the location where HDF5-config.cmake lies
|
||||
# HDF5_ROOT_DIR_HINT to the location where hdf5-config.cmake lies
|
||||
|
||||
FIND_PATH (HDF5_ROOT_DIR "HDF5-config.cmake"
|
||||
${HDF5_ROOT_DIR_HINT}
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
"C:/Program Files/HDF5/lib"
|
||||
INCLUDE (SelectLibraryConfigurations)
|
||||
INCLUDE (FindPackageHandleStandardArgs)
|
||||
|
||||
# The HINTS option should only be used for values computed from the system.
|
||||
SET (_HDF5_HINTS
|
||||
$ENV{HOME}/.local
|
||||
$ENV{HDF5_ROOT}
|
||||
$ENV{HDF5_ROOT_DIR_HINT}
|
||||
)
|
||||
# Hard-coded guesses should still go in PATHS. This ensures that the user
|
||||
# environment can always override hard guesses.
|
||||
SET (_HDF5_PATHS
|
||||
$ENV{HOME}/.local
|
||||
$ENV{HDF5_ROOT}
|
||||
$ENV{HDF5_ROOT_DIR_HINT}
|
||||
/usr/lib/hdf5
|
||||
/usr/share/hdf5
|
||||
/usr/local/hdf5
|
||||
/usr/local/hdf5/share
|
||||
)
|
||||
|
||||
FIND_PATH (HDF5_INCLUDE_DIR "H5public.h"
|
||||
${HDF5_ROOT_DIR}/../include
|
||||
FIND_PATH (HDF5_ROOT_DIR "hdf5-config.cmake"
|
||||
HINTS ${_HDF5_HINTS}
|
||||
PATHS ${_HDF5_PATHS}
|
||||
PATH_SUFFIXES
|
||||
lib/cmake/hdf5-1.8.6
|
||||
)
|
||||
|
||||
FIND_PATH (HDF5_INCLUDE_DIRS "H5public.h"
|
||||
HINTS ${_HDF5_HINTS}
|
||||
PATHS ${_HDF5_PATHS}
|
||||
PATH_SUFFIXES
|
||||
include
|
||||
Include
|
||||
)
|
||||
|
||||
# For backwards compatibility we set HDF5_INCLUDE_DIR to the value of
|
||||
# HDF5_INCLUDE_DIRS
|
||||
SET ( HDF5_INCLUDE_DIR "${HDF5_INCLUDE_DIRS}" )
|
||||
|
||||
IF (HDF5_INCLUDE_DIR)
|
||||
SET (HDF5_FOUND "YES")
|
||||
INCLUDE (${HDF5_ROOT_DIR}/HDF5-config.cmake)
|
||||
INCLUDE (${HDF5_ROOT_DIR}/hdf5-config.cmake)
|
||||
ENDIF (HDF5_INCLUDE_DIR)
|
||||
|
@ -11,6 +11,7 @@ SET (HDF5_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
|
||||
SET (HDF5_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
|
||||
SET (HDF5_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
|
||||
SET (HDF5_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
|
||||
SET (HDF5_BUILD_HL_CPP_LIB @HDF5_BUILD_HL_CPP_LIB@)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Directories
|
||||
@ -29,6 +30,10 @@ IF (HDF5_BUILD_HL_LIB)
|
||||
SET (HDF5_INCLUDE_DIR_HL ${HDF5_INCLUDE_DIR} )
|
||||
ENDIF (HDF5_BUILD_HL_LIB)
|
||||
|
||||
IF (HDF5_BUILD_HL_CPP_LIB)
|
||||
SET (HDF5_INCLUDE_DIR_HL_CPP ${HDF5_INCLUDE_DIR} )
|
||||
ENDIF (HDF5_BUILD_HL_CPP_LIB)
|
||||
|
||||
IF (HDF5_BUILD_TOOLS)
|
||||
SET (HDF5_INCLUDE_DIR_TOOLS ${HDF5_INCLUDE_DIR} )
|
||||
ENDIF (HDF5_BUILD_TOOLS)
|
||||
|
@ -11,6 +11,7 @@ SET (HDF5_BUILD_FORTRAN @HDF5_BUILD_FORTRAN@)
|
||||
SET (HDF5_BUILD_CPP_LIB @HDF5_BUILD_CPP_LIB@)
|
||||
SET (HDF5_BUILD_TOOLS @HDF5_BUILD_TOOLS@)
|
||||
SET (HDF5_BUILD_HL_LIB @HDF5_BUILD_HL_LIB@)
|
||||
SET (HDF5_BUILD_HL_CPP_LIB @HDF5_BUILD_HL_CPP_LIB@)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Directories
|
||||
@ -25,6 +26,10 @@ IF (HDF5_BUILD_CPP_LIB)
|
||||
SET (HDF5_INCLUDE_DIR_CPP "@CMAKE_INSTALL_PREFIX@/include/cpp" )
|
||||
ENDIF (HDF5_BUILD_CPP_LIB)
|
||||
|
||||
IF (HDF5_BUILD_HL_CPP_LIB)
|
||||
SET (HDF5_INCLUDE_DIR_HL_CPP "@CMAKE_INSTALL_PREFIX@/include/hl/cpp" )
|
||||
ENDIF (HDF5_BUILD_HL_CPP_LIB)
|
||||
|
||||
IF (HDF5_BUILD_HL_LIB)
|
||||
SET (HDF5_INCLUDE_DIR_HL "@CMAKE_INSTALL_PREFIX@/include/hl" )
|
||||
ENDIF (HDF5_BUILD_HL_LIB)
|
||||
|
@ -27,11 +27,23 @@ FOREACH (example ${examples})
|
||||
H5_NAMING (${example})
|
||||
TARGET_WIN_PROPERTIES (${example})
|
||||
TARGET_LINK_LIBRARIES (${example} ${HDF5_LIB_TARGET})
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME ${example} COMMAND $<TARGET_FILE:${example}>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
ENDFOREACH (example ${examples})
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
FILE (MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/red ${PROJECT_BINARY_DIR}/blue ${PROJECT_BINARY_DIR}/u2w)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
||||
IF (H5_HAVE_PARALLEL)
|
||||
ADD_EXECUTABLE (ph5example ${HDF5_EXAMPLES_SOURCE_DIR}/ph5example.c)
|
||||
H5_NAMING (ph5example)
|
||||
TARGET_WIN_PROPERTIES (ph5example)
|
||||
TARGET_LINK_LIBRARIES (ph5example ${HDF5_LIB_TARGET})
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME ph5example COMMAND $<TARGET_FILE:ph5example>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
ENDIF (H5_HAVE_PARALLEL)
|
||||
|
@ -50,6 +50,11 @@ FOREACH (example ${examples})
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
SET_TARGET_PROPERTIES (f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran)
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME f90_ex_${example} COMMAND $<TARGET_FILE:f90_ex_${example}>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
||||
ENDFOREACH (example ${examples})
|
||||
|
||||
IF (H5_HAVE_PARALLEL)
|
||||
@ -67,4 +72,9 @@ IF (H5_HAVE_PARALLEL)
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
SET_TARGET_PROPERTIES (f90_ex_ph5example PROPERTIES LINKER_LANGUAGE Fortran)
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME f90_ex_ph5example COMMAND $<TARGET_FILE:f90_ex_ph5example>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
||||
ENDIF (H5_HAVE_PARALLEL)
|
||||
|
@ -10,29 +10,27 @@ INCLUDE_DIRECTORIES (${HDF5_HL_CPP_SRC_DIR}/src)
|
||||
# --------------------------------------------------------------------
|
||||
# Add in the examples for the Packet Table codes
|
||||
# --------------------------------------------------------------------
|
||||
IF (HDF5_BUILD_EXAMPLES)
|
||||
ADD_EXECUTABLE (ptExampleFL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleFL.cpp)
|
||||
H5_NAMING (ptExampleFL)
|
||||
TARGET_WIN_PROPERTIES (ptExampleFL)
|
||||
TARGET_LINK_LIBRARIES (
|
||||
ptExampleFL
|
||||
${HDF5_HL_CPP_LIB_TARGET}
|
||||
${HDF5_HL_LIB_TARGET}
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
ADD_EXECUTABLE (ptExampleFL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleFL.cpp)
|
||||
H5_NAMING (ptExampleFL)
|
||||
TARGET_WIN_PROPERTIES (ptExampleFL)
|
||||
TARGET_LINK_LIBRARIES (
|
||||
ptExampleFL
|
||||
${HDF5_HL_CPP_LIB_TARGET}
|
||||
${HDF5_HL_LIB_TARGET}
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
|
||||
ADD_EXECUTABLE (ptExampleVL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleVL.cpp)
|
||||
H5_NAMING (ptExampleVL)
|
||||
TARGET_WIN_PROPERTIES (ptExampleVL)
|
||||
TARGET_LINK_LIBRARIES (
|
||||
ptExampleVL
|
||||
${HDF5_HL_CPP_LIB_TARGET}
|
||||
${HDF5_HL_LIB_TARGET}
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME cpp_hl_ex_ptExampleFL COMMAND $<TARGET_FILE:ptExampleFL>)
|
||||
|
||||
ADD_EXECUTABLE (ptExampleVL ${HDF5_HL_CPP_EXAMPLES_SOURCE_DIR}/ptExampleVL.cpp)
|
||||
H5_NAMING (ptExampleVL)
|
||||
TARGET_WIN_PROPERTIES (ptExampleVL)
|
||||
TARGET_LINK_LIBRARIES (
|
||||
ptExampleVL
|
||||
${HDF5_HL_CPP_LIB_TARGET}
|
||||
${HDF5_HL_LIB_TARGET}
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
|
||||
ADD_TEST (NAME cpp_hl_ex_ptExampleVL COMMAND $<TARGET_FILE:ptExampleVL>)
|
||||
|
||||
ENDIF (HDF5_BUILD_EXAMPLES)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
@ -1,6 +1,20 @@
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
PROJECT (HDF5_HL_EXAMPLES )
|
||||
|
||||
SET (HDF5_TEST_FILES
|
||||
)
|
||||
|
||||
FOREACH (h5_file ${HDF5_TEST_FILES})
|
||||
SET (dest "${PROJECT_BINARY_DIR}/${h5_file}")
|
||||
#MESSAGE (STATUS " Copying ${h5_file}")
|
||||
ADD_CUSTOM_COMMAND (
|
||||
TARGET h5dump
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/${h5_file} ${dest}
|
||||
)
|
||||
ENDFOREACH (h5_file ${HDF5_TEST_FILES})
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Define Sources
|
||||
#-----------------------------------------------------------------------------
|
||||
@ -32,6 +46,26 @@ FOREACH (example ${examples})
|
||||
H5_NAMING (hl_ex_${example})
|
||||
TARGET_WIN_PROPERTIES (hl_ex_${example})
|
||||
TARGET_LINK_LIBRARIES (hl_ex_${example} ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET})
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME hl_ex_${example} COMMAND $<TARGET_FILE:hl_ex_${example}>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
ENDFOREACH (example ${examples})
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
SET (HDF5_TEST_FILES
|
||||
image24pixel.txt
|
||||
image8.txt
|
||||
)
|
||||
|
||||
FOREACH (h5_file ${HDF5_TEST_FILES})
|
||||
SET (dest "${PROJECT_BINARY_DIR}/${h5_file}")
|
||||
#MESSAGE (STATUS " Copying ${h5_file}")
|
||||
ADD_CUSTOM_COMMAND (
|
||||
TARGET hl_ex_ex_ds1
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/${h5_file} ${dest}
|
||||
)
|
||||
ENDFOREACH (h5_file ${HDF5_TEST_FILES})
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
@ -26,4 +26,9 @@ FOREACH (example ${examples})
|
||||
${HDF5_LIB_TARGET}
|
||||
)
|
||||
SET_TARGET_PROPERTIES (hl_f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran)
|
||||
|
||||
IF (BUILD_TESTING)
|
||||
ADD_TEST (NAME hl_f90_ex_${example} COMMAND $<TARGET_FILE:hl_f90_ex_${example}>)
|
||||
ENDIF (BUILD_TESTING)
|
||||
|
||||
ENDFOREACH (example ${examples})
|
||||
|
Loading…
Reference in New Issue
Block a user