]> git.uio.no Git - u/mrichter/AliRoot.git/blame - build/MakefileDA
Preprocessor updated to store also alignment object
[u/mrichter/AliRoot.git] / build / MakefileDA
CommitLineData
17cb72ed 1#-*- Mode: Makefile -*-
2
4179078a 3ifdef DAMODULE
4
17cb72ed 5ifdef ALIROOTMODULES
6
7CXXFLAGS+=-I${ALICE_ROOT}/RAW
8
9ifneq ($(EXTRADAMODULE),)
10CXXFLAGS+=-I${ALICE_ROOT}/$(EXTRADAMODULE)
11endif
12
13DASRC=${DAMODULE}/${DAMODULE}da.cxx
14DADEP=${DAMODULE}/${DAMODULE}da.d
15DAOBJ=${DAMODULE}/tgt_${ALICE_TARGET}/${DAMODULE}da.o
16DALIB=${ALICE_ROOT}/lib/tgt_${ALICE_TARGET}/lib${DAMODULE}DA.a
17DAEXE=${ALICE_ROOT}/bin/tgt_${ALICE_TARGET}/${DAMODULE}da.exe
18
19DAQDADIR=${ALICE}/daqDAlib
20DAQDALIB=$(DAQDADIR)/libdaqDA.a
21
22ROOTLIBDIR=$(shell root-config --libdir)
23
24else
25
26CXXFLAGS+=$(shell date-config --cflags)
27CXXFLAGS+=-Iinclude
28LD=$(CXX)
29
30DASRC=./${DAMODULE}da.cxx
31DADEP=./${DAMODULE}da.d
32DAOBJ=./${DAMODULE}da.o
33DALIB=./lib${DAMODULE}DA.a
34DAEXE=./${DAMODULE}da.exe
35
36DAQDADIR=./daqDAlib
37DAQDALIB=$(DAQDADIR)/libdaqDA.a
38
39ROOTLIBDIR=.
40
41LIBPATH=
42
43endif
44
4179078a 45SYSLIBS=-ldl
17cb72ed 46MONITORLIBS=$(shell date-config --monitorlibs=noshift)
47
48ALIROOTALIBS=$(RAWDatabaseALIB) $(RAWDatarecALIB) $(RAWDatasimALIB) $(STEERALIB) $(CDBALIB) $(ESDALIB)
49
50ALIROOTALIBS+=$($(DAMODULE)baseALIB) $($(DAMODULE)recALIB) $($(DAMODULE)simALIB)
51
52ifneq ($(EXTRADAMODULE),)
53
54ALIROOTALIBS+=$($(EXTRADAMODULE)baseALIB) $($(EXTRADAMODULE)recALIB) $($(EXTRADAMODULE)simALIB)
55
56endif
57
58static-DA: $(DAEXE)
59
60$(DAEXE): $(LIBPATH) $(DAOBJ) $(DALIB) $(DAQDALIB)
61
62 $(LD) $(LDFLAGS) -o $@ $(DAOBJ) $(DALIB) \
4179078a 63 $(SYSLIBS) \
64 $(ROOTLIBDIR)/libRoot.a \
65 $(ROOTLIBDIR)/libfreetype.a $(ROOTLIBDIR)/libpcre.a \
66 $(MONITORLIBS) $(DAQDALIB)
17cb72ed 67
68$(DAOBJ): $(DASRC) $(DAQDADIR) $(DADEP)
69 $(CXX) -c $(CXXFLAGS) -I$(DAQDADIR) $< -o $@
4179078a 70
17cb72ed 71$(DADEP): $(DASRC) $(DAQDADIR)
72 $(CPP) -MM $(CXXFLAGS) -I$(DAQDADIR) $< > $@
73
74DAINCLUDES=$(sort $(filter-out %.o:,$(filter-out %.cxx,$(filter-out \,$(shell cat $(DADEP))))))
75
76-include $(DADEP)
77
78$(DALIB): $(ALIROOTALIBS)
79 @rm -rf $@
80 @rm -rf junk
81 mkdir junk && cd junk && $(addprefix $(AR) x ../,$(addsuffix &&,$^)) $(AR) r $@ *.o && cd .. && rm -rf junk
82
83clean-DA:
84 @rm -f $(DAEXE)
85 @rm -f $(DAOBJ)
86 @rm -f $(DADEP)
87ifdef ALIROOTMODULES
88 @rm -f $(DALIB)
89 @rm -f $(ALIROOTALIBS)
90endif
91
92tar-DA: $(DASRC) $(DALIB) $(DAQDADIR) $(DADEP)
93 @rm -rf $(DAMODULE)da.tar
94 @rm -rf junk
95 mkdir junk && mkdir junk/include && \
96 cp -a $(DASRC) $(DALIB) $(ROOTLIBDIR)/libRoot.a $(ROOTLIBDIR)/libfreetype.a $(ROOTLIBDIR)/libpcre.a $(DAQDADIR) junk && \
97 $(foreach daincfile,$(DAINCLUDES), cp -a $(daincfile) junk/include &&) \
98 cp -a build/MakefileDA junk/Makefile && \
99 cd junk && \
100 tar cvf ../$(DAMODULE)da.tar * && \
101 cd .. && rm -rf junk
4179078a 102
103else
104
105static-DA: clean-DA
106clean-DA: tar-DA
107tar-DA:
108 @echo
109 @echo "****************************************************************************************************"
110 @echo "* In order to build a detector-algorithm package you have to set the environment variable DAMODULE *"
111 @echo "* For example: setenv DAMODULE TOF *"
112 @echo "* or export DAMODULE=TOF *"
113 @echo "* If the detector algorithm uses data from another sub-detector you can specify this by setting *"
114 @echo "* the environment variable EXTRADAMODULE *"
115 @echo "****************************************************************************************************"
116 @echo
117
118
119endif