Fixes for object target dependencies
[u/mrichter/AliRoot.git] / MUON / MUONrec / CMakeLists.txt
CommitLineData
b22a7396 1# **************************************************************************
2# * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
3# * *
4# * Author: The ALICE Off-line Project. *
5# * Contributors are mentioned in the code where appropriate. *
6# * *
7# * Permission to use, copy, modify and distribute this software and its *
8# * documentation strictly for non-commercial purposes is hereby granted *
9# * without fee, provided that the above copyright notice appears in all *
10# * copies and that both the copyright notice and this permission notice *
11# * appear in the supporting documentation. The authors make no claims *
12# * about the suitability of this software for any purpose. It is *
13# * provided "as is" without express or implied warranty. *
14# **************************************************************************
15
16# Module
17set(MODULE MUONrec)
18
19# Module include folder
427d561c 20include_directories(${AliRoot_SOURCE_DIR}/MUON/${MODULE})
b22a7396 21
22# Additional include folders in alphabetical order except ROOT
23include_directories(${ROOT_INCLUDE_DIRS}
427d561c 24 ${AliRoot_SOURCE_DIR}/MUON/MUONbase
25 ${AliRoot_SOURCE_DIR}/MUON/MUONcalib
26 ${AliRoot_SOURCE_DIR}/MUON/MUONcore
27 ${AliRoot_SOURCE_DIR}/MUON/MUONgeometry
28 ${AliRoot_SOURCE_DIR}/MUON/MUONmapping
29 ${AliRoot_SOURCE_DIR}/MUON/MUONraw
30 ${AliRoot_SOURCE_DIR}/MUON/MUONtrigger
31 ${AliRoot_SOURCE_DIR}/RAW/RAWDatabase
32 ${AliRoot_SOURCE_DIR}/RAW/RAWDatarec
33 ${AliRoot_SOURCE_DIR}/STEER/CDB
34 ${AliRoot_SOURCE_DIR}/STEER/ESD
35 ${AliRoot_SOURCE_DIR}/STEER/STEER
36 ${AliRoot_SOURCE_DIR}/STEER/STEERBase
b22a7396 37 )
38
39# Sources in alphabetical order
40set(SRCS
41 AliMUONCDB.cxx
42 AliMUONCluster.cxx
43 AliMUONClusterFinderCOG.cxx
44 AliMUONClusterFinderMLEM.cxx
45 AliMUONClusterFinderPeakCOG.cxx
46 AliMUONClusterFinderPeakFit.cxx
47 AliMUONClusterFinderSimpleFit.cxx
48 AliMUONClusterSplitterMLEM.cxx
49 AliMUONClusterStoreV1.cxx
50 AliMUONClusterStoreV2.cxx
51 AliMUONClusterStoreV2Iterator.cxx
52 AliMUONESDInterface.cxx
53 AliMUONLegacyClusterServer.cxx
54 AliMUONPad.cxx
55 AliMUONPreClusterFinder.cxx
56 AliMUONPreClusterFinderV2.cxx
57 AliMUONPreClusterFinderV3.cxx
58 AliMUONQADataMakerRec.cxx
59 AliMUONQAMappingCheck.cxx
60 AliMUONReconstructor.cxx
61 AliMUONRefitter.cxx
62 AliMUONSimpleClusterServer.cxx
63 AliMUONTrack.cxx
64 AliMUONTrackerConditionDataMaker.cxx
65 AliMUONTracker.cxx
66 AliMUONTrackerDataMaker.cxx
67 AliMUONTrackerQADataMakerRec.cxx
68 AliMUONTrackExtrap.cxx
69 AliMUONTrackHitPattern.cxx
70 AliMUONTrackParam.cxx
71 AliMUONTrackReconstructor.cxx
72 AliMUONTrackReconstructorK.cxx
73 AliMUONTrackStoreV1.cxx
74 AliMUONTriggerQADataMakerRec.cxx
75 AliMUONTriggerTrack.cxx
76 AliMUONTriggerTrackStoreV1.cxx
77 AliMUONTriggerTrackToTrackerClusters.cxx
78 AliMUONVClusterFinder.cxx
79 AliMUONVClusterServer.cxx
80 AliMUONVClusterStore.cxx
81 AliMUONVQADataMakerRec.cxx
82 AliMUONVTrackerDataMaker.cxx
83 AliMUONVTrackReconstructor.cxx
84 AliMUONVTrackStore.cxx
85 AliMUONVTriggerTrackStore.cxx
86 )
87
88# Headers from sources
89string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
90
91# Generate the dictionary
92# It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
93get_directory_property(incdirs INCLUDE_DIRECTORIES)
94generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
95
96# Generate the ROOT map
97# Dependecies
98set(LIBDEPS STEERBase STEER CDB ESD RAWDatabase RAWDatarec MUONcore MUONbase MUONcalib MUONmapping MUONraw MUONtrigger MUONgeometry)
99generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
100
101
102# Add a library to the project using the specified source files
103add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
104
105# Additional compilation flags
68aeb13b 106set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "")
b22a7396 107
108# System dependent: Modify the way the library is build
109if(${CMAKE_SYSTEM} MATCHES Darwin)
110 set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
111endif(${CMAKE_SYSTEM} MATCHES Darwin)
112
113# Installation
114install(TARGETS ${MODULE}
115 ARCHIVE DESTINATION lib
116 LIBRARY DESTINATION lib)
117
118install(FILES ${HDRS} DESTINATION include)