]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/MUONrec/CMakeLists.txt
Fixes for object target dependencies
[u/mrichter/AliRoot.git] / MUON / MUONrec / CMakeLists.txt
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
17 set(MODULE MUONrec)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/MUON/${MODULE})
21
22 # Additional include folders in alphabetical order except ROOT
23 include_directories(${ROOT_INCLUDE_DIRS}
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
37                    )
38
39 # Sources in alphabetical order
40 set(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
89 string(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
93 get_directory_property(incdirs INCLUDE_DIRECTORIES)
94 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
95
96 # Generate the ROOT map
97 # Dependecies
98 set(LIBDEPS STEERBase STEER CDB ESD RAWDatabase RAWDatarec MUONcore MUONbase MUONcalib MUONmapping MUONraw MUONtrigger MUONgeometry)
99 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
100
101
102 # Add a library to the project using the specified source files
103 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
104
105 # Additional compilation flags
106 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "")
107
108 # System dependent: Modify the way the library is build
109 if(${CMAKE_SYSTEM} MATCHES Darwin)
110     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
111 endif(${CMAKE_SYSTEM} MATCHES Darwin)
112
113 # Installation
114 install(TARGETS ${MODULE}
115         ARCHIVE DESTINATION lib
116         LIBRARY DESTINATION lib)
117
118 install(FILES ${HDRS} DESTINATION include)