CMakeLists.txt 2.53 KB
Newer Older
1
# $Id: CMakeLists.txt 804732 2017-05-11 22:02:44Z krumnack $
2 3 4 5 6 7 8 9 10 11 12

# The name of the package:
atlas_subdir( EventLoop )

# The package's dependencies:
atlas_depends_on_subdirs(
   PUBLIC
   PhysicsAnalysis/D3PDTools/RootCoreUtils
   PhysicsAnalysis/D3PDTools/SampleHandler
   PRIVATE
   Control/AthToolSupport/AsgTools
13 14
   Control/xAODRootAccess
   Tools/PathResolver )
15 16

# Find the needed external(s):
17
find_package( ROOT COMPONENTS Core RIO Hist Tree TreePlayer )
18 19 20 21 22
find_package( GTest )

# Component(s) in the package:
atlas_add_root_dictionary( EventLoop
   EventLoopDictSource
23
   ROOT_HEADERS EventLoop/Algorithm.h EventLoop/AlgorithmWrapper.h
24
   EventLoop/AsgServiceWrapper.h EventLoop/BatchDriver.h
25
   EventLoop/BatchJob.h EventLoop/BatchSegment.h EventLoop/BatchSample.h
Nils Krumnack's avatar
Nils Krumnack committed
26
   EventLoop/CondorDriver.h EventLoop/DirectDriver.h
Nils Krumnack's avatar
Nils Krumnack committed
27
   EventLoop/GEDriver.h EventLoop/Job.h EventLoop/KubernetesDriver.h
28
   EventLoop/LLDriver.h EventLoop/LSFDriver.h EventLoop/LocalDriver.h
29
   EventLoop/OutputStream.h EventLoop/MetricsSvc.h EventLoop/SoGEDriver.h
30
   EventLoop/StatusCode.h EventLoop/TorqueDriver.h
Nils Krumnack's avatar
Nils Krumnack committed
31
   EventLoop/VomsProxySvc.h EventLoop/SlurmDriver.h
32 33 34 35 36 37
   Root/LinkDef.h
   EXTERNAL_PACKAGES ROOT )

atlas_add_library( EventLoop
   EventLoop/*.h EventLoop/*.ihh Root/*.cxx ${EventLoopDictSource}
   PUBLIC_HEADERS EventLoop
38 39 40 41
   INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
   PRIVATE_INCLUDE_DIRS ${Boost_INCLUDE_DIRS}
   LINK_LIBRARIES ${ROOT_LIBRARIES} AnaAlgorithmLib AsgServicesLib AsgMessagingLib AsgTools SampleHandler
   PRIVATE_LINK_LIBRARIES ${Boost_LIBRARIES} PathResolver RootCoreUtils xAODCore xAODRootAccess )
42

43 44 45 46 47 48 49 50
target_compile_definitions (EventLoop PUBLIC USE_CMAKE)

file (GLOB util_sources RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/util/[a-zA-Z0-9]*.cxx")
foreach (source ${util_sources})
  string (REGEX REPLACE "util/(.*).cxx" "\\1" util ${source})
  atlas_add_executable (${util} ${source} LINK_LIBRARIES EventLoop)
endforeach (source ${util_sources})

51 52 53 54
atlas_add_test (EventLoop_gt_OutputStreamData
      SOURCES test/gt_OutputStreamData.cxx
      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
      LINK_LIBRARIES ${ROOT_LIBRARIES} EventLoop AsgTestingLib )
55

56 57 58 59 60
atlas_add_test (EventLoop_gt_SubmitDirManager
      SOURCES test/gt_SubmitDirManager.cxx
      INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
      LINK_LIBRARIES ${ROOT_LIBRARIES} EventLoop AsgTestingLib )

61
# Install files from the package:
62
atlas_install_scripts( scripts/el_retrieve scripts/el_resubmit scripts/el_wait scripts/el_build_docker )
63
atlas_install_data( data/*.root data/Dockerfile data/docker_analysis_setup.sh data/*.yml )