-
Pierre-Alain Loizeau authoredPierre-Alain Loizeau authored
CMakeLists.txt 8.19 KiB
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startMQMcbmPulserMonitor2020.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startMQMcbmPulserMonitor2020.sh)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startMQMcbmEvtBuilderWin2020.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startMQMcbmEvtBuilderWin2020.sh)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startMQBuildRawEvents.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startMQBuildRawEvents.sh)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startBuildRawEvents2021.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startBuildRawEvents2021.sh)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startBuildRawEventsCosmics2021.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startBuildRawEventsCosmics2021.sh)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startEventBuilder.sh.in ${CMAKE_BINARY_DIR}/bin/MQ/topologies/startEventBuilder.sh)
set(INCLUDE_DIRECTORIES
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_SOURCE_DIR}/MQ/base
${CBMROOT_SOURCE_DIR}/algo
${CBMROOT_SOURCE_DIR}/algo/evbuild
${CBMROOT_SOURCE_DIR}/algo/trigger
${CBMROOT_SOURCE_DIR}/fles/mcbm2018/unpacker
${CBMROOT_SOURCE_DIR}/fles/mcbm2018/tasks
${CBMROOT_SOURCE_DIR}/fles/mcbm2018/parameter
${CBMROOT_SOURCE_DIR}/fles/mcbm2018/dataformat
${CBMROOT_SOURCE_DIR}/fles/mcbm2018/commonMQ
${CBMROOT_SOURCE_DIR}/fles/flestools
${CBMROOT_SOURCE_DIR}/reco/eventbuilder/digis
${CBMROOT_SOURCE_DIR}/reco/base/
${CBMROOT_SOURCE_DIR}/reco/detectors/psd/unpack
${CBMROOT_SOURCE_DIR}/reco/detectors/sts/unpack
${CBMROOT_SOURCE_DIR}/reco/detectors/tof/unpack
${CBMROOT_SOURCE_DIR}/reco/detectors/trd/unpack
${CBMROOT_SOURCE_DIR}/reco/detectors/trd/rawToDigiMethods
${CBMROOT_SOURCE_DIR}/reco/detectors/rich/unpack
${CBMDATA_DIR}
${CBMDATA_DIR}/raw
${CBMDATA_DIR}/sts
${CBMDATA_DIR}/much
${CBMDATA_DIR}/rich
${CBMDATA_DIR}/tof
${CBMDATA_DIR}/psd
${CBMDATA_DIR}/trd
${CBMDATA_DIR}/mvd # Feint to avoid crash of DigiManager due to missing source pointer
${CBMDATA_DIR}/base
${CBMDATA_DIR}/global
${CBMBASE_DIR}
${CBMROOT_SOURCE_DIR}/sim/transport/steer # For CbmSetup.h!
${CBMROOT_SOURCE_DIR}/sim/transport/geosetup # For CbmGeoSetupDbProvider.h, needed by CbmSetup
${CBMDETECTORBASE_DIR}/sts # required for parameter handling of the sts
${CBMDETECTORBASE_DIR}/trd # required for parameter handling of the trd
${CBMDETECTORBASE_DIR}/tof # required for parameter handling of the tof
${CBMDETECTORBASE_DIR}/rich # required for parameter handling of the rich
${CBMDETECTORBASE_DIR}/psd # required for fitting tools of the psd
)
Set(SYSTEM_INCLUDE_DIRECTORIES
${SYSTEM_INCLUDE_DIRECTORIES}
${ZeroMQ_INCLUDE_DIR}
${Boost_INCLUDE_DIR}
${FAIRROOT_INCLUDE_DIR}
${FAIRMQ_INCLUDE_DIR}
${FAIRMQ_INCLUDE_DIR}/options
${VMC_INCLUDE_DIRS}
${FAIRLOGGER_INCLUDE_DIR}
${IPC_INCLUDE_DIRECTORY}
${CBMROOT_SOURCE_DIR}/external/cppzmq
)
include_directories(${INCLUDE_DIRECTORIES})
include_directories(SYSTEM ${SYSTEM_INCLUDE_DIRECTORIES})
set(LINK_DIRECTORIES
${KFParticle_LIB_DIR}
${FAIRMQ_LIBRARY_DIR}
${FAIRROOT_LIBRARY_DIR}
${ROOT_LIBRARY_DIR}
${Boost_LIBRARY_DIRS}
)
link_directories(${LINK_DIRECTORIES})
# Set the install path within the build directory
set(EXECUTABLE_OUTPUT_PATH "${EXECUTABLE_OUTPUT_PATH}/MQ/mcbm")
# Set the install path within the installation directory
set(BIN_DESTINATION bin/MQ/mcbm)
Set(BOOST_LIBS
${Boost_SYSTEM_LIBRARY}
${Boost_SERIALIZATION_LIBRARY}
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_LOG_LIBRARY}
)
If(UNIX AND NOT APPLE)
List(APPEND BOOST_LIBS pthread)
EndIf()
set(FAIR_LIBS
${FAIRMQ_LIBS}
)
If(FAIRLOGGER_FOUND)
set(FAIR_LIBS
${FAIR_LIBS}
FairLogger
)
EndIf()
# Dependencies common to all executables
set(DEPENDENCIES_ALL
${DEPENDENCIES}
${FAIR_LIBS}
${BOOST_LIBS}
)
set(EXE_NAME McbmUnpack)
set(SRCS CbmDeviceMcbmUnpack.cxx runMcbmUnpack.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME McbmMonitorPulser)
set(SRCS CbmDeviceMcbmMonitorPulser.cxx runMcbmMonitorPulser.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME BuildRawEvents)
set(SRCS CbmDeviceBuildRawEvents.cxx runBuildRawEvents.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
KFParticle
CbmFlibMcbm2018
CbmFlibFlesTools
CbmEventBuilder
KF
L1
CbmBase
CbmData
CbmTofBase
CbmSimBase
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME McbmEventBuilderWin)
set(SRCS CbmDeviceMcbmEventBuilderWin.cxx runMcbmEvtBuilderWin.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME McbmEventSink)
set(SRCS CbmDeviceMcbmEventSink.cxx runMcbmEventSink.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Tree
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME MqUnpack)
set(SRCS CbmDeviceUnpack.cxx runUnpack.cxx)
set(DEPENDENCIES
${DEPENDENCIES}
${FAIR_LIBS}
ParBase
${BOOST_LIBS}
fles_ipc
CbmFlibFlesTools
CbmBase
CbmRecoBase
CbmPsdReco
CbmRichReco
CbmRecoSts
CbmTofReco
CbmTrdReco
CbmData
CbmSimSteer # for CbmSetup!
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME BuildDigiEvents)
set(SRCS CbmDeviceBuildDigiEvents.cxx runBuildDigiEvents.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
CbmFlibFlesTools
CbmEventBuilder
KF
L1
CbmBase
CbmRecoBase
CbmData
CbmTofBase
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME EventBuilder)
set(SRCS CbmDeviceEventBuilder.cxx runEventBuilder.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
Algo
CbmFlibFlesTools
CbmEventBuilder
KF
L1
CbmBase
CbmRecoBase
CbmData
CbmTofBase
Core
RIO
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME DigiEventSink)
set(SRCS CbmDeviceDigiEventSink.cxx runDigiEventSink.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Tree
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
set(EXE_NAME EventSink)
set(SRCS CbmDeviceEventSink.cxx runEventSink.cxx)
set(DEPENDENCIES
${DEPENDENCIES_ALL}
fles_ipc
CbmFlibMcbm2018
CbmFlibFlesTools
CbmBase
CbmData
Core
RIO
Tree
Net
Hist
RHTTP
)
GENERATE_EXECUTABLE()
# Set the correct variables for the installation
set(VMCWORKDIR ${CMAKE_INSTALL_PREFIX}/share/cbmroot)
set(MY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
set(CMAKE_CURRENT_SOURCE_DIR ${VMCWORKDIR}/input)
set(TMPDIR "${CMAKE_BINARY_DIR}")
set(CMAKE_BINARY_DIR ${CMAKE_INSTALL_PREFIX})
# Configure file for installation directory
configure_file(${MY_SOURCE_DIR}/startMQMcbmPulserMonitor2020.sh.in ${TMPDIR}/bin/MQ/topologies/install/startMQMcbmPulserMonitor2020.sh)
configure_file(${MY_SOURCE_DIR}/startMQMcbmEvtBuilderWin2020.sh.in ${TMPDIR}/bin/MQ/topologies/install/startMQMcbmEvtBuilderWin2020.sh)
configure_file(${MY_SOURCE_DIR}/startMQBuildRawEvents.sh.in ${TMPDIR}/bin/MQ/topologies/install/startMQBuildRawEvents.sh)
configure_file(${MY_SOURCE_DIR}/startBuildRawEvents2021.sh.in ${TMPDIR}/bin/MQ/topologies/install/startBuildRawEvents2021.sh)
configure_file(${MY_SOURCE_DIR}/startBuildRawEventsCosmics2021.sh.in ${TMPDIR}/bin/MQ/topologies/install/startBuildRawEventsCosmics2021.sh)
configure_file(${MY_SOURCE_DIR}/startEventBuilder.sh.in ${TMPDIR}/bin/MQ/topologies/install/startEventBuilder.sh)
install(PROGRAMS ${TMPDIR}/bin/MQ/topologies/install/startMQMcbmPulserMonitor2020.sh
${TMPDIR}/bin/MQ/topologies/install/startMQMcbmEvtBuilderWin2020.sh
${TMPDIR}/bin/MQ/topologies/install/startMQBuildRawEvents.sh
${TMPDIR}/bin/MQ/topologies/install/startBuildRawEvents2021.sh
${TMPDIR}/bin/MQ/topologies/install/startBuildRawEventsCosmics2021.sh
${TMPDIR}/bin/MQ/topologies/install/startEventBuilder.sh
DESTINATION ${CMAKE_INSTALL_PREFIX}/bin/MQ/topologies
)