/[PAMELA software]/PamVMC/PamG4RunConfiguration/Makefile
ViewVC logotype

Contents of /PamVMC/PamG4RunConfiguration/Makefile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Wed Feb 18 17:05:04 2009 UTC (15 years, 11 months ago) by nikolas
Branch: MAIN
Changes since 1.1: +20 -14 lines
Migrating to a new version

1 # $Id: Makefile 306 2007-11-19 16:15:32Z rdm $
2
3 ############################### geant4_vmc Makefile ###########################
4
5 PACKAGE = PamG4RunConfiguration
6
7 ifeq ($(PLATFORM),)
8 PLATFORM = $(shell root-config --arch)
9 endif
10
11
12 TOPDIR = $(G4VMC_DIR)
13 BINDIR = $(G4WORKDIR)/tmp/tgt_$(PLATFORM)/$(PACKAGE)
14 LIBDIR = $(G4WORKDIR)/lib/tgt_$(PLATFORM)
15
16 ifeq ($(ROOTSYS),)
17 ROOT_INCDIR = $(shell root-config --incdir)
18 ROOT_BINDIR = $(shell root-config --prefix)/bin
19 ROOT_ETCDIR = $(shell root-config --prefix)/etc/vmc
20 else
21 ROOT_INCDIR = $(ROOTSYS)/include
22 ROOT_BINDIR = $(ROOTSYS)/bin
23 ROOT_ETCDIR = $(ROOTSYS)/etc/vmc
24 endif
25
26 include $(ROOT_ETCDIR)/Makefile.$(PLATFORM)
27
28 ############################### Sources #######################################
29
30 # Rules
31 #
32 include $(ROOT_ETCDIR)/MakeRules
33
34 # Dictionary
35 #
36 GDICT := $(BINDIR)/$(PACKAGE)Cint.cxx
37 GDICTH := $(GDICT:.cxx=.h)
38 GDICTO := $(patsubst %.cxx,%.o,$(GDICT))
39
40 # Sources
41 #
42 CXXSRC := $(wildcard src/*.cxx)
43 SRCS := $(CXXSRC)
44
45 # C++ Headers processed by CINT
46 #
47 HDRS := include/PamG4RunConfiguration.h \
48 # include/PamG4RangeCutsPhysicsList.h \
49 # include/PamG4RangeCutsPhysics.h \
50 include/$(PACKAGE)LinkDef.h
51
52 # Objects
53 #
54 CXXOBJ := $(patsubst %.cxx,$(BINDIR)/%.o,$(CXXSRC))
55 OBJS := $(CXXOBJ) $(GDICTO)
56
57 # Make include list
58 #
59 ifndef G4INCLUDE
60 G4INCLUDE := $(G4INSTALL)/include
61 endif
62
63 INCDIR := -Iinclude -I$(G4INCLUDE) \
64 -I$(CLHEP_BASE_DIR)/include \
65 -I$(G4INSTALL)/physics_lists/hadronic/LHEP_BERT/include \
66 -I$(G4INSTALL)/physics_lists/hadronic/Packaging/include \
67 -I$(G4INSTALL)/examples/novice/N03/include \
68 -I$(TOPDIR)/include
69
70 ifneq ($(USE_VGM),)
71 INCDIR += -I$(VGM_INSTALL)/packages/VGM/include \
72 -I$(VGM_INSTALL)/packages/ClhepVGM/include \
73 -I$(VGM_INSTALL)/packages/BaseVGM/include \
74 -I$(VGM_INSTALL)/packages/Geant4GM/include \
75 -I$(VGM_INSTALL)/packages/RootGM/include \
76 -I$(VGM_INSTALL)/packages/XmlVGM/include
77 endif
78
79 # C++ compilation flags
80 #
81 CXXFLAGS := $(CXXOPTS) $(G4MCDEFS) -I. $(INCDIR) -I$(ROOT_INCDIR)
82
83 # Debug option
84 #
85 ifdef G4DEBUG
86 CXXFLAGS += -DMCDEBUG
87 endif
88
89 # Use VGM flag
90 #
91 ifneq ($(USE_VGM),)
92 CXXFLAGS += -DUSE_VGM
93 endif
94
95 ######################## Supported Geant4 VIS, UI #############################
96 #
97 # Supported Geant4 VIS, UI setting:
98 # OPENGLX, OPENGLXM, XM, TCSH
99 #
100 ifndef G4VIS_NONE
101 CPPFLAGS += -DG4VIS_USE
102 ifdef G4VIS_USE_OPENGLX
103 G4VIS_USE_OPENGL = 1
104 CPPFLAGS += -DG4VIS_USE_OPENGLX
105 INC_X11 = 1
106 endif
107 ifdef G4VIS_USE_OPENGLXM
108 G4VIS_USE_OPENGL = 1
109 CPPFLAGS += -DG4VIS_USE_OPENGLXM
110 INC_XM = 1
111 endif
112 ifdef G4VIS_USE_OPENGL
113 CPPFLAGS += -DG4VIS_USE_OPENGL
114 CPPFLAGS += -I$(G4INSTALL)/source/visualization/OpenGL/include
115 INC_GL = 1
116 endif
117 CPPFLAGS += -I$(G4INSTALL)/source/visualization/management/include
118 CPPFLAGS += -I$(G4INSTALL)/source/visualization/modeling/include
119 endif #G4VIS_NONE
120
121 ifndef G4UI_NONE
122 CPPFLAGS += -I$(G4INSTALL)/source/interfaces/basic/include
123 CPPFLAGS += -I$(G4INSTALL)/source/interfaces/common/include
124 CPPFLAGS += -I$(G4INSTALL)/source/interfaces/GAG/include
125 CPPFLAGS += -DG4UI_USE_TERMINAL
126 ifdef G4UI_USE_TCSH
127 G4UI_USE = 1
128 CPPFLAGS += -DG4UI_USE_TCSH
129 endif
130 endif #G4UI_NONE
131
132 ifdef INC_GL
133 CPPFLAGS += $(OGLFLAGS)
134 endif
135 ifdef INC_XM
136 INC_X11 = 1
137 CPPFLAGS += $(XMFLAGS)
138 endif
139 ifdef INC_X11
140 CPPFLAGS += $(X11FLAGS)
141 endif
142
143
144 ######################## Full Geant4 VIS, UI ##################################
145 #
146 # Full Geant4 UI, VIS, interactivity setting.
147 # It enables to use all Geant4 graphics drivers and UIs,
148 # however not all these options were tested with Geant4 VMC
149 # and even though a correct behaviour is expected,
150 # it is not guaranteed.
151 #
152 #include $(G4INSTALL)/config/G4UI_USE.gmk
153 #include $(G4INSTALL)/config/G4VIS_USE.gmk
154 #include $(G4INSTALL)/config/interactivity.gmk
155
156 CXXFLAGS += $(CPPFLAGS)
157
158 DEPINC += -I. -I$(ROOT_INCDIR) $(INCDIR)
159
160 ############################### Targets #######################################
161
162
163 SLIBRARY = $(LIBDIR)/lib$(PACKAGE).$(SL)
164 ALIBRARY = $(LIBDIR)/lib$(PACKAGE).a
165
166 default: depend $(SLIBRARY)
167 all: default includes
168
169
170 $(LIBDIR)/lib$(PACKAGE).$(SL): $(OBJS)
171 $(LIBDIR)/lib$(PACKAGE).a: $(OBJS)
172
173 DICT:= $(GDICT)
174
175 $(DICT): $(HDRS)
176
177 depend: $(SRCS)
178
179 TOCLEAN = $(BINDIR)
180 TOCLEANALL = $(BINDIR) $(LIBDIR)
181
182 MAKEDIST = ../config/makedist.sh lib
183 MAKEDISTSRC = ../config/makedist.sh
184
185 include $(ROOT_ETCDIR)/MakeMacros
186
187 ############################### Dependencies ##################################
188
189 -include $(BINDIR)/Make-depend

  ViewVC Help
Powered by ViewVC 1.1.23