Commit 373e0a61 authored by Marco Clemencic's avatar Marco Clemencic
Browse files

modernized all subdirectories

parent 335a21cd
Pipeline #3279072 passed with stage
in 26 seconds
###############################################################################
# (c) Copyright 2000-2018 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -15,7 +15,7 @@ check-copyright:
image: gitlab-registry.cern.ch/ci-tools/ci-worker:cc7
script:
- curl -o lb-check-copyright "https://gitlab.cern.ch/lhcb-core/LbDevTools/raw/master/LbDevTools/SourceTools.py?inline=false"
- python lb-check-copyright origin/${TARGET_BRANCH}
- python lb-check-copyright origin/${TARGET_BRANCH} --exclude lhcbproject.yml
check-formatting:
image: gitlab-registry.cern.ch/lhcb-docker/style-checker
......
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,26 +8,30 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5)
#---------------------------------------------------------------
# Load macros and functions for Gaudi-based projects
find_package(GaudiProject)
#---------------------------------------------------------------
cmake_minimum_required(VERSION 3.15)
# Declare project name and version
gaudi_project(DaVinci v45r8
USE Analysis v21r8
Stripping v14r4p7
DATA AppConfig VERSION v3r*
FieldMap VERSION v5r*
ParamFiles VERSION v8r*
QMTestFiles VERSION v1r*
PRConfig VERSION v1r*
TurboStreamProd VERSION v*
TCK/HltTCK)
project(DaVinci VERSION 45.8
LANGUAGES CXX)
# hide warnings from some external projects
find_package(Boost)
find_package(ROOT)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS})
# Enable testing with CTest/CDash
include(CTest)
list(PREPEND CMAKE_MODULE_PATH
${PROJECT_SOURCE_DIR}/cmake
)
# Dependencies
set(WITH_DaVinci_PRIVATE_DEPENDENCIES TRUE)
include(DaVinciDependencies)
# -- Subdirectories
lhcb_add_subdirectories(
DaVinciSys
DaVinciTests
Phys/DaVinci
Phys/Tesla
Phys/TurboCache
)
lhcb_finalize_configuration(NO_EXPORT)
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,15 +8,9 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
################################################################################
# Package: DaVinciSys
################################################################################
gaudi_subdir(DaVinciSys)
#[=======================================================================[.rst:
DaVinciSys
----------
#]=======================================================================]
gaudi_depends_on_subdirs(DaVinciTests
Phys/DaVinci
Phys/Tesla
Phys/TurboCache
)
gaudi_add_test(QMTest QMTEST)
gaudi_add_tests(QMTest)
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,13 +8,11 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
################################################################################
# Package: DaVinciTests
################################################################################
gaudi_subdir(DaVinciTests)
#[=======================================================================[.rst:
DaVinciTests
------------
#]=======================================================================]
gaudi_depends_on_subdirs(GaudiConf)
gaudi_add_tests(QMTest)
gaudi_add_test(QMTest QMTEST)
gaudi_install_python_modules()
gaudi_install(PYTHON)
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,25 +8,23 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
################################################################################
# Package: DaVinci
################################################################################
gaudi_subdir(DaVinci)
#[=======================================================================[.rst:
Phys/DaVinci
------------
#]=======================================================================]
gaudi_depends_on_subdirs(Calo/CaloDAQ
Det/DDDB
Event/LinkerInstances
GaudiConf
GaudiKernel
GaudiPython
GaudiSvc
Sim/SimComponents
Kernel/FSRAlgs)
gaudi_install(PYTHON)
gaudi_generate_confuserdb()
lhcb_add_confuser_dependencies(
GaudiAlg:GaudiAlg
GaudiConf
Kernel/LHCbAlgs
Kernel/LHCbKernel
L0/L0DU
Phys/AnalysisConf
Phys/PhysConf
Rec/LumiAlgs
Tf/TrackSys
)
find_package(HepMC)
set_property(DIRECTORY PROPERTY CONFIGURABLE_USER_MODULES DaVinci.Configuration)
gaudi_install_python_modules()
gaudi_env(SET DAVINCIOPTS \${DAVINCIROOT}/options)
lhcb_env(SET DAVINCIOPTS ${CMAKE_CURRENT_SOURCE_DIR}/options)
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,19 +8,39 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
################################################################################
# Package: Tesla
################################################################################
gaudi_subdir(Tesla)
#[=======================================================================[.rst:
Phys/Tesla
----------
#]=======================================================================]
gaudi_depends_on_subdirs(Event/HltEvent
Event/MicroDst
Det/DDDB
GaudiConfUtils
Hlt/HltDAQ
Phys/TeslaTools
Phys/DaVinciKernel)
gaudi_install(PYTHON)
gaudi_generate_confuserdb()
lhcb_add_confuser_dependencies(
Calo/CaloAssociators:CaloAssociators
DAQ/DAQSys
DAQ/DAQUtils:DAQUtils
DAQ/RawEventCompat
Event/EventPacker:EventPacker
GaudiAlg:GaudiAlg
GaudiCommonSvc:GaudiCommonSvc
GaudiConf
GaudiCoreSvc:GaudiCoreSvc
Hlt/HltDAQ:HltDAQ
Hlt/HltServices:HltServices
Kernel/LHCbAlgs
Kernel/LHCbAlgs:LHCbAlgs
Kernel/LHCbKernel
MicroDST/MicroDSTAlgorithm:MicroDSTAlgorithm
MicroDST/MicroDSTTools:MicroDSTTools
Phys/DaVinciAssociators:DaVinciAssociators
Phys/DaVinciMCTools:DaVinciMCTools
Phys/DaVinciOverlapsAndClones:DaVinciOverlapsAndClones
Phys/LoKiCore:LoKiCore
Phys/LoKiHlt:LoKiHlt
Phys/TeslaTools:TeslaTools
Rec/LumiAlgs
Tf/TrackSys
Tr/TrackAssociators:TrackAssociators
)
gaudi_install_python_modules()
gaudi_add_test(QMTest QMTEST)
gaudi_add_tests(QMTest)
###############################################################################
# (c) Copyright 2000-2019 CERN for the benefit of the LHCb Collaboration #
# (c) Copyright 2000-2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
......@@ -8,55 +8,52 @@
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
################################################################################
# Package: TurboCache
################################################################################
gaudi_subdir(TurboCache)
gaudi_depends_on_subdirs(Phys/Tesla
Phys/LoKiHlt
Phys/LoKiArrayFunctors
Phys/LoKiHlt
Phys/LoKiPhys
Phys/LoKiAlgo
Phys/LoKiCore)
find_package(Boost)
find_package(ROOT)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS})
#[=======================================================================[.rst:
Phys/TurboCache
---------------
#]=======================================================================]
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
# Do not build functor caches for Debug builds
return()
endif()
set(options_Turbo05
${AppConfig_DIR}/options/Turbo/Tesla_Data_2018.py
${AppConfig_DIR}/options/Turbo/Streams_pp_2018_nocharmxsec.py
${AppConfig_DIR}/options/Turbo/Tesla_KillInputHlt2Reps.py
)
${AppConfig_ROOT_DIR}/options/Turbo/Tesla_Data_2018.py
${AppConfig_ROOT_DIR}/options/Turbo/Streams_pp_2018_nocharmxsec.py
${AppConfig_ROOT_DIR}/options/Turbo/Tesla_KillInputHlt2Reps.py
)
set(options_Turbo05_TurCal
${AppConfig_DIR}/options/Turbo/Tesla_Data_2018_TurCal.py
${AppConfig_DIR}/options/Turbo/Tesla_Calibration_Hlt2Lines_2018.py
)
# Do not build for the -O0 platform, as this seems to have problems.
if (NOT "$ENV{CMTCONFIG}" MATCHES ".*-do0$")
# Import the cache creation module
include(LoKiFunctorsCache)
${AppConfig_ROOT_DIR}/options/Turbo/Tesla_Data_2018_TurCal.py
${AppConfig_ROOT_DIR}/options/Turbo/Tesla_Calibration_Hlt2Lines_2018.py
)
# Import the cache creation module
include(LoKiFunctorsCache)
set(cache_deps)
if(TARGET MergeConfDB2)
list(APPEND cache_deps MergeConfDB2)
endif()
if(EXISTS ${PROJECT_SOURCE_DIR}/Phys/Tesla)
list(APPEND cache_deps Tesla_confuserdb)
endif()
foreach(production Turbo05 Turbo05_TurCal)
foreach(production Turbo05 Turbo05_TurCal)
set(cache_name ${production}_FunctorCache)
set(option_files ${options_${production}})
MESSAGE(STATUS "Cache for ${production} from: ${option_files}")
message(STATUS "Cache for ${production} from: ${option_files}")
loki_functors_cache(${cache_name}
options/SuppressLogMessages.py
${option_files}
options/NoEvents.py
options/DisableLoKiCacheFunctors.py
FACTORIES HltFactory Hlt2HltFactory
LINK_LIBRARIES LoKiHltLib
# Make sure the cache is built last, after Tesla
DEPENDS MergedConfDB
SPLIT 10)
endforeach()
endif()
options/SuppressLogMessages.py
${option_files}
options/NoEvents.py
options/DisableLoKiCacheFunctors.py
FACTORIES HltFactory Hlt2HltFactory
LINK_LIBRARIES LHCb::LoKiHltLib
# Make sure the cache is built last, after Tesla
DEPENDS ${cache_deps}
SPLIT 10
)
endforeach()
###############################################################################
# (c) Copyright 2021 CERN for the benefit of the LHCb Collaboration #
# #
# This software is distributed under the terms of the GNU General Public #
# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". #
# #
# In applying this licence, CERN does not waive the privileges and immunities #
# granted to it by virtue of its status as an Intergovernmental Organization #
# or submit itself to any jurisdiction. #
###############################################################################
if(NOT COMMAND lhcb_find_package)
# Look for LHCb find_package wrapper
find_file(LHCbFindPackage_FILE LHCbFindPackage.cmake)
if(LHCbFindPackage_FILE)
include(${LHCbFindPackage_FILE})
else()
# if not found, use the standard find_package
macro(lhcb_find_package)
find_package(${ARGV})
endmacro()
endif()
endif()
# -- Public dependencies
lhcb_find_package(Analysis REQUIRED)
lhcb_find_package(Stripping REQUIRED)
find_data_package(AppConfig 3.0 REQUIRED)
find_data_package(FieldMap 5.0 REQUIRED)
find_data_package(ParamFiles 8.0 REQUIRED)
find_data_package(QMTestFiles 1.0 REQUIRED)
find_data_package(PRConfig 1.0 REQUIRED)
find_data_package(TurboStreamProd REQUIRED)
find_data_package(TCK/HltTCK REQUIRED)
# -- Private dependencies
if(WITH_DaVinci_PRIVATE_DEPENDENCIES)
# ...
endif()
---
name: DaVinci
license: GPL-3.0-only
dependencies:
- Analysis
- Stripping
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment