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