Corrected list of libraries to resolve all symbols
[u/mrichter/AliRoot.git] / EVE / EveDet / 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 EveDet)
18
19 # Module include folder
20 include_directories(${AliRoot_SOURCE_DIR}/EVE/${MODULE})
21
22 # Additional include folders in alphabetical order
23 include_directories(
24                     ${AliRoot_SOURCE_DIR}/EMCAL/EMCALbase
25                     ${AliRoot_SOURCE_DIR}/EMCAL/EMCALUtils
26                     ${AliRoot_SOURCE_DIR}/EVE/EveBase
27                     ${AliRoot_SOURCE_DIR}/FMD/FMDbase
28                     ${AliRoot_SOURCE_DIR}/FMD/FMDrec
29                     ${AliRoot_SOURCE_DIR}/FMD/FMDsim
30                     ${AliRoot_SOURCE_DIR}/ITS/ITSbase
31                     ${AliRoot_SOURCE_DIR}/ITS/ITSsim
32                     ${AliRoot_SOURCE_DIR}/ITS/UPGRADE/ITSUpgradeBase
33                     ${AliRoot_SOURCE_DIR}/ITS/UPGRADE/ITSUpgradeSim
34                     ${AliRoot_SOURCE_DIR}/MONITOR/alistoragemanager
35                     ${AliRoot_SOURCE_DIR}/MUON/MUONbase
36                     ${AliRoot_SOURCE_DIR}/MUON/MUONcore
37                     ${AliRoot_SOURCE_DIR}/MUON/MUONgeometry
38                     ${AliRoot_SOURCE_DIR}/MUON/MUONmapping
39                     ${AliRoot_SOURCE_DIR}/MUON/MUONrec
40                     ${AliRoot_SOURCE_DIR}/MUON/MUONsim
41                     ${AliRoot_SOURCE_DIR}/PMD/PMDbase
42                     ${AliRoot_SOURCE_DIR}/RAW/RAWDatabase
43                     ${AliRoot_SOURCE_DIR}/RAW/RAWDatarec
44                     ${AliRoot_SOURCE_DIR}/STEER/CDB
45                     ${AliRoot_SOURCE_DIR}/STEER/ESD
46                     ${AliRoot_SOURCE_DIR}/STEER/STEER
47                     ${AliRoot_SOURCE_DIR}/STEER/STEERBase
48                     ${AliRoot_SOURCE_DIR}/T0/T0base
49                     ${AliRoot_SOURCE_DIR}/TOF/TOFbase
50                     ${AliRoot_SOURCE_DIR}/TPC/TPCbase
51                     ${AliRoot_SOURCE_DIR}/TRD/TRDbase
52                     ${AliRoot_SOURCE_DIR}/TRD/TRDrec
53                     ${AliRoot_SOURCE_DIR}/VZERO/VZEROrec
54                    )
55
56 # Sources in alphabetical order
57 set(SRCS
58     AliEveEMCALData.cxx
59     AliEveEMCALSModule.cxx
60     AliEveEMCALSModuleData.cxx
61     AliEveFMDLoader.cxx
62     AliEveITSDigitsInfo.cxx
63     AliEveITSModule.cxx
64     AliEveITSModuleStepper.cxx
65     AliEveITSModuleStepperEditor.cxx
66     AliEveITSScaledModule.cxx
67     AliEveITSScaledModuleEditor.cxx
68     AliEveITSUModule.cxx
69     AliEveListAnalyser.cxx
70     AliEveListAnalyserEditor.cxx
71     AliEveMUONChamber.cxx
72     AliEveMUONChamberData.cxx
73     AliEveMUONChamberEditor.cxx
74     AliEveMUONChamberGL.cxx
75     AliEveMUONData.cxx
76     AliEveMUONTrack.cxx
77     AliEvePMDModule.cxx
78     AliEvePMDModuleEditor.cxx
79     AliEveT0Module.cxx
80     AliEveTOFDigitsInfo.cxx
81     AliEveTOFDigitsInfoEditor.cxx
82     AliEveTOFSector.cxx
83     AliEveTOFSectorEditor.cxx
84     AliEveTOFStrip.cxx
85     AliEveTOFStripEditor.cxx
86     AliEveTPCData.cxx
87     AliEveTPCLoader.cxx
88     AliEveTPCLoaderEditor.cxx
89     AliEveTPCSector2D.cxx
90     AliEveTPCSector2DEditor.cxx
91     AliEveTPCSector2DGL.cxx
92     AliEveTPCSector3D.cxx
93     AliEveTPCSector3DEditor.cxx
94     AliEveTPCSector3DGL.cxx
95     AliEveTPCSectorData.cxx
96     AliEveTPCSectorViz.cxx
97     AliEveTPCSectorVizEditor.cxx
98     AliEveTRDData.cxx
99     AliEveTRDDataEditor.cxx
100     AliEveTRDLoader.cxx
101     AliEveTRDLoaderImp.cxx
102     AliEveTRDLoaderManager.cxx
103     AliEveTRDModule.cxx
104     AliEveTRDModuleImp.cxx
105     AliEveTRDTrackList.cxx
106     AliEveTRDTrackListEditor.cxx
107     AliEveVZEROModule.cxx
108     AliEveVZEROModuleEditor.cxx
109    )
110
111 # Headers from sources
112 string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
113
114 # Generate the dictionary
115 # It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
116 get_directory_property(incdirs INCLUDE_DIRECTORIES)
117 generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
118
119 # Generate the ROOT map
120 # Dependecies
121 set(LIBDEPS STEERBase STEER ESD CDB RAWDatabase RAWDatarec EMCALbase EMCALUtils FMDbase FMDrec FMDsim ITSbase ITSsim ITSUpgradeBase ITSUpgradeSim MUONbase MUONgeometry MUONmapping MUONrec MUONsim PMDbase T0base TOFbase TPCbase TRDbase TRDrec VZERObase VZEROrec EveBase EG Eve Ged GenVector Gpad Gui Minuit RGL STAT MLP)
122 generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
123
124 # Add a library to the project using the specified source files
125 add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx)
126 target_link_libraries(${MODULE} STEERBase STEER ESD CDB RAWDatabase RAWDatarec EMCALbase EMCALUtils FMDbase FMDrec FMDsim ITSbase ITSsim ITSUpgradeBase ITSUpgradeSim MUONbase MUONgeometry MUONmapping MUONrec MUONsim PMDbase T0base TOFbase TPCbase TRDbase TRDrec VZERObase VZEROrec EveBase EG Eve Ged GenVector Gpad Gui Minuit RGL STAT MLP)
127
128 # Additional compilation flags
129 set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g")
130
131 # System dependent: Modify the way the library is build
132 if(${CMAKE_SYSTEM} MATCHES Darwin)
133     set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup")
134 endif(${CMAKE_SYSTEM} MATCHES Darwin)
135
136 # Installation
137 install(TARGETS ${MODULE}
138         ARCHIVE DESTINATION lib
139         LIBRARY DESTINATION lib)
140
141 install(FILES ${HDRS} DESTINATION include)