Warning, /acts/Plugins/EDM4hep/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 acts_add_library(
0002 PluginEDM4hep
0003 SHARED
0004 src/EDM4hepUtil.cpp
0005 src/PodioUtil.cpp
0006 ACTS_INCLUDE_FOLDER include/ActsPlugins
0007 )
0008
0009 target_include_directories(
0010 ActsPluginEDM4hep
0011 PUBLIC
0012 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
0013 $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
0014 )
0015
0016 target_link_libraries(
0017 ActsPluginEDM4hep
0018 PUBLIC
0019 EDM4HEP::edm4hep
0020 Acts::Core
0021 Acts::PodioEdm
0022 ROOT::Core
0023 podio::podio
0024 podio::podioRootIO
0025 )
0026
0027 find_file(
0028 _edm4hep_yaml
0029 NAME
0030 edm4hep.yaml
0031 PATHS ${EDM4HEP_DATA_DIR}
0032 NO_DEFAULT_PATH
0033 REQUIRED
0034 )
0035
0036 set(_output_folder ${CMAKE_CURRENT_BINARY_DIR}/generated)
0037
0038 podio_generate_datamodel(
0039 ActsPodioEdm
0040 ${CMAKE_CURRENT_LIST_DIR}/edm.yml
0041 headers
0042 sources
0043 OUTPUT_FOLDER ${_output_folder}
0044 UPSTREAM_EDM edm4hep:${_edm4hep_yaml}
0045 IO_BACKEND_HANDLERS ${PODIO_IO_HANDLERS}
0046 )
0047
0048 podio_add_datamodel_core_lib(ActsPodioEdm "${headers}" "${sources}"
0049 OUTPUT_FOLDER ${_output_folder}
0050 )
0051 target_link_libraries(ActsPodioEdm PUBLIC EDM4HEP::edm4hep)
0052
0053 add_library(Acts::PodioEdm ALIAS ActsPodioEdm)
0054
0055 target_compile_options(ActsPodioEdm PRIVATE "-Wno-old-style-cast")
0056
0057 podio_add_root_io_dict(ActsPodioEdmDict ActsPodioEdm "${headers}" ${_output_folder}/src/selection.xml)
0058 add_library(Acts::ActsPodioEdmDict ALIAS ActsPodioEdmDict)
0059
0060 target_compile_options(ActsPodioEdmDict PRIVATE "-Wno-old-style-cast")
0061
0062 install(
0063 TARGETS ActsPodioEdm
0064 EXPORT ActsPodioEdmTargets
0065 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
0066 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ActsPodioEdm
0067 )
0068
0069 install(
0070 DIRECTORY ${_output_folder}/ActsPodioEdm
0071 DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ActsPodioEdm
0072 )
0073
0074 set(install_package_config_dir "${CMAKE_INSTALL_LIBDIR}/cmake/Acts")
0075 install(EXPORT ActsPodioEdmTargets DESTINATION ${install_package_config_dir})
0076
0077 install(
0078 TARGETS ActsPodioEdmDict
0079 EXPORT ActsPodioEdmTargets
0080 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT bin
0081 LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT shlib
0082 PUBLIC_HEADER
0083 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/ActsPodioEdm"
0084 COMPONENT dev
0085 )
0086
0087 install(
0088 FILES "${CMAKE_CURRENT_BINARY_DIR}/ActsPodioEdmDictDict.rootmap"
0089 DESTINATION "${CMAKE_INSTALL_LIBDIR}"
0090 COMPONENT dev
0091 )
0092
0093 install(
0094 FILES "${CMAKE_CURRENT_BINARY_DIR}/libActsPodioEdmDict_rdict.pcm"
0095 DESTINATION "${CMAKE_INSTALL_LIBDIR}"
0096 COMPONENT dev
0097 )