910a4b11d239cfb8087474e80109ea0c274902bc
[u/mrichter/AliRoot.git] / HLT / Makefile.rules
1 #$Id$
2 ################################
3 # Makefile.rules for HLT code. #
4 #                              #
5 # Author: Anders Vestbo,       #
6 #         Constantin Loizide   #                    
7 ################################
8
9 #----------------------------------------------------
10 # !!! Dont change anything here !!!
11 #----------------------------------------------------
12
13 DEFSTR = -Dno_root
14 OBJDIR = lib_alone
15 INCLUDES = -I$(ALIHLT_TOPDIR)/hough -I$(ALIHLT_TOPDIR)/src -I$(ALIHLT_TOPDIR)/comp -I$(ALIHLT_TOPDIR)/misc -I$(ALIHLT_TOPDIR)/trigger
16
17 ifeq ($(ALIHLT_USEPACKAGE),ROOT) 
18 INCLUDES += -I$(ROOTSYS)/include 
19 DEFSTR = -Duse_root
20 OBJDIR = lib_ROOT
21 ROOTSTR := $(shell $(ROOTSYS)/bin/root -n -b -q  | grep Version | cut -b 17-25 | cut -d" " -f1)
22 DEFSTR += -DROOTVERSION=\"$(ROOTSTR)\" 
23 endif
24
25 ifeq ($(ALIHLT_USEPACKAGE),ALIROOT)
26 INCLUDES += -I$(ROOTSYS)/include -I$(ALICE_ROOT)/include/ -I$(ALICE_ROOT)/TPC -I$(ALICE_ROOT)/CONTAINERS -I$(ALICE_ROOT)/STEER
27 DEFSTR = -Duse_aliroot -Duse_root
28 OBJDIR = lib
29 ROOTSTR := $(shell $(ROOTSYS)/bin/root -n -b -q  | grep Version | cut -b 17-25 | cut -d" " -f1)
30 DEFSTR += -DROOTVERSION=\"$(ROOTSTR)\" 
31 ifeq ($(USECVS),1)
32 ALIROOTSTR := $(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)
33 DEFSTR += -Duse_cvs
34 else
35 ALIROOTSTR = "Unknown"
36 endif
37 DEFSTR += -DALIROOTVERSION=\"$(ALIROOTSTR)\"
38 endif
39
40 ifeq ($(DOMC),1)
41 DEFSTR += -Ddo_mc
42 endif
43
44 ifneq ($(NOLOGGING),1)
45 DEFSTR += -Duse_logging
46 ifdef ALIHLT_MLUCDIR
47 INCLUDES += -I$(ALIHLT_MLUCDIR)/include
48 else
49 INCLUDES += -I/prog/alice/level3/kip/MLUC/include
50 endif
51 endif
52
53 ifeq ($(ASVVERSION),1)
54 DEFSTR += -DASVVERSION
55 endif
56
57 DEFSTR += $(EXTRADEF)
58
59 DICT  = $(MODNAME)Cint-$(ALIHLT_USEPACKAGE).cxx
60 DICTH = $(MODNAME)Cint-$(ALIHLT_USEPACKAGE).h
61 DICTO = $(OBJDIR)/$(MODNAME)Cint-$(ALIHLT_USEPACKAGE).o
62
63
64 ifndef OBJS
65 ifeq ($(OBJDIR),lib_alone)
66 HDRS = $(SRCS:.cxx=.h) 
67 OBJS = $(patsubst %.cxx,$(OBJDIR)/%.o,$(SRCS))
68 else
69 HDRS = $(SRCS:.cxx=.h) $(MODNAME)LinkDef.h
70 OBJS = $(patsubst %.cxx,$(OBJDIR)/%.o,$(SRCS)) $(DICTO)
71 endif
72 endif
73
74 ALIHLT_LIBSO = $(ALIHLT_LIBDIR)/lib$(MODNAME).so
75
76 #Default Targets  
77 #
78
79 all: $(OBJDIR) $(ALIHLT_LIBDIR) $(ALIHLT_LIBSO) 
80
81 $(ALIHLT_LIBSO): $(OBJS)
82         $(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
83
84 $(DICT): $(HDRS)
85         @echo "Generating dictionary..."
86         rootcint -f $(DICT) -c $(INCLUDES) -DGCCVERSION=$(GCCVERSION) $(DEFSTR) -include AliL3StandardIncludes.h $(HDRS)
87
88 $(OBJDIR)/%.o: %.cxx 
89         $(CXX) $(CXXFLAGS) $(DEFSTR) -c $(INCLUDES) -o $@ $<
90
91 $(OBJDIR): 
92         test ! -e $(OBJDIR) && mkdir -p $(OBJDIR)
93
94 $(ALIHLT_LIBDIR):
95         test ! -e $(ALIHLT_LIBDIR) && mkdir -p $(ALIHLT_LIBDIR)
96
97 help:
98         cat $(ALIHLT_TOPDIR)/doc/README
99
100 print:
101         @echo "MODNAME           = $(MODNAME)" 
102         @echo "ALIHLT_BASEDIR    = $(ALIHLT_BASEDIR)"
103         @echo "ALIHLT_TOPDIR     = $(ALIHLT_TOPDIR)"
104         @echo "ALIHLT_MLUCDIR    = $(ALIHLT_MLUCDIR)"
105         @echo "ALIHLT_USEPACKAGE = $(ALIHLT_USEPACKAGE)"
106         @echo "ALIHLT_NOLOGGING  = $(ALIHLT_NOLOGGING)"
107         @echo "ALIHLT_DOMC       = $(ALIHLT_DOMC)"
108         @echo "ALIHLT_HAVEASV    = $(ALIHLT_HAVEASV)"
109         @echo "ALIHLT_ALIDETECT  = $(ALIHLT_ALIDETECT)"
110         @echo "ROOTSTR           = $(ROOTSTR)"
111         @echo "ALIROOTSTR        = $(ALIROOTSTR)"
112
113 printall: print
114         @echo "ALIHLT_LIBSO      = $(ALIHLT_LIBSO)"
115         @echo "DEFSTR            = $(DEFSTR)"
116         @echo "OBJDIR            = $(OBJDIR)"
117         @echo "INCLUDES          = $(INCLUDES)"
118         @echo "SRCS              = $(SRCS)"
119         @echo "HRDS              = $(HDRS)"
120         @echo "OBJS              = $(OBJS)"
121
122 clean:
123         rm -f $(OBJDIR)/*.o
124         rm -f $(ALIHLT_LIBSO)
125         rm -f $(DICT) $(DICTH) 
126         rm -rf $(OBJDIR)
127
128 so:
129         rm -f $(ALIHLT_LIBSO)
130
131
132 .phony: print clean so