diff --git a/MQ/hitbuilder/CMakeLists.txt b/MQ/hitbuilder/CMakeLists.txt index 9010a720742fe0f54d460b641555eab5aa6a1642..147e90be15ce02cd664c75dfdf97ca9e92e3c471 100644 --- a/MQ/hitbuilder/CMakeLists.txt +++ b/MQ/hitbuilder/CMakeLists.txt @@ -32,6 +32,7 @@ set(PRIVATE_DEPENDENCIES CbmTofReco FairMQ::Tools FairRoot::ParBase + FairRoot::Online ROOT::Core ROOT::Graf ROOT::Hist diff --git a/MQ/mcbm/CMakeLists.txt b/MQ/mcbm/CMakeLists.txt index 75a34bbe5850277b08204384fe761a0179edf6ec..25e526bf5bb5640c44f2f006755722db9e9b292b 100644 --- a/MQ/mcbm/CMakeLists.txt +++ b/MQ/mcbm/CMakeLists.txt @@ -84,7 +84,7 @@ set(EXE_NAME McbmEventBuilderWin) set(SRCS CbmDeviceMcbmEventBuilderWin.cxx runMcbmEvtBuilderWin.cxx) set(PUBLIC_DEPENDENCIES ${PUBLIC_DEPS}) -set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPS}) +set(PRIVATE_DEPENDENCIES "${PRIVATE_DEPS};FairRoot::Online") set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) generate_cbm_executable() @@ -93,7 +93,7 @@ set(EXE_NAME McbmEventSink) set(SRCS CbmDeviceMcbmEventSink.cxx runMcbmEventSink.cxx) set(PUBLIC_DEPENDENCIES ${PUBLIC_DEPS}) -set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPS}) +set(PRIVATE_DEPENDENCIES "${PRIVATE_DEPS};FairRoot::Online") set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) generate_cbm_executable() @@ -121,7 +121,7 @@ set(EXE_NAME DigiEventSink) set(SRCS CbmDeviceDigiEventSink.cxx runDigiEventSink.cxx) set(PUBLIC_DEPENDENCIES ${PUBLIC_DEPS}) -set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPS}) +set(PRIVATE_DEPENDENCIES "${PRIVATE_DEPS};FairRoot::Online") set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) generate_cbm_executable() diff --git a/MQ/source/CMakeLists.txt b/MQ/source/CMakeLists.txt index 5bf553df75906a0d32a0d60dcdc81875a097bf8b..8b0186d0f5d27e6b4764ebaff5b4ebb19c8f482c 100644 --- a/MQ/source/CMakeLists.txt +++ b/MQ/source/CMakeLists.txt @@ -92,13 +92,13 @@ set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) generate_cbm_executable() -set(EXE_NAME MCPointSource) -set(SRCS CbmMCPointSource.cxx runMCPointSource.cxx) -set(PUBLIC_DEPENDENCIES ${PUBLIC_DEPS}) -set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPS}) -set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) +#set(EXE_NAME MCPointSource) +#set(SRCS CbmMCPointSource.cxx runMCPointSource.cxx) +#set(PUBLIC_DEPENDENCIES ${PUBLIC_DEPS}) +#set(PRIVATE_DEPENDENCIES ${PRIVATE_DEPS}) +#set(INTERFACE_DEPENDENCIES ${INTERFACE_DEPS}) - generate_cbm_executable() +# generate_cbm_executable() set(EXE_NAME TsConsumerReqExample) set(SRCS CbmTsConsumerReqDevExample.cxx runTsConsumerReqExample.cxx) diff --git a/cmake/modules/CheckCompiler.cmake b/cmake/modules/CheckCompiler.cmake index 07c9c7d99289f3cb8423a56f0df149f495a159f1..e243944398dd5a23fd17445a6603cc3703ed6153 100644 --- a/cmake/modules/CheckCompiler.cmake +++ b/cmake/modules/CheckCompiler.cmake @@ -19,7 +19,7 @@ endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) # the compiler and compiler flags used to install fairsoft. # Compare compiler and compiler flags used to compile fairsoft with the compiler and flags used now # In case of differences print a warning -Find_Program(FAIRSOFT_CONFIG fairsoft-config PATHS $ENV{SIMPATH}/bin $ENV{FAIRSOFT_ROOT}/bin NO_DEFAULT_PATH) +Find_Program(FAIRSOFT_CONFIG fairsoft-config PATHS ${SIMPATH}/bin NO_DEFAULT_PATH) If(FAIRSOFT_CONFIG) Message(STATUS "fairsoft-config found") diff --git a/cmake/modules/FairRootTargets.cmake b/cmake/modules/FairRootTargets.cmake index 5a4f37aaa0326051bdb9ca0e05929416c48cbf1b..91bb7bab48d1549c83bf8d5498e4697b3c2e2901 100644 --- a/cmake/modules/FairRootTargets.cmake +++ b/cmake/modules/FairRootTargets.cmake @@ -1,16 +1,16 @@ macro(define_fairroot_targets) - # Define FairRoot::FairTools target - add_library(FairRoot::FairTools SHARED IMPORTED GLOBAL) - set_target_properties(FairRoot::FairTools PROPERTIES + # Define FairRoot::Tools target + add_library(FairRoot::Tools SHARED IMPORTED GLOBAL) + set_target_properties(FairRoot::Tools PROPERTIES IMPORTED_LOCATION ${FAIRROOT_LIBRARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}FairTools${CMAKE_SHARED_LIBRARY_SUFFIX} ) - target_include_directories(FairRoot::FairTools INTERFACE + target_include_directories(FairRoot::Tools INTERFACE ${FAIRROOT_INCLUDE_DIR} ) - target_link_libraries(FairRoot::FairTools INTERFACE + target_link_libraries(FairRoot::Tools INTERFACE FairLogger::FairLogger ROOT::Core ROOT::Graf @@ -31,7 +31,7 @@ macro(define_fairroot_targets) ) target_link_libraries(FairRoot::Alignment INTERFACE - FairRoot::FairTools + FairRoot::Tools ROOT::Geom ) @@ -47,7 +47,7 @@ macro(define_fairroot_targets) ) target_link_libraries(FairRoot::ParBase INTERFACE - FairRoot::FairTools + FairRoot::Tools ROOT::Core ROOT::RIO @@ -64,7 +64,7 @@ macro(define_fairroot_targets) ) target_link_libraries(FairRoot::ParBase INTERFACE - FairRoot::FairTools + FairRoot::Tools ROOT::Core ROOT::MathCore @@ -94,7 +94,7 @@ macro(define_fairroot_targets) target_link_libraries(FairRoot::Base INTERFACE FairRoot::Alignment - FairRoot::FairTools + FairRoot::Tools FairRoot::ParBase FairRoot::GeoBase Boost::serialization @@ -117,6 +117,41 @@ macro(define_fairroot_targets) ROOT::Gdml ) + + # The Online library was added with FairRoot v18.8.0 and contains the + # FairRunOnline class and some other online realted classes. Before this + # FairRoot version the code was contained in the Base library. + # If the FairRoot version contains the library define the target, if the + # FairRoot version doesn't contain the library create an alias to + # FairRoot::Base. This allows to already use the target FairRoot::Online + # already before + FairRootVersion() + if(${FairRoot_VERSION} VERSION_LESS 18.8) + add_library(FairRoot::Online ALIAS FairRoot::Base) + else() + # Define FairRoot::Online target + add_library(FairRoot::Online SHARED IMPORTED GLOBAL) + set_target_properties(FairRoot::Online PROPERTIES + IMPORTED_LOCATION + ${FAIRROOT_LIBRARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}Online${CMAKE_SHARED_LIBRARY_SUFFIX} + ) + target_include_directories(FairRoot::Online INTERFACE + ${FAIRROOT_INCLUDE_DIR} + ) + + target_link_libraries(FairRoot::Online INTERFACE + FairRoot::Tools + FairRoot::Base + FairRoot::ParBase + FairRoot::MbsAPI + + ROOT::RHTTP # THttpServer + ROOT::Core + ROOT::Geom + ROOT::Net # TSocket + ) + endif() + # Define FairRoot::EventDisplay target add_library(FairRoot::EventDisplay SHARED IMPORTED GLOBAL) set_target_properties(FairRoot::EventDisplay PROPERTIES @@ -128,7 +163,7 @@ macro(define_fairroot_targets) ) target_link_libraries(FairRoot::EventDisplay INTERFACE - FairRoot::FairTools + FairRoot::Tools FairRoot::Base # FairRootManager, FairRunAna, FairTSBufferFunctional, FairTimeStamp, FairEventManager ROOT::Core @@ -147,19 +182,19 @@ macro(define_fairroot_targets) ROOT::XMLParser # TXMLNode, TXMLAttr, TDOMParser ) - # Define FairRoot::TrkBase target - add_library(FairRoot::TrkBase SHARED IMPORTED GLOBAL) - set_target_properties(FairRoot::TrkBase PROPERTIES + # Define FairRoot::TrackBase target + add_library(FairRoot::TrackBase SHARED IMPORTED GLOBAL) + set_target_properties(FairRoot::TrackBase PROPERTIES IMPORTED_LOCATION ${FAIRROOT_LIBRARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}TrkBase${CMAKE_SHARED_LIBRARY_SUFFIX} ) - target_include_directories(FairRoot::TrkBase INTERFACE + target_include_directories(FairRoot::TrackBase INTERFACE ${FAIRROOT_INCLUDE_DIR} ) - target_link_libraries(FairRoot::TrkBase INTERFACE - FairRoot::FairTools + target_link_libraries(FairRoot::TrackBase INTERFACE + FairRoot::Tools FairRoot::Base # FairRunAna, FairField ROOT::Core @@ -168,19 +203,19 @@ macro(define_fairroot_targets) ROOT::Matrix ) - # Define FairRoot::Gen target - add_library(FairRoot::Gen SHARED IMPORTED GLOBAL) - set_target_properties(FairRoot::Gen PROPERTIES + # Define FairRoot::Generators target + add_library(FairRoot::Generators SHARED IMPORTED GLOBAL) + set_target_properties(FairRoot::Generators PROPERTIES IMPORTED_LOCATION ${FAIRROOT_LIBRARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}Gen${CMAKE_SHARED_LIBRARY_SUFFIX} ) - target_include_directories(FairRoot::Gen INTERFACE + target_include_directories(FairRoot::Generators INTERFACE ${FAIRROOT_INCLUDE_DIR} ) - target_link_libraries(FairRoot::Gen INTERFACE + target_link_libraries(FairRoot::Generators INTERFACE FairRoot::Base # FairPrimaryGenerator, FairGenerator, FairIon, FairParticle, FairRunSim - FairRoot::FairTools + FairRoot::Tools ROOT::Core ROOT::EG @@ -202,7 +237,7 @@ macro(define_fairroot_targets) target_link_libraries(FairRoot::BaseMQ INTERFACE FairRoot::Base # FairTask, FairRunAna, FairRootFileSink, FairFileSource FairRoot::ParBase # FairParRootFileIo, FairRuntimeDb - FairRoot::FairTools + FairRoot::Tools FairRoot::MbsAPI FairMQ::FairMQ @@ -230,7 +265,7 @@ macro(define_fairroot_targets) FairRoot::Base # FairRunIdGenerator FairRoot::BaseMQ # Serialization policies FairRoot::ParBase # FairRuntimeDb, ... - FairRoot::FairTools # FairLogger + FairRoot::Tools # FairLogger FairMQ::FairMQ diff --git a/cmake/modules/FindFairRoot.cmake b/cmake/modules/FindFairRoot.cmake index d67687216af31f51587cd494ceb65193b6a6caff..fc7b8f35473fc493ce43542053c4c7ecb9453a85 100644 --- a/cmake/modules/FindFairRoot.cmake +++ b/cmake/modules/FindFairRoot.cmake @@ -64,5 +64,7 @@ else(FAIRROOT_INCLUDE_DIR AND FAIRROOT_LIBRARY_DIR) MESSAGE(FATAL_ERROR "FairRoot installation not found") endif (FAIRROOT_INCLUDE_DIR AND FAIRROOT_LIBRARY_DIR) -include(FairRootTargets) -define_fairroot_targets() +if(${CMAKE_PROJECT_NAME} MATCHES CBMROOT) + include(FairRootTargets) + define_fairroot_targets() +endif() diff --git a/fles/mcbm2018/CMakeLists.txt b/fles/mcbm2018/CMakeLists.txt index 23625e64f9d2588920cca47d17125f7c04654348..4ed7d71706e95b20ddf6c01801c0123c89451b0d 100644 --- a/fles/mcbm2018/CMakeLists.txt +++ b/fles/mcbm2018/CMakeLists.txt @@ -110,6 +110,7 @@ set(PRIVATE_DEPENDENCIES CbmTofBase FairLogger::FairLogger FairRoot::ParBase + FairRoot::Online cppzmq external::fles_logging ROOT::Gpad diff --git a/fles/star2019/CMakeLists.txt b/fles/star2019/CMakeLists.txt index 1a20a9bcc74b168bea00bc419486d69bd1f8a078..c072d88f4db8573b7d196d4a26cb838d6f4b097a 100644 --- a/fles/star2019/CMakeLists.txt +++ b/fles/star2019/CMakeLists.txt @@ -43,6 +43,7 @@ set(PRIVATE_DEPENDENCIES CbmFlibFlesTools CbmFlibMcbm2018 FairRoot::Base + FairRoot::Online ROOT::Gpad ROOT::Graf ROOT::Hist diff --git a/reco/base/CMakeLists.txt b/reco/base/CMakeLists.txt index 7bf68d37585c51a8bf7263edb318b949b773dccf..3b94ac71eb5cb4b8ea7f2d65299c8007fe3db532 100644 --- a/reco/base/CMakeLists.txt +++ b/reco/base/CMakeLists.txt @@ -40,6 +40,7 @@ set(LINKDEF ${LIBRARY_NAME}LinkDef.h) set(PUBLIC_DEPENDENCIES CbmData FairRoot::Base + FairRoot::Online ROOT::Core ) diff --git a/reco/detectors/trd/CMakeLists.txt b/reco/detectors/trd/CMakeLists.txt index 20aeac51a2d3afe46ab59d8e346b283220d84f6f..6d3ecfd2ddef329ea1a8fbff24908fa340f23f40 100644 --- a/reco/detectors/trd/CMakeLists.txt +++ b/reco/detectors/trd/CMakeLists.txt @@ -92,6 +92,7 @@ set(PRIVATE_DEPENDENCIES CbmTrdSim CbmRecoBase FairRoot::ParBase + FairRoot::Online L1 ROOT::EG ROOT::Geom diff --git a/reco/mq/CMakeLists.txt b/reco/mq/CMakeLists.txt index 8587f5045ddbbbeb179151308e672b506ef8ecd7..96f5138e8c8c48bc00ab65da609b584407e84665 100644 --- a/reco/mq/CMakeLists.txt +++ b/reco/mq/CMakeLists.txt @@ -30,6 +30,7 @@ set(PUBLIC_DEPS set(PRIVATE_DEPS FairRoot::Base + FairRoot::Online Algo ) diff --git a/reco/tasks/CMakeLists.txt b/reco/tasks/CMakeLists.txt index 97fe8cf946e6509f12d38361f646cb860c19bd43..80d8698852b0d50769bf585cc1faf89b7cc5a3dd 100644 --- a/reco/tasks/CMakeLists.txt +++ b/reco/tasks/CMakeLists.txt @@ -34,6 +34,7 @@ set(PUBLIC_DEPENDENCIES set(PRIVATE_DEPENDENCIES CbmBase FairLogger::FairLogger + FairRoot::Online external::yaml-cpp ROOT::Hist ROOT::RHTTP diff --git a/sim/response/CMakeLists.txt b/sim/response/CMakeLists.txt index 86185d5aa2da137482e29772126a126658c1ef23..1be37594c6102db77d778eceaa50eae99a4b52ba 100644 --- a/sim/response/CMakeLists.txt +++ b/sim/response/CMakeLists.txt @@ -30,7 +30,7 @@ set(PRIVATE_DEPENDENCIES CbmTofSim CbmTrdSim CbmTzdSim - FairRoot::FairTools + FairRoot::Tools FairRoot::ParBase ) diff --git a/sim/transport/steer/CMakeLists.txt b/sim/transport/steer/CMakeLists.txt index cf6c9e6d54aec308e675dd117f6c6c459d70ceaa..09ea11a22f5797cd2e02fb9d27816cf0d9378890 100644 --- a/sim/transport/steer/CMakeLists.txt +++ b/sim/transport/steer/CMakeLists.txt @@ -37,8 +37,8 @@ set(PRIVATE_DEPENDENCIES CbmField CbmSimGenerators FairRoot::Base - FairRoot::FairTools - FairRoot::Gen + FairRoot::Tools + FairRoot::Generators FairRoot::ParBase geant321 geant4vmc