@@ -62,11 +62,16 @@ set(SRCS
6262 TRDTracking/GPUTRDTrackerKernels.cxx
6363 Base/GPUParam.cxx)
6464
65- set (SRCS_O2_DATATYPES
65+ set (SRCS_O2_DATATYPE_HEADERS
6666 DataTypes/GPUTRDTrackO2.cxx)
67+ set (SRCS_O2_DATATYPES
68+ DataTypes/GPUDataTypes.cxx
69+ Interface/GPUO2InterfaceConfigurableParam.cxx)
70+ set (HDRS_CINT_O2 DataTypes/TPCdEdxCalibrationSplines.h Merger/GPUTPCGMMergedTrack.h)
71+ set (HDRS_CINT_O2_DATATYPES DataTypes/GPUDataTypes.h Interface/GPUO2InterfaceConfigurableParam.h)
72+ set (HDRS_CINT_O2_ADDITIONAL DataTypes/GPUSettings.h Definitions/GPUSettingsList.h DataTypes/GPUDataTypes.h DataTypes/GPUTRDTrack.h) # Manual dependencies for ROOT dictionary generation
6773
6874set (SRCS_NO_CINT
69- DataTypes/GPUDataTypes.cxx
7075 DataTypes/GPUMemorySizeScalers.cxx
7176 Base/GPUReconstruction.cxx
7277 Base/GPUReconstructionCPU.cxx
@@ -153,13 +158,6 @@ set(HDRS_INSTALL
153158 Debug/GPUROOTDump.h
154159)
155160
156- # Sources only for O2
157- if (ALIGPU_BUILD_TYPE STREQUAL "O2" )
158- set (SRCS ${SRCS} Interface/GPUO2InterfaceConfigurableParam.cxx)
159- set (HDRS_CINT_O2 ${HDRS_CINT_O2} DataTypes/TPCdEdxCalibrationSplines.h Interface/GPUO2InterfaceConfigurableParam.h)
160- set (HDRS_CINT_O2_ADDITIONAL DataTypes/GPUSettings.h Definitions/GPUSettingsList.h DataTypes/GPUDataTypes.h DataTypes/GPUTRDTrack.h Merger/GPUTPCGMMergedTrack.h) # Manual dependencies for ROOT dictionary generation
161- endif ()
162-
163161# Sources for O2 and for Standalone if requested in config file
164162if (ALIGPU_BUILD_TYPE STREQUAL "O2" OR ALIGPU_BUILD_TYPE STREQUAL "Standalone" )
165163 set (SRCS_NO_CINT ${SRCS_NO_CINT} display/GPUDisplayBackend.cxx)
@@ -283,16 +281,24 @@ if(ALIGPU_BUILD_TYPE STREQUAL "O2")
283281 PUBLIC_LINK_LIBRARIES O2::GPUCommon
284282 O2::ReconstructionDataFormats
285283 PRIVATE_LINK_LIBRARIES O2::DataFormatsTPC
286- SOURCES ${SRCS_O2_DATATYPES} )
287- target_compile_definitions (${targetName} PRIVATE GPUCA_O2_LIB
288- GPUCA_TPC_GEOMETRY_O2 GPUCA_HAVE_O2HEADERS )
284+ SOURCES ${SRCS_O2_DATATYPE_HEADERS} )
285+ target_compile_definitions (${targetName} PRIVATE GPUCA_O2_LIB GPUCA_TPC_GEOMETRY_O2 GPUCA_HAVE_O2HEADERS )
289286
287+ o2_add_library (GPUDataTypes
288+ TARGETVARNAME targetName
289+ PUBLIC_LINK_LIBRARIES O2::GPUDataTypeHeaders O2::GPUUtils
290+ PRIVATE_LINK_LIBRARIES O2::DataFormatsTPC
291+ SOURCES ${SRCS_O2_DATATYPES} )
292+ target_compile_definitions (${targetName} PRIVATE GPUCA_O2_LIB GPUCA_TPC_GEOMETRY_O2 GPUCA_HAVE_O2HEADERS )
293+ o2_target_root_dictionary (GPUDataTypes
294+ HEADERS ${HDRS_CINT_O2_DATATYPES} ${HDRS_CINT_O2_ADDITIONAL}
295+ LINKDEF GPUTrackingLinkDef_O2_DataTypes.h )
290296
291297 o2_add_library (${MODULE}
292298 TARGETVARNAME targetName
293299 PUBLIC_LINK_LIBRARIES O2::GPUCommon
294300 O2::GPUUtils
295- O2::GPUDataTypeHeaders
301+ O2::GPUDataTypes
296302 O2::DataFormatsTPC
297303 O2::DataFormatsTOF
298304 O2::TPCBase
@@ -330,14 +336,14 @@ target_compile_definitions(${targetName} PRIVATE GPUCA_O2_LIB
330336 ${targetName}
331337 PRIVATE $<TARGET_PROPERTY :O2 ::Framework ,INTERFACE_INCLUDE_DIRECTORIES >)
332338
339+ target_compile_definitions (${targetName} PRIVATE GPUCA_O2_LIB
340+ GPUCA_TPC_GEOMETRY_O2 GPUCA_HAVE_O2HEADERS )
341+
333342 o2_target_root_dictionary (${MODULE}
334343 HEADERS ${HDRS_CINT_O2} ${HDRS_CINT_O2_ADDITIONAL}
335344 LINKDEF GPUTrackingLinkDef_O2.h )
336345
337- target_compile_definitions (${targetName} PRIVATE GPUCA_O2_LIB
338- GPUCA_TPC_GEOMETRY_O2 GPUCA_HAVE_O2HEADERS )
339-
340- install (FILES ${HDRS_CINT_ALIROOT} ${HDRS_CINT_O2} ${HDRS_INSTALL}
346+ install (FILES ${HDRS_CINT_ALIROOT} ${HDRS_CINT_O2} ${HDRS_CINT_O2_DATATYPES} ${HDRS_INSTALL}
341347 DESTINATION include/GPU)
342348 install (DIRECTORY utils
343349 DESTINATION include/GPU
0 commit comments