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