ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.84
Committed: Sun Mar 29 20:57:21 2009 UTC (16 years, 1 month ago) by dlange
Branch: MAIN
CVS Tags: CMSSW_3_3_6_patch6, sm100215, CMSSW_3_3_6_patch5, apFor336p5v1, DQMGUI_5_1_6, CMSSW_3_3_6_patch4, apFor336p5v0, for336patch4, CMSSW_3_3_3_TSG, sm100115-333tsg, CMSSW_3_3_6_patch3, apFor336p3v0, CMSSW_3_3_6_patch1, eskFor336ptch1, DQMGUI_5_1_5, CMSSW_3_3_6, apFor336v0, CMSSW_3_3_5_patch4, apFor335p4v0, CMSSW_3_3_5_patch3, apFor335p3v0, CMSSW_3_3_5_patch2, apFor335p2v0, CMSSW_3_3_5_patch1, apFor335pat1v2, apFor335pat1v1, apFor335pat1v0, lsFor335patch1, lsFOR335patch1v0, CMSSW_3_3_5, apFor335v0, pe20091126a-for33X-slc4-gcc345, CMSSW_3_1_6, bhFor316v0, DQMGUI_5_1_5_pre1, DQMGUI_5_1_4, CMSSW_3_3_4, apFor334v0, CMSSW_3_3_3_DQM, apFor333dqmv0, CMSSW_3_3_3_patch1, lmFor333pat1v0, ap20091114a, ap20091114, CMSSW_3_3_3, CMSSW_3_1_5, pe20091113a-for33X-slc4-gcc345, apFor333v1, apFor333v0, bhFor315v0, bhFor314v0, pe20091110c-for33X-slc4-gcc345, pe20091110b-for33X-slc4-gcc345, pe20091110a-for33X-slc4-gcc345, pe20091109a-for33X-slc4-gcc345, DQMGUI_5_1_3, DQMGUI_5_1_2, pe20091103a-for34X, DQMGUI_5_1_1, ge20091102-qt-conf, apFor332fwlv1, CMSSW_3_3_2, DQMGUI_5_1_0, pe20091031a-for34X, apFor332v0, pe20091030a-for34X, apFor331fwlv1, apFor331fwlv0, CMSSW_3_3_1, pe20091022a-for33X, pe20091021a-for33X, CMSSW_3_4_0_pre2, sm340p2, CMSSW_3_2_8, CMSSW_3_3_0, eskFor328, apFor330v0, pe20091009a-for33X, pe20091008d-for33X, CMSSW_3_4_0_pre1, pe20091006a-for33X, CMSSW_3_1_4, CMSSW_3_3_0_pre6, apFor330pre6v0, pe20090929a-for33X, ap20090929a-for33X, ap20090929-for33X, CMSSW_3_3_0_pre5, apFor330pre5v0, pe20090925a-for33X, pe20090924b-for33X, pe20090924a-for33X, CMSSW_3_1_3, pe20090923b-for33X, pe20090923a-for33X, pe20090922e-for33X, pe20090922c-for33X, pe20090922a-for33X, CMSSW_3_2_7, pe20090921d-for33X, pe20090921c-for33X, pe20090921b-for33X, pe20090921a-ports, CMSSW_3_3_0_pre4, apFor330pre4v0, eskFor327, pe20090918a-ports, CMSSW_3_3_0_pre3, apFor330pre3v0, pe20090907a-for33X, CMSSW_3_3_0_pre2, apFor330pre2v1, CMSSW_3_2_6, pe20090904a-for33X, pe20090903b-for33X, eskFor326, pe20090903-for33X, CMSSW_3_3_0_pre1, esk090827, pe20090827a-33X, pe20090826a-33X, CMSSW_3_2_5, smFor325v0, eskFor325, CMSSW_3_2_4_patch1, CMSSW_3_2_4, sm324p1a, CMSSW_3_2_3, apFor323v1, apFor323v0, DQMGUI_5_0_2, DQMGUI_5_0_1, DQMGUI_5_0_0, CMSSW_3_2_2_patch2, apFor322patch2v0, CMSSW_3_2_2_patch1, apFor322pa1v0, CMSSW_3_2_2, CMSSW_3_1_2, apFor322v0, dl090723, CMSSW_3_2_1, apFor321v0, apFor320onlv0, CMSSW_3_2_0, apFor320v1, apFor320v0, CMSSW_3_1_1_patch1, sm090716a_off, CMSSW_3_1_1_reallyThisTime, CMSSW_3_1_1, dl090707, CMSSW_3_1_0_patch1, CMSSW_3_1_0, CMSSW_3_1_0_pre11, dl090623, CMSSW_3_1_0_pre10, dl090611, CMSSW_3_1_0_pre9, CMSSW_3_1_0_pre8, dl090520t2, dl090520, CMSSW_3_1_0_pre7, dl090514t3, dl090514t2, dl090514, dl090509, dl090504gcc41, pe20090505b-31Xports-432, pe20090505a-31Xports-432, dl090504, pe20090504a-31Xports-432, CMSSW_3_1_0_pre6, dl090425, dl090421, CMSSW_3_1_0_pre5, dl090416, pe20090414a-31Xports-432, dl090410, dl090409t2, dl090409, pe20090407a-31Xports-432, dl090406t2, dl090406, pe20090406b-31Xports-432, pe20090406a-31Xports-432, dl090403, pe20090403a-31Xports-432, dl090401t2, dl090401, dl090330, dl090329, dl0903029
Changes since 1.83: +7 -7 lines
Log Message:
new pool, g4, condcore

File Contents

# Content
1 ### RPM external geant4 9.2.p01
2 %define downloadv %(echo %v | cut -d- -f1)
3
4 Requires: clhep
5
6 %define photonEvaporationVersion 2.0
7 %define g4NDLVersion 3.13
8 %define g4ElasticScatteringVersion 1.1
9 %define g4EMLOWVersion 6.2
10 %define radioactiveDecayVersion 3.2
11
12 Source0: http://geant4.cern.ch/support/source/%n.%downloadv.tar.gz
13 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 Source4: http://geant4.cern.ch/support/source/G4RadioactiveDecay.%{radioactiveDecayVersion}.tar.gz
17 Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
18
19 Patch: geant-4.8.2.p01-nobanner
20
21 %prep
22 %setup -n %n.%downloadv
23 pwd
24 %patch0 -p1
25
26 %build
27 if [ $(uname) = Darwin ]; then
28 export MACOSX_DEPLOYMENT_TARGET="10.4"
29 fi
30 # Linux? -pthread?
31 touch G4BuildConf.sh
32 echo "export OS_ARCH=%{cmsplatf}" >> G4BuildConf.sh
33 #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 echo "unset G4DEBUG" >> G4BuildConf.sh
42 echo "export CPPVERBOSE=yes" >> G4BuildConf.sh
43
44 echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
45 echo "export G4RADIOACTIVEDATA=%i/data/RadioactiveDecay%{radioactiveDecayVersion}" >> G4BuildConf.sh
46 echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
47 # 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 #echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
53 echo "export G4NEUTRONHPDATA=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
54
55
56 # export G4LIB_BUILD_STATIC=1
57 # FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
58 # FIXME: override CERNLIB_PATH?
59
60 echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
61
62 echo "export G4USE_STL=1" >> G4BuildConf.sh
63 # export G4USE_G3TOG4=1
64
65 # G4UI_BUILD_TERMINAL_SESSION is the default:
66 echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
67 # 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 # FIXME: this will not work on osx!
73 echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
74 # export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
75 # export OGLFLAGS="-I$OGLHOME/include"
76
77 # G4VIS_BUILD_DAWNFILE_DRIVER is the default
78 echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
79 # export G4VIS_BUILD_DAWN_DRIVER=1
80 # export G4VIS_BUILD_OPENGLX_DRIVER=1
81 # export G4VIS_BUILD_OPENGLXM_DRIVER=1
82 # 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 # export G4LIB_BUILD_G3TOG4=1
86 source G4BuildConf.sh
87 mkdir -p %i
88 tar -cf - config source | tar -C %i -xf -
89
90 make -C $G4BASE global
91 make -C $G4BASE includes
92
93 %install
94 case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
95 mkdir -p %i/etc
96 cp G4BuildConf.sh %i/etc
97 mv %i/lib/$(uname)-g++/*.$so %i/lib
98 # 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 rm -rf %i/lib/$(uname)-g++
103 # 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 tar -C %i/data -zxvf %_sourcedir/G4Rad*.tar.gz
109 #
110
111 # SCRAM ToolBox toolfile
112 mkdir -p %i/etc/scram.d
113 cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
114 <doc type=BuildSystem::ToolDoc version=1.1>
115 <Tool name=GEANT4 version=%v>
116 <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
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"></Environment>
145 <Environment name=G4SRC default="$GEANT4_BASE/source"></Environment>
146 <Environment name=LIBDIR default="$GEANT4_BASE/lib"></Environment>
147 <Environment name=G4LIB value="$LIBDIR"></Environment>
148 <Environment name=INCLUDE default="$GEANT4_BASE/include"></Environment>
149 </Client>
150 <use name=clhep>
151 <Flags CPPDEFINES="G4USE_STD_NAMESPACE GNU_GCC G4V9">
152 <Runtime name=G4LEVELGAMMADATA value="$GEANT4_BASE/data/PhotonEvaporation2.0" type=path>
153 <Runtime name=G4NEUTRONHPDATA value="$GEANT4_BASE/data/G4NDL3.13" type=path>
154 <Runtime name=G4RADIOACTIVEDATA value="$GEANT4_BASE/data/RadioactiveDecay3.2" type=path>
155 <Runtime name=G4LEDATA value="$GEANT4_BASE/data/G4EMLOW6.2" type=path>
156 </Tool>
157 EOF_TOOLFILE
158
159 cat << \EOF_TOOLFILE >%i/etc/scram.d/geant4core
160 <doc type=BuildSystem::ToolDoc version=1.1>
161 <Tool name=geant4core version=%v>
162 <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
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"></Environment>
183 <Environment name=G4SRC default="$GEANT4_BASE/source"></Environment>
184 <Environment name=LIBDIR default="$GEANT4_BASE/lib"></Environment>
185 <Environment name=G4LIB value="$LIBDIR"></Environment>
186 <Environment name=INCLUDE default="$GEANT4_BASE/include"></Environment>
187 </Client>
188 <use name=clhep>
189 <Flags CPPDEFINES="G4USE_STD_NAMESPACE GNU_GCC G4V9">
190 <Runtime name=G4LEVELGAMMADATA value="$GEANT4_BASE/data/PhotonEvaporation2.0" type=path>
191 <Runtime name=G4NEUTRONHPDATA value="$GEANT4_BASE/data/G4NDL3.13" type=path>
192 <Runtime name=G4RADIOACTIVEDATA value="$GEANT4_BASE/data/RadioactiveDecay3.2" type=path>
193 <Runtime name=G4LEDATA value="$GEANT4_BASE/data/G4EMLOW6.2" type=path>
194 </Tool>
195 EOF_TOOLFILE
196
197 cat << \EOF_TOOLFILE >%i/etc/scram.d/geant4vis
198 <doc type=BuildSystem::ToolDoc version=1.1>
199 <Tool name=geant4vis version=%v>
200 <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
201 <lib name=G4FR>
202 <lib name=G4modeling>
203 <lib name=G4RayTracer>
204 <lib name=G4Tree>
205 <lib name=G4visHepRep>
206 <lib name=G4vis_management>
207 <lib name=G4visXXX>
208 <lib name=G4VRML>
209 <use name=geant4core>
210 </Tool>
211 EOF_TOOLFILE
212
213
214 %post
215 %{relocateConfig}etc/scram.d/%n
216 %{relocateConfig}etc/scram.d/geant4core
217 %{relocateConfig}etc/scram.d/geant4vis