ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/root.spec
Revision: 1.121
Committed: Wed Jul 2 08:41:19 2008 UTC (16 years, 10 months ago) by elmer
Branch: MAIN
CVS Tags: T0Mon_080826_1, CMSSW_2_1_4_FWLITE, T0Mon_080825_1, CMSSW_2_1_4_ONLINE1, CMSSW_2_1_4, apFor214v1, apFor214v0, CMSSW_2_1_3, apFor213v0, CMSSW_2_1_2, CMSSW_2_1_1, CMSSW_2_1_1_ONLINE1, apFor212v0, apFor211v0, CMSSW_2_1_0_ONLINE1, apTestv0, nr080806_for210onl, CMSSW_2_1_0, apFor210v0, CMSSW_2_1_0_pre11, apFor210p11v0, CMSSW_2_1_0_pre10, apFor210p10v1, apFor210p10v0, pe20080723a-for21X-412, pe20080723a-for21X, CMSSW_2_1_0_pre9, apFor210p9v0, nr080714_forCRAB, CMSSW_2_1_0_pre8, apFor210p8v1, apFor210p8v0, CMSSW_2_1_0_pre7, apFor210p7v1, apFor210pre7v1, apFor210p7v0, pe20080702b-for21X-412, pe20080702b-for21X
Changes since 1.120: +31 -10 lines
Log Message:
Add "rootphysics" tool, roothistmatrix + libPhysics
Add "rootgraphics" tool, identical to what we have been using as "root"
Change "root" tool to be an alias for "rootphysics"

File Contents

# Content
1 ### RPM lcg root 5.18.00a
2 ## INITENV +PATH PYTHONPATH %i/lib/python
3 ## INITENV SET ROOTSYS %i
4 #Source: cvs://:pserver:cvs@root.cern.ch:2401/user/cvs?passwd=Ah<Z&tag=-rv%(echo %realversion | tr . -)&module=root&output=/%{n}_v%{realversion}.source.tar.gz
5 Source: ftp://root.cern.ch/%n/%{n}_v%{realversion}.source.tar.gz
6
7 Patch0: root-5.18-00-libpng
8 Patch1: root-5.18-00a-CINT-maxlongline
9 Patch2: root_5.18-00-CINTFunctional
10 Patch3: root-5.18-00a-TBufferXML
11 Patch4: root-5.18-00a-Cintex
12 Patch5: root-5.18-00a-Cintex2
13 Patch6: root-5.18-00a-TBufferFile
14 Patch7: root-5.18-00a-cintexquickfix2
15 Patch8: root-5.18-00a-gendict-performance
16
17 %define cpu %(echo %cmsplatf | cut -d_ -f2)
18 %define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2)
19
20 Requires: gccxml gsl castor libjpg dcap pcre python
21
22 %if "%cmsplatf" != "slc4onl_ia32_gcc346"
23 Requires: qt openssl mysql libpng zlib libungif xrootd
24 %else
25 %define skiplibtiff true
26 %endif
27
28 %if "%cpu" == "amd64"
29 %define skiplibtiff true
30 %endif
31
32 %if "%skiplibtiff" != "true"
33 Requires: libtiff
34 %endif
35
36 %prep
37 %setup -n root
38 %patch0 -p1
39 %patch1 -p1
40 %patch2 -p0
41 %patch3 -p1
42 %patch4 -p0
43 %patch5 -p0
44 %patch6 -p0
45 %patch7 -p0
46 %patch8 -p1
47
48 %build
49 mkdir -p %i
50 export ROOTSYS=%_builddir/root
51
52 %if "%cmsplatf" == "slc4onl_ia32_gcc346"
53 # Build without mysql, and use system qt.
54 # Also skip xrootd and odbc for online case:
55
56 EXTRA_CONFIG_ARGS="
57 --disable-mysql
58 --disable-xrootd
59 --disable-odbc
60 --enable-qt"
61 %else
62 EXTRA_CONFIG_ARGS="
63 --with-xrootd=$XROOTD_ROOT
64 --enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
65 --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
66 --with-ssl-incdir=${OPENSSL_ROOT}/include
67 --with-ssl-libdir=${OPENSSL_ROOT}/lib"
68 %endif
69
70 CONFIG_ARGS="--enable-table
71 --disable-builtin-pcre
72 --disable-builtin-freetype
73 --disable-builtin-zlib
74 --with-gccxml=${GCCXML_ROOT}
75 --enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python2.4
76 --enable-explicitlink
77 --enable-qtgsi
78 --enable-mathcore
79 --enable-mathmore
80 --enable-reflex
81 --enable-cintex
82 --enable-minuit2
83 --enable-roofit
84 --disable-ldap
85 --disable-krb5
86 --with-gsl-incdir=${GSL_ROOT}/include
87 --with-gsl-libdir=${GSL_ROOT}/lib
88 --with-dcap-libdir=${DCAP_ROOT}/lib
89 --with-dcap-incdir=${DCAP_ROOT}/include
90 --disable-pgsql
91 --disable-xml ${EXTRA_CONFIG_ARGS}"
92
93 %if (("%cmsplatf" == "slc4_ia32_gcc412")||("%cmsplatf" == "slc4_ia32_gcc422")||("%cmsplatf" == "slc4_amd64_gcc345"))
94 CONFIG_ARGS="$CONFIG_ARGS --disable-cern"
95 %endif
96
97 case $(uname)-$(uname -p) in
98 Linux-x86_64)
99 ./configure linuxx8664gcc $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift --disable-astiff --disable-cern;;
100 Linux-i*86)
101 ./configure linux $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift;;
102 Darwin*)
103 ./configure macosx $CONFIG_ARGS --disable-rfio;;
104 Linux-ppc64*)
105 ./configure linux $CONFIG_ARGS --disable-rfio;;
106 esac
107
108 make %makeprocesses
109 make cintdlls
110 %install
111 # Override installers if we are using GNU fileutils cp. On OS X
112 # ROOT's INSTALL is defined to "cp -pPR", which only works with
113 # the system cp (/bin/cp). If you have fileutils on fink, you
114 # lose. Check which one is getting picked up and select syntax
115 # accordingly. (FIXME: do we need to check that -P is accepted?)
116 if (cp --help | grep -e '-P.*--parents') >/dev/null 2>&1; then
117 cp="cp -dpR"
118 else
119 cp="cp -pPR"
120 fi
121
122 export ROOTSYS=%i
123 make INSTALL="$cp" INSTALLDATA="$cp" install
124 mkdir -p $ROOTSYS/lib/python
125 cp -r reflex/python/genreflex $ROOTSYS/lib/python
126 #
127
128 # SCRAM ToolBox toolfile
129 mkdir -p %i/etc/scram.d
130 # rootcore toolfile
131 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore
132 <doc type=BuildSystem::ToolDoc version=1.0>
133 <Tool name=rootcore version=%v>
134 <info url="http://root.cern.ch/root/"></info>
135 <lib name=Cint>
136 <lib name=Core>
137 <lib name=RIO>
138 <lib name=Net>
139 <lib name=Tree>
140 <Client>
141 <Environment name=ROOTCORE_BASE default="%i"></Environment>
142 <Environment name=LIBDIR default="$ROOTCORE_BASE/lib"></Environment>
143 <Environment name=INCLUDE default="$ROOTCORE_BASE/include"></Environment>
144 <Environment name=INCLUDE default="$ROOTCORE_BASE/cint"></Environment>
145 </Client>
146 <use name=sockets>
147 <use name=pcre>
148 <use name=zlib>
149 <Runtime name=PATH value="$ROOTCORE_BASE/bin" type=path>
150 <Runtime name=ROOTSYS value="$ROOTCORE_BASE/">
151 <Runtime name=PYTHONPATH value="$ROOTCORE_BASE/lib" type=path>
152 </Tool>
153 EOF_TOOLFILE
154
155 # root toolfile, alias for rootphysics. Using rootphysics is preferred.
156 cat << \EOF_TOOLFILE >%i/etc/scram.d/root
157 <doc type=BuildSystem::ToolDoc version=1.0>
158 <Tool name=root version=%v>
159 <info url="http://root.cern.ch/root/"></info>
160 <use name=rootphysics>
161 </Tool>
162 EOF_TOOLFILE
163
164 # roothistmatrix toolfile
165 cat << \EOF_TOOLFILE >%i/etc/scram.d/roothistmatrix
166 <doc type=BuildSystem::ToolDoc version=1.0>
167 <Tool name=roothistmatrix version=%v>
168 <info url="http://root.cern.ch/root/"></info>
169 <lib name=Hist>
170 <lib name=Matrix>
171 <use name=ROOTCore>
172 </Tool>
173 EOF_TOOLFILE
174
175 # rootphysics toolfile
176 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootphysics
177 <doc type=BuildSystem::ToolDoc version=1.0>
178 <Tool name=rootphysics version=%v>
179 <info url="http://root.cern.ch/root/"></info>
180 <lib name=Physics>
181 <use name=roothistmatrix>
182 </Tool>
183 EOF_TOOLFILE
184
185 # rootgraphics toolfile, identical to old "root" toolfile
186 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgraphics
187 <doc type=BuildSystem::ToolDoc version=1.0>
188 <Tool name=rootgraphics version=%v>
189 <info url="http://root.cern.ch/root/"></info>
190 <lib name=TreePlayer>
191 <lib name=Gpad>
192 <lib name=Graf3d>
193 <lib name=Graf>
194 <lib name=Hist>
195 <lib name=Matrix>
196 <lib name=Physics>
197 <lib name=Postscript>
198 <use name=ROOTCore>
199 </Tool>
200 EOF_TOOLFILE
201
202 # rootcintex toolfile
203 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex
204 <doc type=BuildSystem::ToolDoc version=1.0>
205 <Tool name=rootcintex version=%v>
206 <info url="http://root.cern.ch/root/"></info>
207 <lib name=Cintex>
208 <use name=ROOTRflx>
209 <use name=ROOTCore>
210 </Tool>
211 EOF_TOOLFILE
212
213 # rootinteractive toolfile
214 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive
215 <doc type=BuildSystem::ToolDoc version=1.0>
216 <Tool name=rootinteractive version=%v>
217 <info url="http://root.cern.ch/root/"></info>
218 <lib name=Rint>
219 <lib name=GQt>
220 <use name=qt>
221 <use name=libjpg>
222 <use name=libpng>
223 <use name=ROOT>
224 </Tool>
225 EOF_TOOLFILE
226
227 # rootmath toolfile
228 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath
229 <doc type=BuildSystem::ToolDoc version=1.0>
230 <Tool name=rootmath version=%v>
231 <info url="http://root.cern.ch/root/"></info>
232 <lib name=MathCore>
233 <lib name=MathMore>
234 <use name=ROOTCore>
235 <use name=gsl>
236 </Tool>
237 EOF_TOOLFILE
238
239 # rootminuit toolfile
240 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit
241 <doc type=BuildSystem::ToolDoc version=1.0>
242 <Tool name=rootminuit version=%v>
243 <info url="http://root.cern.ch/root/"></info>
244 <lib name=Minuit>
245 <use name=ROOT>
246 </Tool>
247 EOF_TOOLFILE
248
249 # rootminuit2 toolfile
250 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2
251 <doc type=BuildSystem::ToolDoc version=1.0>
252 <Tool name=rootminuit2 version=%v>
253 <info url="http://root.cern.ch/root/"></info>
254 <lib name=Minuit2>
255 <use name=ROOT>
256 </Tool>
257 EOF_TOOLFILE
258
259 # rootrflx toolfile
260 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx
261 <doc type=BuildSystem::ToolDoc version=1.0>
262 <Tool name=rootrflx version=%v>
263 <info url="http://root.cern.ch/root/"></info>
264 <lib name=Reflex>
265 <Client>
266 <Environment name=ROOTRFLX_BASE default="%i"></Environment>
267 <Environment name=LIBDIR default="$ROOTRFLX_BASE/lib"></Environment>
268 <Environment name=INCLUDE default="$ROOTRFLX_BASE/include"></Environment>
269 </Client>
270 <use name=sockets>
271 <use name=gccxml>
272 <Runtime name=PATH value="$ROOTRFLX_BASE/bin" type=path>
273 <Runtime name=ROOTSYS value="$ROOTRFLX_BASE/">
274 <Runtime name=GENREFLEX value="$ROOTRFLX_BASE/bin/genreflex">
275 </Tool>
276 EOF_TOOLFILE
277
278 # roothtml toolfile
279 cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml
280 <doc type=BuildSystem::ToolDoc version=1.0>
281 <Tool name=roothtml version=%v>
282 <info url="http://root.cern.ch/root/"></info>
283 <lib name=Html>
284 <use name=ROOT>
285 </Tool>
286 EOF_TOOLFILE
287
288 # rootroofit toolfile
289 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootroofit
290 <doc type=BuildSystem::ToolDoc version=1.0>
291 <Tool name=rootroofit version=%v>
292 <info url="http://root.cern.ch/root/"></info>
293 <lib name=RooFitCore>
294 <lib name=RooFit>
295 <use name=ROOTMinuit>
296 <use name=ROOTHtml>
297 </Tool>
298 EOF_TOOLFILE
299
300 # rootmlp toolfile
301 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp
302 <doc type=BuildSystem::ToolDoc version=1.0>
303 <Tool name=rootmlp version=%v>
304 <info url="http://root.cern.ch/root/"></info>
305 <lib name=MLP>
306 <use name=ROOT>
307 </Tool>
308 EOF_TOOLFILE
309
310 # roottmva toolfile
311 cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva
312 <doc type=BuildSystem::ToolDoc version=1.0>
313 <Tool name=roottmva version=%v>
314 <info url="http://root.cern.ch/root/"></info>
315 <lib name=TMVA>
316 <use name=ROOTMLP>
317 </Tool>
318 EOF_TOOLFILE
319
320 # rootthread toolfile
321 cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread
322 <doc type=BuildSystem::ToolDoc version=1.0>
323 <Tool name=rootthread version=%v>
324 <info url="http://root.cern.ch/root/"></info>
325 <lib name=Thread>
326 <use name=ROOTCore>
327 </Tool>
328 EOF_TOOLFILE
329
330 %post
331 %{relocateConfig}etc/scram.d/root
332 %{relocateConfig}etc/scram.d/rootcore
333 %{relocateConfig}etc/scram.d/roothistmatrix
334 %{relocateConfig}etc/scram.d/rootphysics
335 %{relocateConfig}etc/scram.d/rootgraphics
336 %{relocateConfig}etc/scram.d/rootcintex
337 %{relocateConfig}etc/scram.d/rootinteractive
338 %{relocateConfig}etc/scram.d/rootmath
339 %{relocateConfig}etc/scram.d/rootminuit
340 %{relocateConfig}etc/scram.d/rootminuit2
341 %{relocateConfig}etc/scram.d/rootrflx
342 %{relocateConfig}etc/scram.d/roothtml
343 %{relocateConfig}etc/scram.d/rootroofit
344 %{relocateConfig}etc/scram.d/rootmlp
345 %{relocateConfig}etc/scram.d/roottmva
346 %{relocateConfig}etc/scram.d/rootthread