ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.60
Committed: Fri Dec 7 22:43:22 2007 UTC (17 years, 4 months ago) by elmer
Branch: MAIN
CVS Tags: pe20071207-for180p4g491c3
Changes since 1.59: +2 -2 lines
Log Message:
Update to -CMS18
Fix tag used in CVS checkout to match version declared for spec file

File Contents

# User Rev Content
1 elmer 1.60 ### RPM external geant4 9.1.cand03-CMS18
2 eulisse 1.11 %define downloadv %(echo %v | cut -d- -f1)
3 elmer 1.36 # Build system fudging and some patches by Lassi A. Tuura <lat@iki.fi>
4 ratnik 1.59 Provides: /bin/awk
5 eulisse 1.1 Requires: clhep
6 ratnik 1.59
7     # On Marc/Jim request run optimized build keeping debug symbols:
8     %define makeflags CXXFLAGS="-O -g"
9    
10 eulisse 1.2 %define photonEvaporationVersion 2.0
11 ratnik 1.59
12     # FIXME: g4NDLVersion 3.12 must be used, but tarball for it
13     # is not available yet, so we take 3.11 . NR 2007/12/06
14    
15     %define g4NDLVersion 3.11
16 dlange 1.48 %define g4ElasticScatteringVersion 1.1
17 ratnik 1.59 %define g4EMLOWVersion 5.1
18     %define radioactiveDecayVersion 3.2
19    
20     #Source0: http://geant4.cern.ch/support/source/%n.%downloadv.tar.gz
21    
22 elmer 1.60 Source0: cvs://:kserver:ratnik@geant4.cvs.cern.ch:/cvs/Geant4?tag=-rgeant4-09-01-cand-03&module=geant4&output=/%n.%downloadv.tar.gz
23 eulisse 1.2 Source1: http://geant4.cern.ch/support/source/G4NDL.%{g4NDLVersion}.tar.gz
24     Source2: http://geant4.cern.ch/support/source/G4EMLOW.%{g4EMLOWVersion}.tar.gz
25     Source3: http://geant4.cern.ch/support/source/PhotonEvaporation.%{photonEvaporationVersion}.tar.gz
26 ratnik 1.59 Source4: http://geant4.cern.ch/support/source/G4RadioactiveDecay.%{radioactiveDecayVersion}.tar.gz
27 dlange 1.48 Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
28 dlange 1.50
29 ratnik 1.59 #Patch: geant-4.8.2.p01-nobanner
30 elmer 1.41
31 eulisse 1.1 %prep
32 ratnik 1.59 %setup -n %n
33 eulisse 1.21 pwd
34 ratnik 1.59 #%patch0 -p1
35 elmer 1.41
36 eulisse 1.1 %build
37 elmer 1.40 if [ $(uname) = Darwin ]; then
38     export MACOSX_DEPLOYMENT_TARGET="10.4"
39     fi
40 eulisse 1.1 # Linux? -pthread?
41 eulisse 1.2 touch G4BuildConf.sh
42 sashby 1.16 echo "export OS_ARCH=%{cmsplatf}" >> G4BuildConf.sh
43 eulisse 1.2 #FIXME: is this correct???
44     echo "export G4SYSTEM=$(uname)-g++" >> G4BuildConf.sh
45     echo "export G4INSTALL=%i" >> G4BuildConf.sh
46     echo "export G4BASE=$PWD/source" >> G4BuildConf.sh
47     echo "export G4WORKDIR=$PWD" >> G4BuildConf.sh
48     echo "export G4TMP=$PWD/tmp" >> G4BuildConf.sh
49     echo "export G4LIB=%i/lib" >> G4BuildConf.sh
50     echo "export G4LIB_BUILD_SHARED=1" >> G4BuildConf.sh
51 dlange 1.48 echo "unset G4DEBUG" >> G4BuildConf.sh
52 eulisse 1.2
53     echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
54 ratnik 1.59 echo "export G4RADIOACTIVEDATA=%i/data/RadioactiveDecay%{radioactiveDecayVersion}" >> G4BuildConf.sh
55 eulisse 1.2 echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
56 andreasp 1.54 # G4ELASTIC is not needed from 8.2 onward
57     #echo "export G4ELASTIC=%i/data/G4ELASTIC%{g4ElasticScatteringVersion}" >> G4BuildConf.sh
58    
59     # From Gabriele Cosmo: The variable name 'NeutronHPCrossSections' is replaced by
60     # 'G4NEUTRONHPDATA' starting from version 9.0.
61 eulisse 1.2 echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
62 eulisse 1.1
63     # export G4LIB_BUILD_STATIC=1
64     # FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
65     # FIXME: override CERNLIB_PATH?
66    
67 eulisse 1.2 echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
68 eulisse 1.1
69 eulisse 1.2 echo "export G4USE_STL=1" >> G4BuildConf.sh
70 eulisse 1.1 # export G4USE_G3TOG4=1
71    
72 andreasp 1.54 # G4UI_BUILD_TERMINAL_SESSION is the default:
73 eulisse 1.2 echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
74 eulisse 1.1 # export G4UI_BUILD_GAG_SESSION=1
75     # export G4UI_BUILD_XAW_SESSION=1
76     # export G4UI_BUILD_XM_SESSION=1
77     # export G4UI_BUILD_WO_SESSION=1
78    
79 eulisse 1.20 # FIXME: this will not work on osx!
80 eulisse 1.2 echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
81 eulisse 1.1 # export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
82     # export OGLFLAGS="-I$OGLHOME/include"
83    
84 andreasp 1.54 # G4VIS_BUILD_DAWNFILE_DRIVER is the default
85 eulisse 1.2 echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
86 eulisse 1.1 # export G4VIS_BUILD_DAWN_DRIVER=1
87     # export G4VIS_BUILD_OPENGLX_DRIVER=1
88     # export G4VIS_BUILD_OPENGLXM_DRIVER=1
89 eulisse 1.21 # echo "export G4VIS_BUILD_VRMLFILE_DRIVER=1" >> G4BuildConf.sh
90     # echo "export G4VIS_BUILD_VRML_DRIVER=1" >> G4BuildConf.sh
91     # echo "export G4VIS_BUILD_RAYTRACER_DRIVER=1" >> G4BuildConf.sh
92 eulisse 1.2 # export G4LIB_BUILD_G3TOG4=1
93     source G4BuildConf.sh
94 eulisse 1.1 mkdir -p %i
95     tar -cf - config source | tar -C %i -xf -
96 eulisse 1.26
97 ratnik 1.59 make %makeflags %makeprocesses -C $G4BASE global
98     make %makeflags %makeprocesses -C $G4BASE includes
99 eulisse 1.1
100     %install
101 elmer 1.40 case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
102 eulisse 1.2 mkdir -p %i/etc
103     cp G4BuildConf.sh %i/etc
104 elmer 1.40 mv %i/lib/$(uname)-g++/*.$so %i/lib
105 elmer 1.56 # The following file does not appear to exist after this spec file was
106     # switched # to use the subsystem libraries instead of the individual ones,
107     # so comment # it for now
108     #mv %i/lib/$(uname)-g++/libname.map %i/lib
109 sashby 1.17 rm -rf %i/lib/$(uname)-g++
110 eulisse 1.1 # Build already installed into prefix
111     mkdir -p %i/data
112     tar -C %i/data -zxvf %_sourcedir/G4NDL*.tar.gz
113     tar -C %i/data -zxvf %_sourcedir/G4EMLOW*.tar.gz
114     tar -C %i/data -zxvf %_sourcedir/Photon*.tar.gz
115 ratnik 1.59 tar -C %i/data -zxvf %_sourcedir/G4Rad*.tar.gz
116 eulisse 1.31 #
117 muzaffar 1.49
118     # SCRAM ToolBox toolfile
119     mkdir -p %i/etc/scram.d
120     cat << \EOF_TOOLFILE >%i/etc/scram.d/%n
121     <doc type=BuildSystem::ToolDoc version=1.1>
122     <Tool name=GEANT4 version=%v>
123     <info url=http://wwwinfo.cern.ch/asd/geant4/geant4.html></info>
124 ratnik 1.59 <lib name=G4error_propagation>
125 elmer 1.57 <lib name=G4event>
126     <lib name=G4FR>
127     <lib name=G4graphics_reps>
128     <lib name=G4intercoms>
129     <lib name=G4materials>
130     <lib name=G4modeling>
131     <lib name=G4RayTracer>
132     <lib name=G4readout>
133     <lib name=G4run>
134     <lib name=G4tracking>
135     <lib name=G4track>
136     <lib name=G4Tree>
137     <lib name=G4visHepRep>
138     <lib name=G4vis_management>
139     <lib name=G4visXXX>
140     <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 ratnik 1.59 <Flags CPPDEFINES="G4USE_STD_NAMESPACE GNU_GCC G4V9">
150 muzaffar 1.49 <Runtime name=G4LEVELGAMMADATA value="$GEANT4_BASE/data/PhotonEvaporation2.0" type=path>
151 ratnik 1.59 <Runtime name=NeutronHPCrossSections value="$GEANT4_BASE/data/G4NDL3.11" type=path>
152     <Runtime name=G4RADIOACTIVEDATA value="$GEANT4_BASE/data/RadioactiveDecay3.2" type=path>
153     <Runtime name=G4LEDATA value="$GEANT4_BASE/data/G4EMLOW5.1" type=path>
154 muzaffar 1.49 </Tool>
155     EOF_TOOLFILE
156    
157     %post
158     %{relocateConfig}etc/scram.d/%n