mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-27 08:01:04 +08:00
c803666ec2
Move timing measurement routines used by h5perf and h5perf_serial to tools/lib so that they can be used by other tools too. tools/lib/io_timer.c tools/lib/io_timer.h tools/perform/io_timer.c tools/perform/io_timer.h renamed perform/io_timer.[ch] to lib/io_timer.[ch] tools/lib/Makefile.am tools/lib/Makefile.in tools/lib/CMakeLists.txt tools/perform/Makefile.in tools/perform/Makefile.am tools/perform/CMakeLists.txt MANIFEST updated due to the move. Tested; h5committest and jam (serial)
127 lines
4.7 KiB
CMake
127 lines
4.7 KiB
CMake
cmake_minimum_required (VERSION 2.8.11)
|
|
PROJECT (HDF5_PERFORM )
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Apply Definitions to compiler in this directory and below
|
|
#-----------------------------------------------------------------------------
|
|
add_definitions (${HDF_EXTRA_C_FLAGS})
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# Setup include Directories
|
|
#-----------------------------------------------------------------------------
|
|
INCLUDE_DIRECTORIES (${HDF5_TEST_SRC_DIR})
|
|
INCLUDE_DIRECTORIES (${HDF5_TOOLS_SRC_DIR}/lib )
|
|
|
|
# --------------------------------------------------------------------
|
|
# Add the executables
|
|
# --------------------------------------------------------------------
|
|
#-- Adding test for h5perf_serial
|
|
set (h5perf_serial_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/sio_perf.c
|
|
${HDF5_PERFORM_SOURCE_DIR}/sio_engine.c
|
|
)
|
|
add_executable (h5perf_serial ${h5perf_serial_SRCS})
|
|
TARGET_NAMING (h5perf_serial ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (h5perf_serial " " " ")
|
|
target_link_libraries (h5perf_serial ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
|
|
set_target_properties (h5perf_serial PROPERTIES FOLDER perform)
|
|
|
|
if (HDF5_BUILD_PERFORM_STANDALONE)
|
|
#-- Adding test for h5perf_serial_alone
|
|
set (h5perf_serial_alone_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/sio_perf.c
|
|
${HDF5_PERFORM_SOURCE_DIR}/sio_engine.c
|
|
)
|
|
add_executable (h5perf_serial_alone ${h5perf_serial_alone_SRCS})
|
|
set_property (TARGET h5perf_serial_alone
|
|
APPEND PROPERTY COMPILE_DEFINITIONS STANDALONE
|
|
)
|
|
TARGET_NAMING (h5perf_serial_alone ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (h5perf_serial_alone " " " ")
|
|
target_link_libraries (h5perf_serial_alone ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
|
|
set_target_properties (h5perf_serial_alone PROPERTIES FOLDER perform)
|
|
endif (HDF5_BUILD_PERFORM_STANDALONE)
|
|
|
|
#-- Adding test for chunk
|
|
set (chunk_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/chunk.c
|
|
)
|
|
ADD_EXECUTABLE(chunk ${chunk_SRCS})
|
|
TARGET_NAMING (chunk ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (chunk " " " ")
|
|
TARGET_LINK_LIBRARIES(chunk ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
|
|
set_target_properties (chunk PROPERTIES FOLDER perform)
|
|
|
|
#-- Adding test for iopipe
|
|
set (iopipe_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/iopipe.c
|
|
)
|
|
add_executable (iopipe ${iopipe_SRCS})
|
|
TARGET_NAMING (iopipe ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (iopipe " " " ")
|
|
target_link_libraries (iopipe ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
|
|
set_target_properties (iopipe PROPERTIES FOLDER perform)
|
|
|
|
#-- Adding test for overhead
|
|
set (overhead_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/overhead.c
|
|
)
|
|
add_executable (overhead ${overhead_SRCS})
|
|
TARGET_NAMING (overhead ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (overhead " " " ")
|
|
target_link_libraries (overhead ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET})
|
|
set_target_properties (overhead PROPERTIES FOLDER perform)
|
|
|
|
if (BUILD_TESTING)
|
|
#-- Adding test for perf_meta
|
|
set (perf_meta_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/perf_meta.c
|
|
)
|
|
add_executable (perf_meta ${perf_meta_SRCS})
|
|
TARGET_NAMING (perf_meta ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (perf_meta " " " ")
|
|
target_link_libraries (perf_meta ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
|
|
set_target_properties (perf_meta PROPERTIES FOLDER perform)
|
|
endif (BUILD_TESTING)
|
|
|
|
#-- Adding test for zip_perf
|
|
set (zip_perf_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/zip_perf.c
|
|
)
|
|
add_executable (zip_perf ${zip_perf_SRCS})
|
|
TARGET_NAMING (zip_perf ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (zip_perf " " " ")
|
|
target_link_libraries (zip_perf ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET})
|
|
set_target_properties (zip_perf PROPERTIES FOLDER perform)
|
|
|
|
if (H5_HAVE_PARALLEL AND BUILD_TESTING)
|
|
#-- Adding test for h5perf
|
|
set (h5perf_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/pio_perf.c
|
|
${HDF5_PERFORM_SOURCE_DIR}/pio_engine.c
|
|
)
|
|
add_executable (h5perf ${h5perf_SRCS})
|
|
TARGET_NAMING (h5perf ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (h5perf " " " ")
|
|
target_link_libraries (h5perf ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
|
|
set_target_properties (h5perf PROPERTIES FOLDER perform)
|
|
|
|
if (HDF5_BUILD_PERFORM_STANDALONE)
|
|
#-- Adding test for h5perf
|
|
set (h5perf_alone_SRCS
|
|
${HDF5_PERFORM_SOURCE_DIR}/pio_perf.c
|
|
${HDF5_PERFORM_SOURCE_DIR}/pio_engine.c
|
|
)
|
|
add_executable (h5perf_alone ${h5perf_alone_SRCS})
|
|
set_property (TARGET h5perf_alone
|
|
APPEND PROPERTY COMPILE_DEFINITIONS STANDALONE
|
|
)
|
|
TARGET_NAMING (h5perf_alone ${LIB_TYPE})
|
|
TARGET_C_PROPERTIES (h5perf_alone " " " ")
|
|
target_link_libraries (h5perf_alone ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET} ${HDF5_TEST_LIB_TARGET})
|
|
set_target_properties (h5perf_alone PROPERTIES FOLDER perform)
|
|
endif (HDF5_BUILD_PERFORM_STANDALONE)
|
|
endif (H5_HAVE_PARALLEL AND BUILD_TESTING)
|
|
|
|
include (CMakeTests.cmake)
|