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