]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/Makefile
coverity fix (Ruben)
[u/mrichter/AliRoot.git] / PWG2 / Makefile
CommitLineData
937bb49a 1# $Id$
2
937bb49a 3include $(ROOTSYS)/test/Makefile.arch
937bb49a 4
d0539625 5PACKAGE = PWG2resonances
378d0357 6
7default-target: lib$(PACKAGE).so
deb133c5 8
98136d38 9ALICEINC = -I. -I$(ALICE_ROOT)/TOF -I$(ALICE_ROOT)/ANALYSIS/EventMixing
937bb49a 10
11### define include dir for local case and par case
378d0357 12ifneq ($(ESD_INCLUDE),)
9d28f090 13 ALICEINC += -I../$(ESD_INCLUDE)
14 ALICEINC += -I../$(AOD_INCLUDE)
15 ALICEINC += -I../$(STEERBase_INCLUDE)
16 ALICEINC += -I../$(ANALYSIS_INCLUDE)
17 ALICEINC += -I../$(ANALYSISalice_INCLUDE)
18 else
19 ifneq ($(ALICE_ROOT),)
958d9d26 20 ALICEINC += -I$(ALICE_ROOT)/include -I$(ALICE_ROOT)/PWG2
9d28f090 21 endif
aca22c05 22endif
23
f35b656f 24ifneq ($(CORRFW_INCLUDE),)
39f2a708 25 ALICEINC += -I../$(CORRFW_INCLUDE)
26endif
27
aad44575 28ifneq ($(PWG2AOD_INCLUDE),)
29 ALICEINC += -I../$(PWG2AOD_INCLUDE)
30endif
31
32ifneq ($(PWG2femtoscopy_INCLUDE),)
33 ALICEINC += -I../$(PWG2femtoscopy_INCLUDE)
958d9d26 34 else
35 ifneq ($(ALICE_ROOT),)
36 ALICEINC += -I$(ALICE_ROOT)/PWG2/AOD
37 endif
aad44575 38endif
39
9d28f090 40ifneq ($(PWG2femtoscopyUser_INCLUDE),)
41 ALICEINC += -I../$(PWG2femtoscopyUser_INCLUDE)
958d9d26 42 else
43 ifneq ($(ALICE_ROOT),)
44 ALICEINC += -I$(ALICE_ROOT)/PWG2/AOD -I$(ALICE_ROOT)/PWG2/FEMTOSCOPY/AliFemto
45 endif
9d28f090 46endif
47
29b61d43 48ifneq ($(PWG2flowCommon_INCLUDE),)
49 ALICEINC += -I../$(PWG2flowCommon_INCLUDE)
50endif
51
52ifneq ($(PWG2flowTasks_INCLUDE),)
53 ALICEINC += -I../$(PWG2flowTasks_INCLUDE)
958d9d26 54 else
55 ifneq ($(ALICE_ROOT),)
56 ALICEINC += -I$(ALICE_ROOT)/PWG2/FLOW/AliFlowCommon
57 endif
29b61d43 58endif
59
8f4eb10f 60ifneq ($(PWG2resonances_INCLUDE),)
61 ALICEINC += -I../$(PWG2resonances_INCLUDE)
958d9d26 62 else
63 ifneq ($(ALICE_ROOT),)
64 ALICEINC += -I$(ALICE_ROOT)/PWG2/RESONANCES
65 endif
8f4eb10f 66endif
67
9d28f090 68ifneq ($(PWG2unicor_INCLUDE),)
69 ALICEINC += -I../$(PWG2unicor_INCLUDE)
70endif
71
72ifneq ($(PWG2evchar_INCLUDE),)
73 ALICEINC += -I../$(PWG2evchar_INCLUDE)
74endif
75
76ifneq ($(PWG2kink_INCLUDE),)
77 ALICEINC += -I../$(PWG2kink_INCLUDE)
78endif
79
f8e5dd12 80ifneq ($(PWG2forward_INCLUDE),)
81 ALICEINC += -I../$(PWG2forward_INCLUDE)
958d9d26 82 else
83 ifneq ($(ALICE_ROOT),)
84 ALICEINC += -I$(ALICE_ROOT)/FMD
85 endif
f8e5dd12 86endif
87
4079f321 88ifneq ($(OADB_INCLUDE), )
89 ALICEINC += -I../$(OADB_INCLUDE)
90else
91 ifneq ($(ALICE_ROOT),)
92 ALICEINC += -I$(ALICE_ROOT)/OADB
93 endif
94endif
95
378d0357 96# only if no par file was loaded before
97ifeq ($(ALICEINC),-I.)
98 ifneq ($(ALICE_ROOT),)
99 ALICEINC += -I$(ALICE_ROOT)/include
937bb49a 100 endif
101endif
102
9c19b5fc 103# for building of PWG0dep.par
104#ifneq ($(PWG0base_INCLUDE),)
105# ALICEINC += -I../$(PWG0base_INCLUDE)
106#endif
107
378d0357 108#ALICEINC += -IFEMTOSCOPY/AliFemto -IANALYSIS -IFEMTOSCOPY/AliFemtoUser
deb133c5 109
958d9d26 110# include lib$(PACKAGE).pkg
deb133c5 111
f8e5dd12 112ifneq ($(EINCLUDE),)
113 ALICEINC += $(EINCLUDE:%=-I$(ALICE_ROOT)/%)
114endif
115
116CXXFLAGS += $(ALICEINC) -g
117F77FLAGS += $(ALICEINC) -g -fPIC
118
958d9d26 119DHDR =
120HDRS =
121SRCS =
122FSRCS =
f8e5dd12 123
9c19b5fc 124DHDR_PWG2 := $(DHDR)
125HDRS_PWG2 := $(HDRS)
126SRCS_PWG2 := $(SRCS) G__$(PACKAGE).cxx
aad44575 127FSCRS_PWG2 := $(FSRCS)
128OBJS_PWG2 := $(SRCS_PWG2:.cxx=.o) $(FSRCS:.F=.o)
deb133c5 129
937bb49a 130PARFILE = $(PACKAGE).par
131
9c19b5fc 132lib$(PACKAGE).so: $(OBJS_PWG2)
937bb49a 133 @echo "Linking" $@ ...
134 @/bin/rm -f $@
d86acb69 135ifeq ($(PLATFORM),macosx)
136# We need to make both the .dylib and the .so
137 $(LD) $(SOFLAGS)$@ $(LDFLAGS) $^ $(OutPutOpt) $@
138ifneq ($(subst $(MACOSX_MINOR),,1234),1234)
139ifeq ($(MACOSX_MINOR),4)
140 ln -sf $@ $(subst .$(DllSuf),.so,$@)
937bb49a 141else
d86acb69 142 $(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ \
143 $(OutPutOpt) $(subst .$(DllSuf),.so,$@)
144endif
145endif
146else
147ifeq ($(PLATFORM),win32)
148 bindexplib $* $^ > $*.def
149 lib -nologo -MACHINE:IX86 $^ -def:$*.def \
150 $(OutPutOpt)$(EVENTLIB)
151 $(LD) $(SOFLAGS) $(LDFLAGS) $^ $*.exp $(LIBS) \
152 $(OutPutOpt)$@
153else
154 $(LD) $(SOFLAGS) $(LDFLAGS) $^ $(OutPutOpt) $@ $(EXPLLINKLIBS)
155endif
937bb49a 156endif
157 @chmod a+x $@
158 @echo "done"
159
160%.o: %.cxx %.h
161 $(CXX) $(CXXFLAGS) -c $< -o $@
162
aad44575 163%.o: %.F
164 $(F77) $(F77FLAGS) -c $< -o $@
165
958d9d26 166G__$(PACKAGE).h:G__$(PACKAGE).cxx
167 @if test -f $@ ; then : ; else rm -f $< ; $(MAKE) $@ ; fi
168
169G__$(PACKAGE).cxx: $(HDRS_PWG2) $(DHDR_PWG2)
937bb49a 170 @echo "Generating dictionary ..."
378d0357 171 rootcint -f $@ -c $(CINTFLAGS) $(ALICEINC) $^
937bb49a 172
deb133c5 173clean:
378d0357 174 @rm -f $(OBJS_PWG2) *.so G__$(PACKAGE).* $(PARFILE)
deb133c5 175
937bb49a 176### CREATE PAR FILE
177
9c19b5fc 178$(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_PWG2) $(SRCS_PWG2) $(DHDR_PWG2) Makefile Makefile.arch lib$(PACKAGE).pkg PROOF-INF))
937bb49a 179 @echo "Creating archive" $@ ...
180 @tar cfzh $@ $(PACKAGE)
181 @rm -rf $(PACKAGE)
182 @echo "done"
183
184$(PACKAGE)/Makefile: Makefile #.$(PACKAGE)
185 @echo Copying $< to $@ with transformations
186 @[ -d $(dir $@) ] || mkdir -p $(dir $@)
187 @sed 's/include \$$(ROOTSYS)\/test\/Makefile.arch/include Makefile.arch/' < $^ > $@
188
189$(PACKAGE)/Makefile.arch: $(ROOTSYS)/test/Makefile.arch
190 @echo Copying $< to $@
191 @[ -d $(dir $@) ] || mkdir -p $(dir $@)
deb133c5 192 @cp -a $^ $@
937bb49a 193
194$(PACKAGE)/PROOF-INF: PROOF-INF.$(PACKAGE)
195 @echo Copying $< to $@
196 @[ -d $(dir $@) ] || mkdir -p $(dir $@)
deb133c5 197 @cp -a -r $^ $@
937bb49a 198
199$(PACKAGE)/%: %
200 @echo Copying $< to $@
201 @[ -d $(dir $@) ] || mkdir -p $(dir $@)
deb133c5 202 @cp -a $< $@
937bb49a 203
204test-%.par: %.par
205 @echo "INFO: The file $< is now tested, in case of an error check in par-tmp."
206 @mkdir -p par-tmp
207 @cd par-tmp; tar xfz ../$<; cd $(subst .par,,$<); PROOF-INF/BUILD.sh
208 @rm -rf par-tmp
209 @echo "INFO: Testing succeeded (already cleaned up)"