ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.68
Committed: Thu Dec 27 20:43:28 2007 UTC (17 years, 4 months ago) by elmer
Branch: MAIN
CVS Tags: pe20080118a-ports, pe20080111b-ports, pe20080111a-ports, pe20080110b-ports, pe20080110a-ports, pe20080109a-ports, pe20080108c-ports, ge20080108-wt, pe20080108b-ports, pe20080108a-ports, pe20080105a-ports, pe20080104a-ports, pe20080103a-ports-gcc422, pe20080103a-ports, pe20070103a-ports, pe20080101a-ports, pe20071128b-ports, pe20071128a-ports, pe20071127b-ports
Changes since 1.67: +30 -98 lines
Log Message:
Update to 8.3.p01-CMS19

File Contents

# User Rev Content
1 elmer 1.68 ### RPM external geant4 8.3.p01-CMS19
2 eulisse 1.11 %define downloadv %(echo %v | cut -d- -f1)
3 dlange 1.63 ## 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 elmer 1.36 # Build system fudging and some patches by Lassi A. Tuura <lat@iki.fi>
8 eulisse 1.1 Requires: clhep
9 eulisse 1.2 %define photonEvaporationVersion 2.0
10 elmer 1.68 %define g4NDLVersion 3.9
11 dlange 1.48 %define g4ElasticScatteringVersion 1.1
12 elmer 1.68 %define g4EMLOWVersion 4.0
13 dlange 1.66 %define radiativeDecayVersion 3.0
14 dlange 1.63 Source0: http://geant4.cern.ch/support/source/%n.%downloadv.tar.gz
15 eulisse 1.2 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 dlange 1.66 Source4: http://geant4.cern.ch/support/source/RadiativeDecay.%{radiativeDecayVersion}.tar.gz
19 dlange 1.48 Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
20 dlange 1.50
21 dlange 1.63 Patch: geant-4.8.2.p01-nobanner
22 elmer 1.41
23 eulisse 1.1 %prep
24 dlange 1.63 %setup -n %n.%downloadv
25 eulisse 1.21 pwd
26 dlange 1.63 %patch0 -p1
27 elmer 1.41
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 eulisse 1.2
45     echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
46 dlange 1.63 echo "export G4RADIOACTIVEDATA=%i/data/RadiativeDecay%{radiativeDecayVersion}" >> G4BuildConf.sh
47 eulisse 1.2 echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
48 elmer 1.68 # G4ELASTIC is not needed from 8.2 onward
49     #echo "export G4ELASTIC=%i/data/G4ELASTIC%{g4ElasticScatteringVersion}" >> G4BuildConf.sh
50    
51     # From Gabriele Cosmo: The variable name 'NeutronHPCrossSections' is replaced by
52     # 'G4NEUTRONHPDATA' starting from version 9.0.
53 eulisse 1.2 echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
54 eulisse 1.1
55     # export G4LIB_BUILD_STATIC=1
56     # FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
57     # FIXME: override CERNLIB_PATH?
58    
59 eulisse 1.2 echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
60 eulisse 1.1
61 eulisse 1.2 echo "export G4USE_STL=1" >> G4BuildConf.sh
62 eulisse 1.1 # export G4USE_G3TOG4=1
63    
64 elmer 1.68 # G4UI_BUILD_TERMINAL_SESSION is the default:
65 eulisse 1.2 echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
66 eulisse 1.1 # export G4UI_BUILD_GAG_SESSION=1
67     # export G4UI_BUILD_XAW_SESSION=1
68     # export G4UI_BUILD_XM_SESSION=1
69     # export G4UI_BUILD_WO_SESSION=1
70    
71 eulisse 1.20 # FIXME: this will not work on osx!
72 eulisse 1.2 echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
73 eulisse 1.1 # export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
74     # export OGLFLAGS="-I$OGLHOME/include"
75    
76 elmer 1.68 # G4VIS_BUILD_DAWNFILE_DRIVER is the default
77 eulisse 1.2 echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
78 eulisse 1.1 # export G4VIS_BUILD_DAWN_DRIVER=1
79     # export G4VIS_BUILD_OPENGLX_DRIVER=1
80     # export G4VIS_BUILD_OPENGLXM_DRIVER=1
81 eulisse 1.21 # echo "export G4VIS_BUILD_VRMLFILE_DRIVER=1" >> G4BuildConf.sh
82     # echo "export G4VIS_BUILD_VRML_DRIVER=1" >> G4BuildConf.sh
83     # echo "export G4VIS_BUILD_RAYTRACER_DRIVER=1" >> G4BuildConf.sh
84 eulisse 1.2 # export G4LIB_BUILD_G3TOG4=1
85     source G4BuildConf.sh
86 eulisse 1.1 mkdir -p %i
87     tar -cf - config source | tar -C %i -xf -
88 eulisse 1.26
89 elmer 1.68 make %makeprocesses -C $G4BASE global
90 dlange 1.63 make %makeprocesses -C $G4BASE includes
91 eulisse 1.1
92     %install
93 elmer 1.40 case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
94 eulisse 1.2 mkdir -p %i/etc
95     cp G4BuildConf.sh %i/etc
96 elmer 1.40 mv %i/lib/$(uname)-g++/*.$so %i/lib
97 elmer 1.68 # The following file does not appear to exist after this spec file was
98     # switched # to use the subsystem libraries instead of the individual ones,
99     # so comment # it for now
100     #mv %i/lib/$(uname)-g++/libname.map %i/lib
101 sashby 1.17 rm -rf %i/lib/$(uname)-g++
102 eulisse 1.1 # Build already installed into prefix
103     mkdir -p %i/data
104     tar -C %i/data -zxvf %_sourcedir/G4NDL*.tar.gz
105     tar -C %i/data -zxvf %_sourcedir/G4EMLOW*.tar.gz
106     tar -C %i/data -zxvf %_sourcedir/Photon*.tar.gz
107 dlange 1.66 tar -C %i/data -zxvf %_sourcedir/Rad*.tar.gz
108 eulisse 1.31 #
109 muzaffar 1.49
110     # SCRAM ToolBox toolfile
111     mkdir -p %i/etc/scram.d
112     cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
113     <doc type=BuildSystem::ToolDoc version=1.1>
114     <Tool name=GEANT4 version=%v>
115     <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
116 elmer 1.68 <lib name=G4digits_hits>
117     <lib name=G4event>
118 dlange 1.63 <lib name=G4FR>
119 elmer 1.68 <lib name=G4geometry>
120     <lib name=G4global>
121 elmer 1.57 <lib name=G4graphics_reps>
122     <lib name=G4intercoms>
123 elmer 1.68 <lib name=G4interfaces>
124 elmer 1.57 <lib name=G4materials>
125     <lib name=G4modeling>
126 elmer 1.62 <lib name=G4parmodels>
127 elmer 1.68 <lib name=G4particles>
128 elmer 1.62 <lib name=G4persistency>
129 elmer 1.68 <lib name=G4physicslists>
130     <lib name=G4processes>
131     <lib name=G4RayTracer>
132 elmer 1.57 <lib name=G4readout>
133     <lib name=G4run>
134 elmer 1.68 <lib name=G4tracking>
135 dlange 1.63 <lib name=G4track>
136 elmer 1.68 <lib name=G4Tree>
137 elmer 1.57 <lib name=G4visHepRep>
138 elmer 1.68 <lib name=G4vis_management>
139 dlange 1.63 <lib name=G4visXXX>
140 elmer 1.68 <lib name=G4VRML>
141 muzaffar 1.49 <Client>
142     <Environment name=GEANT4_BASE default="%i"></Environment>
143     <Environment name=G4SRC default="$GEANT4_BASE/source"></Environment>
144     <Environment name=LIBDIR default="$GEANT4_BASE/lib"></Environment>
145     <Environment name=G4LIB value="$LIBDIR"></Environment>
146     <Environment name=INCLUDE default="$GEANT4_BASE/include"></Environment>
147     </Client>
148     <use name=clhep>
149 dlange 1.63 <Flags CPPDEFINES="G4USE_STD_NAMESPACE GNU_GCC">
150 muzaffar 1.49 <Runtime name=G4LEVELGAMMADATA value="$GEANT4_BASE/data/PhotonEvaporation2.0" type=path>
151 elmer 1.68 <Runtime name=NeutronHPCrossSections value="$GEANT4_BASE/data/G4NDL3.9" type=path>
152 dlange 1.63 <Runtime name=G4RADIOACTIVEDATA value="$GEANT4_BASE/data/RadiativeDecay3.0" type=path>
153 elmer 1.68 <Runtime name=G4LEDATA value="$GEANT4_BASE/data/G4EMLOW4.0" type=path>
154 muzaffar 1.49 </Tool>
155     EOF_TOOLFILE
156    
157     %post
158     %{relocateConfig}etc/scram.d/%n