1 #-*- Mode: Makefile -*-
7 CXXFLAGS+=-I${ALICE_ROOT}/RAW
9 ifneq ($(EXTRADAMODULE),)
10 CXXFLAGS+=-I${ALICE_ROOT}/$(EXTRADAMODULE)
13 DASRC=${DAMODULE}/${DAMODULE}da.cxx
14 DADEP=${DAMODULE}/${DAMODULE}da.d
15 DAOBJ=${DAMODULE}/tgt_${ALICE_TARGET}/${DAMODULE}da.o
16 DALIB=${ALICE_ROOT}/lib/tgt_${ALICE_TARGET}/lib${DAMODULE}DA.a
17 DAEXE=${ALICE_ROOT}/bin/tgt_${ALICE_TARGET}/${DAMODULE}da.exe
19 DAQDADIR=${ALICE}/daqDAlib
20 DAQDALIB=$(DAQDADIR)/libdaqDA.a
22 ROOTLIBDIR=$(shell root-config --libdir)
26 CXXFLAGS+=$(shell date-config --cflags)
30 DASRC=./${DAMODULE}da.cxx
31 DADEP=./${DAMODULE}da.d
32 DAOBJ=./${DAMODULE}da.o
33 DALIB=./lib${DAMODULE}DA.a
34 DAEXE=./${DAMODULE}da.exe
37 DAQDALIB=$(DAQDADIR)/libdaqDA.a
46 MONITORLIBS=$(shell date-config --monitorlibs=noshift)
48 ALIROOTALIBS=$(RAWDatabaseALIB) $(RAWDatarecALIB) $(RAWDatasimALIB) $(STEERALIB) $(CDBALIB) $(ESDALIB)
50 ALIROOTALIBS+=$($(DAMODULE)baseALIB) $($(DAMODULE)recALIB) $($(DAMODULE)simALIB)
52 ifneq ($(EXTRADAMODULE),)
54 ALIROOTALIBS+=$($(EXTRADAMODULE)baseALIB) $($(EXTRADAMODULE)recALIB) $($(EXTRADAMODULE)simALIB)
60 $(DAEXE): $(LIBPATH) $(DAOBJ) $(DALIB) $(DAQDALIB)
62 $(LD) $(LDFLAGS) -o $@ $(DAOBJ) $(DALIB) \
64 $(ROOTLIBDIR)/libRoot.a \
65 $(ROOTLIBDIR)/libfreetype.a $(ROOTLIBDIR)/libpcre.a \
66 $(MONITORLIBS) $(DAQDALIB)
68 $(DAOBJ): $(DASRC) $(DAQDADIR) $(DADEP)
69 $(CXX) -c $(CXXFLAGS) -I$(DAQDADIR) $< -o $@
71 $(DADEP): $(DASRC) $(DAQDADIR)
72 $(CPP) -MM $(CXXFLAGS) -I$(DAQDADIR) $< > $@
74 DAINCLUDES=$(sort $(filter-out %.o:,$(filter-out %.cxx,$(filter-out \,$(shell cat $(DADEP))))))
78 $(DALIB): $(ALIROOTALIBS)
81 mkdir junk && cd junk && $(addprefix $(AR) x ../,$(addsuffix &&,$^)) $(AR) r $@ *.o && cd .. && rm -rf junk
89 @rm -f $(ALIROOTALIBS)
92 tar-DA: $(DASRC) $(DALIB) $(DAQDADIR) $(DADEP)
93 @rm -rf $(DAMODULE)da.tar
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 && \
100 tar cvf ../$(DAMODULE)da.tar * && \
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 "****************************************************************************************************"