]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/programs/Makefile
Splitting raw data libs
[u/mrichter/AliRoot.git] / HLT / programs / Makefile
1 #$Id$
2 ###############################
3 # Makefile for HLT programs.  #
4 #                             #
5 # Author: Constantin Loizides #                    
6 ###############################
7
8
9 ifndef ALIHLT_TOPDIR
10 ALIHLT_TOPDIR = $(shell pwd)/..
11 endif
12
13 include $(ALIHLT_TOPDIR)/Makefile.conf
14
15 DEFSTR = -Dno_root
16 INCLUDES = -I$(ALIHLT_TOPDIR)/src -I$(ALIHLT_TOPDIR)/hough -I$(ALIHLT_TOPDIR)/comp -I$(ALIHLT_TOPDIR)/misc -I$(ALIHLT_TOPDIR)/trigger -I$(ALIHLT_TOPDIR)/kalman
17
18 LIBS = -L$(ALIHLT_LIBDIR) -lAliL3Src -lAliL3Hough -lAliL3Comp -lAliL3Misc 
19 STATICLIBS = $(ALIHLT_LIBDIR)/libAliL3Src.a  $(ALIHLT_LIBDIR)/libAliL3Hough.a  $(ALIHLT_LIBDIR)/libAliL3Comp.a  $(ALIHLT_LIBDIR)/libAliL3Misc.a 
20
21 ifneq ($(ALIHLT_USEPACKAGE),STANDALONE)
22 ROOTCFLAGS := $(shell root-config --cflags)
23 ROOTLIBS   := $(shell root-config --libs)
24 ROOTGLIBS  := $(shell root-config --glibs)
25 endif
26
27 ifeq ($(ALIHLT_USEPACKAGE),ROOT) 
28 DEFSTR = -Duse_root
29 INCLUDES += -I$(ROOTSYS)/include 
30 RLIBS = $(ROOTLIBS) -lMinuit -lEG 
31 LIBS += $(RLIBS)
32 STATICLIBS += $(RLIBS)
33 endif
34
35 ifeq ($(ALIHLT_USEPACKAGE),ALIROOT)
36 DEFSTR = -Duse_aliroot -Duse_root
37 ifeq ($(USENEWIO),1)
38 DEFSTR += -Duse_newio
39 ALICELIBS = -L$(ALICE_ROOT)/lib/tgt_Linux -lTPC -lITS -lCONTAINERS -lSTEER -lRAWDatabase -lRAWDatarec -lRAWDatasim -lVMC -lGeom
40 else
41 ALICELIBS = -L$(ALICE_ROOT)/lib/tgt_Linux -lTPC -lITS -lCONTAINERS -lSTEER -lMC
42 endif
43 INCLUDES += -I$(ROOTSYS)/include -I$(ALICE_ROOT)/include/ -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/CONTAINERS -I$(ALICE_ROOT)/STEER
44 RLIBS = $(ROOTLIBS) -lMinuit -lEG
45 LIBS += $(ALICELIBS) $(RLIBS)
46 STATICLIBS += $(ALICELIBS) $(RLIBS)
47 endif
48
49 ifeq ($(ALIHLT_USEPACKAGE),STANDALONE)
50 DEFSTR = -Dno_root
51 RLIBS =  -lpthread -lm -ldl -rdynamic
52 LIBS += $(RLIBS)
53 STATICLIBS += $(RLIBS)
54 endif
55
56 ifeq ($(DOMC),1)
57 DEFSTR += -Ddo_mc
58 endif
59
60 #Use logging classes
61 ifndef NOLOGGING
62 DEFSTR += -Duse_logging
63 ifdef ALIHLT_MLUCDIR
64 INCLUDES += -I$(ALIHLT_MLUCDIR)/include
65 MLUCLIBS = -L$(ALIHLT_MLUCDIR)/lib/ -lMLUC 
66 else
67 INCLUDES += -I/prog/alice/level3/kip/MLUC/include
68 MLUCLIBS += -L/prog/alice/level3/kip/MLUC/lib/linux-i386 -lMLUC
69 endif
70 LIBS += $(MLUCLIBS)
71 STATICLIBS += $(MLUCLIBS)
72 endif
73
74 DEFSTR += -D$(ARCH) $(EXTRADEF)
75
76 CXX          = g++
77 LD           = $(CXX)
78 #CXXGCC3FLAGS += -pedantic
79 #CXXGCC3FLAGS += -Wno-deprecated
80 #CXXGCC3FLAGS += -Woverloaded-virtual
81 CXXFLAGS       = -O2 -Wall -ggdb $(CXXGCC3FLAGS) $(EXTRACXXFLAGS) 
82 LDFLAGS        = -O2 $(EXTRALDFLAGS) $(LIBS)
83 STATICLDFLAGS  = -O2 $(PROFILEFLAGS) $(EXTRALDFLAGS) $(STATICLIBS)
84
85
86 PRGS    =  runit read runvhdlcf runhough runvhdlhough runtracker tpcbeamtesttracker tpcbeamtestdisplay
87 STPRGS  = 
88 UTILS   = ccfile gettransform
89 STUTILS = gettransform_st runit_st
90 UTILS_not_working  = convbin speedtest 
91
92 all: $(PRGS) $(UTILS)
93
94 programs: $(PRGS)
95
96 utils: $(UTILS)
97
98 stprograms: $(STPRGS)
99
100 stutils: $(STUTILS)
101
102 #run hough transform on l3 data.
103 runhough: runhough.o
104         $(LD) $< $(LDFLAGS) -o $@
105
106 #run hough transform on l3 data.
107 runvhdlhough: runvhdlhough.o
108         $(LD) $< $(LDFLAGS) -o $@
109
110 #run conventional clusterfinder on altro data
111 runvhdlcf: runvhdlcf.o
112         $(LD) $< $(LDFLAGS) -o $@
113
114 #run conventional clusterfinder
115 runit: runit.o
116         $(LD) $< $(LDFLAGS) -o $@
117
118 runit_st: runit.sto
119         $(LD) $< $(LDFLAGS) -o $@
120
121 #run conventional tracker
122 runtracker: runtracker.o
123         $(LD) $< $(STATICLDFLAGS) -o $@
124
125 #TPC Test cluster finder and tracker
126 tpcbeamtesttracker: tpcbeamtesttracker.o
127         $(LD) $< $(LDFLAGS) -o $@
128
129 #TPC Test display
130 tpcbeamtestdisplay: tpcbeamtestdisplay.o
131         $(LD) $< $(LDFLAGS) -o $@
132
133 #read l3 raw data, print it and convert to altro data
134 read: read.o
135         $(LD) $< $(LDFLAGS) -o $@
136
137 #convert big <-> little endian cosmics data file
138 ccfile: convcosmicsfile.o
139         $(LD) $< $(LDFLAGS) -o $@
140
141 #convert to binary
142 convbin: ali2raw.o
143         $(LD) $< $(LDFLAGS) -o $@
144
145 #get transform values
146 gettransform: gettransform.o
147         $(LD) $< $(LDFLAGS) -o $@
148
149 gettransform_st: gettransform.sto
150         $(LD) $< $(STATICLDFLAGS) -o $@
151
152
153 speedtest: speedtest.cxx
154         g++ -O -Wall -fPIC -ffast-math $(CXXFLAGS) speedtest.cxx -o speedtest
155 #       g++ -O -Wall -fPIC -mcpu=ev6   $(CXXFLAGS) speedtest.cxx -o speedtest
156 #       cxx -O -Wall -fPIC -lm         $(CXXFLAGS) speedtest.cxx -o speedtest 
157
158 %.o:%.cxx 
159         $(CXX) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
160
161 %.sto:%.cxx 
162         $(CXX) $(PROFILEFLAGS) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
163
164 clean :
165         rm -f *.o *.sto gmon.out $(PRGS) $(UTILS) $(STPRGS) $(STUTILS) $(UTILS_not_working)
166