]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 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 | ||
65fb704d | 10 | GDIRS := gbase gcons gdraw geocad ggeom gheisha ghits ghrout ghutils giface \ |
fe4da5cc | 11 | giopa gkine gparal gphys gscan gstrag gtrak matx55 miface miguti \ |
6d462b1c | 12 | neutron peanut fiface cgpack fluka block comad erdecks erpremc |
fe4da5cc | 13 | |
14 | XDIRS = gxint cdf | |
15 | ||
16 | # C++ sources | |
17 | ||
18 | SRCS = | |
19 | ##### MACROS ##### | |
20 | ||
65fb704d | 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))) | |
fe4da5cc | 25 | |
26 | GSRC = $(GFSRC) $(GCSRC) | |
4adb943a | 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)) | |
fe4da5cc | 30 | GOBJ = $(GFOBJ) $(GCOBJ) $(GCXXOBJ) |
31 | ||
32 | XFSRC = $(wildcard $(patsubst %,%/*.F,$(XDIRS))) | |
33 | XCSRC = $(wildcard $(patsubst %,%/*.c,$(XDIRS))) | |
34 | ||
35 | XSRC = $(XFSRC) $(XCSRC) $(XCXXSRC) | |
4adb943a | 36 | XFOBJ = $(patsubst %.F,tgt_$(ALICE_TARGET)/%.o,$(XFSRC)) |
37 | XCOBJ = $(patsubst %.c,tgt_$(ALICE_TARGET)/%.o,$(XCSRC)) | |
fe4da5cc | 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 | ||
65fb704d | 50 | CXXFLAGS := $(CXXOPTS) $(CLIBCXXOPTS) $(CLIBDEFS) -I. |
51 | CXXFLAGS := $(filter-out -O%,$(CXXFLAGS)) | |
fe4da5cc | 52 | |
53 | # C compilation flags | |
54 | ||
65fb704d | 55 | CFLAGS := $(COPT) $(CLIBCOPT) $(CLIBDEFS) -I. |
fe4da5cc | 56 | |
57 | # FORTRAN compilation flags | |
58 | ||
65fb704d | 59 | FFLAGS := $(FOPT) $(CLIBFOPT) $(CLIBDEFS) -I. |
ff59ea76 | 60 | ifeq ($(PLATFORM),linux) |
61 | FFLAGS := $(filter-out -O%,$(FFLAGS)) | |
62 | endif | |
fe4da5cc | 63 | |
64 | ##### TARGETS ##### | |
65 | ||
66 | # Target | |
67 | ||
cb342460 | 68 | SLIBRARY = $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgxint321.$(SL) |
69 | ALIBRARY = $(LIBDIR)/libgeant321.a $(LIBDIR)/libgxint321.a | |
fe4da5cc | 70 | |
286aba6f | 71 | ifeq ($(PLATFORM),alpha) |
ca88e26c | 72 | default: $(ALIBRARY) |
286aba6f | 73 | else |
ca88e26c | 74 | default: $(SLIBRARY) |
286aba6f | 75 | endif |
76 | ||
cb342460 | 77 | $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgeant321.a: $(GOBJ) |
78 | $(LIBDIR)/libgxint321.$(SL) $(LIBDIR)/libgxint321.$(SL): $(XOBJ) | |
fe4da5cc | 79 | |
80 | depend: $(SRCS) | |
81 | ||
82 | TOCLEAN = $(GOBJ) $(XOBJ) | |
83 | ||
84 | ############################### General Macros ################################ | |
85 | ||
86 | include $(ALICE_ROOT)/conf/GeneralMacros | |
87 | ||
88 | ############################ Dependencies ##################################### | |
89 | ||
1207d6f2 | 90 | -include tgt_$(ALICE_TARGET)/Make-depend |