ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/geant4.spec
Revision: 1.103
Committed: Sat Dec 18 09:20:56 2010 UTC (14 years, 4 months ago) by muzaffar
Branch: MAIN
CVS Tags: smFor3100a
Changes since 1.102: +3 -2 lines
Log Message:
updated geant4 to version 9.4

File Contents

# User Rev Content
1 muzaffar 1.103 ### RPM external geant4 9.4
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 elmer 1.96 %define g4NeutronXS 1.0
12 ratnik 1.69
13 muzaffar 1.103 #Source0: http://cmsrep.cern.ch/cmssw/junk/geant4/%n.%downloadv.tgz
14     Source1: http://geant4.cern.ch/support/source/%n.%downloadv.tgz
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 ratnik 1.69 Source4: http://geant4.cern.ch/support/source/G4RadioactiveDecay.%{radioactiveDecayVersion}.tar.gz
19 dlange 1.48 Source5: http://geant4.cern.ch/support/source/G4ELASTIC.%{g4ElasticScatteringVersion}.tar.gz
20 elmer 1.96 Source6: http://geant4.cern.ch/support/source/G4NEUTRONXS.%{g4NeutronXS}.tar.gz
21 dlange 1.50
22 eulisse 1.98 Patch0: geant-4.8.2.p01-nobanner
23 elmer 1.41
24 eulisse 1.1 %prep
25 dlange 1.63 %setup -n %n.%downloadv
26 eulisse 1.21 pwd
27 dlange 1.71 %patch0 -p1
28 dlange 1.78
29 eulisse 1.1 %build
30 elmer 1.40 if [ $(uname) = Darwin ]; then
31     export MACOSX_DEPLOYMENT_TARGET="10.4"
32     fi
33 eulisse 1.1 # Linux? -pthread?
34 eulisse 1.2 touch G4BuildConf.sh
35 sashby 1.16 echo "export OS_ARCH=%{cmsplatf}" >> G4BuildConf.sh
36 eulisse 1.2 #FIXME: is this correct???
37     echo "export G4SYSTEM=$(uname)-g++" >> G4BuildConf.sh
38     echo "export G4INSTALL=%i" >> G4BuildConf.sh
39     echo "export G4BASE=$PWD/source" >> G4BuildConf.sh
40     echo "export G4WORKDIR=$PWD" >> G4BuildConf.sh
41     echo "export G4TMP=$PWD/tmp" >> G4BuildConf.sh
42     echo "export G4LIB=%i/lib" >> G4BuildConf.sh
43     echo "export G4LIB_BUILD_SHARED=1" >> G4BuildConf.sh
44 dlange 1.48 echo "unset G4DEBUG" >> G4BuildConf.sh
45 elmer 1.93 echo "export G4_NO_VERBOSE=1" >> G4BuildConf.sh
46 ratnik 1.69 echo "export CPPVERBOSE=yes" >> G4BuildConf.sh
47 eulisse 1.2
48     echo "export G4LEVELGAMMADATA=%i/data/PhotonEvaporation/%{photonEvaporationVersion}" >> G4BuildConf.sh
49 ratnik 1.69 echo "export G4RADIOACTIVEDATA=%i/data/RadioactiveDecay%{radioactiveDecayVersion}" >> G4BuildConf.sh
50 eulisse 1.2 echo "export G4LEDATA=%i/data/G4EMLOW%{g4EMLOWVersion}" >> G4BuildConf.sh
51 elmer 1.68 # G4ELASTIC is not needed from 8.2 onward
52     #echo "export G4ELASTIC=%i/data/G4ELASTIC%{g4ElasticScatteringVersion}" >> G4BuildConf.sh
53    
54     # From Gabriele Cosmo: The variable name 'NeutronHPCrossSections' is replaced by
55     # 'G4NEUTRONHPDATA' starting from version 9.0.
56 ratnik 1.69 #echo "export NeutronHPCrossSections=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
57     echo "export G4NEUTRONHPDATA=%i/data/G4NDL%{g4NDLVersion}" >> G4BuildConf.sh
58    
59 eulisse 1.1
60     # export G4LIB_BUILD_STATIC=1
61     # FIXME: For OS X? export G4NO_OPTIMISE=1 // unset G4OPTIMISE
62     # FIXME: override CERNLIB_PATH?
63    
64 eulisse 1.2 echo "export CLHEP_BASE_DIR=$CLHEP_ROOT" >> G4BuildConf.sh
65 eulisse 1.1
66 eulisse 1.2 echo "export G4USE_STL=1" >> G4BuildConf.sh
67 eulisse 1.1 # export G4USE_G3TOG4=1
68    
69 elmer 1.68 # G4UI_BUILD_TERMINAL_SESSION is the default:
70 eulisse 1.2 echo "export G4UI_BUILD_TERMINAL_SESSION=1" >> G4BuildConf.sh
71 eulisse 1.1 # export G4UI_BUILD_GAG_SESSION=1
72     # export G4UI_BUILD_XAW_SESSION=1
73     # export G4UI_BUILD_XM_SESSION=1
74     # export G4UI_BUILD_WO_SESSION=1
75    
76 eulisse 1.20 # FIXME: this will not work on osx!
77 eulisse 1.2 echo "export OGLHOME=/usr/X11R6" >> G4BuildConf.sh
78 eulisse 1.1 # export OGLLIBS="-L$OGLHOME/lib -lGLU -lGL"
79     # export OGLFLAGS="-I$OGLHOME/include"
80    
81 elmer 1.68 # G4VIS_BUILD_DAWNFILE_DRIVER is the default
82 eulisse 1.2 echo "export G4VIS_BUILD_DAWNFILE_DRIVER=1" >> G4BuildConf.sh
83 eulisse 1.1 # export G4VIS_BUILD_DAWN_DRIVER=1
84     # export G4VIS_BUILD_OPENGLX_DRIVER=1
85     # export G4VIS_BUILD_OPENGLXM_DRIVER=1
86 eulisse 1.21 # echo "export G4VIS_BUILD_VRMLFILE_DRIVER=1" >> G4BuildConf.sh
87     # echo "export G4VIS_BUILD_VRML_DRIVER=1" >> G4BuildConf.sh
88     # echo "export G4VIS_BUILD_RAYTRACER_DRIVER=1" >> G4BuildConf.sh
89 eulisse 1.2 # export G4LIB_BUILD_G3TOG4=1
90     source G4BuildConf.sh
91 eulisse 1.1 mkdir -p %i
92     tar -cf - config source | tar -C %i -xf -
93 eulisse 1.26
94 elmer 1.87 make -C $G4BASE global
95     make -C $G4BASE includes
96 eulisse 1.1
97     %install
98 elmer 1.40 case $(uname) in Darwin ) so=dylib ;; * ) so=so ;; esac
99 eulisse 1.2 mkdir -p %i/etc
100     cp G4BuildConf.sh %i/etc
101 elmer 1.40 mv %i/lib/$(uname)-g++/*.$so %i/lib
102 elmer 1.68 # The following file does not appear to exist after this spec file was
103     # switched # to use the subsystem libraries instead of the individual ones,
104     # so comment # it for now
105     #mv %i/lib/$(uname)-g++/libname.map %i/lib
106 sashby 1.17 rm -rf %i/lib/$(uname)-g++
107 eulisse 1.1 # Build already installed into prefix
108     mkdir -p %i/data
109     tar -C %i/data -zxvf %_sourcedir/G4NDL*.tar.gz
110     tar -C %i/data -zxvf %_sourcedir/G4EMLOW*.tar.gz
111     tar -C %i/data -zxvf %_sourcedir/Photon*.tar.gz
112 ratnik 1.69 tar -C %i/data -zxvf %_sourcedir/G4Rad*.tar.gz
113 elmer 1.96 tar -C %i/data -zxvf %_sourcedir/G4NEU*.tar.gz
114 elmer 1.88 # Clean up the sources, which are not needed in the rpm
115     rm -rf %i/source