Cleanup of makefiles
[u/mrichter/AliRoot.git] / RAW / Make-macros
1 ##### MACROS #####
2
3 ROOTH         = TH1.h
4
5 SRCS          = AliRawEventHeader.cxx AliRawEquipmentHeader.cxx \
6                 AliRawData.cxx AliRawEvent.cxx \
7                 AliStats.cxx AliRawDB.cxx \
8                 AliRawRFIODB.cxx AliRawCastorDB.cxx AliRawRootdDB.cxx \
9                 AliRawNullDB.cxx AliTagDB.cxx AliTagNullDB.cxx \
10                 AliRunDB.cxx AliMDC.cxx \
11                 AliRawReader.cxx AliRawReaderFile.cxx AliRawReaderRoot.cxx \
12                 AliRawReaderDate.cxx AliTPCBuffer160.cxx \
13                 AliTPCHNode.cxx AliTPCHTable.cxx \
14                 AliTPCCompression.cxx AliTPCRawStream.cxx \
15                 AliITSRawStream.cxx AliITSRawStreamSPD.cxx \
16                 AliITSRawStreamSDD.cxx AliITSRawStreamSSD.cxx \
17                 AliITSRawStreamSDDv2.cxx AliVMERawStream.cxx
18
19 HDRS          = $(SRCS:.cxx=.h) LinkDef.h
20
21 DICT          = AliRawDict.cxx
22 DICTH         = $(DICT:.cxx=.h)
23 DICTO         = $(DICT:.cxx=.o)
24
25 MAIN          = alimdc_main.cxx
26 MAINO         = $(MAIN:.cxx=.o)
27
28 OBJS          = $(SRCS:.cxx=.o) $(DICTO)
29
30 ALLDICT       = $(DICT) $(DICTH)
31 ALLSRCS       = $(SRCS) $(HDRS) $(MAIN)
32 ALLOBJS       = $(OBJS) $(MAINO)
33
34 ALIRAW        = libRAW.so
35 ALIMDC        = alimdc
36
37
38
39 ##### RULES #####
40
41 .SUFFIXES: .cxx
42 .PHONY: all rdm smi evb hlt debug
43
44 .cxx.o:
45         $(CXX) $(OPT) $(CXXFLAGS) -c $<
46
47
48 ##### TARGETS #####
49
50 all:            $(ALIRAW) $(ALIMDC)
51
52 rdm:            $(ALIRAW) $(ALIMDC)
53
54 smi:            $(ALIRAW) $(ALIMDC)
55
56 evb:            $(ALIRAW) $(ALIMDC)
57
58 hlt:            $(ALIRAW) $(ALIMDC)
59
60 $(ALIRAW):      $(DICT) $(OBJS)
61                 rm -f $(ALIRAW)
62                 ifeq ($(ALICE_ARCH),aix)
63                    $(SHLD) -o $(ALIRAW) $(LIBS) -p 0 $(OBJS)
64                 else
65                    ifeq ($(ALICE_ARCH),alpha)
66                       $(SHLD) -o $(ALIRAW) $(OBJS) -lcxxstd -lcxx -lexc -lots -lc
67                    else
68                       $(LD) $(SOFLAGS) $(LDFLAGS) $(OBJS) -o $(ALIRAW)
69                    endif
70                 endif
71                 chmod 555 $(ALIRAW)
72                 @echo "$(ALIRAW) done"
73
74
75 $(ALIMDC):      $(MAINO) $(ALIRAW)
76                 ifeq ($(ALICE_ARCH),aix)
77                    ln -fs $(ALILRAW) libAliRaw.a
78                    $(LD) $(LDFLAGS) $(MAINO) libAliRaw.a \
79                    $(LIBS) -o $(ALIMDC)
80                 else
81                    $(LD) $(LDFLAGS) $(MAINO) $(ALIRAW) \
82                    $(LIBS) -o $(ALIMDC)
83                 endif
84                 @if [ `id -u -n` = "alicemdc" ]; then \
85                    chmod 6755 alimdc; \
86                 fi
87
88 $(DICT):        $(HDRS)
89                 @echo "Generating dictionary ..."
90                 rootcint -f $(DICT) -c $(ROOTH) $(HDRS)
91
92 $(DICTO):       $(DICT)
93                 $(CXX) $(NOOPT) $(CXXFLAGS) -c $(DICT)
94
95 depend:
96                 rmkdepend -fMake-depend -- $(CXXFLAGS) -- $(SRCS) $(MAIN) \
97                 > /dev/null 2>&1
98
99 dist:
100                 rm -f alimdc.tar.gz ; \
101                 tar cvf alimdc.tar AA* $(ALLSRCS) .rootrc *.C Make* ; \
102                 gzip alimdc.tar
103
104 clean:
105                 @rm -f $(ALLOBJS) $(ALLDICT)
106
107 distclean:      clean
108                 @rm -f $(ALIMDC) $(ALIRAW)