Skip to content

Commit e083ffb

Browse files
committed
Import Geant4 6.2.0 source tree
1 parent 1d812b7 commit e083ffb

File tree

1,415 files changed

+109825
-19809
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,415 files changed

+109825
-19809
lines changed

Configure

+294-155
Large diffs are not rendered by default.

ReleaseNotes/ReleaseNotes4.6.2.html

+903
Large diffs are not rendered by default.

config/History

+69-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
$Id: History,v 1.238 2004/02/24 09:49:45 gcosmo Exp $
2-
$Name: geant4-06-01 $
1+
$Id: History,v 1.254 2004/06/23 10:56:23 gcosmo Exp $
2+
$Name: geant4-06-02 $
33
-------------------------------------------------------------------
44

55
=========================================================
@@ -17,6 +17,73 @@ committal in the CVS repository !
1717
* Reverse chronological order (last date on top), please *
1818
----------------------------------------------------------
1919

20+
23rd June 2004 Gabriele Cosmo (config-V06-01-10)
21+
- Updated win32def.c program to fix retrivial of public static data for
22+
building DLLs on Windows (G.Barrand).
23+
- Updated Configure scripts.
24+
25+
17th June 2004 Gabriele Cosmo (config-V06-01-09)
26+
- Darwin-g++.gmk: use twolevel_namespace and GLOBLIBS for shared-libs
27+
build on MacOS. Shared-libs build are possible only global libraries
28+
and requires shared-lib version of CLHEP build with compatible options
29+
(G.Barrand).
30+
31+
14th June 2004 Gabriele Cosmo (config-V06-01-08)
32+
- architecture.gmk: added specification for G4LIB_USE_DLL.
33+
34+
11th June 2004 Gabriele Cosmo (config-V06-01-07)
35+
- binmake.gmk: activated shared-libs mechanism for Windows platforms;
36+
forced creation of static library for examples/applications for the
37+
usage with DLLs.
38+
39+
8th June 2004 Gabriele Cosmo (config-V06-01-06)
40+
- binmake.gmk: restored global lib for interfaces which was missing
41+
from linking list.
42+
- common.gmk, globlib.gmk: fixed clean/clean_libs target.
43+
- architecture.gmk: added definition of G4LIB_BUILD_DLL flag.
44+
- WIN32-VC.gmk: added targets for DLLs build.
45+
- Linux-g++.gmk: made -O2 the default optimisation mode.
46+
Archived temporary setup Linux-gO2 introduced in "config-V06-01-01".
47+
48+
7th June 2004 Gabriele Cosmo (config-V06-01-05)
49+
- Corrected setup for WIN32-VC7 for building of DLLs.
50+
- Cosmetics in build printout...
51+
52+
1st June 2004 Gabriele Cosmo (config-V06-01-04)
53+
- binmake.gmk, added include paths to new hadronic models for
54+
abrasion, em_dissociation, de_excitation/ablation and
55+
de_excitation/fission.
56+
- architecture.gmk: updated comments to header.
57+
58+
26th May 2004 Mark Donszelmann (config-V06-01-03)
59+
- Fixed small problem in previous fix.
60+
61+
26th May 2004 Gunter Folger (config-V06-01-02)
62+
- binmake.gmk: fixed problem for WIN32 such that also LDLIBS (including
63+
EXTRALIBS) will be mangled to replace -L by its WIN32 correspondance
64+
libpath.
65+
66+
11th May 2004 Gabriele Cosmo (config-V06-01-01)
67+
- Added new experimental setup for Linux-g++ using -O2 optimisation
68+
as default. To trigger this setup G4SYSTEM must be set to "Linux-gO2".
69+
It also includes (deactivated by default) Pentium4 chip specific options
70+
for using chips-specific floating-point arithmetics based on the SSE unit.
71+
72+
8th April 2004 Guy Barrand
73+
- architecture.gmk: revisited Inventor default. Removed HEPVis dependencies
74+
(Inventor visualization driver does not need these libraries any longer).
75+
76+
7th April 2004 Guy Barrand
77+
- Darwin-g++.gmk:
78+
o Corrected options to build shared libraries (.dyn); use
79+
"-dynamic -single_module" to have faster startup when Geant4 is
80+
embedded in an external framework.
81+
o Corrected options to retrieve Motif.
82+
83+
5th April 2004 Gabriele Cosmo (config-V06-01-00)
84+
- architecture.gmk: added check for definition of LDFLAGS.
85+
Fixes bug report #603.
86+
2087
24th February 2004 Gabriele Cosmo (config-V06-00-03)
2188
- Fixed link rpath definition in Linux-icc.gmk.
2289

config/architecture.gmk

+29-16
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: architecture.gmk,v 1.91 2004/02/09 15:22:49 gunter Exp $
1+
# $Id: architecture.gmk,v 1.99 2004/06/14 10:42:12 gcosmo Exp $
22
# ------------------------------------------------------------------------
33
# GEANT 4 - Architecture configuration script for GNU Make
44
#
@@ -13,11 +13,11 @@
1313
# List of the supported architectures/compilers and related flavors for
1414
# the environment variable G4SYSTEM:
1515
#
16-
# Linux-g++ Linux (Red Hat 7.3), gcc-2.95.2 or gcc-3.2 (default)
16+
# Linux-g++ Linux (Red Hat 7.3), gcc-3.2.3 (default)
1717
#
1818
# SUN-CC SunOS 5.8, CC 5.4
1919
#
20-
# WIN32-VC Windows/2000/XP and Microsoft Visual C++ 6.0 - SP5
20+
# WIN32-VC7 Windows/2000/XP and Microsoft Visual C++ 7.1 .NET
2121
# Adding CYGWIN32 tools
2222
# -------------------------------------------------------------------------
2323

@@ -84,6 +84,18 @@ ifeq ($(G4LIB_BUILD_SHARED),)
8484
endif
8585
endif
8686

87+
# Specify if to build the DLL libraries on Windows. Default is NO.
88+
#
89+
ifneq ($(G4LIB_USE_DLL),)
90+
G4LIB_BUILD_DLL = 1
91+
CPPFLAGS += -DG4LIB_BUILD_DLL
92+
endif
93+
ifneq ($(G4LIB_BUILD_DLL),)
94+
G4LIB_BUILD_DLL = 1
95+
CPPFLAGS += -DG4LIB_BUILD_DLL
96+
G4LIB_USE_DLL = 1
97+
endif
98+
8799
# Specify if to build the G3TOG4 module or not. Default is NO.
88100
#
89101
ifneq ($(G4LIB_BUILD_G3TOG4),)
@@ -115,7 +127,7 @@ endif
115127
# CLHEP path, etc.
116128
#
117129
ifndef CLHEP_BASE_DIR
118-
CLHEP_BASE_DIR := /afs/cern.ch/sw/geant4/dev/CLHEP/$(G4SYSTEM)/pro
130+
CLHEP_BASE_DIR := $(shell ls CLHEP_BASE_DIR--UNDEFINED)
119131
endif
120132
ifndef CLHEP_INCLUDE_DIR
121133
CLHEP_INCLUDE_DIR := $(CLHEP_BASE_DIR)/include
@@ -151,7 +163,7 @@ ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
151163
OUT_LIB := '-out:'
152164
OUT_EXE := '-Fe'
153165
LIB_PATH := '-libpath:'
154-
CERNLIB_PATH := "z:\p32\cern\new\df\lib"
166+
CERNLIB_PATH := "c:\cern\pro\lib"
155167
PATH_DEL := \\
156168
#
157169
# pattern for next substitution
@@ -180,11 +192,14 @@ CPPFLAGS += -I$(CLHEP_INCLUDE_DIR)
180192

181193
# Positional qualifiers in action...
182194
#
195+
ifndef LDFLAGS
196+
LDFLAGS :=
197+
endif
183198
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
184-
LDFLAGS := -link $(LIB_PATH)$(CLHEP_LIB_DIR)
199+
LDFLAGS += -link $(LIB_PATH)$(CLHEP_LIB_DIR)
185200
LOADLIBS := $(CLHEP_LIB)
186201
else
187-
LDFLAGS := -L$(CLHEP_LIB_DIR)
202+
LDFLAGS += -L$(CLHEP_LIB_DIR)
188203
LOADLIBS := -l$(CLHEP_LIB)
189204
LOADLIBS += -lm
190205
endif
@@ -220,21 +235,19 @@ XAWLIBS := -lXaw
220235
# are set below. Most system-dependent code assumes OGLHOME is set.
221236
#
222237
# ------------- OpenInventor -----------------
223-
# The path to the installation of HEPVis and OpenInventor must be specified
224-
# in HEPVISDIR -only- if the packages are installed in a location different
238+
# The path to the installation of OpenInventor must be specified
239+
# if the package is installed in a location different
225240
# than default system directories (like... /usr or /usr/local).
226241
#
227-
ifndef HEPVISINC
228-
HEPVISINC := $(HEPVISDIR)/include
229-
endif
230-
ifndef HEPVISLIB
231-
HEPVISLIB := $(HEPVISDIR)/lib
242+
243+
ifndef OIVHOME
244+
OIVHOME := /usr/local/Inventor
232245
endif
233246
ifndef OIVFLAGS
234-
OIVFLAGS := -I${HEPVISINC}
247+
OIVFLAGS := -I$(OIVHOME)/include
235248
endif
236249
ifndef OIVLIBS
237-
OIVLIBS := -L${HEPVISLIB} -lHEPVis -lHEPVisXt -lInventor -lInventorXt
250+
OIVLIBS := -L$(OIVHOME)/lib -lInventorXt -lInventor
238251
endif
239252

240253
# For cfront compilers the repository location is set to

config/binmake.gmk

+54-29
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: binmake.gmk,v 1.94 2003/11/18 11:28:10 hpw Exp $
1+
# $Id: binmake.gmk,v 1.102 2004/06/11 14:07:47 gcosmo Exp $
22
# ----------------------------------------------------------
33
# Script defining rules and paths for making binaries.
44
# First implementation: Gabriele Cosmo, 25/06/1998.
@@ -20,6 +20,9 @@ include $(G4INSTALL)/config/G4VIS_USE.gmk
2020
include $(G4INSTALL)/config/interactivity.gmk
2121
include $(G4INSTALL)/config/analysis.gmk
2222

23+
# Verify the existance of the global static libraries first.
24+
# if not verify the existance of global shared libraries (Unix only).
25+
#
2326
ifndef G4LIB_USE_GRANULAR
2427
GLOBALLIBS := $(shell test -f $(G4LIB)/$(G4SYSTEM)/libG4global.a && echo yes)
2528
ifndef GLOBALLIBS
@@ -28,10 +31,15 @@ ifndef G4LIB_USE_GRANULAR
2831
endif
2932
endif
3033

34+
# Verify the existance of granular shared libraries (Unix) or global DLLs (Windows)
35+
#
3136
ifndef SHAREDLIBS
3237
SHAREDLIBS := $(shell test -f $(G4LIB)/$(G4SYSTEM)/libG4globman.$(SHEXT) && echo yes)
3338
endif
34-
39+
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
40+
SHAREDLIBS := $(shell test -f $(G4LIB)/$(G4SYSTEM)/G4global.$(SHEXT) && echo yes)
41+
endif
42+
3543
ifndef INCFLAGS
3644
ifeq ($(G4INCLUDE_EXEC),1)
3745
INCFLAGS := -I$(G4INCLUDE)
@@ -64,44 +72,47 @@ ifndef INCFLAGS
6472
-I$(G4BASE)/processes/electromagnetic/lowenergy/include \
6573
-I$(G4BASE)/processes/hadronic/cross_sections/include \
6674
-I$(G4BASE)/processes/hadronic/management/include \
75+
-I$(G4BASE)/processes/hadronic/models/abrasion/include \
76+
-I$(G4BASE)/processes/hadronic/models/binary_cascade/include \
6777
-I$(G4BASE)/processes/hadronic/models/cascade/cascade/include \
6878
-I$(G4BASE)/processes/hadronic/models/cascade/evaporation/include \
6979
-I$(G4BASE)/processes/hadronic/models/cascade/utils/include \
7080
-I$(G4BASE)/processes/hadronic/models/chiral_inv_phase_space/body/include \
7181
-I$(G4BASE)/processes/hadronic/models/chiral_inv_phase_space/interface/include \
7282
-I$(G4BASE)/processes/hadronic/models/coherent_elastic/include \
73-
-I$(G4BASE)/processes/hadronic/models/high_energy/include \
74-
-I$(G4BASE)/processes/hadronic/models/isotope_production/include \
75-
-I$(G4BASE)/processes/hadronic/models/leading_particle/include \
76-
-I$(G4BASE)/processes/hadronic/models/low_energy/include \
77-
-I$(G4BASE)/processes/hadronic/models/neutron_hp/include \
78-
-I$(G4BASE)/processes/hadronic/models/binary_cascade/include \
83+
-I$(G4BASE)/processes/hadronic/models/de_excitation/ablation/include \
7984
-I$(G4BASE)/processes/hadronic/models/de_excitation/evaporation/include \
8085
-I$(G4BASE)/processes/hadronic/models/de_excitation/fermi_breakup/include \
81-
-I$(G4BASE)/processes/hadronic/models/de_excitation/fission/include \
86+
-I$(G4BASE)/processes/hadronic/models/de_excitation/fission/include \
8287
-I$(G4BASE)/processes/hadronic/models/de_excitation/gem_evaporation/include \
8388
-I$(G4BASE)/processes/hadronic/models/de_excitation/handler/include \
8489
-I$(G4BASE)/processes/hadronic/models/de_excitation/management/include \
8590
-I$(G4BASE)/processes/hadronic/models/de_excitation/multifragmentation/include \
8691
-I$(G4BASE)/processes/hadronic/models/de_excitation/photon_evaporation/include \
8792
-I$(G4BASE)/processes/hadronic/models/de_excitation/util/include \
93+
-I$(G4BASE)/processes/hadronic/models/em_dissociation/include \
94+
-I$(G4BASE)/processes/hadronic/models/general_finalstate/include \
95+
-I$(G4BASE)/processes/hadronic/models/high_energy/include \
96+
-I$(G4BASE)/processes/hadronic/models/im_r_matrix/include \
8897
-I$(G4BASE)/processes/hadronic/models/inucl/include \
98+
-I$(G4BASE)/processes/hadronic/models/isotope_production/include \
99+
-I$(G4BASE)/processes/hadronic/models/leading_particle/include \
100+
-I$(G4BASE)/processes/hadronic/models/low_energy/include \
101+
-I$(G4BASE)/processes/hadronic/models/management/include \
102+
-I$(G4BASE)/processes/hadronic/models/neutron_hp/include \
103+
-I$(G4BASE)/processes/hadronic/models/parton_string/diffraction/include \
104+
-I$(G4BASE)/processes/hadronic/models/parton_string/hadronization/include \
105+
-I$(G4BASE)/processes/hadronic/models/parton_string/management/include \
106+
-I$(G4BASE)/processes/hadronic/models/parton_string/qgsm/include \
89107
-I$(G4BASE)/processes/hadronic/models/photolepton_hadron/muon_nuclear/include \
90108
-I$(G4BASE)/processes/hadronic/models/pre_equilibrium/exciton_model/include \
91109
-I$(G4BASE)/processes/hadronic/models/quark_molecular_dynamics/body/include \
92110
-I$(G4BASE)/processes/hadronic/models/quark_molecular_dynamics/util/include \
111+
-I$(G4BASE)/processes/hadronic/models/radioactive_decay/include \
93112
-I$(G4BASE)/processes/hadronic/models/relativistic_qmd/include \
94113
-I$(G4BASE)/processes/hadronic/models/relativistic_qmd/uplusplus/include \
95-
-I$(G4BASE)/processes/hadronic/models/im_r_matrix/include \
96-
-I$(G4BASE)/processes/hadronic/models/management/include \
97-
-I$(G4BASE)/processes/hadronic/models/parton_string/diffraction/include \
98-
-I$(G4BASE)/processes/hadronic/models/parton_string/hadronization/include \
99-
-I$(G4BASE)/processes/hadronic/models/parton_string/management/include \
100-
-I$(G4BASE)/processes/hadronic/models/parton_string/qgsm/include \
101114
-I$(G4BASE)/processes/hadronic/models/theo_high_energy/include \
102115
-I$(G4BASE)/processes/hadronic/models/util/include \
103-
-I$(G4BASE)/processes/hadronic/models/general_finalstate/include \
104-
-I$(G4BASE)/processes/hadronic/models/radioactive_decay/include \
105116
-I$(G4BASE)/processes/hadronic/processes/include \
106117
-I$(G4BASE)/processes/hadronic/stopping/include \
107118
-I$(G4BASE)/processes/hadronic/util/include \
@@ -160,23 +171,32 @@ endif
160171
#
161172
ifndef USER_DEFINED_LDLIBS
162173

163-
# LDLIBS1 contains the very high level libraries...
174+
# TARGETLIB is the library generated for the final user application...
164175
#
165176
ifdef G4EXLIB
166-
LDLIBS1 := -l$(G4TARGET)
177+
ifeq (,$(findstring WIN32-VC,$(G4SYSTEM)))
178+
# Unix
179+
TARGETLIB := -l$(G4TARGET)
180+
else
181+
# Windows
182+
TARGETLIB := lib$(G4TARGET).a
183+
endif
167184
endif
168-
LDLIBS1 += $(EXTRALIBS)
169185

170-
# VISLIBS and UILIBS are now handled by the granular library script...
186+
# LDLIBS1 contains the very high level libraries...
187+
#
188+
LDLIBS1 := $(EXTRALIBS)
189+
190+
# VISLIBS (and UILIBS?) is handled by the granular library script...
171191
#
172192
ifdef GLOBALLIBS
173-
LDLIBS1 += $(VISLIBS) $(UILIBS) -lG4persistency
193+
LDLIBS2 := $(VISLIBS) -lG4interfaces -lG4persistency
174194

175195
ifdef G4USE_G3TOG4
176-
LDLIBS1 += -lG3toG4
196+
LDLIBS2 += -lG3toG4
177197
endif
178198

179-
LDLIBS2 := -lG4readout \
199+
LDLIBS2 += -lG4readout \
180200
-lG4run \
181201
-lG4event \
182202
-lG4tracking \
@@ -241,13 +261,18 @@ LDLIBS_PREFINAL += $(LDLIBS4)
241261
ifneq (,$(findstring WIN32-VC,$(G4SYSTEM)))
242262
WIN32TMP := $(patsubst -L%,$(LIB_PATH)%,$(LDFLAGS))
243263
LDFLAGS = $(patsubst /,$(PATH_DEL),$(WIN32TMP))
244-
LDLIBS = $(patsubst -l%,lib%.a,$(LDLIBS_PREFINAL))
264+
WIN32TMP2 := $(patsubst -L%,$(LIB_PATH)%,$(LDLIBS_PREFINAL))
265+
ifdef SHAREDLIBS
266+
LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.lib,$(WIN32TMP2))
267+
else
268+
LDLIBS = $(TARGETLIB) $(patsubst -l%,lib%.a,$(WIN32TMP2))
269+
endif
245270
else
246-
LDLIBS = $(LDLIBS_PREFINAL)
271+
LDLIBS = $(TARGETLIB) $(LDLIBS_PREFINAL)
247272
endif
248273

249274
ifdef transform-RPath
250-
#invoke system specific transformation of
275+
# Invoke system specific transformation of
251276
include $(G4INSTALL)/config/sys/$(G4SYSTEM)-runpath.gmk
252277
endif
253278

@@ -279,7 +304,7 @@ ifndef USER_DEFINED_LDLIBS
279304
echo " gmake libmap"; \
280305
exit 1; fi
281306
else
282-
@echo "Using global libraries."
307+
@echo "Using global libraries ..."
283308
endif
284309
endif
285310
@if [ ! -d $(G4BINDIR) ] ; then mkdir $(G4BINDIR) ;fi
@@ -339,7 +364,7 @@ $(G4TMPDIR)/exe/$(G4TARGET).d: $(G4TARGET).cc
339364
@if [ ! -d $(G4TMP)/$(G4SYSTEM) ] ; then mkdir $(G4TMP)/$(G4SYSTEM) ;fi
340365
@if [ ! -d $(G4TMPDIR) ] ; then mkdir $(G4TMPDIR) ;fi
341366
@if [ ! -d $(G4TMPDIR)/exe ] ; then mkdir $(G4TMPDIR)/exe ;fi
342-
@echo Making dependency for file $<...
367+
@echo Making dependency for file $< ...
343368
@set -e;\
344369
g++ $(GPPFLAGS) $(CPPFLAGS) -w $< |\
345370
sed 's!$(G4TARGET)\.o!$(G4TMPDIR)/exe/& $@!' >$@;\

0 commit comments

Comments
 (0)