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