Warning, /EDM4eic/utils/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # SPDX-License-Identifier: LGPL-3.0-or-later
0002 # Copyright (C) 2022 Whitney Armstrong, Sylvester Joosten, Wouter Deconinck
0003
0004 find_package(ROOT REQUIRED COMPONENTS GenVector MathCore)
0005 find_package(CLI11 CONFIG)
0006
0007 add_library(edm4eic_utils INTERFACE)
0008
0009 target_link_libraries(edm4eic_utils
0010 INTERFACE edm4eic
0011 INTERFACE EDM4HEP::edm4hep
0012 INTERFACE ROOT::GenVector ROOT::MathCore
0013 )
0014
0015 target_include_directories(edm4eic_utils
0016 INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
0017 INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
0018 INTERFACE $<INSTALL_INTERFACE:include>
0019 )
0020
0021 install(FILES
0022 include/edm4eic/analysis_utils.h
0023 include/edm4eic/unit_system.h
0024 include/edm4eic/vector_utils.h
0025 include/edm4eic/vector_utils_legacy.h
0026 DESTINATION include/edm4eic
0027 )
0028
0029 install(TARGETS edm4eic_utils
0030 EXPORT ${PROJECT_NAME}Targets
0031 LIBRARY DESTINATION lib
0032 ARCHIVE DESTINATION lib
0033 RUNTIME DESTINATION bin
0034 INCLUDES DESTINATION include
0035 )
0036
0037 if(CLI11_FOUND)
0038
0039 if(${podio_VERSION} VERSION_LESS 0.17.4)
0040
0041 # EventStore-based merging
0042 add_executable(edm4eic_event_merge src/event_merge.cpp)
0043
0044 target_compile_features(edm4eic_event_merge
0045 PUBLIC cxx_auto_type
0046 PUBLIC cxx_trailing_return_types
0047 PUBLIC cxx_std_17
0048 PRIVATE cxx_variadic_templates
0049 )
0050
0051 target_compile_options(edm4eic_event_merge PRIVATE
0052 -Wno-extra
0053 -Wno-ignored-qualifiers
0054 -Wno-overloaded-virtual
0055 -Wno-shadow
0056 )
0057
0058 target_include_directories(edm4eic_event_merge
0059 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
0060 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
0061 PUBLIC $<INSTALL_INTERFACE:include>
0062 )
0063
0064 target_link_libraries(edm4eic_event_merge
0065 PUBLIC edm4eic
0066 PUBLIC EDM4HEP::edm4hep
0067 PUBLIC podio::podio podio::podioRootIO
0068 PUBLIC ROOT::GenVector ROOT::MathCore)
0069
0070 install(TARGETS edm4eic_event_merge
0071 EXPORT ${PROJECT_NAME}Targets
0072 LIBRARY DESTINATION lib
0073 ARCHIVE DESTINATION lib
0074 RUNTIME DESTINATION bin
0075 INCLUDES DESTINATION include
0076 )
0077
0078 endif()
0079
0080 endif()