forked from AliceO2Group/AliceO2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathO2Dependencies.cmake
More file actions
2711 lines (2292 loc) · 56.8 KB
/
Copy pathO2Dependencies.cmake
File metadata and controls
2711 lines (2292 loc) · 56.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
########## DEPENDENCIES lookup ############
function(guess_append_libpath _libname _root)
# Globally adds, as library path, the path of library ${_libname} searched
# under ${_root}/lib and ${_root}/lib64. The purpose is to work around broken
# external CMake config files, hardcoding full paths of their dependencies
# not being relocated properly, leading to broken builds if reusing builds
# produced under different hosts/paths.
unset(_lib CACHE) # force find_library to look again
find_library(_lib "${_libname}" HINTS "${_root}" "${_root}/.." NO_DEFAULT_PATH PATH_SUFFIXES lib lib64)
if(_lib)
get_filename_component(_libdir "${_lib}" DIRECTORY)
message(STATUS "Adding library path: ${_libdir}")
link_directories(${_libdir})
else()
message(WARNING "Cannot find library ${_libname} under ${_root}")
endif()
endfunction()
find_package(ROOT 6.06.00 REQUIRED)
find_package(Vc REQUIRED)
find_package(Pythia8)
find_package(Pythia6)
# Installed via CMake. Note: we work around hardcoded full paths in the CMake
# config files not being relocated properly by appending library paths.
guess_append_libpath(geant321 "${Geant3_DIR}")
find_package(Geant3 NO_MODULE)
guess_append_libpath(G4run "${Geant4_DIR}")
find_package(Geant4 NO_MODULE)
guess_append_libpath(geant4vmc "${GEANT4_VMC_DIR}")
find_package(Geant4VMC NO_MODULE)
guess_append_libpath(BaseVGM "${VGM_DIR}")
find_package(VGM NO_MODULE)
find_package(CERNLIB)
find_package(HEPMC)
# FIXME: the way, iwyu is integrated now conflicts with the possibility to add
# custom rules for individual modules, e.g. the custom targets introduced in
# PR #886 depending on some header files conflict with the IWYU setup
# disable package for the moment
#find_package(IWYU)
find_package(Boost 1.59 COMPONENTS container thread system timer program_options random filesystem chrono exception regex serialization log log_setup unit_test_framework date_time signals iostreams REQUIRED)
# for the guideline support library
include_directories(${MS_GSL_INCLUDE_DIR})
find_package(AliRoot)
find_package(FairRoot REQUIRED)
find_package(FairMQ REQUIRED)
find_package(FairLogger REQUIRED)
find_package(fmt)
find_package(DDS)
cmake_policy(SET CMP0077 NEW)
set(protobuf_MODULE_COMPATIBLE TRUE)
find_package(protobuf CONFIG REQUIRED)
find_package(InfoLogger REQUIRED)
find_package(Configuration REQUIRED)
find_package(Monitoring REQUIRED)
find_package(Common REQUIRED)
find_package(RapidJSON REQUIRED)
find_package(GLFW)
find_package(GLEW)
find_package(OpenGL)
find_package(benchmark QUIET)
find_package(Arrow)
find_package(CURL REQUIRED)
find_package(OpenMP)
if (DDS_FOUND)
add_definitions(-DENABLE_DDS)
add_definitions(-DDDS_FOUND)
set(OPTIONAL_DDS_LIBRARIES ${DDS_INTERCOM_LIBRARY_SHARED} ${DDS_PROTOCOL_LIBRARY_SHARED} ${DDS_USER_DEFAULTS_LIBRARY_SHARED})
set(OPTIONAL_DDS_INCLUDE_DIR ${DDS_INCLUDE_DIR})
endif ()
set(CUDA_MINIMUM_VERSION "10.1")
if(DEFINED ENABLE_CUDA AND NOT ENABLE_CUDA)
message(STATUS "CUDA explicitly disabled")
else()
include(CheckLanguage)
check_language(CUDA)
if(CMAKE_CUDA_COMPILER)
if(CMAKE_BUILD_TYPE STREQUAL "DEBUG")
set(CMAKE_CUDA_FLAGS "-Xptxas -O0 -Xcompiler -O0")
else()
set(CMAKE_CUDA_FLAGS "-Xptxas -O4 -Xcompiler -O4 -use_fast_math")
endif()
if(CUDA_GCCBIN)
message(STATUS "Using as CUDA GCC version: ${CUDA_GCCBIN}")
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --compiler-bindir ${CUDA_GCCBIN}")
endif()
enable_language(CUDA)
get_property(LANGUAGES GLOBAL PROPERTY ENABLED_LANGUAGES)
if(NOT CUDA IN_LIST LANGUAGES)
message(FATAL_ERROR "CUDA was found but cannot be enabled for some reason")
endif()
if (CMAKE_CUDA_COMPILER_VERSION VERSION_LESS "${CUDA_MINIMUM_VERSION}")
message(FATAL_ERROR "CUDA version ${CMAKE_CUDA_COMPILER_VERSION} found, but at least ${CUDA_MINIMUM_VERSION} required")
endif()
set(ENABLE_CUDA ON)
if(CUDA_GCCBIN)
#Ugly hack! Otherwise CUDA includes unwanted old GCC libraries leading to version conflicts
set(CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES "$ENV{CUDA_PATH}/lib64")
endif()
add_definitions(-DENABLE_CUDA)
set(CMAKE_CUDA_STANDARD 14)
set(CMAKE_CUDA_STANDARD_REQUIRED ON)
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr --compiler-options \"${CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE}} -std=c++14\"")
elseif(ENABLE_CUDA)
message(FATAL_ERROR "CUDA explicitly enabled but could not be found")
endif()
endif()
if (ENABLE_HIP)
if(NOT DEFINED HIP_PATH)
if(NOT DEFINED ENV{HIP_PATH})
set(HIP_PATH "/opt/rocm/hip" CACHE PATH "Path to which HIP has been installed")
else()
set(HIP_PATH $ENV{HIP_PATH} CACHE PATH "Path to which HIP has been installed")
endif()
endif()
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${HIP_PATH}/cmake")
if(NOT DEFINED HCC_PATH)
# Workaround to fix a potential FindHIP bug: find HCC_PATH ourselves
set(_HCC_PATH "${HIP_PATH}/../hcc")
get_filename_component(HCC_PATH ${_HCC_PATH} ABSOLUTE CACHE)
unset(_HCC_PATH)
endif()
find_package(HIP REQUIRED)
add_definitions(-DENABLE_HIP)
endif()
# todo this should really not be needed. ROOT, Pythia, and FairRoot should comply with CMake best practices
# todo but they do not properly return DEPENDENCIES with absolute path.
link_directories(
${ROOT_LIBRARY_DIR}
${FAIRROOT_LIBRARY_DIR}
${Boost_LIBRARY_DIRS}
)
if(Pythia6_FOUND)
link_directories(
${Pythia6_LIBRARY_DIR}
)
endif()
if(PYTHIA8_FOUND)
link_directories(
${PYTHIA8_LIB_DIR}
)
endif()
########## General definitions and flags ##########
if(APPLE)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-undefined,error") # avoid undefined in our libs
elseif(UNIX)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined") # avoid undefined in our libs
endif()
########## Bucket definitions ############
get_target_property(_boost_incdir Boost::boost INTERFACE_INCLUDE_DIRECTORIES)
if(FairMQInFairRoot_FOUND)
# DEPRECATED: Remove this case, once we require FairMQ 1.2+
get_target_property(_fairmq_incdir FairRoot::FairMQ INTERFACE_INCLUDE_DIRECTORIES)
o2_define_bucket(NAME fairmq_bucket
DEPENDENCIES FairRoot::FairMQ
INCLUDE_DIRECTORIES ${_boost_incdir} ${_fairmq_incdir}
)
else()
get_target_property(_fairmq_incdir FairMQ::FairMQ INTERFACE_INCLUDE_DIRECTORIES)
get_target_property(_fairlogger_incdir FairLogger::FairLogger INTERFACE_INCLUDE_DIRECTORIES)
o2_define_bucket(NAME fairmq_bucket
DEPENDENCIES FairMQ::FairMQ
INCLUDE_DIRECTORIES ${_boost_incdir} ${_fairmq_incdir} ${_fairlogger_incdir}
)
set(_fairlogger_incdir)
endif()
set(_boost_incdir)
set(_fairmq_incdir)
o2_define_bucket(
NAME
glfw_bucket
DEPENDENCIES
O2FrameworkFoundation_bucket
${GLFW_LIBRARIES}
INCLUDE_DIRECTORIES
${GLFW_INCLUDE_DIR}
)
o2_define_bucket(
NAME
headless_bucket
DEPENDENCIES
O2FrameworkFoundation_bucket
)
o2_define_bucket(
NAME
common_vc_bucket
DEPENDENCIES
${Vc_LIBRARIES}
INCLUDE_DIRECTORIES
${Vc_INCLUDE_DIR}
)
o2_define_bucket(
NAME
common_boost_bucket
DEPENDENCIES
Boost::system
Boost::log
Boost::log_setup
Boost::program_options
Boost::thread
SYSTEMINCLUDE_DIRECTORIES
${Boost_INCLUDE_DIR}
)
o2_define_bucket(
NAME
rapidjson_bucket
SYSTEMINCLUDE_DIRECTORIES
${RAPIDJSON_INCLUDE_DIRS}
)
o2_define_bucket(
NAME
arrow_bucket
DEPENDENCIES
common_boost_bucket
${ARROW_SHARED_LIB}
SYSTEMINCLUDE_DIRECTORIES
${ARROW_INCLUDE_DIR}
)
o2_define_bucket(
NAME
ExampleModule1_bucket
DEPENDENCIES # library names and other buckets
common_boost_bucket
INCLUDE_DIRECTORIES
)
o2_define_bucket(
NAME
ExampleModule2_bucket
DEPENDENCIES # library names
ExampleModule1 # another module
ExampleModule1_bucket # another bucket
Core Hist # ROOT
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Examples/ExampleModule1/include # another module's include dir
)
o2_define_bucket(
NAME
O2Device_bucket
DEPENDENCIES
common_boost_bucket
Boost::chrono
Boost::date_time
Boost::random
Boost::regex
Base
O2Headers
O2MemoryResources
FairTools
O2Headers
fairmq_bucket
AliceO2::Monitoring
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
O2DeviceApplication_bucket
DEPENDENCIES
Base
O2Headers
O2TimeFrame
O2Device
dl
)
o2_define_bucket(
NAME
InfoLogger_bucket
DEPENDENCIES
${InfoLogger_LIBRARIES}
SYSTEMINCLUDE_DIRECTORIES
${InfoLogger_INCLUDE_DIRS}
)
o2_define_bucket(
NAME
O2FrameworkFoundation_bucket
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Framework/Foundation/include
)
o2_define_bucket(
NAME
O2FrameworkLogger_bucket
DEPENDENCIES
FairLogger::FairLogger
fmt::fmt
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Framework/Logger/include
)
o2_define_bucket(
NAME
O2FrameworkCore_bucket
DEPENDENCIES
arrow_bucket
O2FrameworkFoundation_bucket
O2FrameworkLogger_bucket
common_utils_bucket
ROOTDataFrame
ROOTVecOps
Base
O2Headers
Core
Tree
TreePlayer
Net
O2DebugGUI
AliceO2::Monitoring
AliceO2::Configuration
InfoLogger_bucket
AliceO2::Common
CURL::libcurl
rapidjson_bucket
SYSTEMINCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Utilities/PCG/include
)
o2_define_bucket(
NAME
O2FrameworkCore_benchmark_bucket
DEPENDENCIES
O2FrameworkCore_bucket
$<IF:$<BOOL:${benchmark_FOUND}>,benchmark::benchmark,$<0:"">>
)
o2_define_bucket(
NAME
FrameworkApplication_bucket
DEPENDENCIES
O2FrameworkCore_bucket
O2Framework
Hist
)
o2_define_bucket(
NAME
DPLUtils_bucket
DEPENDENCIES
O2FrameworkCore_bucket
Core
O2Headers
O2Framework
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Framework/Utils/include
)
o2_define_bucket(
NAME
O2MessageMonitor_bucket
DEPENDENCIES
O2Device_bucket
O2Device
)
# module DataFormats/Headers
o2_define_bucket(
NAME
data_format_headers_bucket
DEPENDENCIES
pmr_bucket
Boost::container
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/DataFormats/Headers/include
${CMAKE_SOURCE_DIR}/DataFormats/MemoryResources/include
)
# module DataFormats/Detectors/TPC
o2_define_bucket(
NAME
data_format_TPC_bucket
DEPENDENCIES
data_format_headers_bucket
data_format_reconstruction_bucket
O2ReconstructionDataFormats
O2Headers
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/DataFormats/simulation/include
${CMAKE_SOURCE_DIR}/DataFormats/Reconstruction/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/TPC/include
${CMAKE_SOURCE_DIR}/Algorithm/include
)
o2_define_bucket(
NAME
data_format_TOF_bucket
DEPENDENCIES
data_format_reconstruction_bucket
O2ReconstructionDataFormats
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/DataFormats/Reconstruction/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/TOF/include
)
o2_define_bucket(
NAME
TimeFrame_bucket
DEPENDENCIES
Base
O2Headers
fairroot_base_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
${FAIRROOT_INCLUDE_DIR}/fairmq # temporary fix, until bucket system works with imported targets
${CMAKE_SOURCE_DIR}/DataFormats/Headers/include
${CMAKE_SOURCE_DIR}/DataFormats/MemoryResources/include
)
o2_define_bucket(
NAME
O2DataProcessingApplication_bucket
DEPENDENCIES
O2DeviceApplication_bucket
O2Framework
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Framework/Core/include
)
o2_define_bucket(
NAME
flp2epn_bucket
DEPENDENCIES
common_boost_bucket
Boost::chrono
Boost::date_time
Boost::random
Boost::regex
Base
FairTools
O2Headers
fairmq_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
flp2epndistrib_bucket
DEPENDENCIES
flp2epn_bucket
INCLUDE_DIRECTORIES
)
o2_define_bucket(
NAME
common_math_bucket
DEPENDENCIES
common_boost_bucket
fairmq_bucket
Base FairTools Core MathCore Matrix Minuit Hist Geom GenVector RIO
GPUCommon_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
${ROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Common/Constants/include
)
o2_define_bucket(
NAME
common_field_bucket
DEPENDENCIES
fairroot_base_bucket
Base ParBase Core RIO O2MathUtils Geom
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
${ROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
)
o2_define_bucket(
NAME
configuration_bucket
DEPENDENCIES
common_boost_bucket
root_base_bucket
O2DetectorsCommonDataFormats
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
CCDB_bucket
DEPENDENCIES
dl
common_boost_bucket
Boost::filesystem
protobuf::libprotobuf
Base
FairTools
ParBase
ParMQ
fairmq_bucket
pthread Core Tree XMLParser Hist Net RIO z
${CURL_LIBRARIES}
common_utils_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
${ROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Common/Utils/include
${CMAKE_SOURCE_DIR}/Utilities/O2Device/include
SYSTEMINCLUDE_DIRECTORIES
${PROTOBUF_INCLUDE_DIR}
${CURL_INCLUDE_DIRS}
)
o2_define_bucket(
NAME
root_base_bucket
DEPENDENCIES
Core RIO GenVector # ROOT
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
)
# module DataFormats/MemoryResources
o2_define_bucket(
NAME
pmr_bucket
DEPENDENCIES
Boost::container
fairmq_bucket
)
o2_define_bucket(
NAME
fairroot_geom
DEPENDENCIES
FairTools
Base GeoBase ParBase Geom Core VMC Tree
common_boost_bucket
O2FrameworkLogger_bucket
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
${FAIRROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
fairroot_base_bucket
DEPENDENCIES
root_base_bucket
fairroot_geom
Base
FairTools
fairmq_bucket
common_boost_bucket
Boost::thread
Boost::serialization
pthread
O2MemoryResources
O2FrameworkLogger_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
root_physics_bucket
DEPENDENCIES
EG Physics # ROOT
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
data_format_simulation_bucket
DEPENDENCIES
fairroot_base_bucket
root_physics_bucket
common_math_bucket
data_format_detectors_common_bucket
O2DetectorsCommonDataFormats
detectors_base_bucket
O2DetectorsBase
RIO
O2SimConfig
GPUCommon_bucket
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/Common/include
${CMAKE_SOURCE_DIR}/DataFormats/simulation/include
${CMAKE_SOURCE_DIR}/Detectors/Base/include/
${CMAKE_SOURCE_DIR}/Common/SimConfig/include/
${MS_GSL_INCLUDE_DIR}
)
o2_define_bucket(
NAME
steer_bucket
DEPENDENCIES
data_format_simulation_bucket
O2SimulationDataFormat
O2ITSMFTSimulation
RIO
Net
O2SimConfig
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/TPC/simulation/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/Common/include
${CMAKE_SOURCE_DIR}/DataFormats/simulation/include
${MS_GSL_INCLUDE_DIR}
${FAIRROOT_INCLUDE_DIR}/fairmq
)
o2_define_bucket(
NAME
data_format_simulation_test_bucket
DEPENDENCIES
data_format_simulation_bucket
O2SimulationDataFormat
)
o2_define_bucket(
NAME
data_format_reconstruction_bucket
DEPENDENCIES
fairroot_base_bucket
root_physics_bucket
data_format_detectors_common_bucket
O2DetectorsCommonDataFormats
O2CommonDataFormat
GPUCommon_bucket
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/DataFormats/Reconstruction/include/
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/Common/include/
${CMAKE_SOURCE_DIR}/DataFormats/common/include/
${MS_GSL_INCLUDE_DIR}
)
o2_define_bucket(
NAME
data_format_detectors_common_bucket
DEPENDENCIES
fairroot_base_bucket
root_physics_bucket
common_math_bucket
data_format_headers_bucket
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/Common/include/
)
o2_define_bucket(
NAME
detectors_base_bucket
DEPENDENCIES
fairroot_base_bucket
root_physics_bucket
data_format_reconstruction_bucket
common_utils_bucket
GPUCommon_bucket
O2GPUCommon
O2ReconstructionDataFormats
O2DataFormatsParameters
O2CommonUtils
O2Field
fairmq_bucket
Net
VMC # ROOT
Geom
common_utils_bucket
O2CommonUtils
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/Common/Field/include
${CMAKE_SOURCE_DIR}/Common/Constants/include
${CMAKE_SOURCE_DIR}/DataFormats/Parameters/include
${CMAKE_SOURCE_DIR}/Common/Utils/include
)
o2_define_bucket(
NAME
itsmft_base_bucket
DEPENDENCIES
fairroot_base_bucket
configuration_bucket
MathCore
Geom
RIO
Hist
ParBase
O2Field
O2SimulationDataFormat
O2SimConfig
O2CommonDataFormat
detectors_base_bucket
O2DetectorsBase
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/DataFormats/simulation/include
${CMAKE_SOURCE_DIR}/DataFormats/common/include
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/Base/include
${CMAKE_SOURCE_DIR}/Common/Utils/include
${CMAKE_SOURCE_DIR}/Common/SimConfig/include/
)
o2_define_bucket(
NAME
mcsteplogger_bucket
DEPENDENCIES
dl
root_base_bucket
VMC
EG
Tree
Hist
Graf
Gpad
Geom
common_boost_bucket
Boost::unit_test_framework
O2FrameworkLogger_bucket
rapidjson_bucket
INCLUDE_DIRECTORIES
${FAIRROOT_INCLUDE_DIR}
)
o2_define_bucket(
NAME
itsmft_simulation_bucket
DEPENDENCIES
itsmft_base_bucket
data_format_itsmft_bucket
configuration_bucket
Graf
Gpad
O2DetectorsBase
O2SimulationDataFormat
O2ITSMFTBase
O2DataFormatsITSMFT
O2SimConfig
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/DataFormats/simulation/include
${CMAKE_SOURCE_DIR}/Common/MathUtils/include
${CMAKE_SOURCE_DIR}/Common/Utils/include
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/base/include
${CMAKE_SOURCE_DIR}/Common/SimConfig/include
)
o2_define_bucket(
NAME
itsmft_reconstruction_bucket
DEPENDENCIES
itsmft_base_bucket
data_format_itsmft_bucket
common_utils_bucket
#
Graf
Gpad
O2DetectorsBase
O2DataFormatsITSMFT
O2ITSMFTBase
O2CommonUtils
INCLUDE_DIRECTORIES
${ROOT_INCLUDE_DIR}
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/base/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/ITSMFT/common/include
${CMAKE_SOURCE_DIR}/Common/Utils/include
)
o2_define_bucket(
NAME
its_base_bucket
DEPENDENCIES
itsmft_base_bucket
O2ITSMFTBase
O2DetectorsBase
O2SimulationDataFormat
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/base/include
${MS_GSL_INCLUDE_DIR}
)
o2_define_bucket(
NAME
its_simulation_bucket
DEPENDENCIES
its_base_bucket
itsmft_simulation_bucket
Graf
Gpad
O2ITSMFTBase
O2ITSMFTSimulation
O2ITSBase
O2DetectorsBase
O2SimulationDataFormat
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/simulation/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/base/include
${CMAKE_SOURCE_DIR}/Common/Utils/include
)
o2_define_bucket(
NAME
its_reconstruction_bucket
DEPENDENCIES
its_base_bucket
data_format_itsmft_bucket
data_format_its_bucket
itsmft_reconstruction_bucket
#
O2ITSMFTBase
O2ITSMFTReconstruction
O2ITSBase
O2DetectorsBase
O2DataFormatsITS
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/reconstruction/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/base/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/ITSMFT/ITS/include
)
o2_define_bucket(
NAME
its_tracking_bucket
DEPENDENCIES
data_format_its_bucket
GPUCommon_bucket
#
O2DataFormatsITS
O2DetectorsBase
O2ITSBase
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/Base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/base/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/tracking/include
${CMAKE_SOURCE_DIR}/DataFormats/Detectors/ITSMFT/ITS/include
)
o2_define_bucket(
NAME
its_tracking_CUDA_bucket
DEPENDENCIES
#
cuda
cudart
cudadevrt
O2ITStracking
INCLUDE_DIRECTORIES
${CUB_ROOT}
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/tracking/include
)
o2_define_bucket(
NAME
ITS_workflow_bucket
DEPENDENCIES
O2Framework
its_reconstruction_bucket
O2ITSReconstruction
O2ITStracking
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/workflow/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/reconstruction/include
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/ITS/tracking/include
)
o2_define_bucket(
NAME
ITSMFT_workflow_bucket
DEPENDENCIES
O2Framework
data_format_itsmft_bucket
itsmft_reconstruction_bucket
O2ITSMFTReconstruction
O2DataFormatsITSMFT
INCLUDE_DIRECTORIES
${CMAKE_SOURCE_DIR}/Detectors/ITSMFT/common/workflow/include
)