File: CMakeLists.txt

package info (click to toggle)
adios2 2.10.2%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, trixie
  • size: 33,764 kB
  • sloc: cpp: 175,964; ansic: 160,510; f90: 14,630; yacc: 12,668; python: 7,275; perl: 7,126; sh: 2,825; lisp: 1,106; xml: 1,049; makefile: 579; lex: 557
file content (114 lines) | stat: -rw-r--r-- 3,498 bytes parent folder | download | duplicates (2)
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()