ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.92
Committed: Wed Jan 27 06:46:15 2010 UTC (15 years, 3 months ago) by elmer
Branch: MAIN
CVS Tags: FRONTEND_CONF_3_30_20100724, FRONTEND_CONF_3_29_20100723, pe20100305-for36X, CMSSW_3_6_0_pre2, sm100302b-for36X, sm100302a-for36X, wmtFor360pre2, fc20100228, pe20100228a-for36X, CMSSW_3_6_0_pre1, pe20100223c-for36X, pe20100223b-for36X, pe20100223a-for36X, FRONTEND_CONF_3_24_20100217, pe20100216b-for36Xmin, pe20100216a-for36X, T0Mon_100204_2, CMSSW_3_5_0_pre5g493, pe20100130b-for35Xg493, pe20100130-for35Xg493
Changes since 1.91: +1 -5 lines
Log Message:
Update to G4.9.3

File Contents

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