Use tgt_ prefix for binary target directories
[u/mrichter/AliRoot.git] / MINICERN / Makefile
1 ############################### MINICERN Makefile #############################
2
3 # Include machine specific definitions
4
5 include $(ALICE_ROOT)/conf/GeneralDef
6 include $(ALICE_ROOT)/conf/MachineDef.$(ALICE_TARGET)
7
8 PACKAGE = minicern
9
10 INC     = -Ipacklib/zebra \
11           -Ipacklib/kernlib/kerngen \
12           -Imathlib/gen \
13           -Ipacklib/kernlib/kernnum
14
15  
16 # C++ compilation flags
17
18 CXXFLAGS      = $(CXXOPTS) $(CLIBCXXOPTS) $(INC) $(CLIBDEFS)
19  
20 # C compilation flags
21
22 CFLAGS      = $(COPT) $(CLIBCOPT) $(INC) $(CLIBDEFS)
23  
24 # FORTRAN compilation flags
25
26 FFLAGS      = $(FOPT) $(CLIBFOPT) $(INC) $(CLIBDEFS)
27  
28 FSRCS   = dummies.F hbcdf.F fzdummies.F \
29           mathlib/gen/b/atg.F \
30           mathlib/gen/c/gamma.F \
31           mathlib/gen/c/gamma128.F \
32           mathlib/gen/c/gamma64.F \
33           mathlib/gen/d/gauss.F \
34           mathlib/gen/d/gauss128.F \
35           mathlib/gen/d/gauss64.F \
36           mathlib/gen/g/prob.F \
37           mathlib/gen/n/mtlprt.F \
38           mathlib/gen/n/mtlset.F \
39           mathlib/gen/v/ranlux.F \
40           mathlib/gen/v/rnorml.F \
41           mathlib/gen/v/rnormx.F \
42           mathlib/gen/v/rnpssn.F \
43           packlib/kernlib/kerngen/ccgen/getenvf.F \
44           packlib/kernlib/kerngen/ccgencf/cfopen.F \
45           packlib/kernlib/kerngen/ccgencf/cfstat.F \
46           packlib/kernlib/kerngen/tcgen/cfill.F \
47           packlib/kernlib/kerngen/tcgen/cleft.F \
48           packlib/kernlib/kerngen/tcgen/cltou.F \
49           packlib/kernlib/kerngen/tcgen/cross.F \
50           packlib/kernlib/kerngen/tcgen/cutol.F \
51           packlib/kernlib/kerngen/tcgen/flpsor.F \
52           packlib/kernlib/kerngen/tcgen/gshowf.F \
53           packlib/kernlib/kerngen/tcgen/icluns.F \
54           packlib/kernlib/kerngen/tcgen/iumode.F \
55           packlib/kernlib/kerngen/tcgen/kerngt.F \
56           packlib/kernlib/kerngen/tcgen/lenocc.F \
57           packlib/kernlib/kerngen/tcgen/lorenf.F \
58           packlib/kernlib/kerngen/tcgen/ranmar.F \
59           packlib/kernlib/kerngen/tcgen/traceq.F \
60           packlib/kernlib/kerngen/tcgen/ubits.F \
61           packlib/kernlib/kerngen/tcgen/uoptc.F \
62           packlib/kernlib/kerngen/tcgen/utrans.F \
63           packlib/kernlib/kerngen/tcgenc/datimh.F \
64           packlib/kernlib/kerngen/tcgenc/intrac.F \
65           packlib/kernlib/kerngen/tcgenc/timed.F \
66           packlib/kernlib/kerngen/tcgenc/timel.F \
67           packlib/kernlib/kerngen/tcgens/iucomp.F \
68           packlib/kernlib/kerngen/tcgens/iufind.F \
69           packlib/kernlib/kerngen/tcgens/iusame.F \
70           packlib/kernlib/kerngen/tcgens/jbit.F \
71           packlib/kernlib/kerngen/tcgens/jbyt.F \
72           packlib/kernlib/kerngen/tcgens/jrsbyt.F \
73           packlib/kernlib/kerngen/tcgens/sbit0.F \
74           packlib/kernlib/kerngen/tcgens/sbit1.F \
75           packlib/kernlib/kerngen/tcgens/sbyt.F \
76           packlib/kernlib/kerngen/tcgens/ublow.F \
77           packlib/kernlib/kerngen/tcgens/ubunch.F \
78           packlib/kernlib/kerngen/tcgens/ucopiv.F \
79           packlib/kernlib/kerngen/tcgens/ucopy.F \
80           packlib/kernlib/kerngen/tcgens/ucopy2.F \
81           packlib/kernlib/kerngen/tcgens/uctoh.F \
82           packlib/kernlib/kerngen/tcgens/uctoh1.F \
83           packlib/kernlib/kerngen/tcgens/ufill.F \
84           packlib/kernlib/kerngen/tcgens/uhtoc.F \
85           packlib/kernlib/kerngen/tcgens/upkbyt.F \
86           packlib/kernlib/kerngen/tcgens/vblank.F \
87           packlib/kernlib/kerngen/tcgens/vfill.F \
88           packlib/kernlib/kerngen/tcgens/vmax.F \
89           packlib/kernlib/kerngen/tcgens/vmod.F \
90           packlib/kernlib/kerngen/tcgens/vunit.F \
91           packlib/kernlib/kerngen/tcgens/vzero.F \
92           packlib/kernlib/kernnum/e104fort/fint.F \
93           packlib/kernlib/kernnum/e106fort/locatf.F \
94           packlib/kernlib/kernnum/f010fort/f010pr.F \
95           packlib/kernlib/kernnum/f010fort/rinv.F \
96           packlib/kernlib/kernnum/f011fort/rfact.F \
97           packlib/kernlib/kernnum/f011fort/rfinv.F \
98           packlib/kernlib/kernnum/f011fort/tmprnt.F \
99           packlib/kernlib/kernnum/n001fort/kerset.F \
100           packlib/zebra/dzebra/dzare1.F \
101           packlib/zebra/dzebra/dzbkdv.F \
102           packlib/zebra/dzebra/dzbkhd.F \
103           packlib/zebra/dzebra/dzbkup.F \
104           packlib/zebra/dzebra/dzbkxr.F \
105           packlib/zebra/dzebra/dzdata.F \
106           packlib/zebra/dzebra/dziopd.F \
107           packlib/zebra/dzebra/dzioph.F \
108           packlib/zebra/dzebra/dziopr.F \
109           packlib/zebra/dzebra/dzmap.F \
110           packlib/zebra/dzebra/dzopt.F \
111           packlib/zebra/dzebra/dzshpr.F \
112           packlib/zebra/dzebra/dzsnap.F \
113           packlib/zebra/dzebra/dzswap.F \
114           packlib/zebra/dzebra/dztext.F \
115           packlib/zebra/dzebra/dztyp.F \
116           packlib/zebra/dzebra/nzleft.F \
117           packlib/zebra/dzebra/zpage.F \
118           packlib/zebra/mq/mzbook.F \
119           packlib/zebra/mq/mzdiv.F \
120           packlib/zebra/mq/mzdrop.F \
121           packlib/zebra/mq/mzebra.F \
122           packlib/zebra/mq/mzend.F \
123           packlib/zebra/mq/mzflag.F \
124           packlib/zebra/mq/mzinco.F \
125           packlib/zebra/mq/mzinqd.F \
126           packlib/zebra/mq/mzinqs.F \
127           packlib/zebra/mq/mzlift.F \
128           packlib/zebra/mq/mzlink.F \
129           packlib/zebra/mq/mzlint.F \
130           packlib/zebra/mq/mzlogl.F \
131           packlib/zebra/mq/mzmaps.F \
132           packlib/zebra/mq/mzneed.F \
133           packlib/zebra/mq/mzpudx.F \
134           packlib/zebra/mq/mzpush.F \
135           packlib/zebra/mq/mzstor.F \
136           packlib/zebra/mq/mzvers.F \
137           packlib/zebra/mq/mzwork.F \
138           packlib/zebra/mqg/mzfgap.F \
139           packlib/zebra/mqg/mzgar1.F \
140           packlib/zebra/mqg/mzgarb.F \
141           packlib/zebra/mqg/mzgsta.F \
142           packlib/zebra/mqg/mzmove.F \
143           packlib/zebra/mqg/mzrelb.F \
144           packlib/zebra/mqg/mzrell.F \
145           packlib/zebra/mqg/mzrelx.F \
146           packlib/zebra/mqg/mztabc.F \
147           packlib/zebra/mqg/mztabf.F \
148           packlib/zebra/mqg/mztabh.F \
149           packlib/zebra/mqg/mztabm.F \
150           packlib/zebra/mqg/mztabr.F \
151           packlib/zebra/mqg/mztabs.F \
152           packlib/zebra/mqg/mztabx.F \
153           packlib/zebra/mqg/mzwipe.F \
154           packlib/zebra/mqs/mzchln.F \
155           packlib/zebra/mqs/mzchls.F \
156           packlib/zebra/mqs/mzchnb.F \
157           packlib/zebra/mqs/mzdvac.F \
158           packlib/zebra/mqs/mzfdiv.F \
159           packlib/zebra/mqs/mzform.F \
160           packlib/zebra/mqs/mziocf.F \
161           packlib/zebra/mqs/mzioch.F \
162           packlib/zebra/mqs/mziocr.F \
163           packlib/zebra/mqs/mzixco.F \
164           packlib/zebra/mqs/mzresv.F \
165           packlib/zebra/mqs/mzsdiv.F \
166           packlib/zebra/mqs/mzxref.F \
167           packlib/zebra/mqs/mzxrup.F \
168           packlib/zebra/mqv/zvautx.F \
169           packlib/zebra/qend/zabend.F \
170           packlib/zebra/qend/zend.F \
171           packlib/zebra/qend/zfatal.F \
172           packlib/zebra/qend/zfatam.F \
173           packlib/zebra/qend/zphase.F \
174           packlib/zebra/qend/zpostm.F \
175           packlib/zebra/qend/ztell.F \
176           packlib/zebra/qend/ztelus.F \
177           packlib/zebra/qutil/izbcd.F \
178           packlib/zebra/qutil/izbcdt.F \
179           packlib/zebra/qutil/izhnum.F \
180           packlib/zebra/qutil/qnext.F \
181           packlib/zebra/qutil/zhtoi.F  \
182           packlib/zebra/qutil/zitoh.F \
183           packlib/zebra/qutil/zshunt.F \
184           packlib/zebra/rz/rzallo.F \
185           packlib/zebra/rz/rzcdir.F \
186           packlib/zebra/rz/rzdate.F \
187           packlib/zebra/rz/rzdelk.F \
188           packlib/zebra/rz/rzdlok.F \
189           packlib/zebra/rz/rzend.F \
190           packlib/zebra/rz/rzexpd.F \
191           packlib/zebra/rz/rzfdir.F \
192           packlib/zebra/rz/rzfile.F \
193           packlib/zebra/rz/rzfree.F \
194           packlib/zebra/rz/rzin.F \
195           packlib/zebra/rz/rzink.F \
196           packlib/zebra/rz/rzins.F \
197           packlib/zebra/rz/rziodo.F \
198           packlib/zebra/rz/rzllok.F \
199           packlib/zebra/rz/rzlock.F \
200           packlib/zebra/rz/rzmake.F \
201           packlib/zebra/rz/rzmdir.F \
202           packlib/zebra/rz/rzmods.F \
203           packlib/zebra/rz/rzobkn.F \
204           packlib/zebra/rz/rzopen.F \
205           packlib/zebra/rz/rzout.F \
206           packlib/zebra/rz/rzpaff.F \
207           packlib/zebra/rz/rzpath.F \
208           packlib/zebra/rz/rzprnk.F \
209           packlib/zebra/rz/rzpurf.F \
210           packlib/zebra/rz/rzread.F \
211           packlib/zebra/rz/rzrtop.F \
212           packlib/zebra/rz/rzsame.F \
213           packlib/zebra/rz/rzsave.F \
214           packlib/zebra/rz/rzstrip.F \
215           packlib/zebra/rz/rzstrir.F \
216           packlib/zebra/rz/rzused.F \
217           packlib/zebra/rz/rzvcyc.F \
218           packlib/zebra/rz/rzver1.F \
219           packlib/zebra/rz/rzver2.F \
220           packlib/zebra/rz/rzveri.F \
221           packlib/zebra/rz/rzwrt.F \
222  
223  
224 ifeq ($(PLATFORM),linux)
225           FSRC = $(FSRCS) \
226           packlib/kernlib/kerngen/unix/lnxgs/rdmin.F
227 endif
228 ifeq ($(PLATFORM),hpux)
229           FSRC = $(FSRCS)
230 endif
231 ifeq ($(PLATFORM),solaris)
232           FSRC = $(FSRCS) \
233           packlib/kernlib/kerngen/tcgen/uset.F
234 endif
235 ifeq ($(PLATFORM),alpha)
236           FSRC = $(FSRCS) 
237 endif
238
239 CSRCS   = \
240           packlib/kernlib/kerngen/ccgen/abend.c \
241           packlib/kernlib/kerngen/ccgen/geteni.c \
242           packlib/kernlib/kerngen/ccgen/jumptn.c \
243           packlib/kernlib/kerngen/ccgen/jumpxn.c \
244           packlib/kernlib/kerngen/ccgen/locf.c \
245           packlib/kernlib/kerngen/ccgen/qnexte.c \
246           packlib/kernlib/kerngen/ccgen/vxinvb.c \
247           packlib/kernlib/kerngen/ccgencf/cfclos.c \
248           packlib/kernlib/kerngen/ccgencf/cfget.c \
249           packlib/kernlib/kerngen/ccgencf/cfopei.c \
250           packlib/kernlib/kerngen/ccgencf/cfput.c \
251           packlib/kernlib/kerngen/ccgencf/cfseek.c \
252           packlib/kernlib/kerngen/ccgencf/cfstati.c \
253           packlib/kernlib/kerngen/ccgenu/fchput.c \
254           packlib/kernlib/kerngen/ccgenu/fchtak.c \
255           packlib/kernlib/kerngen/ccgen/datime.c \
256  
257 ifeq ($(PLATFORM),linux)
258           CSRC = $(CSRCS) \
259           packlib/kernlib/kerngen/unix/lnxgs/ishftr.c
260 endif
261 ifeq ($(PLATFORM),hpux)
262           CSRC = $(CSRCS) \
263           packlib/kernlib/kerngen/unix/hpxgs/traceqc.c \
264           packlib/kernlib/kerngen/ccgen/lnblnk.c
265 endif
266 ifeq ($(PLATFORM),solaris)
267           CSRC = $(CSRCS) 
268 endif
269 ifeq ($(PLATFORM),alpha)
270           CSRC = $(CSRCS) 
271 endif
272         
273
274 CXXSRC  =
275
276 FOBJ    = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(FSRC))
277 COBJ    = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(CSRC))
278 CXXOBJ  = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(CXXSRC))
279
280 SRCS    = $(FSRC) $(CSRC) $(CXXSRC)
281 OBJS    = $(FOBJ) $(COBJ) $(CXXOBJ)
282
283 ##### TARGETS #####
284  
285 # Target
286
287 SLIBRARY        = $(LIBDIR)/libminicern.$(SL)
288 ALIBRARY        = $(LIBDIR)/libminicern.a
289
290 ifeq ($(PLATFORM),alpha)
291         default:        $(ALIBRARY)
292 else
293         default:        $(SLIBRARY)
294 endif
295
296 $(LIBDIR)/libminicern.$(SL):  $(OBJS)
297 $(LIBDIR)/libminicern.a:  $(OBJS)
298
299 depend:                 $(SRCS)
300
301 TOCLEAN         = $(OBJS)
302
303 ############################### General Macros ################################
304
305 include $(ALICE_ROOT)/conf/GeneralMacros
306
307 ############################ Dependencies #####################################
308
309 -include Make-depend