Page MenuHomeHEPForge

CMakeLists.txt
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

CMakeLists.txt

file(GLOB src_files *.cc)
## hej source
add_library(HEJ SHARED ${src_files})
set_target_properties(HEJ PROPERTIES OUTPUT_NAME "HEJ")
target_include_directories(HEJ PUBLIC ${HEJ_INCLUDE_DIR})
set(libraries ${CMAKE_DL_LIBS})
target_link_libraries(HEJ PRIVATE ${libraries})
## Dependencies
target_link_libraries(HEJ
PUBLIC
fastjet::fastjet
LHAPDF::LHAPDF
CLHEP::CLHEP
yaml-cpp
)
# Boost target seems to be unreliable and might requires specific versions of
# cmake to work see e.g. https://stackoverflow.com/a/42124857
# target_link_libraries(HEJ
# PUBLIC
# Boost::boost
# Boost::iostreams
# )
# link explicitly instead
target_include_directories(HEJ PUBLIC ${Boost_INCLUDE_DIRS})
target_link_libraries(HEJ PUBLIC ${Boost_LIBRARIES})
if(${QCDloop_FOUND})
target_link_libraries(HEJ PRIVATE QCDloop::qcdloop quadmath)
target_compile_options( HEJ PUBLIC "-DHEJ_BUILD_WITH_QCDLOOP" )
endif()
if(${HepMC_FOUND})
target_link_libraries(HEJ PRIVATE HepMC::HepMC)
target_compile_options( HEJ PUBLIC "-DHEJ_BUILD_WITH_HepMC2" )
if(${rivet_FOUND})
target_link_libraries(HEJ PRIVATE rivet::rivet)
target_compile_options( HEJ PUBLIC "-DHEJ_BUILD_WITH_RIVET" )
endif()
endif()
if(${HepMC3_FOUND})
# HepMC 3 doesn't export a target
target_link_libraries(HEJ PRIVATE ${HEPMC3_LIBRARIES})
target_include_directories(HEJ PRIVATE ${HEPMC3_INCLUDE_DIR})
target_compile_options( HEJ PUBLIC "-DHEJ_BUILD_WITH_HepMC3" )
endif()
if(${HighFive_FOUND})
target_link_libraries(HEJ PRIVATE HighFive)
target_compile_options( HEJ PUBLIC "-DHEJ_BUILD_WITH_HDF5" )
endif()
## install & export target
install(TARGETS HEJ
EXPORT HEJ-export
DESTINATION ${INSTALL_LIB_DIR}
)
install(EXPORT HEJ-export
FILE
hejTargets.cmake
NAMESPACE
HEJ::
DESTINATION
${INSTALL_CONFIG_DIR}
)

File Metadata

Mime Type
text/plain
Expires
Tue, Sep 30, 5:48 AM (1 d, 13 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
6504840
Default Alt Text
CMakeLists.txt (1 KB)

Event Timeline