]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/Makefile.rules
Merged Bergen, mergen Cvetan TransformerRow and
[u/mrichter/AliRoot.git] / HLT / Makefile.rules
CommitLineData
3e87ef69 1#$Id$
2################################
3# Makefile.rules for HLT code. #
4# #
5# Author: Anders Vestbo, #
02f030e3 6# Constantin Loizides #
3e87ef69 7################################
8
9#----------------------------------------------------
02f030e3 10# !!! Dont change anything here !!!
11# !!! and if you have to send a mail to authors !!!
3e87ef69 12#----------------------------------------------------
13
14DEFSTR = -Dno_root
15OBJDIR = lib_alone
1f1942b8 16INCLUDES = -I$(ALIHLT_TOPDIR)/src -I$(ALIHLT_TOPDIR)/hough -I$(ALIHLT_TOPDIR)/comp -I$(ALIHLT_TOPDIR)/misc -I$(ALIHLT_TOPDIR)/trigger -I$(ALIHLT_TOPDIR)/kalman
3e87ef69 17
18ifeq ($(ALIHLT_USEPACKAGE),ROOT)
19INCLUDES += -I$(ROOTSYS)/include
20DEFSTR = -Duse_root
21OBJDIR = lib_ROOT
22ROOTSTR := $(shell $(ROOTSYS)/bin/root -n -b -q | grep Version | cut -b 17-25 | cut -d" " -f1)
23DEFSTR += -DROOTVERSION=\"$(ROOTSTR)\"
24endif
25
26ifeq ($(ALIHLT_USEPACKAGE),ALIROOT)
27INCLUDES += -I$(ROOTSYS)/include -I$(ALICE_ROOT)/include/ -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/CONTAINERS -I$(ALICE_ROOT)/STEER
28DEFSTR = -Duse_aliroot -Duse_root
b2a02bce 29ifeq ($(USENEWIO),1)
30DEFSTR += -Duse_newio
31endif
3e87ef69 32OBJDIR = lib
33ROOTSTR := $(shell $(ROOTSYS)/bin/root -n -b -q | grep Version | cut -b 17-25 | cut -d" " -f1)
34DEFSTR += -DROOTVERSION=\"$(ROOTSTR)\"
35ifeq ($(USECVS),1)
36ALIROOTSTR := $(shell if test -n "`cd $(ALICE_ROOT)/STEER/ && cvs stat AliRun.cxx | grep "Sticky Tag" | grep none`"; then echo HEAD; else cd $(ALICE_ROOT)/STEER/ && cvs stat AliRun.cxx | grep "Sticky Tag" | cut -b 18- | cut -d" " -f1; fi)
37DEFSTR += -Duse_cvs
38else
39ALIROOTSTR = "Unknown"
40endif
41DEFSTR += -DALIROOTVERSION=\"$(ALIROOTSTR)\"
de3c3890 42ifeq ($(ALIROOTST),HEAD)
43DEFSTR += -Duse_reconstruction
44endif
3e87ef69 45endif
46
47ifeq ($(DOMC),1)
48DEFSTR += -Ddo_mc
49endif
50
0bd0c1ef 51ifeq ($(USEROWHOUGH),1)
de3c3890 52DEFSTR += -DROWHOUGHPARAMS
0bd0c1ef 53endif
54
3e87ef69 55ifneq ($(NOLOGGING),1)
56DEFSTR += -Duse_logging
57ifdef ALIHLT_MLUCDIR
58INCLUDES += -I$(ALIHLT_MLUCDIR)/include
59else
60INCLUDES += -I/prog/alice/level3/kip/MLUC/include
61endif
62endif
63
1f1942b8 64DEFSTR += -D$(ARCH) $(EXTRADEF)
3e87ef69 65
66DICT = $(MODNAME)Cint-$(ALIHLT_USEPACKAGE).cxx
67DICTH = $(MODNAME)Cint-$(ALIHLT_USEPACKAGE).h
68DICTO = $(OBJDIR)/$(MODNAME)Cint-$(ALIHLT_USEPACKAGE).o
69
3e87ef69 70ifndef OBJS
71ifeq ($(OBJDIR),lib_alone)
72HDRS = $(SRCS:.cxx=.h)
73OBJS = $(patsubst %.cxx,$(OBJDIR)/%.o,$(SRCS))
74else
75HDRS = $(SRCS:.cxx=.h) $(MODNAME)LinkDef.h
76OBJS = $(patsubst %.cxx,$(OBJDIR)/%.o,$(SRCS)) $(DICTO)
77endif
78endif
79
5a31e9df 80STATICOBJS = $(patsubst %.o,%.sto,$(OBJS))
3e87ef69 81
5a31e9df 82ALIHLT_LIBSO = $(ALIHLT_LIBDIR)/lib$(MODNAME).so
83ALIHLT_DYLIB = $(ALIHLT_LIBDIR)/lib$(MODNAME).dylib
84ALIHLT_STATIC = $(ALIHLT_LIBDIR)/lib$(MODNAME).a
3e87ef69 85
5a31e9df 86#Default Target
87default: so
88
89libs: so static
90
91so: $(OBJDIR) $(ALIHLT_LIBDIR) $(ALIHLT_LIBSO)
92
93static: $(OBJDIR) $(ALIHLT_LIBDIR) $(ALIHLT_STATIC)
3e87ef69 94
95$(ALIHLT_LIBSO): $(OBJS)
1f1942b8 96ifeq ($(ARCH),Darwin)
97 $(LD) $(DYFLAGS) $^ $(LDFLAGS) -o $(ALIHLT_DYLIB)
98endif
99 $(LD) $(SOFLAGS) $^ $(LDFLAGS) -o $@
100
5a31e9df 101$(ALIHLT_STATIC): $(STATICOBJS)
102 $(LDSTATIC) $(STATICFLAGS) $@ $^
3e87ef69 103
104$(DICT): $(HDRS)
105 @echo "Generating dictionary..."
0bd0c1ef 106 rootcint -f $(DICT) -c $(CINTCXXFLAGS) $(INCLUDES) \
1f1942b8 107 $(DEFSTR) -include AliL3StandardIncludes.h $(HDRS)
3e87ef69 108
109$(OBJDIR)/%.o: %.cxx
110 $(CXX) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
111
5a31e9df 112$(OBJDIR)/%.sto: %.cxx
113 $(CXX) $(PROFILEFLAGS) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
114
3e87ef69 115$(OBJDIR):
116 test ! -e $(OBJDIR) && mkdir -p $(OBJDIR)
117
118$(ALIHLT_LIBDIR):
119 test ! -e $(ALIHLT_LIBDIR) && mkdir -p $(ALIHLT_LIBDIR)
120
121help:
122 cat $(ALIHLT_TOPDIR)/doc/README
123
124print:
125 @echo "MODNAME = $(MODNAME)"
126 @echo "ALIHLT_BASEDIR = $(ALIHLT_BASEDIR)"
127 @echo "ALIHLT_TOPDIR = $(ALIHLT_TOPDIR)"
128 @echo "ALIHLT_MLUCDIR = $(ALIHLT_MLUCDIR)"
129 @echo "ALIHLT_USEPACKAGE = $(ALIHLT_USEPACKAGE)"
b2a02bce 130 @echo "ALIHLT_USENEWIO = $(ALIHLT_USENEWIO)"
3e87ef69 131 @echo "ALIHLT_NOLOGGING = $(ALIHLT_NOLOGGING)"
132 @echo "ALIHLT_DOMC = $(ALIHLT_DOMC)"
3e87ef69 133 @echo "ALIHLT_ALIDETECT = $(ALIHLT_ALIDETECT)"
0bd0c1ef 134 @echo "ALIHLT_ROWHOUGH = $(ALIHLT_ROWHOUGH)"
3e87ef69 135 @echo "ROOTSTR = $(ROOTSTR)"
136 @echo "ALIROOTSTR = $(ALIROOTSTR)"
137
138printall: print
139 @echo "ALIHLT_LIBSO = $(ALIHLT_LIBSO)"
140 @echo "DEFSTR = $(DEFSTR)"
141 @echo "OBJDIR = $(OBJDIR)"
142 @echo "INCLUDES = $(INCLUDES)"
143 @echo "SRCS = $(SRCS)"
144 @echo "HRDS = $(HDRS)"
145 @echo "OBJS = $(OBJS)"
146
147clean:
5a31e9df 148 rm -f $(OBJDIR)/*.o $(OBJDIR)/*.sto
3e87ef69 149 rm -f $(DICT) $(DICTH)
150 rm -rf $(OBJDIR)
151
5a31e9df 152cleanlib:
153 rm -f $(ALIHLT_LIBSO) $(ALIHLT_DYLIB) $(ALIHLT_STATIC)
3e87ef69 154
5a31e9df 155realclean: clean cleanlib
02f030e3 156
157
158.phony: help print printall clean so realclean
3e87ef69 159