]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/Makefile
- Adapted comments for Doxygen
[u/mrichter/AliRoot.git] / PWG0 / Makefile
1 # $Id$
2
3 include $(ROOTSYS)/test/Makefile.arch
4
5 default-target: libPWG0base.so libPWG0dep.so libPWG0selectors.so
6
7 ALICEINC      = -I.
8
9 ### define include dir for local case and par case
10 ifneq ($(ALICE_ROOT),)
11   ALICEINC += -I$(ALICE_ROOT)/include
12 else
13   ifneq ($(ESD_INCLUDE),)
14     ALICEINC += -I../$(ESD_INCLUDE)
15   endif
16 endif
17
18 CXXFLAGS     += $(ALICEINC) -g
19
20 PACKAGE = PWG0base
21 include lib$(PACKAGE).pkg
22
23 DHDR_PWG0base := $(DHDR)
24 HDRS_PWG0base := $(HDRS)
25 SRCS_PWG0base := $(SRCS) G__$(PACKAGE).cxx
26 OBJS_PWG0base := $(SRCS_PWG0base:.cxx=.o)
27
28 PARFILE       = $(PACKAGE).par
29
30 lib$(PACKAGE).so: $(OBJS_PWG0base)
31         @echo "Linking" $@ ...
32         @/bin/rm -f $@
33 ifeq ($(PLATFORM),macosx)
34         @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@
35 else
36         @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
37 endif
38         @chmod a+x $@
39         @echo "done"
40
41 %.o:    %.cxx %.h
42         $(CXX) $(CXXFLAGS) -c $< -o $@
43
44 G__PWG0base.cxx G__PWG0base.h: $(HDRS_PWG0base) $(DHDR_PWG0base)
45         @echo "Generating dictionary ..."
46         rootcint -f $@ -c $(ALICEINC) $^
47
48 clean:
49         @rm -f $(OBJS_PWG0base) $(OBJS_PWG0dep) $(OBJS_PWG0selectors) *.so G__PWG0base.* G__PWG0dep.* G__PWG0selectors.* $(PARFILE)
50
51 ### CREATE PAR FILE
52
53 $(PARFILE): $(patsubst %,$(PACKAGE)/%,$(filter-out G__%, $(HDRS_PWG0base) $(SRCS_PWG0base) $(DHDR_PWG0base) Makefile Makefile.arch lib$(PACKAGE).pkg PROOF-INF))
54         @echo "Creating archive" $@ ...
55         @tar cfzh $@ $(PACKAGE)
56         @rm -rf $(PACKAGE)
57         @echo "done"
58
59 $(PACKAGE)/Makefile: Makefile #.$(PACKAGE)
60         @echo Copying $< to $@ with transformations
61         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
62         @sed 's/include \$$(ROOTSYS)\/test\/Makefile.arch/include Makefile.arch/' < $^ > $@
63
64 $(PACKAGE)/Makefile.arch: $(ROOTSYS)/test/Makefile.arch
65         @echo Copying $< to $@
66         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
67         @cp $^ $@
68
69 $(PACKAGE)/PROOF-INF: PROOF-INF.$(PACKAGE)
70         @echo Copying $< to $@
71         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
72         @cp -r $^ $@
73
74 $(PACKAGE)/%: %
75         @echo Copying $< to $@
76         @[ -d $(dir $@) ] || mkdir -p $(dir $@)
77         @cp $< $@
78
79 test-%.par: %.par
80         @echo "INFO: The file $< is now tested, in case of an error check in par-tmp."
81         @mkdir -p par-tmp
82         @cd par-tmp; tar xfz ../$<;     cd $(subst .par,,$<); PROOF-INF/BUILD.sh
83         @rm -rf par-tmp
84         @echo "INFO: Testing succeeded (already cleaned up)"
85
86 ## libPWG0dep part
87 include libPWG0dep.pkg
88
89 DHDR_PWG0dep := $(DHDR)
90 HDRS_PWG0dep := $(HDRS)
91 SRCS_PWG0dep := $(SRCS) G__PWG0dep.cxx
92 OBJS_PWG0dep := $(SRCS_PWG0dep:.cxx=.o)
93
94 libPWG0dep.so: $(OBJS_PWG0dep)
95         @echo "Linking" $@ ...
96         @/bin/rm -f $@
97 ifeq ($(PLATFORM),macosx)
98         @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@
99 else
100         @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
101 endif
102         @chmod a+x $@
103         @echo "done"
104
105 G__PWG0dep.cxx G__PWG0dep.h: $(HDRS_PWG0dep) $(DHDR_PWG0dep)
106         @echo "Generating dictionary ..."
107         rootcint -f $@ -c $(ALICEINC) $^
108
109 ## libPWG0selectors part
110 include libPWG0selectors.pkg
111
112 DHDR_PWG0selectors := $(DHDR)
113 HDRS_PWG0selectors := $(HDRS)
114 SRCS_PWG0selectors := $(SRCS) G__PWG0selectors.cxx
115 OBJS_PWG0selectors := $(SRCS_PWG0selectors:.cxx=.o)
116
117 libPWG0selectors.so: $(OBJS_PWG0selectors)
118         @echo "Linking" $@ ...
119         @/bin/rm -f $@
120 ifeq ($(PLATFORM),macosx)
121         @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@
122 else
123         @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
124 endif
125         @chmod a+x $@
126         @echo "done"
127
128 G__PWG0selectors.cxx G__PWG0selectors.h: $(HDRS_PWG0selectors) $(DHDR_PWG0selectors)
129         @echo "Generating dictionary ..."
130         rootcint -f $@ -c $(ALICEINC) $^
131