ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.96
Committed: Tue Jul 27 10:57:00 2010 UTC (14 years, 9 months ago) by elmer
Branch: MAIN
CVS Tags: CMSSW_3_9_9_patch1, apFor399p1v0, CMSSW_3_9_9, apFor399v0, CMSSW_3_9_8_patch2, apFor398p2v0, CMSSW_3_9_8_patch1, apFor398p1v0, CMSSW_3_9_8, apFor398v0, smFor398a, smFor398, CMSSW_3_10_0_pre9G493, CMSSW_3_9_5_xdaq11b4_ONLINE, CMSSW_3_9_7, apFor397v0, CMSSW_3_9_6, apFor396v0, smFor3100pre9G493, CMSSW_3_9_5_patch2, apFor395p2v0, CMSSW_3_10_0_pre8, smFor3100pre8, smFor310X-101207, smFor310X-101206b, smFor310X-101206ab, smFor310X-101206a, smFor310X-101206, pe20101206-for3100pre7r52706b, CMSSW_3_9_5_patch1, apFor395p1v0, pe20101203-root52706b, CMSSW_3_10_0_pre7io, azFor3100pre7io-a, smFor3100pre7io-a, azFor3100pre7io-Updated, azFor3100pre7io, smFor3100pre7io, CMSSW_3_10_0_pre7, smFor3100pre7, smFor310X-101130, smFor310X-101129, dsr20101129fwlite394, CMSSW_3_9_5_ONLINE, CMSSW_3_9_5, CMSSW_3_10_0_pre6, smFor3100pre6, apFor395v0, CMSSW_3_9_4, smFor310X-101123, apFor394v0, smFor39X-101123, for310X-101122a, CMSSW_3_9_1_onlpatch4_ONLINE, CMSSW_3_9_1_onlpatch3_ONLINE, for310X-101122, sjg101122b, sjg101122a, CMSSW_3_10_0_pre5, CMSSW_3_9_3_ONLINE, azFor3100p5, CMSSW_3_9_3, apFor393v0, CMSSW_3_10_0_pre4r52706, pe20101112b-for3100p4r52706, pe20101112-for3100p4r52706, smFor310X-101111, CMSSW_3_9_2_patch5, CMSSW_3_10_0_pre4, CMSSW_3_9_2_patch4, azFor3100pre4-Updated, azFor3100pre4, smFor392p4, CMSSW_3_9_2_patch3, apFor392p3v0, CMSSW_3_9_2_patch2, apFor392p2v0, smFor310-101106, CMSSW_3_9_2_patch1, apFor392p1v0, CMSSW_3_9_1_onlpatch2_ONLINE, CMSSW_3_9_1_onlpatch1_ONLINE, smFor310-101104, CMSSW_3_9_2, apFor392v0, sjgFor392, CMSSW_3_10_0_pre3, azFor3100p3a, azFor3100p3, CMSSW_3_9_1_patch1, smFor391patch1, CMSSW_3_9_1_ONLINE, smFor391onl, CMSSW_3_9_1, smFor391, apFor391v1, apFor391v0, CMSSW_3_10_0_pre2, smFor3100pre2, CMSSW_3_10_0_pre1, smFor3100pre1, CMSSW_3_9_0, apFor390v0, CMSSW_3_9_0_pre7, apFor390pre7v0, sm39Xtoolconf-101007, sm39Xtoolconf-101005, CMSSW_3_9_0_pre6, apFor390pre6v0, smFor390pre6toolconf-101001, smFor390pre6toolconf-100929, smFor390pre6toolconf, sm100928a, CMSSW_3_9_0_pre5, apFor390pre5v0, CMSSW_3_9_0_pre4, apFor390pre4v0, pe20100912-for39X, fc20100901a, CMSSW_3_9_0_pre3, sm100901a, sm390p3toolconf, sm39XPoolLess, sm100823a, pe20100819a-for390p2r52704, pe20100817a-for390p2r52704, CMSSW_3_9_0_pre2, for390pre2, for390p2tools1, for390pre2tools, CMSSW_3_9_0_pre1, apFor390pre1v0, pe20100727a-for39X
Changes since 1.95: +9 -3 lines
Log Message:
Changes to add G4NEUTRONXS/improved neutron transport + bug fix in
G4CascadeInterface

File Contents

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