]> git.uio.no Git - u/mrichter/AliRoot.git/blob - GEANT321/Makefile
README updated (R.Barbera)
[u/mrichter/AliRoot.git] / GEANT321 / Makefile
1 ############################### GEANT321 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 = GEANT321
9
10 GDIRS := gbase gcons gdraw geocad ggeom gheisha ghits ghrout ghutils giface \
11         giopa gkine gparal gphys gscan gstrag gtrak matx55 miface miguti \
12         neutron peanut fiface cgpack fluka block comad erdecks erpremc
13
14 XDIRS = gxint cdf
15
16 # C++ sources
17
18 SRCS          =
19 ##### MACROS #####
20
21 GFSRC   := $(wildcard $(patsubst %,%/*.F,$(GDIRS))) gcinit.F
22 GFSRC   := $(filter-out gtrak/grndm%.F,$(GFSRC))
23 GCSRC   := $(wildcard $(patsubst %,%/*.c,$(GDIRS))) 
24 GCXXSRC := $(wildcard $(patsubst %,%/*.cxx,$(GDIRS))) 
25
26 GSRC    = $(GFSRC) $(GCSRC)
27 GFOBJ   = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(GFSRC))
28 GCOBJ   = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(GCSRC))
29 GCXXOBJ = $(patsubst %.cxx,tgt_$(ALICE_TARGET)/%.o,$(GCXXSRC))
30 GOBJ    = $(GFOBJ) $(GCOBJ) $(GCXXOBJ)
31
32 XFSRC   = $(wildcard $(patsubst %,%/*.F,$(XDIRS))) 
33 XCSRC   = $(wildcard $(patsubst %,%/*.c,$(XDIRS))) 
34
35 XSRC    = $(XFSRC) $(XCSRC) $(XCXXSRC)
36 XFOBJ   = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(XFSRC))
37 XCOBJ   = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(XCSRC))
38 XOBJ    = $(XFOBJ) $(XCOBJ) $(XCXXOBJ)
39
40 SRCS    = $(GSRC) $(XSRC)
41 OBJS    = $(GOBJ) $(XOBJ)
42
43 # Global Macros
44
45 ALLSRCS       = $(SRCS) $(HDRS) $(FSRCS) $(CSRCS) $(DICT)
46 ALLOBJS       = $(OBJS) $(FOBJS) $(COBJS) $(DICTO)
47
48 # C++ compilation flags
49
50 CXXFLAGS      := $(CXXOPTS) $(CLIBCXXOPTS) $(CLIBDEFS) -I.
51 CXXFLAGS      := $(filter-out -O%,$(CXXFLAGS))  
52  
53 # C compilation flags
54
55 CFLAGS      := $(COPT) $(CLIBCOPT) $(CLIBDEFS) -I.
56  
57 # FORTRAN compilation flags
58
59 FFLAGS      := $(FOPT) $(CLIBFOPT) $(CLIBDEFS) -I.
60 ifeq ($(PLATFORM),linux)
61    FFLAGS      := $(filter-out -O%,$(FFLAGS))  
62 endif
63  
64 ##### TARGETS #####
65  
66 # Target
67
68 SLIBRARY        = $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgxint321.$(SL)
69 ALIBRARY        = $(LIBDIR)/libgeant321.a $(LIBDIR)/libgxint321.a
70
71 ifeq ($(PLATFORM),alpha)
72         default:        $(ALIBRARY)
73 else
74         default:        $(SLIBRARY)
75 endif
76
77 $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgeant321.a:  $(GOBJ)
78 $(LIBDIR)/libgxint321.$(SL) $(LIBDIR)/libgxint321.$(SL):  $(XOBJ)
79
80 depend:                 $(SRCS)
81
82 TOCLEAN         = $(GOBJ) $(XOBJ)
83
84 ############################### General Macros ################################
85
86 include $(ALICE_ROOT)/conf/GeneralMacros
87
88 ############################ Dependencies #####################################
89
90 -include tgt_$(ALICE_TARGET)/Make-depend