1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
#------------------------------------------------------------------------------#
# Distributed under the OSI-approved Apache License, Version 2.0. See
# accompanying file Copyright.txt for details.
#------------------------------------------------------------------------------#
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/verinfo.h.in
${PROJECT_BINARY_DIR}/verinfo.h
@ONLY
)
# BPLS
add_executable(bpls ./bpls/bpls.cpp)
target_link_libraries(bpls
PUBLIC adios2_core adios2sys
PRIVATE adios2::thirdparty::pugixml $<$<PLATFORM_ID:Windows>:shlwapi>)
target_include_directories(bpls PRIVATE
${PROJECT_BINARY_DIR}
${PROJECT_SOURCE_DIR}/bindings/C
)
set_property(TARGET bpls PROPERTY OUTPUT_NAME bpls${ADIOS2_EXECUTABLE_SUFFIX})
install(TARGETS bpls EXPORT adios2
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT adios2_tools-runtime
)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/bpls/bpls.cmake.gen.in
${PROJECT_BINARY_DIR}/bpls.cmake.gen
@ONLY
)
file(GENERATE
OUTPUT ${PROJECT_BINARY_DIR}/$<CONFIG>/bpls.cmake
INPUT ${PROJECT_BINARY_DIR}/bpls.cmake.gen
)
# BPSPLIT
#add_executable(bpsplit ./bpsplit/bpsplit.cpp)
#target_link_libraries(bpsplit adios2::cxx11 adios2sys_interface adios2::thirdparty::pugixml)
#install(TARGETS bpsplit EXPORT adios2
# RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
#)
# ADIOS_REORGANIZE
set(adios_reorganize_srcs
adios_reorganize/main.cpp
adios_reorganize/Reorganize.cpp
Utils.cpp
)
if(ADIOS2_HAVE_MGARD)
set(maybe_mgard mgard::mgard)
else()
set(maybe_mgard)
endif()
add_executable(adios_reorganize ${adios_reorganize_srcs})
target_link_libraries(adios_reorganize PRIVATE adios2_core ${maybe_mgard})
set_property(TARGET adios_reorganize PROPERTY OUTPUT_NAME adios2_reorganize${ADIOS2_EXECUTABLE_SUFFIX})
if(ADIOS2_HAVE_MPI)
add_executable(adios_reorganize_mpi ${adios_reorganize_srcs})
target_link_libraries(adios_reorganize_mpi PRIVATE adios2_core_mpi ${maybe_mgard})
set_property(TARGET adios_reorganize_mpi PROPERTY OUTPUT_NAME adios2_reorganize_mpi${ADIOS2_EXECUTABLE_SUFFIX})
set(maybe_adios_reorganize_mpi adios_reorganize_mpi)
else()
set(maybe_adios_reorganize_mpi)
endif()
install(TARGETS adios_reorganize
${maybe_adios_reorganize_mpi}
EXPORT adios2
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT adios2_tools-runtime
)
if(ADIOS2_HAVE_MPI)
add_subdirectory(adios_iotest)
endif()
if(Python_Interpreter_FOUND)
add_subdirectory(bp4dbg)
add_subdirectory(bp5dbg)
add_subdirectory(adios_campaign_manager)
install(PROGRAMS adios2_json_pp.py
RENAME adios2_json_pp
DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT adios2_scripts-runtime)
endif()
install(PROGRAMS adios2_deactivate_bp
RENAME adios2_deactivate_bp
DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT adios2_scripts-runtime)
# Simplified wrappers for adios2_reorganize
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/adios_reorganize/adios2_reorganize_wrapper
${PROJECT_BINARY_DIR}/adios2_reorganize_wrapper
@ONLY
)
if(ADIOS2_HAVE_HDF5)
install(PROGRAMS ${PROJECT_BINARY_DIR}/adios2_reorganize_wrapper
RENAME bp2h5${ADIOS2_EXECUTABLE_SUFFIX}
DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT adios2_tools-runtime
)
if(ADIOS2_HAVE_MPI)
install(PROGRAMS ${PROJECT_BINARY_DIR}/adios2_reorganize_wrapper
RENAME bp2h5_mpi${ADIOS2_EXECUTABLE_SUFFIX}
DESTINATION ${CMAKE_INSTALL_BINDIR}
COMPONENT adios2_tools-runtime
)
endif()
endif()
|