ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.51
Committed: Fri Sep 7 03:25:10 2007 UTC (17 years, 7 months ago) by dlange
Branch: MAIN
CVS Tags: CMSSW_1_7_0_pre3, dl070916, dl070912, dl070812, sm070912b, sm070912a, sm070911a, dl070909p3, dl070909, CMSSW_1_7_0_pre2, dl070906
Changes since 1.50: +1 -1 lines
Log Message:
restore dropped gcc and geant config changes

File Contents

# Content
1 ### RPM external geant4 8.3.p01-CMS8
2 %define downloadv %(echo %v | cut -d- -f1)
3 ## INITENV SET G4NDL_PATH %i/data/G4NDL%{g4NDLVersion}
4 ## INITENV SET G4EMLOW_PATH %i/data/G4EMLOW%{g4EMLOWVersion}
5 ## INITENV SET PHOTON_EVAPORATION_PATH %i/data/PhotonEvaportation%{photonEvaporationVersion}
6 ## INITENV SET RADIATIVE_DECAY_PATH %i/data/RadiativeDecay%{radiativeDecayVersion}
7 # Build system fudging and some patches by Lassi A. Tuura <lat@iki.fi>
8 Requires: clhep
9 %define photonEvaporationVersion 2.0
10 %define g4NDLVersion 3.9
11 %define g4ElasticScatteringVersion 1.1
12 %define g4EMLOWVersion 4.0
13 %define radiativeDecayVersion 3.0
14 Source0: http://geant4.cern.ch/support/source/%n.%downloadv.tar.gz
15 Source1: http://geant4.cern.ch/support/source/G4NDL.%{g4NDLVersion}.tar.gz
16 Source2: http://geant4.cern.ch/support/source/G4EMLOW.%{g4EMLOWVersion}.tar.gz
17 Source3: http://geant4.cern.ch/support/source/PhotonEvaporation.%{photonEvaporationVersion}.tar.gz
18 Source4: http://geant4.cern.ch/support/source/RadiativeDecay.%{radiativeDecayVersion}.tar.gz
19 Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
20
21 Patch: geant-4.8.2.p01-nobanner
22
23 %prep
24 %setup -n %n.%downloadv
25 pwd
26 %patch0 -p1
27
28 %build
29 if [ $(uname) = Darwin ]; then
30 export MACOSX_DEPLOYMENT_TARGET="10.4"
31 fi
32 # Linux? -pthread?
33 touch G4BuildConf.sh
34 echo "export OS_ARCH=%{cmsplatf}" >> G4BuildConf.sh
35 #FIXME: is this correct???
36 echo "export G4SYSTEM=$(uname)-g++" >> G4BuildConf.sh
37 echo "export G4INSTALL=%i" >> G4BuildConf.sh
38 echo "export G4BASE=$PWD/source" >> G4BuildConf.sh
39 echo "export G4WORKDIR=$PWD" >> G4BuildConf.sh
40 echo "export G4TMP=$PWD/tmp" >> G4BuildConf.sh
41 echo "export G4LIB=%i/lib" >> G4BuildConf.sh
42 echo "export G4LIB_BUILD_SHARED=1" >> G4BuildConf.sh
43 echo "unset G4DEBUG" >> G4BuildConf.sh
44 echo "export G4OPTIMIZE=1" >> G4BuildConf.sh
45
46 echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
47 echo "export G4RADIOACTIVEDATA=%i/data/RadiativeDecay%{radiativeDecayVersion}" >> G4BuildConf.sh
48 echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
49 echo "export G4ELASTIC=%i/data/G4ELASTIC%{g4ElasticScatteringVersion}" >> G4BuildConf.sh
50 echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
51
52 # export G4LIB_BUILD_STATIC=1
53 # FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
54 # FIXME: override CERNLIB_PATH?
55
56 echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
57
58 echo "export G4USE_STL=1" >> G4BuildConf.sh
59 # export G4USE_G3TOG4=1
60
61 echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
62 # export G4UI_BUILD_GAG_SESSION=1
63 # export G4UI_BUILD_XAW_SESSION=1
64 # export G4UI_BUILD_XM_SESSION=1
65 # export G4UI_BUILD_WO_SESSION=1
66
67 # FIXME: this will not work on osx!
68 echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
69 # export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
70 # export OGLFLAGS="-I$OGLHOME/include"
71
72 echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
73 # export G4VIS_BUILD_DAWN_DRIVER=1
74 # export G4VIS_BUILD_OPENGLX_DRIVER=1
75 # export G4VIS_BUILD_OPENGLXM_DRIVER=1
76 # echo "export G4VIS_BUILD_VRMLFILE_DRIVER=1" >> G4BuildConf.sh
77 # echo "export G4VIS_BUILD_VRML_DRIVER=1" >> G4BuildConf.sh
78 # echo "export G4VIS_BUILD_RAYTRACER_DRIVER=1" >> G4BuildConf.sh
79 # export G4LIB_BUILD_G3TOG4=1
80 source G4BuildConf.sh
81 mkdir -p %i
82 tar -cf - config source | tar -C %i -xf -
83
84 make %makeprocesses -C $G4BASE all
85 make %makeprocesses -C $G4BASE includes
86 make %makeprocesses -C $G4BASE
87 make %makeprocesses -C $G4BASE global
88 make %makeprocesses -C $G4BASE
89
90 %install
91 case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
92 mkdir -p %i/etc
93 cp G4BuildConf.sh %i/etc
94 mv %i/lib/$(uname)-g++/*.$so %i/lib
95 mv %i/lib/$(uname)-g++/libname.map %i/lib
96 rm -rf %i/lib/$(uname)-g++
97 # Build already installed into prefix
98 mkdir -p %i/data
99 tar -C %i/data -zxvf %_sourcedir/G4NDL*.tar.gz
100 tar -C %i/data -zxvf %_sourcedir/G4EMLOW*.tar.gz
101 tar -C %i/data -zxvf %_sourcedir/Photon*.tar.gz
102 tar -C %i/data -zxvf %_sourcedir/Rad*.tar.gz
103 #
104
105 # SCRAM ToolBox toolfile
106 mkdir -p %i/etc/scram.d
107 cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
108 <doc type=BuildSystem::ToolDoc version=1.1>
109 <Tool name=GEANT4 version=%v>
110 <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
111 <lib name=G4gflash>
112 <lib name=G4FR>
113 <lib name=G4RayTracer>
114 <lib name=G4Tree>
115 <lib name=G4UIGAG>
116 <lib name=G4UIbasic>
117 <lib name=G4UIcommon>
118 <lib name=G4VRML>
119 <lib name=G4baryons>
120 <lib name=G4bosons>
121 <lib name=G4brep>
122 <lib name=G4csg>
123 <lib name=G4cuts>
124 <lib name=G4decay>
125 <lib name=G4detector>
126 <lib name=G4digits>
127 <lib name=G4emlowenergy>
128 <lib name=G4emstandard>
129 <lib name=G4emutils>
130 <lib name=G4event>
131 <lib name=G4geomBoolean>
132 <lib name=G4geombias>
133 <lib name=G4geomdivision>
134 <lib name=G4geometrymng>
135 <lib name=G4globman>
136 <lib name=G4graphics_reps>
137 <lib name=G4had_im_r_matrix>
138 <lib name=G4had_mod_man>
139 <lib name=G4had_mod_util>
140 <lib name=G4had_muon_nuclear>
141 <lib name=G4had_neu_hp>
142 <lib name=G4had_preequ_exciton>
143 <lib name=G4had_string_diff>
144 <lib name=G4had_string_frag>
145 <lib name=G4had_string_man>
146 <lib name=G4had_theo_max>
147 <lib name=G4hadronic_HE>
148 <lib name=G4hadronic_LE>
149 <lib name=G4hadronic_bert_cascade>
150 <lib name=G4hadronic_binary>
151 <lib name=G4hadronic_body_ci>
152 <lib name=G4hadronic_coherent_elastic>
153 <lib name=G4hadronic_deex_evaporation>
154 <lib name=G4hadronic_deex_fermi_breakup>
155 <lib name=G4hadronic_deex_fission>
156 <lib name=G4hadronic_deex_gem_evaporation>
157 <lib name=G4hadronic_deex_handler>
158 <lib name=G4hadronic_deex_management>
159 <lib name=G4hadronic_deex_multifragmentation>
160 <lib name=G4hadronic_deex_photon_evaporation>
161 <lib name=G4hadronic_deex_util>
162 <lib name=G4hadronic_hetcpp_evaporation>
163 <lib name=G4hadronic_hetcpp_utils>
164 <lib name=G4hadronic_interface_ci>
165 <lib name=G4hadronic_iso>
166 <lib name=G4hadronic_leading_particle>
167 <lib name=G4hadronic_mgt>
168 <lib name=G4hadronic_proc>
169 <lib name=G4hadronic_qgstring>
170 <lib name=G4hadronic_radioactivedecay>
171 <lib name=G4hadronic_stop>
172 <lib name=G4hadronic_util>
173 <lib name=G4hadronic_xsect>
174 <lib name=G4hepnumerics>
175 <lib name=G4hits>
176 <lib name=G4intercoms>
177 <lib name=G4ions>
178 <lib name=G4leptons>
179 <lib name=G4magneticfield>
180 <lib name=G4materials>
181 <lib name=G4mesons>
182 <lib name=G4modeling>
183 <lib name=G4muons>
184 <lib name=G4navigation>
185 <lib name=G4optical>
186 <lib name=G4parameterisation>
187 <lib name=G4parmodels>
188 <lib name=G4partman>
189 <lib name=G4partutils>
190 <lib name=G4persistency>
191 <lib name=G4procman>
192 <lib name=G4readout>
193 <lib name=G4run>
194 <lib name=G4shortlived>
195 <lib name=G4specsolids>
196 <lib name=G4track>
197 <lib name=G4tracking>
198 <lib name=G4transportation>
199 <lib name=G4visHepRep>
200 <lib name=G4visXXX>
201 <lib name=G4vis_management>
202 <lib name=G4volumes>
203 <lib name=G4xrays>
204 <lib name=G4phys_lists>
205 <lib name=G4phys_builders>
206 <Client>
207 <Environment name=GEANT4_BASE default="%i"></Environment>
208 <Environment name=G4SRC default="$GEANT4_BASE/source"></Environment>
209 <Environment name=LIBDIR default="$GEANT4_BASE/lib"></Environment>
210 <Environment name=G4LIB value="$LIBDIR"></Environment>
211 <Environment name=INCLUDE default="$GEANT4_BASE/include"></Environment>
212 </Client>
213 <use name=clhep>
214 <Flags CPPDEFINES="G4USE_STD_NAMESPACE GNU_GCC">
215 <Runtime name=G4LEVELGAMMADATA value="$GEANT4_BASE/data/PhotonEvaporation2.0" type=path>
216 <Runtime name=NeutronHPCrossSections value="$GEANT4_BASE/data/G4NDL3.9" type=path>
217 <Runtime name=G4RADIOACTIVEDATA value="$GEANT4_BASE/data/RadiativeDecay3.0" type=path>
218 <Runtime name=G4LEDATA value="$GEANT4_BASE/data/G4EMLOW4.0" type=path>
219 </Tool>
220 EOF_TOOLFILE
221
222 %post
223 %{relocateConfig}etc/scram.d/%n