]>
Commit | Line | Data |
---|---|---|
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 | ||
61 | # ifeq ($(PLATFORM),linux) | |
62 | # FFLAGS := $(filter-out -O%,$(FFLAGS)) | |
63 | # endif | |
64 | ||
65 | ##### TARGETS ##### | |
66 | ||
67 | # Target | |
68 | ||
69 | SLIBRARY = $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgxint321.$(SL) | |
70 | ALIBRARY = $(LIBDIR)/libgeant321.a $(LIBDIR)/libgxint321.a | |
71 | ||
72 | ifeq ($(PLATFORM),alpha) | |
73 | default: $(ALIBRARY) | |
74 | else | |
75 | default: $(SLIBRARY) | |
76 | endif | |
77 | ||
78 | $(LIBDIR)/libgeant321.$(SL) $(LIBDIR)/libgeant321.a: $(GOBJ) | |
79 | $(LIBDIR)/libgxint321.$(SL) $(LIBDIR)/libgxint321.$(SL): $(XOBJ) | |
80 | ||
81 | depend: $(SRCS) | |
82 | ||
83 | TOCLEAN = $(GOBJ) $(XOBJ) | |
84 | ||
85 | ############################### General Macros ################################ | |
86 | ||
87 | include $(ALICE_ROOT)/conf/GeneralMacros | |
88 | ||
89 | ############################ Dependencies ##################################### | |
90 | ||
91 | -include tgt_$(ALICE_TARGET)/Make-depend |