Warning, /EICrecon/src/services/io/podio/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # Automatically set plugin name the same as the directory name
0002 get_filename_component(PLUGIN_NAME ${CMAKE_CURRENT_LIST_DIR} NAME)
0003
0004 # Function creates ${PLUGIN_NAME}_plugin and ${PLUGIN_NAME}_library targets
0005 # Setting default includes, libraries and installation paths
0006 plugin_add(${PLUGIN_NAME})
0007
0008 # The macro grabs sources as *.cc *.cpp *.c and headers as *.h *.hh *.hpp Then
0009 # correctly sets sources for ${_name}_plugin and ${_name}_library targets Adds
0010 # headers to the correct installation directory
0011 plugin_glob_all(${PLUGIN_NAME})
0012
0013 # Add include directories (works same as target_include_directories)
0014 plugin_include_directories(${PLUGIN_NAME} PRIVATE ${PROJECT_BINARY_DIR}/include)
0015
0016 # Add libraries (works same as target_include_directories)
0017 plugin_link_libraries(
0018 ${PLUGIN_NAME}
0019 fmt::fmt
0020 EDM4HEP::edm4hep
0021 EDM4HEP::edm4hepDict
0022 EDM4EIC::edm4eic
0023 EDM4EIC::edm4eic_utils
0024 podio::podioIO
0025 $<TARGET_NAME_IF_EXISTS:Acts::PluginPodio>
0026 $<TARGET_NAME_IF_EXISTS:ActsPodioEdm>
0027 log_library)
0028
0029 # Add ZeroMQ support for managed PODIO processor
0030 plugin_add_zeromq(${PLUGIN_NAME})
0031
0032 # Add nlohmann/json for JSON message parsing
0033 find_package(nlohmann_json REQUIRED)
0034 plugin_link_libraries(${PLUGIN_NAME} nlohmann_json::nlohmann_json)