]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/Makefile
Move AliD0toKpi* and AliBtoJPSI* from libPWG3base to libPWG3 (Andrea)
[u/mrichter/AliRoot.git] / PWG3 / Makefile
1 # $Id$
2
3 include $(ROOTSYS)/test/Makefile.arch
4
5 default-target: libPWG3base.so 
6
7 ALICEINC      = -I.
8
9 ### define include dir for local case and par case
10 ifneq ($(ESD_INCLUDE),)
11    ALICEINC += -I../$(ESD_INCLUDE)
12         ifneq ($(STEERBase_INCLUDE),)
13                 ALICEINC += -I../$(STEERBase_INCLUDE)
14         endif                           
15         ifneq ($(AOD_INCLUDE),)
16                 ALICEINC += -I../$(AOD_INCLUDE)
17         endif
18         ifneq ($(ANALYSIS_INCLUDE),)
19                 ALICEINC += -I../$(ANALYSIS_INCLUDE)
20         endif
21 else
22   ifneq ($(ALICE_ROOT),)
23     ALICEINC += -I$(ALICE_ROOT)/include -I$(ALICE_ROOT)/MUON
24 else
25   endif
26 endif
27
28 CXXFLAGS     += $(ALICEINC) -g
29
30 PACKAGE = PWG3base
31 include lib$(PACKAGE).pkg
32
33 DHDR_PWG3base := $(DHDR)
34 HDRS_PWG3base := $(HDRS)
35 SRCS_PWG3base := $(SRCS) G__$(PACKAGE).cxx
36 OBJS_PWG3base := $(SRCS_PWG3base:.cxx=.o)
37
38 PARFILE       = $(PACKAGE).par
39
40 lib$(PACKAGE).so: $(OBJS_PWG3base)
41         @echo "Linking" $@ ...
42         @/bin/rm -f $@
43 ifeq ($(PLATFORM),macosx)
44         @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@
45 else
46         @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
47 endif
48         @chmod a+x $@
49         @echo "done"
50
51 %.o:    %.cxx %.h
52         $(CXX) $(CXXFLAGS) -c $< -o $@
53
54 G__PWG3base.cxx G__PWG3base.h: $(HDRS_PWG3base) $(DHDR_PWG3base)
55         @echo "Generating dictionary ..."
56         rootcint -f $@ -c $(ALICEINC) $^
57
58 clean:
59         @rm -f $(OBJS_PWG3base)  *.so G__PWG3base.*  $(PARFILE)
60
61 ### CREATE PAR FILE
62
63 $(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_PWG3base) $(SRCS_PWG3base) $(DHDR_PWG3base) Makefile Makefile.arch lib$(PACKAGE).pkg PROOF-INF))
64         @echo "Creating archive" $@ ...
65         @tar cfzh $@ $(PACKAGE)
66         @rm -rf $(PACKAGE)
67         @echo "done"
68
69 $(PACKAGE)/Makefile: Makefile #.$(PACKAGE)
70         @echo Copying $< to $@ with transformations
71         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
72         @sed 's/include \$$(ROOTSYS)\/test\/Makefile.arch/include Makefile.arch/' < $^ > $@
73
74 $(PACKAGE)/Makefile.arch: $(ROOTSYS)/test/Makefile.arch
75         @echo Copying $< to $@
76         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
77         @cp -a $^ $@
78
79 $(PACKAGE)/PROOF-INF: PROOF-INF.$(PACKAGE)
80         @echo Copying $< to $@
81         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
82         @cp -a -r $^ $@
83
84 $(PACKAGE)/%: %
85         @echo Copying $< to $@
86         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
87         @cp -a $< $@
88
89 test-%.par: %.par
90         @echo "INFO: The file $< is now tested, in case of an error check in par-tmp."
91         @mkdir -p par-tmp
92         @cd par-tmp; tar xfz ../$<;     cd $(subst .par,,$<); PROOF-INF/BUILD.sh
93         @rm -rf par-tmp
94         @echo "INFO: Testing succeeded (already cleaned up)"
95