Updated D0 macros from Massimo
[u/mrichter/AliRoot.git] / PWGLF / CMakelibPWGLFforward2.pkg
1 # -*- mode: CMake -*-
2 #------------------------------------------------------------------------#
3 # Package File for PWGLFforward2                                         #
4 # Author : Christian Holm Christensen (cholm@nbi.dk)                     #
5 # Variables Defined :                                                    #
6 #                                                                        #
7 # SRCS - C++ source files                                                #
8 # HDRS - C++ header files                                                #
9 # DHDR - ROOT Dictionary Linkdef header file                             #
10 # CSRCS - C source files                                                 #
11 # CHDRS - C header files                                                 #
12 # EINCLUDE - Include directories                                         #
13 # EDEFINE - Compiler definitions                                         #
14 # ELIBS - Extra libraries to link                                        #
15 # ELIBSDIR - Extra library directories                                   #
16 # PACKFFLAGS - Fortran compiler flags for package                        #
17 # PACKCXXFLAGS - C++ compiler flags for package                          #
18 # PACKCFLAGS - C compiler flags for package                              #
19 # PACKSOFLAGS - Shared library linking flags                             #
20 # PACKLDFLAGS - Module linker flags                                      #
21 # PACKBLIBS - Libraries to link (Executables only)                       #
22 # EXPORT - Header files to be exported                                   #
23 # CINTHDRS - Dictionary header files                                     #
24 # CINTAUTOLINK - Set automatic dictionary generation                     #
25 # ARLIBS - Archive Libraries and objects for linking (Executables only)  #
26 # SHLIBS - Shared Libraries and objects for linking (Executables only)   #
27 #------------------------------------------------------------------------#
28
29 if((DEFINED ALIROOT_SVN_REVISION)) 
30   add_definitions(-DALIROOT_SVN_REVISION=${ALIROOT_SVN_REVISION})
31 elseif((DEFINED ALIROOT_REVISION)) 
32   add_definitions(-DALIROOT_REVISION=\"${ALIROOT_REVISION}\")
33 endif((DEFINED ALIROOT_SVN_REVISION)) 
34 if((DEFINED ALIROOT_SVN_BRANCH)) 
35   add_definitions(-DALIROOT_SVN_BRANCH=\"${ALIROOT_SVN_BRANCH}\")
36 elseif((DEFINED ALIROOT_BRANCH)) 
37   add_definitions(-DALIROOT_BRANCH=\"${ALIROOT_BRANCH}\")
38 endif((DEFINED ALIROOT_SVN_BRANCH))
39
40 set ( SRCS   
41   # ZDC tasks
42   FORWARD/GEO/AliAnalysisTaskZDCPbPb.cxx
43   FORWARD/GEO/AliAnalysisTaskZDCTreeMaker.cxx
44   FORWARD/GEO/AliAnalysisTaskZDCpAcalib.cxx
45   # AOD objects
46   FORWARD/analysis2/AliAODCentralMult.cxx
47   FORWARD/analysis2/AliAODForwardEP.cxx
48   FORWARD/analysis2/AliAODForwardMult.cxx
49   # Interface to OADB backed by a TTree 
50   FORWARD/analysis2/AliOADBForward.cxx
51   # Correction managers 
52   FORWARD/analysis2/AliCorrectionManagerBase.cxx 
53   FORWARD/analysis2/AliForwardCorrectionManager.cxx
54   FORWARD/analysis2/AliCentralCorrectionManager.cxx
55   # Central (SPD) code 
56   FORWARD/analysis2/AliCentralCorrAcceptance.cxx 
57   FORWARD/analysis2/AliCentralCorrSecondaryMap.cxx
58   FORWARD/analysis2/AliCentraldNdetaTask.cxx
59   FORWARD/analysis2/AliCentralMCCorrectionsTask.cxx
60   FORWARD/analysis2/AliCentralMCMultiplicityTask.cxx
61   FORWARD/analysis2/AliCentralMultiplicityTask.cxx
62   FORWARD/analysis2/AliSPDMCTrackDensity.cxx
63   # Aux tasks and code 
64   FORWARD/analysis2/AliCopyHeaderTask.cxx
65   FORWARD/analysis2/AliBasedNdetaTask.cxx
66   FORWARD/analysis2/AliBaseMCTrackDensity.cxx
67   FORWARD/analysis2/AliMCTruthdNdetaTask.cxx
68   FORWARD/analysis2/AliDisplacedVertexSelection.cxx
69   FORWARD/analysis2/AliPoissonCalculator.cxx
70   FORWARD/analysis2/AliMCAuxHandler.cxx
71   # Forward Aux
72   FORWARD/analysis2/AliForwardFlowWeights.cxx
73   FORWARD/analysis2/AliForwardUtil.cxx
74   FORWARD/analysis2/AliFMDMultCuts.cxx
75   # FMD corrections
76   FORWARD/analysis2/AliFMDCorrAcceptance.cxx
77   FORWARD/analysis2/AliFMDCorrDoubleHit.cxx
78   FORWARD/analysis2/AliFMDCorrector.cxx 
79   FORWARD/analysis2/AliFMDCorrELossFit.cxx 
80   FORWARD/analysis2/AliFMDCorrMergingEfficiency.cxx
81   FORWARD/analysis2/AliFMDCorrSecondaryMap.cxx 
82   FORWARD/analysis2/AliFMDCorrVertexBias.cxx
83   # FMD algortithmns 
84   FORWARD/analysis2/AliFMDDensityCalculator.cxx
85   FORWARD/analysis2/AliFMDEnergyFitter.cxx
86   FORWARD/analysis2/AliFMDEventInspector.cxx
87   FORWARD/analysis2/AliFMDEventPlaneFinder.cxx
88   FORWARD/analysis2/AliFMDHistCollector.cxx
89   FORWARD/analysis2/AliFMDESDFixer.cxx
90   FORWARD/analysis2/AliFMDSharingFilter.cxx
91   # FMD MC algorithms
92   FORWARD/analysis2/AliFMDMCCorrector.cxx
93   FORWARD/analysis2/AliFMDMCDensityCalculator.cxx
94   FORWARD/analysis2/AliFMDMCEventInspector.cxx
95   FORWARD/analysis2/AliFMDMCSharingFilter.cxx
96   FORWARD/analysis2/AliFMDMCTrackDensity.cxx
97   # Forward tasks 
98   FORWARD/analysis2/AliBaseESDTask.cxx
99   FORWARD/analysis2/AliBaseAODTask.cxx
100   FORWARD/analysis2/AliBaseMCCorrectionsTask.cxx
101   FORWARD/analysis2/AliFMDEnergyFitterTask.cxx 
102   FORWARD/analysis2/AliFMDEventPlaneTask.cxx
103   FORWARD/analysis2/AliForwarddNdetaTask.cxx
104   FORWARD/analysis2/AliForwardFlowTaskQC.cxx
105   FORWARD/analysis2/AliForwardMCCorrectionsTask.cxx
106   FORWARD/analysis2/AliForwardMCFlowTaskQC.cxx
107   FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx 
108   FORWARD/analysis2/AliForwardMultiplicityBase.cxx
109   FORWARD/analysis2/AliForwardMultiplicityTask.cxx
110   FORWARD/analysis2/AliForwardQATask.cxx
111   FORWARD/analysis2/AliForwardCreateResponseMatrices.cxx
112   FORWARD/analysis2/AliForwardMultiplicityDistribution.cxx
113   FORWARD/analysis2/AliForwardMultDists.cxx
114   FORWARD/photons/AliAnalysisTaskPMD.cxx
115   FORWARD/photons/AliAnalysisTaskPMDSim.cxx
116 )
117
118 string ( REPLACE ".cxx" ".h" HDRS "${SRCS}" )
119 set ( HDRS ${HDRS} 
120   FORWARD/analysis2/AliFMDStripIndex.h 
121   FORWARD/analysis2/AliLandauGaus.h 
122   FORWARD/analysis2/AliLandauGausFitter.h 
123   FORWARD/analysis2/AliFMDCorrNoiseGain.h
124   )
125
126 set ( EINCLUDE  
127   ANALYSIS 
128   PWGLF/FORWARD/analysis2  
129   PWGLF/FORWARD/GEO 
130   FORWARD/analysis2  
131   FORWARD/GEO 
132   PWG0 
133   OADB
134   STEER/ESD 
135   STEER/STEERBase)
136
137 set ( EXPORT FORWARD/analysis2/AliAODForwardMult.h 
138              FORWARD/analysis2/AliAODCentralMult.h 
139              FORWARD/analysis2/AliOADBForward.h
140              FORWARD/analysis2/AliForwardUtil.h  
141              FORWARD/analysis2/AliLandauGaus.h 
142              FORWARD/analysis2/AliLandauGausFitter.h 
143              FORWARD/analysis2/AliFMDEventInspector.h
144              FORWARD/analysis2/AliFMDMCEventInspector.h
145              FORWARD/analysis2/AliForwardCorrectionManager.h
146              FORWARD/analysis2/AliCentralCorrectionManager.h
147              FORWARD/analysis2/AliCorrectionManagerBase.h
148              FORWARD/analysis2/AliFMDCorrAcceptance.h
149              FORWARD/analysis2/AliFMDCorrSecondaryMap.h
150              FORWARD/analysis2/AliFMDCorrELossFit.h
151              FORWARD/analysis2/AliFMDCorrNoiseGain.h
152              FORWARD/analysis2/AliBaseESDTask.h
153              FORWARD/analysis2/AliBaseAODTask.h
154              FORWARD/analysis2/AliFMDEnergyFitter.h
155              FORWARD/analysis2/AliMCAuxHandler.h
156              FORWARD/analysis2/AliDisplacedVertexSelection.h
157              FORWARD/GEO/AliAnalysisTaskZDCPbPb.h
158              FORWARD/GEO/AliAnalysisTaskZDCpAcalib.h
159              FORWARD/GEO/AliAnalysisTaskZDCTreeMaker.h)
160
161 set ( DHDR  PWGLFforward2LinkDef.h)
162
163 # add_executable(runTrain
164 #   FORWARD/analysis2/trains/runMain.cxx)
165 # target_link_libraries(runTrain 
166 #   ${ARLIBS} ${SHLIBS} ${PBLIBS} ${EXEFLAGS} ${ROOTCLIBS})
167 # install(TARGETS runTrain 
168 #   RUNTIME DESTINATION bin/tgt_${ALICE_TARGET})
169
170 add_executable(runTrain
171   FORWARD/trains/trainMain.cxx)
172 set(CMAKE_EXE_LINKER_FLAGS "${LDFLAGS}")
173 target_link_libraries(runTrain 
174   ${BINLIBDIRS} ${ARLIBS} ${SHLIBS} ${PBLIBS} ${EXEFLAGS} ${ROOTCLIBS} 
175   -lSTEERBase -lESD -lAOD -lOADB -lANALYSIS -lANALYSISalice)
176 install(TARGETS runTrain 
177   RUNTIME DESTINATION bin/tgt_${ALICE_TARGET})
178 add_dependencies(runTrain STEERBase ESD AOD OADB ANALYSIS ANALYSISalice)
179
180 # --------------------------------------------------------------------
181 # Extra targets 
182 #
183 add_custom_command( OUTPUT FORWARD/doc/alice-int-2012-040.pdf 
184                     COMMAND pdflatex alice-int-2012-040
185                     COMMAND pdflatex alice-int-2012-040
186                     COMMAND pdflatex alice-int-2012-040
187                     COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/FORWARD/doc
188                     COMMAND mv alice-int-2012-040.pdf ${CMAKE_CURRENT_BINARY_DIR}/FORWARD/doc/
189                     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/FORWARD/doc
190                     MAIN_DEPENDENCY FORWARD/doc/alice-int-2012-040.tex)
191
192 add_custom_command( OUTPUT FORWARD/doc/html/index.html 
193                     COMMAND mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/FORWARD/doc
194                     COMMAND sed -e 's,\\.\\./,${CMAKE_CURRENT_SOURCE_DIR}/FORWARD/,' -e 's,OUTPUT_DIRECTORY *=.*,OUTPUT_DIRECTORY = FORWARD/doc/,' < ${CMAKE_CURRENT_SOURCE_DIR}/FORWARD/doc/Doxyfile > ${CMAKE_CURRENT_BINARY_DIR}/FORWARD/doc/Doxyfile
195                     COMMAND doxygen ${CMAKE_CURRENT_BINARY_DIR}/FORWARD/doc/Doxyfile
196                     DEPENDS ${SRCS} ${HDRS})
197
198 add_custom_target( PWGLFforward-doc DEPENDS FORWARD/doc/alice-int-2012-040.pdf )
199 add_custom_target( PWGLFforward-doxy DEPENDS FORWARD/doc/html/index.html )
200
201 add_custom_target( install-PWGLFforward2.par 
202   COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_BINARY_DIR}/${PACKAGE}.par ${CMAKE_INSTALL_PREFIX}
203   COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green --bold "${PACKAGE}.par installed in ${CMAKE_INSTALL_PREFIX}"
204   DEPENDS ${CMAKE_BINARY_DIR}/${PACKAGE}.par
205   DEPENDS test-${PACKAGE}.par)
206
207 # --------------------------------------------------------------------
208 # Extra installation targets 
209 #
210 # Install scripts 
211 install ( DIRECTORY FORWARD/analysis2/scripts 
212           DESTINATION PWGLF/FORWARD/analysis2 
213           USE_SOURCE_PERMISSIONS
214           PATTERN "*~"    EXCLUDE
215           PATTERN ".svn"  EXCLUDE
216           PATTERN "*.d"   EXCLUDE 
217           PATTERN "*.so"  EXCLUDE)
218
219 # install QA scripts 
220 install ( DIRECTORY FORWARD/analysis2/qa
221           DESTINATION PWGLF/FORWARD/analysis2 
222           USE_SOURCE_PERMISSIONS
223           PATTERN "*~"    EXCLUDE
224           PATTERN ".svn"  EXCLUDE
225           PATTERN "*.d"   EXCLUDE 
226           PATTERN "*.so"  EXCLUDE)
227
228 # install correction scripts 
229 install ( DIRECTORY FORWARD/analysis2/corrs
230           DESTINATION PWGLF/FORWARD/analysis2 
231           PATTERN "*~"    EXCLUDE
232           PATTERN ".svn"  EXCLUDE
233           PATTERN "*.d"   EXCLUDE 
234           PATTERN "*.so"  EXCLUDE)
235
236 # install trains 
237 install ( DIRECTORY FORWARD/analysis2/trains 
238           DESTINATION PWGLF/FORWARD/analysis2 
239           PATTERN "*~"   EXCLUDE
240           PATTERN ".svn" EXCLUDE
241           PATTERN "*.d"  EXCLUDE 
242           PATTERN "*.so" EXCLUDE)
243
244 # install trains 
245 install ( DIRECTORY FORWARD/trains 
246           DESTINATION PWGLF/FORWARD 
247           FILES_MATCHING PATTERN "*.C"
248           PATTERN "*~"        EXCLUDE
249           PATTERN ".svn"      EXCLUDE)
250           # PATTERN "*.d"       EXCLUDE 
251           # PATTERN "*.so"      EXCLUDE
252           # PATTERN "*.root"    EXCLUDE
253           # PATTERN "*.png"     EXCLUDE
254           # PATTERN "test*"     EXCLUDE
255           # PATTERN "export*.C" EXCLUDE
256           # PATTERN "dndeta_*.C" EXCLUDE
257           # PATTERN "dndeta_*.root" EXCLUDE
258
259 # Install other scripts
260 install ( FILES FORWARD/analysis2/AddTaskCentraldNdeta.C
261                 FORWARD/analysis2/AddTaskCentralMCCorr.C
262                 FORWARD/analysis2/AddTaskCentralMult.C
263                 FORWARD/analysis2/AddTaskCentralTracks.C
264                 FORWARD/analysis2/AddTaskCopyHeader.C
265                 FORWARD/analysis2/AddTaskFMDELoss.C
266                 FORWARD/analysis2/AddTaskFMDEventPlane.C
267                 FORWARD/analysis2/AddTaskForwardFlowQC.C
268                 FORWARD/analysis2/AddTaskForwardMCCorr.C
269                 FORWARD/analysis2/AddTaskForwardMult.C
270                 FORWARD/analysis2/AddTaskForwardMultDists.C
271                 FORWARD/analysis2/AddTaskForwardQA.C
272                 FORWARD/analysis2/AddTaskForwarddNdeta.C
273                 FORWARD/analysis2/AddTaskMCTruthdNdeta.C
274                 FORWARD/analysis2/AddTaskMCParticleFilter.C
275                 FORWARD/analysis2/DrawdNdeta.C
276                 FORWARD/analysis2/DrawdNdetaSummary.C
277                 FORWARD/analysis2/DrawMCCorrSummary.C
278                 FORWARD/analysis2/DrawAODSummary.C
279                 FORWARD/analysis2/DrawMultDistsSummary.C
280                 FORWARD/analysis2/DrawUnfoldedSummary.C
281                 FORWARD/analysis2/ForwardAODConfig.C
282                 FORWARD/analysis2/CentralAODConfig.C
283                 FORWARD/analysis2/dNdetaConfig.C
284                 FORWARD/analysis2/MakeAOD.C
285                 FORWARD/analysis2/MakedNdeta.C
286                 FORWARD/analysis2/MakeELossFits.C
287                 FORWARD/analysis2/MakeEvaluateTriggers.C
288                 FORWARD/analysis2/MakeFlow.C
289                 FORWARD/analysis2/MakeFMDEventPlane.C
290                 FORWARD/analysis2/MakeForwardQA.C
291                 FORWARD/analysis2/MakeMCCorr.C          
292                 FORWARD/analysis2/OtherData.C
293                 FORWARD/analysis2/other.root
294            DESTINATION PWGLF/FORWARD/analysis2 )
295
296          # FORWARD/analysis2/AliFMDCorrAcceptance.h
297          # FORWARD/analysis2/AliFMDCorrDoubleHit.h
298          # FORWARD/analysis2/AliFMDCorrector.h
299          # FORWARD/analysis2/AliFMDCorrELossFit.h
300          # FORWARD/analysis2/AliFMDCorrMergingEfficiency.h
301          # FORWARD/analysis2/AliFMDCorrSecondaryMap.h
302          # FORWARD/analysis2/AliFMDCorrVertexBias.h
303          # FORWARD/analysis2/AliForwardUtil.h
304          # FORWARD/analysis2/AliForwardCorrectionManager.h
305          # FORWARD/analysis2/AliCorrectionManagerBase.h
306
307 # Install corrections 
308 install ( DIRECTORY FORWARD/corrections/Empirical
309                     FORWARD/corrections/Normalization
310           DESTINATION PWGLF/FORWARD/corrections 
311           PATTERN "*~"   EXCLUDE
312           PATTERN ".svn" EXCLUDE)
313
314 # Install shell script 
315 install ( FILES FORWARD/analysis2/Run.sh 
316                 FORWARD/analysis2/liteAnalysis.sh
317                 FORWARD/analysis2/gridAnalysis.sh
318                 FORWARD/analysis2/baseAnalysis.sh
319           DESTINATION PWGLF/FORWARD/analysis2 
320           PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
321                       GROUP_EXECUTE GROUP_READ
322                       WORLD_EXECUTE WORLD_READ )
323
324
325 # --------------------------------------------------------------------
326 #
327 # EOF
328