ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.86
Committed: Tue May 19 09:01:04 2009 UTC (15 years, 11 months ago) by andreasp
Branch: MAIN
CVS Tags: pe20090525b-31Xports-432, ap20090520-osx105, ap20090519-osx105
Changes since 1.85: +2 -2 lines
Log Message:
updates for building on mac os x 10.5 (leopard)

File Contents

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