Skip to content
Snippets Groups Projects
Commit dccfa767 authored by lintao@ihep.ac.cn's avatar lintao@ihep.ac.cn
Browse files

Merge branch 'lintao/cmake/dependencies' into 'master'

Optimize cmake and reduce the find_package.

See merge request cepc/CEPCSW!53
parents b9f67b61 0729cbc0
No related branches found
No related tags found
No related merge requests found
Showing with 23 additions and 92 deletions
......@@ -6,11 +6,6 @@ project(CEPCSW)
include(cmake/CEPCSWEnv.cmake)
#
find_package(ROOT COMPONENTS RIO Tree)
find_package(Gaudi)
find_package(Eigen3)
include(GNUInstallDirs)
include(CTest)
......@@ -19,6 +14,17 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
"Install path prefix, prepended onto install directories." FORCE )
endif()
set(CMAKE_SKIP_BUILD_RPATH TRUE)
set(CMAKE_EXECUTABLE_SUFFIX .exe)
# Put bin/lib/include under CMAKE_BINARY_DIR
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
include_directories(${CMAKE_BINARY_DIR}/include)
# set Install/lib
set(CMAKE_INSTALL_LIBDIR lib)
# Set up C++ Standard
# ``-DCMAKE_CXX_STANDARD=<standard>`` when invoking CMake
set(CMAKE_CXX_STANDARD 17 CACHE STRING "")
......
......@@ -4,18 +4,6 @@
# Based on package: lcgeo
################################################################################
find_package(DD4hep COMPONENTS DDRec DDG4 DDParsers REQUIRED)
# find_package(DD4hep)
find_package(Geant4)
include(${Geant4_USE_FILE})
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_ROOT}/cmake )
include( DD4hep )
find_package(ROOT COMPONENTS MathCore GenVector Geom REQUIRED)
# install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/compact DESTINATION Detector/DetCEPCv4)
gaudi_add_module(DetCEPCv4
SOURCES src/tracker/VXD04_geo.cpp
src/tracker/FTD_Simple_Staggered_geo.cpp
......
......@@ -3,18 +3,6 @@
# CEPC Reference Detector (CRD)
################################################################################
find_package(DD4hep COMPONENTS DDRec DDG4 DDParsers REQUIRED)
# find_package(DD4hep)
find_package(Geant4)
include(${Geant4_USE_FILE})
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_ROOT}/cmake )
include( DD4hep )
find_package(ROOT COMPONENTS MathCore GenVector Geom REQUIRED)
# install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/compact DESTINATION Detector/DetCRD)
gaudi_add_module(DetCRD
SOURCES src/Calorimeter/CRDEcal_v01.cpp
src/Calorimeter/LongCrystalBarBarrelCalorimeter32Polygon_v01.cpp
......
......@@ -3,17 +3,6 @@
# Based on package: lcgeo
################################################################################
find_package(DD4hep COMPONENTS DDRec DDG4 DDParsers REQUIRED)
find_package(Geant4)
include(${Geant4_USE_FILE})
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_ROOT}/cmake )
include( DD4hep )
find_package(ROOT COMPONENTS MathCore GenVector Geom REQUIRED)
# install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/compact DESTINATION Detector/DetDriftChamber)
gaudi_add_module(DetDriftChamber
SOURCES src/driftchamber/DriftChamber.cpp
LINK DetSegmentation
......
......@@ -3,18 +3,6 @@
# Based on package: lcgeo
################################################################################
find_package(DD4hep COMPONENTS DDRec DDG4 DDParsers REQUIRED)
find_package(Geant4)
include(${Geant4_USE_FILE})
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_ROOT}/cmake )
include( DD4hep )
find_package(ROOT COMPONENTS MathCore GenVector Geom REQUIRED)
# TODO: how to handle
# install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/compact DESTINATION Detector/DetEcalMatrix)
gaudi_add_module(DetEcalMatrix
SOURCES src/calorimeter/EcalMatrix.cpp
LINK ${DD4hep_COMPONENT_LIBRARIES}
......
......@@ -2,11 +2,6 @@
##Package : DetSegmentation
#################################################################################
find_package(DD4hep COMPONENTS DDRec DDG4 DDParsers REQUIRED)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${DD4hep_ROOT}/cmake )
include(DD4hep)
gaudi_add_library(DetSegmentation
SOURCES src/GridDriftChamber.cpp
LINK Gaudi::GaudiKernel
......
########################################
find_package(Geant4 REQUIRED)
include(${Geant4_USE_FILE})
gaudi_add_module(GenAlgo
SOURCES src/IGenTool.cpp
src/GenAlgo.cpp
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
gaudi_add_module(DetSimAna
SOURCES src/Edm4hepWriterAnaElemTool.cpp
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
message(" Geant4_LIBRARIES: ${Geant4_LIBRARIES}")
gaudi_add_module(DetSimCore
SOURCES src/DetSimAlg.cpp
src/DetSimSvc.cpp
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
find_package(Garfield REQUIRED)
message(Garfield::Garfield)
message("libonnxruntime ${OnnxRuntime_LIBRARY}")
message("libonnxruntime include ${OnnxRuntime_INCLUDE_DIR}")
find_package(OnnxRuntime REQUIRED)
message("libonnxruntime ${OnnxRuntime_LIBRARY}")
gaudi_add_module(DetSimDedx
SOURCES src/DummyDedxSimTool.cpp
src/BetheBlochEquationDedxSimTool.cpp
......@@ -23,8 +14,6 @@ gaudi_add_module(DetSimDedx
k4FWCore::k4FWCore
Garfield::Garfield
OnnxRuntime
#${OnnxRuntime_LIBRARY}
#/cvmfs/sft.cern.ch/lcg/views/LCG_103/x86_64-centos7-gcc11-opt/lib/libonnxruntime.so
${CLHEP_LIBRARIES}
)
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
gaudi_add_module(DetSimFastModel
SOURCES src/DummyFastSimG4Tool.cpp
src/DummyFastSimG4Model.cpp
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
gaudi_add_module(DetSimGeom
SOURCES src/WorldDetElemTool.cpp
src/AnExampleDetElemTool.cpp
......
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
gaudi_add_library(DetSimSDLib
SOURCES src/Geant4Hits.cpp
src/DDG4SensitiveDetector.cpp
......
......@@ -20,22 +20,31 @@ Find all the dependencies here, so in each package user don't need to find the p
- CKF
#]]
##############################################################################
# import Gaudi at beginning
##############################################################################
find_package(Gaudi REQUIRED)
find_package(CLHEP REQUIRED;CONFIG)
find_package(DD4hep COMPONENTS DDCore DDG4 DDParsers DDRec REQUIRED)
include(DD4hep) # include necessary macro
find_package(EDM4HEP REQUIRED)
#find_package(Garfield REQUIRED)
find_package(Eigen3)
find_package(Garfield)
find_package(Geant4 REQUIRED ui_all vis_all)
include(${Geant4_USE_FILE})
find_package(GEAR REQUIRED)
find_package(GenFit)
find_package(GSL REQUIRED)
find_package(HepMC)
find_package(k4FWCore REQUIRED)
find_package(LCContent REQUIRED)
find_package(LCIO REQUIRED)
find_package(OnnxRuntime REQUIRED)
find_package(PandoraSDK REQUIRED)
find_package(podio REQUIRED)
find_package(ROOT COMPONENTS EG Graf Graf3d Gpad MathCore Net RIO Tree TreePlayer REQUIRED)
find_package(GenFit)
find_package(ROOT COMPONENTS EG Geom GenVector Graf Graf3d Gpad MathCore Net RIO Tree TreePlayer REQUIRED)
if (CEPCSW_USE_SYSTEM_CKF_BELLE)
message("Try to use an existing installation of CKF BELLE")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment