1 |
elmer |
1.92 |
### RPM external geant4 9.3
|
2 |
eulisse |
1.11 |
%define downloadv %(echo %v | cut -d- -f1)
|
3 |
dlange |
1.74 |
|
4 |
eulisse |
1.1 |
Requires: clhep
|
5 |
ratnik |
1.69 |
|
6 |
eulisse |
1.2 |
%define photonEvaporationVersion 2.0
|
7 |
dlange |
1.84 |
%define g4NDLVersion 3.13
|
8 |
dlange |
1.48 |
%define g4ElasticScatteringVersion 1.1
|
9 |
dlange |
1.84 |
%define g4EMLOWVersion 6.2
|
10 |
ratnik |
1.69 |
%define radioactiveDecayVersion 3.2
|
11 |
|
|
|
12 |
dlange |
1.63 |
Source0: http://geant4.cern.ch/support/source/%n.%downloadv.tar.gz
|
13 |
eulisse |
1.2 |
Source1: http://geant4.cern.ch/support/source/G4NDL.%{g4NDLVersion}.tar.gz
|
14 |
|
|
Source2: http://geant4.cern.ch/support/source/G4EMLOW.%{g4EMLOWVersion}.tar.gz
|
15 |
|
|
Source3: http://geant4.cern.ch/support/source/PhotonEvaporation.%{photonEvaporationVersion}.tar.gz
|
16 |
ratnik |
1.69 |
Source4: http://geant4.cern.ch/support/source/G4RadioactiveDecay.%{radioactiveDecayVersion}.tar.gz
|
17 |
dlange |
1.48 |
Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
|
18 |
dlange |
1.50 |
|
19 |
elmer |
1.85 |
Patch: geant-4.8.2.p01-nobanner
|
20 |
elmer |
1.41 |
|
21 |
eulisse |
1.1 |
%prep
|
22 |
dlange |
1.63 |
%setup -n %n.%downloadv
|
23 |
eulisse |
1.21 |
pwd
|
24 |
dlange |
1.71 |
%patch0 -p1
|
25 |
dlange |
1.78 |
|
26 |
eulisse |
1.1 |
%build
|
27 |
elmer |
1.40 |
if [ $(uname) = Darwin ]; then
|
28 |
|
|
export MACOSX_DEPLOYMENT_TARGET="10.4"
|
29 |
|
|
fi
|
30 |
eulisse |
1.1 |
# Linux? -pthread?
|
31 |
eulisse |
1.2 |
touch G4BuildConf.sh
|
32 |
sashby |
1.16 |
echo "export OS_ARCH=%{cmsplatf}" >> G4BuildConf.sh
|
33 |
eulisse |
1.2 |
#FIXME: is this correct???
|
34 |
|
|
echo "export G4SYSTEM=$(uname)-g++" >> G4BuildConf.sh
|
35 |
|
|
echo "export G4INSTALL=%i" >> G4BuildConf.sh
|
36 |
|
|
echo "export G4BASE=$PWD/source" >> G4BuildConf.sh
|
37 |
|
|
echo "export G4WORKDIR=$PWD" >> G4BuildConf.sh
|
38 |
|
|
echo "export G4TMP=$PWD/tmp" >> G4BuildConf.sh
|
39 |
|
|
echo "export G4LIB=%i/lib" >> G4BuildConf.sh
|
40 |
|
|
echo "export G4LIB_BUILD_SHARED=1" >> G4BuildConf.sh
|
41 |
dlange |
1.48 |
echo "unset G4DEBUG" >> G4BuildConf.sh
|
42 |
elmer |
1.93 |
echo "export G4_NO_VERBOSE=1" >> G4BuildConf.sh
|
43 |
ratnik |
1.69 |
echo "export CPPVERBOSE=yes" >> G4BuildConf.sh
|
44 |
eulisse |
1.2 |
|
45 |
|
|
echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
|
46 |
ratnik |
1.69 |
echo "export G4RADIOACTIVEDATA=%i/data/RadioactiveDecay%{radioactiveDecayVersion}" >> G4BuildConf.sh
|
47 |
eulisse |
1.2 |
echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
|
48 |
elmer |
1.68 |
# G4ELASTIC is not needed from 8.2 onward
|
49 |
|
|
#echo "export G4ELASTIC=%i/data/G4ELASTIC%{g4ElasticScatteringVersion}" >> G4BuildConf.sh
|
50 |
|
|
|
51 |
|
|
# From Gabriele Cosmo: The variable name 'NeutronHPCrossSections' is replaced by
|
52 |
|
|
# 'G4NEUTRONHPDATA' starting from version 9.0.
|
53 |
ratnik |
1.69 |
#echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
|
54 |
|
|
echo "export G4NEUTRONHPDATA=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
|
55 |
|
|
|
56 |
eulisse |
1.1 |
|
57 |
|
|
# export G4LIB_BUILD_STATIC=1
|
58 |
|
|
# FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
|
59 |
|
|
# FIXME: override CERNLIB_PATH?
|
60 |
|
|
|
61 |
eulisse |
1.2 |
echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
|
62 |
eulisse |
1.1 |
|
63 |
eulisse |
1.2 |
echo "export G4USE_STL=1" >> G4BuildConf.sh
|
64 |
eulisse |
1.1 |
# export G4USE_G3TOG4=1
|
65 |
|
|
|
66 |
elmer |
1.68 |
# G4UI_BUILD_TERMINAL_SESSION is the default:
|
67 |
eulisse |
1.2 |
echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
|
68 |
eulisse |
1.1 |
# export G4UI_BUILD_GAG_SESSION=1
|
69 |
|
|
# export G4UI_BUILD_XAW_SESSION=1
|
70 |
|
|
# export G4UI_BUILD_XM_SESSION=1
|
71 |
|
|
# export G4UI_BUILD_WO_SESSION=1
|
72 |
|
|
|
73 |
eulisse |
1.20 |
# FIXME: this will not work on osx!
|
74 |
eulisse |
1.2 |
echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
|
75 |
eulisse |
1.1 |
# export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
|
76 |
|
|
# export OGLFLAGS="-I$OGLHOME/include"
|
77 |
|
|
|
78 |
elmer |
1.68 |
# G4VIS_BUILD_DAWNFILE_DRIVER is the default
|
79 |
eulisse |
1.2 |
echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
|
80 |
eulisse |
1.1 |
# export G4VIS_BUILD_DAWN_DRIVER=1
|
81 |
|
|
# export G4VIS_BUILD_OPENGLX_DRIVER=1
|
82 |
|
|
# export G4VIS_BUILD_OPENGLXM_DRIVER=1
|
83 |
eulisse |
1.21 |
# echo "export G4VIS_BUILD_VRMLFILE_DRIVER=1" >> G4BuildConf.sh
|
84 |
|
|
# echo "export G4VIS_BUILD_VRML_DRIVER=1" >> G4BuildConf.sh
|
85 |
|
|
# echo "export G4VIS_BUILD_RAYTRACER_DRIVER=1" >> G4BuildConf.sh
|
86 |
eulisse |
1.2 |
# export G4LIB_BUILD_G3TOG4=1
|
87 |
|
|
source G4BuildConf.sh
|
88 |
eulisse |
1.1 |
mkdir -p %i
|
89 |
|
|
tar -cf - config source | tar -C %i -xf -
|
90 |
eulisse |
1.26 |
|
91 |
elmer |
1.87 |
make -C $G4BASE global
|
92 |
|
|
make -C $G4BASE includes
|
93 |
eulisse |
1.1 |
|
94 |
|
|
%install
|
95 |
elmer |
1.40 |
case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
|
96 |
eulisse |
1.2 |
mkdir -p %i/etc
|
97 |
|
|
cp G4BuildConf.sh %i/etc
|
98 |
elmer |
1.40 |
mv %i/lib/$(uname)-g++/*.$so %i/lib
|
99 |
elmer |
1.68 |
# The following file does not appear to exist after this spec file was
|
100 |
|
|
# switched # to use the subsystem libraries instead of the individual ones,
|
101 |
|
|
# so comment # it for now
|
102 |
|
|
#mv %i/lib/$(uname)-g++/libname.map %i/lib
|
103 |
sashby |
1.17 |
rm -rf %i/lib/$(uname)-g++
|
104 |
eulisse |
1.1 |
# Build already installed into prefix
|
105 |
|
|
mkdir -p %i/data
|
106 |
|
|
tar -C %i/data -zxvf %_sourcedir/G4NDL*.tar.gz
|
107 |
|
|
tar -C %i/data -zxvf %_sourcedir/G4EMLOW*.tar.gz
|
108 |
|
|
tar -C %i/data -zxvf %_sourcedir/Photon*.tar.gz
|
109 |
ratnik |
1.69 |
tar -C %i/data -zxvf %_sourcedir/G4Rad*.tar.gz
|
110 |
elmer |
1.88 |
# Clean up the sources, which are not needed in the rpm
|
111 |
|
|
rm -rf %i/source
|
112 |
muzaffar |
1.49 |
|
113 |
|
|
# SCRAM ToolBox toolfile
|
114 |
|
|
mkdir -p %i/etc/scram.d
|
115 |
muzaffar |
1.91 |
cat << \EOF_TOOLFILE >%i/etc/scram.d/%n.xml
|
116 |
|
|
<tool name="GEANT4" version="%v">
|
117 |
|
|
<info url="http://wwwinfo.cern.ch/asd/geant4/geant4.html"/>
|
118 |
|
|
<lib name="G4digits_hits"/>
|
119 |
|
|
<lib name="G4error_propagation"/>
|
120 |
|
|
<lib name="G4event"/>
|
121 |
|
|
<lib name="G4FR"/>
|
122 |
|
|
<lib name="G4geometry"/>
|
123 |
|
|
<lib name="G4global"/>
|
124 |
|
|
<lib name="G4graphics_reps"/>
|
125 |
|
|
<lib name="G4intercoms"/>
|
126 |
|
|
<lib name="G4interfaces"/>
|
127 |
|
|
<lib name="G4materials"/>
|
128 |
|
|
<lib name="G4modeling"/>
|
129 |
|
|
<lib name="G4parmodels"/>
|
130 |
|
|
<lib name="G4particles"/>
|
131 |
|
|
<lib name="G4persistency"/>
|
132 |
|
|
<lib name="G4physicslists"/>
|
133 |
|
|
<lib name="G4processes"/>
|
134 |
|
|
<lib name="G4RayTracer"/>
|
135 |
|
|
<lib name="G4readout"/>
|
136 |
|
|
<lib name="G4run"/>
|
137 |
|
|
<lib name="G4tracking"/>
|
138 |
|
|
<lib name="G4track"/>
|
139 |
|
|
<lib name="G4Tree"/>
|
140 |
|
|
<lib name="G4visHepRep"/>
|
141 |
|
|
<lib name="G4vis_management"/>
|
142 |
|
|
<lib name="G4visXXX"/>
|
143 |
|
|
<lib name="G4VRML"/>
|
144 |
|
|
<client>
|
145 |
|
|
<environment name="GEANT4_BASE" default="%i"/>
|
146 |
|
|
<environment name="LIBDIR" default="$GEANT4_BASE/lib"/>
|
147 |
|
|
<environment name="G4LIB" value="$LIBDIR"/>
|
148 |
|
|
<environment name="INCLUDE" default="$GEANT4_BASE/include"/>
|
149 |
|
|
</client>
|
150 |
|
|
<flags cppdefines="G4USE_STD_NAMESPACE GNU_GCC G4V9"/>
|
151 |
|
|
<runtime name="G4LEVELGAMMADATA" value="$GEANT4_BASE/data/PhotonEvaporation2.0" type="path"/>
|
152 |
|
|
<runtime name="G4NEUTRONHPDATA" value="$GEANT4_BASE/data/G4NDL3.13" type="path"/>
|
153 |
|
|
<runtime name="G4RADIOACTIVEDATA" value="$GEANT4_BASE/data/RadioactiveDecay3.2" type="path"/>
|
154 |
|
|
<runtime name="G4LEDATA" value="$GEANT4_BASE/data/G4EMLOW6.2" type="path"/>
|
155 |
|
|
<use name="clhep"/>
|
156 |
|
|
</tool>
|
157 |
|
|
|
158 |
muzaffar |
1.49 |
EOF_TOOLFILE
|
159 |
|
|
|
160 |
muzaffar |
1.91 |
cat << \EOF_TOOLFILE >%i/etc/scram.d/geant4core.xml
|
161 |
|
|
<tool name="geant4core" version="%v">
|
162 |
|
|
<info url="http://wwwinfo.cern.ch/asd/geant4/geant4.html"/>
|
163 |
|
|
<lib name="G4digits_hits"/>
|
164 |
|
|
<lib name="G4error_propagation"/>
|
165 |
|
|
<lib name="G4event"/>
|
166 |
|
|
<lib name="G4geometry"/>
|
167 |
|
|
<lib name="G4global"/>
|
168 |
|
|
<lib name="G4graphics_reps"/>
|
169 |
|
|
<lib name="G4intercoms"/>
|
170 |
|
|
<lib name="G4interfaces"/>
|
171 |
|
|
<lib name="G4materials"/>
|
172 |
|
|
<lib name="G4parmodels"/>
|
173 |
|
|
<lib name="G4particles"/>
|
174 |
|
|
<lib name="G4persistency"/>
|
175 |
|
|
<lib name="G4physicslists"/>
|
176 |
|
|
<lib name="G4processes"/>
|
177 |
|
|
<lib name="G4readout"/>
|
178 |
|
|
<lib name="G4run"/>
|
179 |
|
|
<lib name="G4tracking"/>
|
180 |
|
|
<lib name="G4track"/>
|
181 |
|
|
<client>
|
182 |
|
|
<environment name="GEANT4_BASE" default="%i"/>
|
183 |
|
|
<environment name="LIBDIR" default="$GEANT4_BASE/lib"/>
|
184 |
|
|
<environment name="G4LIB" value="$LIBDIR"/>
|
185 |
|
|
<environment name="INCLUDE" default="$GEANT4_BASE/include"/>
|
186 |
|
|
</client>
|
187 |
|
|
<flags cppdefines="G4USE_STD_NAMESPACE GNU_GCC G4V9"/>
|
188 |
|
|
<runtime name="G4LEVELGAMMADATA" value="$GEANT4_BASE/data/PhotonEvaporation2.0" type="path"/>
|
189 |
|
|
<runtime name="G4NEUTRONHPDATA" value="$GEANT4_BASE/data/G4NDL3.13" type="path"/>
|
190 |
|
|
<runtime name="G4RADIOACTIVEDATA" value="$GEANT4_BASE/data/RadioactiveDecay3.2" type="path"/>
|
191 |
|
|
<runtime name="G4LEDATA" value="$GEANT4_BASE/data/G4EMLOW6.2" type="path"/>
|
192 |
|
|
<use name="clhep"/>
|
193 |
|
|
</tool>
|
194 |
elmer |
1.81 |
EOF_TOOLFILE
|
195 |
|
|
|
196 |
muzaffar |
1.91 |
cat << \EOF_TOOLFILE >%i/etc/scram.d/geant4vis.xml
|
197 |
|
|
<tool name="geant4vis" version="%v">
|
198 |
|
|
<info url="http://wwwinfo.cern.ch/asd/geant4/geant4.html"/>
|
199 |
|
|
<lib name="G4FR"/>
|
200 |
|
|
<lib name="G4modeling"/>
|
201 |
|
|
<lib name="G4RayTracer"/>
|
202 |
|
|
<lib name="G4Tree"/>
|
203 |
|
|
<lib name="G4visHepRep"/>
|
204 |
|
|
<lib name="G4vis_management"/>
|
205 |
|
|
<lib name="G4visXXX"/>
|
206 |
|
|
<lib name="G4VRML"/>
|
207 |
|
|
<use name="geant4core"/>
|
208 |
|
|
</tool>
|
209 |
elmer |
1.81 |
EOF_TOOLFILE
|
210 |
|
|
|
211 |
muzaffar |
1.49 |
%post
|
212 |
muzaffar |
1.91 |
%{relocateConfig}etc/scram.d/%n.xml
|
213 |
|
|
%{relocateConfig}etc/scram.d/geant4core.xml
|
214 |
|
|
%{relocateConfig}etc/scram.d/geant4vis.xml
|