1
- # $Id: binmake.gmk,v 1.117 2007/02/28 15:35:07 gcosmo Exp $
1
+ # $Id: binmake.gmk,v 1.126.2.2 2007/08/16 09:42:33 gcosmo Exp $
2
2
# ----------------------------------------------------------
3
3
# Script defining rules and paths for making binaries.
4
4
# First implementation: Gabriele Cosmo, 25/06/1998.
@@ -60,8 +60,8 @@ ifndef INCFLAGS
60
60
-I$(G4BASE)/particles/hadrons/ions/include \
61
61
-I$(G4BASE)/particles/hadrons/mesons/include \
62
62
-I$(G4BASE)/particles/shortlived/include \
63
- -I$(G4BASE)/physics_lists/lists/include \
64
- -I$(G4BASE)/physics_lists/builders/include \
63
+ -I$(G4BASE)/physics_lists/lists/include \
64
+ -I$(G4BASE)/physics_lists/builders/include \
65
65
-I$(G4BASE)/processes/management/include \
66
66
-I$(G4BASE)/processes/cuts/include \
67
67
-I$(G4BASE)/processes/scoring/include \
@@ -77,19 +77,19 @@ ifndef INCFLAGS
77
77
-I$(G4BASE)/processes/electromagnetic/highenergy/include \
78
78
-I$(G4BASE)/processes/electromagnetic/polarisation/include \
79
79
-I$(G4BASE)/processes/hadronic/cross_sections/include \
80
- -I$(G4BASE)/processes/hadronic/management/include \
81
- -I$(G4BASE)/processes/hadronic/models/abrasion/include \
80
+ -I$(G4BASE)/processes/hadronic/management/include \
81
+ -I$(G4BASE)/processes/hadronic/models/abrasion/include \
82
82
-I$(G4BASE)/processes/hadronic/models/binary_cascade/include \
83
- -I$(G4BASE)/processes/hadronic/models/cascade/cascade/include \
84
- -I$(G4BASE)/processes/hadronic/models/cascade/evaporation/include \
85
- -I$(G4BASE)/processes/hadronic/models/cascade/utils/include \
83
+ -I$(G4BASE)/processes/hadronic/models/cascade/cascade/include \
84
+ -I$(G4BASE)/processes/hadronic/models/cascade/evaporation/include \
85
+ -I$(G4BASE)/processes/hadronic/models/cascade/utils/include \
86
86
-I$(G4BASE)/processes/hadronic/models/chiral_inv_phase_space/body/include \
87
87
-I$(G4BASE)/processes/hadronic/models/chiral_inv_phase_space/interface/include \
88
88
-I$(G4BASE)/processes/hadronic/models/coherent_elastic/include \
89
- -I$(G4BASE)/processes/hadronic/models/de_excitation/ablation/include \
89
+ -I$(G4BASE)/processes/hadronic/models/de_excitation/ablation/include \
90
90
-I$(G4BASE)/processes/hadronic/models/de_excitation/evaporation/include \
91
91
-I$(G4BASE)/processes/hadronic/models/de_excitation/fermi_breakup/include \
92
- -I$(G4BASE)/processes/hadronic/models/de_excitation/fission/include \
92
+ -I$(G4BASE)/processes/hadronic/models/de_excitation/fission/include \
93
93
-I$(G4BASE)/processes/hadronic/models/de_excitation/gem_evaporation/include \
94
94
-I$(G4BASE)/processes/hadronic/models/de_excitation/handler/include \
95
95
-I$(G4BASE)/processes/hadronic/models/de_excitation/management/include \
@@ -211,11 +211,11 @@ ifdef GLOBALLIBS
211
211
ifeq ($(G4LIB_BUILD_LISTS),1)
212
212
LDLIBS2 += -lG4physicslists
213
213
endif
214
-
214
+
215
215
LDLIBS2 += -lG4run \
216
216
-lG4event \
217
217
-lG4tracking \
218
- -lG4parmodels \
218
+ -lG4parmodels \
219
219
-lG4processes \
220
220
-lG4digits_hits \
221
221
-lG4track \
@@ -231,19 +231,19 @@ else
231
231
ifeq ($(G4INCLUDE_EXEC),1)
232
232
LDLIBS2 = $(shell \
233
233
G4TMP=$(G4TMP); export G4TMP; \
234
- if [ \( -f $(G4LIB)/$(G4SYSTEM)/liblist \
235
- -a -f $(G4LIB)/$(G4SYSTEM)/libname.map \) ]; then \
236
- $(G4LIB)/$(G4SYSTEM)/liblist \
237
- -m $(G4LIB)/$(G4SYSTEM) \
238
- < $(G4LIB)/$(G4SYSTEM)/libname.map; fi)
234
+ if [ \( -f $(G4LIB)/$(G4SYSTEM)/liblist \
235
+ -a -f $(G4LIB)/$(G4SYSTEM)/libname.map \) ]; then \
236
+ $(G4LIB)/$(G4SYSTEM)/liblist \
237
+ -m $(G4LIB)/$(G4SYSTEM) \
238
+ < $(G4LIB)/$(G4SYSTEM)/libname.map; fi)
239
239
else
240
240
LDLIBS2 = $(shell \
241
241
G4TMP=$(G4TMP); export G4TMP; \
242
- if [ \( -f $(G4LIB)/$(G4SYSTEM)/liblist \
243
- -a -f $(G4LIB)/$(G4SYSTEM)/libname.map \) ]; then \
244
- $(G4LIB)/$(G4SYSTEM)/liblist \
245
- -d $(G4TMPDIR) \
246
- < $(G4LIB)/$(G4SYSTEM)/libname.map; fi)
242
+ if [ \( -f $(G4LIB)/$(G4SYSTEM)/liblist \
243
+ -a -f $(G4LIB)/$(G4SYSTEM)/libname.map \) ]; then \
244
+ $(G4LIB)/$(G4SYSTEM)/liblist \
245
+ -d $(G4TMPDIR) \
246
+ < $(G4LIB)/$(G4SYSTEM)/libname.map; fi)
247
247
# Warning: do not add to LDLIBS2 with += because this causes it to be
248
248
# expanded too soon. Hence extra libraries must have a different name...
249
249
# Extra libraries to resolve remaining circular dependencies...
@@ -282,6 +282,7 @@ LDLIBS_PREFINAL += $(LDLIBS4)
282
282
LDLIBS_KERNEL += $(LDLIBS4)
283
283
284
284
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
285
+ # Windows
285
286
WIN32TMP := $(patsubst -L%,$(LIB_PATH)%,$(LDFLAGS))
286
287
LDFLAGS = $(patsubst /,$(PATH_DEL),$(WIN32TMP))
287
288
WIN32TMP2 := $(patsubst -L%,$(LIB_PATH)%,$(LDLIBS_PREFINAL))
@@ -291,20 +292,23 @@ ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
291
292
ifdef G4LIB_USE_DLL
292
293
LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.a,$(WIN32TMP3)) $(patsubst -l%,lib%.lib,$(WIN32TMP4))
293
294
else
294
- LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.lib,$(WIN32TMP2))
295
+ LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.lib,$(WIN32TMP2))
295
296
endif
296
297
else
297
- LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.a,$(WIN32TMP2))
298
+ LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.a,$(WIN32TMP2))
298
299
endif
300
+ OUT := /Fe
299
301
else
302
+ # Unix
300
303
LDLIBS = $(TARGETLIB) $(LDLIBS_PREFINAL)
304
+ OUT := -o
301
305
endif
302
306
303
307
ifdef transform-RPath
304
308
# Invoke system specific transformation of
305
309
include $(G4INSTALL)/config/sys/$(G4SYSTEM)-runpath.gmk
306
310
endif
307
-
311
+
308
312
sources := $(wildcard $(G4TARGET).cc)
309
313
objects := $(patsubst %.cc,$(G4TMPDIR)/exe/%.$(TARGOBJEXT),$(sources))
310
314
dependencies := $(patsubst %.cc,$(G4TMPDIR)/exe/%.d,$(sources))
@@ -339,12 +343,12 @@ endif
339
343
@if [ ! -d $(G4BINDIR) ] ; then mkdir $(G4BINDIR) ;fi
340
344
ifdef CPPVERBOSE
341
345
$(CXX) $(CXXFLAGS) $(CPPFLAGS) \
342
- -o $(G4BINDIR)/$(G4TARGET) $(objects) $(LDFLAGS) \
346
+ $(OUT) $(G4BINDIR)/$(G4TARGET) $(objects) $(LDFLAGS) \
343
347
$(LDLIBS)
344
348
else
345
349
@echo Linking $(G4TARGET) ...
346
350
@$(CXX) $(CXXFLAGS) $(CPPFLAGS) \
347
- -o $(G4BINDIR)/$(G4TARGET) $(objects) $(LDFLAGS) \
351
+ $(OUT) $(G4BINDIR)/$(G4TARGET) $(objects) $(LDFLAGS) \
348
352
$(LDLIBS)
349
353
@if [ \( -f $(G4BINDIR)/$(G4TARGET) \) ]; then \
350
354
echo "... Done!"; fi
0 commit comments