#library for tools #could be possible to split up further libraries with less dependencies #SET(INCLUDE_DIRECTORIES # ${INCLUDE_DIRECTORIES} # ${CMAKE_SOURCE_DIR}/genfit/eventDisplay #) SET(TPC_TOOLS_SOURCES dbgstream.cxx DebugLogger.cxx TCovEllipse.cxx TpcTrackVisTask.cxx TpcPSAplot.cxx TpcClusterRadius.cxx TpcClusterZ.cxx TpcClusterDist.cxx TpcDigiAnalysisTask.cxx TpcDigiAmplitude.cxx TpcDigiAge.cxx TpcDigiPadID.cxx TpcSignalAge.cxx TpcSampleAge.cxx QAPlotCollection.cxx evtMix/TpcEvtMixTask.cxx evtMix/TpcEvtTime.cxx evtMix/TpcEvtTimeGenTask.cxx spacecharge/BiCubSpline.cxx spacecharge/BiCubSplineFitter.cxx spacecharge/BSpline.cxx #spacecharge/CubSpline.cxx #spacecharge/CubSplineFitter.cxx spacecharge/SplineTF1Interface.cxx spacecharge/SplineTF2Interface.cxx spacecharge/TpcAbsField.cxx spacecharge/TpcDevmapCyl.cxx spacecharge/TpcDevmapCylLoader.cxx spacecharge/TpcDevmapSLA.cxx spacecharge/TpcEFieldCyl.cxx spacecharge/TpcEFieldCylLoader.cxx spacecharge/TpcFieldCylGrid.cxx spacecharge/TpcInhFieldDrifter.cxx spacecharge/TpcLaser.cxx spacecharge/TpcLaserTask.cxx #spacecharge/TpcLaserFitTaskStat.cxx spacecharge/TpcLaserMatchingTask.cxx spacecharge/TpcRungeKutta.cxx spacecharge/TpcSpaceChargeTask.cxx spacecharge/TpcLaserGrid.cxx spacecharge/TpcLaserFitTask.cxx spacecharge/TpcLaserCorrectionTask.cxx residuals/AbsRefTrackResCalc.cxx residuals/AbsResCalc.cxx residuals/MCTrackResCalc.cxx residuals/TpcMCResCalcSample.cxx residuals/TpcMCResCalcDigi.cxx residuals/TpcMCResCalcCluster.cxx residuals/TpcMCResCalcSPHit.cxx residuals/TpcRefGFTrkResCalc.cxx residuals/TpcRefGFTrkTpcClusterResCalc.cxx residuals/TpcTrackShieldResCalc.cxx residuals/TpcRefResidualCollection.cxx residuals/TpcRefTrackResidualTask.cxx residuals/TpcMcTrackResidualTask.cxx residuals/TpcResidualTask.cxx residuals/TpcSLResidualTask.cxx residuals/TpcRefGFTrkResCalc_Alignment.cxx residuals/TpcRefGFTrkTpcClusterResCalc_Alignment.cxx residuals/CdcTpcMatchingQA.cxx #laststrip/TpcEFieldCylLs.cxx cosmics/TpcCosmics.cxx cosmics/TpcCosmicsTask.cxx # particles/Particle.cxx # particles/CollectParticlesTask.cxx residuals/GFToolsPyWrapper.h TpcWaveform.cxx GaussExpConv.cxx Roo2DimGauss.cxx RooAmpLandau.cxx ) IF(DEFINED ENV{FOPI2ROOT}) ADD_DEFINITIONS(-DCOMPILE_TPCTOOLS_WITH_FOPI2ROOT) SET(TPC_TOOLS_EXTRA_SOURCES residuals/TpcTrackCdcHitResCalc.cxx residuals/TpcCdcFit2DResCalc.cxx residuals/TpcGFTrackResCalc.cxx residuals/TpcCdc2DMatchedResCalc.cxx residuals/TpcShieldPointTpcHitResCalc.cxx residuals/TpcCdcTrackTrackCylResCalc.cxx residuals/CdcTrackTpcHitResCalc.cxx residuals/TpcCdcFit2DResCalc_Alignment.cxx TpcQATask.cxx FopiEventDisplayTask.cxx SimpleEvDisplay.cxx ) SET(TPC_TOOLS_SOURCES ${TPC_TOOLS_SOURCES} ${TPC_TOOLS_EXTRA_SOURCES} ) CHANGE_FILE_EXTENSION(*.cxx *.h TPC_TOOLS_EXTRA_HEADERS "${TPC_TOOLS_EXTRA_SOURCES}") set(TPC_TOOLS_EXTRA_LINKDEF tpcToolsExtraLinkDef.h) set(TPC_TOOLS_EXTRA_DICTIONARY ${CMAKE_CURRENT_BINARY_DIR}/tpcToolsExtraDict.cxx) #MESSAGE("${INCLUDE_DIRECTORIES}") ROOT_GENERATE_DICTIONARY("${TPC_TOOLS_EXTRA_HEADERS}" "${TPC_TOOLS_EXTRA_LINKDEF}" "${TPC_TOOLS_EXTRA_DICTIONARY}" "${INCLUDE_DIRECTORIES}") ENDIF(DEFINED ENV{FOPI2ROOT}) if(DEFINED ENV{BATINSTALLDIR}) MESSAGE("Found BAT environment: $ENV{BATINSTALLDIR}") SET(TPC_TOOLS_BAT_SOURCES TpcClusterErrorCalib.cxx TpcCalibCluster.cxx BatClusterErrorModel.cxx TpcClusterCalibDataset.cxx ) SET(INCLUDE_DIRECTORIES "${INCLUDE_DIRECTORIES}" "$ENV{BATINSTALLDIR}/include") include_directories(${INCLUDE_DIRECTORIES}) SET(TPC_TOOLS_SOURCES ${TPC_TOOLS_SOURCES} ${TPC_TOOLS_BAT_SOURCES}) #MESSAGE(${TPC_TOOLS_SOURCES}) CHANGE_FILE_EXTENSION(*.cxx *.h TPC_TOOLS_BAT_HEADERS "${TPC_TOOLS_BAT_SOURCES}") SET(TPC_TOOLS_BAT_LINKDEF tpcToolsBatLinkDef.h) SET(TPC_TOOLS_BAT_DICTIONARY ${CMAKE_CURRENT_BINARY_DIR}/tpcToolsBatDict.cxx) ROOT_GENERATE_DICTIONARY("${TPC_TOOLS_BAT_HEADERS}" "${TPC_TOOLS_BAT_LINKDEF}" "${TPC_TOOLS_BAT_DICTIONARY}" "${INCLUDE_DIRECTORIES}") endif(DEFINED ENV{BATINSTALLDIR}) CHANGE_FILE_EXTENSION(*.cxx *.h TPC_TOOLS_HEADERS "${TPC_TOOLS_SOURCES}") SET(TPC_TOOLS_LINKDEF tpcToolsLinkDef.h) SET(TPC_TOOLS_DICTIONARY ${CMAKE_CURRENT_BINARY_DIR}/tpcToolsDict.cxx) ROOT_GENERATE_DICTIONARY("${TPC_TOOLS_HEADERS}" "${TPC_TOOLS_LINKDEF}" "${TPC_TOOLS_DICTIONARY}" "${INCLUDE_DIRECTORIES}") #Add the dictionaries SET(TPC_TOOLS_SOURCES ${TPC_TOOLS_SOURCES} ${TPC_TOOLS_DICTIONARY}) #fopi2root IF(DEFINED ENV{FOPI2ROOT}) SET(TPC_TOOLS_SOURCES ${TPC_TOOLS_SOURCES} ${TPC_TOOLS_EXTRA_DICTIONARY}) ENDIF(DEFINED ENV{FOPI2ROOT}) #bat if(DEFINED ENV{BATINSTALLDIR}) SET(TPC_TOOLS_SOURCES ${TPC_TOOLS_SOURCES} ${TPC_TOOLS_BAT_DICTIONARY}) endif(DEFINED ENV{BATINSTALLDIR}) #MESSAGE(*******************************) #MESSAGE(${TPC_TOOLS_SOURCES}) add_library(TpcTools SHARED ${TPC_TOOLS_SOURCES}) set_target_properties(TpcTools PROPERTIES ${FAIRROOT_LIBRARY_PROPERTIES}) target_link_libraries(TpcTools RooFit ${ROOT_LIBRARIES}) if(DEFINED ENV{BATINSTALLDIR}) target_link_libraries(TpcTools -L$ENV{BATINSTALLDIR}/lib -lBAT) endif(DEFINED ENV{BATINSTALLDIR}) If(DEFINED ENV{CLUSTVIS}) Message("CLUSTVIS is set, so libTpcEve will be built and TpcClustVis will be compiled.") SET(TPC_EVE_SOURCES TpcClustVis.cxx ) CHANGE_FILE_EXTENSION(*.cxx *.h TPC_EVE_HEADERS "${TPC_EVE_SOURCES}") set(TPC_EVE_LINKDEF tpcEveLinkDef.h) set(TPC_EVE_DICTIONARY ${CMAKE_CURRENT_BINARY_DIR}/tpcEveDict.cxx) ROOT_GENERATE_DICTIONARY("${TPC_EVE_HEADERS}" "${TPC_EVE_LINKDEF}" "${TPC_EVE_DICTIONARY}" "${INCLUDE_DIRECTORIES}") SET(TPC_EVE_SOURCES ${TPC_EVE_SOURCES} ${TPC_EVE_DICTIONARY}) add_library(TpcEve SHARED ${TPC_EVE_SOURCES}) target_link_libraries(TpcEve ${ROOT_LIBRARIES} -lEve) set_target_properties(TpcEve PROPERTIES ${FAIRROOT_LIBRARY_PROPERTIES}) ################ install with TpcEve ################### install(TARGETS TpcTools TpcEve DESTINATION ${CMAKE_BINARY_DIR}/lib) Else(DEFINED ENV{CLUSTVIS}) install(TARGETS TpcTools DESTINATION ${CMAKE_BINARY_DIR}/lib) EndIf(DEFINED ENV{CLUSTVIS}) #MESSAGE(${INCLUDE_DIRECTORIES})