ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/root.spec
(Generate patch)

Comparing COMP/CMSDIST/root.spec (file contents):
Revision 1.22 by eulisse, Fri Jul 14 17:26:51 2006 UTC vs.
Revision 1.174 by dlange, Mon Jul 20 23:16:47 2009 UTC

# Line 1 | Line 1
1 < ### RPM lcg root 5.12.00
2 < # INITENV +PATH PYTHONPATH %i/lib/python
3 < Source: cvs://:pserver:cvs@root.cern.ch:2401/user/cvs?passwd=Ah<Z&tag=-rv%(echo %v | tr . -)&module=root&output=/%{n}_v%{v}.source.tar.gz
4 < #Source: ftp://root.cern.ch/%n/%{n}_v%{v}.source.tar.gz
5 < Requires: gccxml python qt gsl castor openssl mysql libpng libjpg libtiff dcap pcre zlib
6 < Patch: root-cint-bug
1 > ### RPM lcg root 5.22.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 > %define closingbrace )
7 > %define online %(case %cmsplatf in *onl_*_*%closingbrace echo true;; *%closingbrace echo flase;; esac)
8 >
9 > Patch0:  root-5.18-00-libpng
10 > Patch1:  root-5.21-04-CINT-maxlongline
11 > Patch2:  root-5.22-00-TMVA-shut-the-hell-up-for-once
12 > Patch3:  root-5.22-00a-TMVA-shut-the-hell-up-again
13 > Patch4:  root-5.22-00a-CINTFunctional
14 > Patch5:  root-5.22-00a-TClass
15 > Patch6:  root-5.22-00a-fireworks-graf3d-gui
16 > Patch7:  root-5.22-00a-Reflex-Class
17 > Patch8:  root-5.22-00a-Cintex
18 > Patch9:  root-5.22-00a-roofit-silence-static-printout
19 > Patch10: root-5.22-00a-TMVA-just-shut-the-hell-up
20 > Patch11: root-5.22-00a-th1
21 > Patch12: root-5.22-00a-smatrix
22 > Patch13: root-5.22-00a-fireworks1
23 > Patch14: root-5.22-00a-Reflex-gendict_selclass
24 > Patch15: root-5.22-00a-MatrixInversion
25 > Patch16: root-5.22-00a-gcc44
26 > Patch17: root-5.22-00a-fireworks2
27 > Patch18: root-5.22-00a-fireworks3
28 > Patch19: root-5.22-00a-TBranchElement
29 > Patch20: root-5.22-00a-tmplt
30 > Patch21: root-5.22-00a-TBranchElement_TStreamerInfo
31 > Patch22: root-5.22-00a-gcc43-array-bounds-dictionary-workaround
32 > Patch23: root-5.22-00a-CINT-dict-init-speedup
33 > Patch24: root-5.22-00a-fireworks4
34 > Patch25: root-5.22-00a-TTreeCloner
35 >
36 > %define cpu %(echo %cmsplatf | cut -d_ -f2)
37 > %define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2)
38 >
39 > Requires: gccxml gsl castor libjpg dcap pcre python
40 >
41 > %if "%online" != "true"
42 > Requires: qt openssl mysql libpng zlib libungif xrootd
43 > %else
44 > %define skiplibtiff true
45 > %endif
46 >
47 > %if "%cpu" == "amd64"
48 > %define skiplibtiff true
49 > %endif
50 >
51 > %if "%skiplibtiff" != "true"
52 > Requires: libtiff
53 > %endif
54 >
55   %prep
56   %setup -n root
57 < %patch -p0
57 > %patch0 -p1
58 > %patch1 -p1
59 > %patch2 -p1
60 > %patch3 -p1
61 > %patch4 -p1
62 > %patch5 -p1
63 > %patch6 -p1
64 > %patch7 -p0
65 > %patch8 -p0
66 > %patch9 -p1
67 > %patch10 -p1
68 > %patch11 -p1
69 > %patch12 -p1
70 > %patch13 -p1
71 > %patch14 -p0
72 > %patch15 -p0
73 > # patch16 is compiler version dependent, see below
74 > %patch17 -p1
75 > %patch18 -p1
76 > %patch19 -p0
77 > %patch20 -p0
78 > %patch21 -p0
79 > # work around patch issue...
80 > rm graf3d/gl/src/gl2ps.c
81 > # patch22 is compiler version dependent, see below
82 > # patch23 is (for now) only applied for gcc4.3, see below
83 > # doesn't work at the moment %patch24 -p1
84 >
85 > %patch24 -p1
86 > #work around patch issues in patch24
87 > rm graf3d/eve/inc/TEveLegoOverlay.h.orig
88 > rm graf3d/eve/src/TEveLegoOverlay.cxx
89 > rm graf3d/gl/inc/gl2ps.h.orig
90 > rm graf3d/gl/src/gl2ps.c.orig
91 >
92 >
93 > %patch25 -p0
94 >
95 > case %gccver in
96 >  4.3.*)
97 > %patch22 -p1
98 > %patch23 -p1
99 >  ;;
100 >  4.4.*)
101 > %patch16 -p1
102 >  ;;
103 > esac
104 >
105   %build
106 +
107   mkdir -p %i
108   export ROOTSYS=%_builddir/root
109 < CONFIG_ARGS="--enable-table
109 >
110 > %if "%online" == "true"
111 > # Build without mysql, and use system qt.
112 > # Also skip xrootd and odbc for online case:
113 >
114 > EXTRA_CONFIG_ARGS="--with-f77=/usr
115 >             --disable-mysql
116 >             --disable-xrootd
117 >             --disable-odbc
118 >             --disable-qt --disable-qtgsi"
119 > %else
120 > EXTRA_CONFIG_ARGS="--with-f77=${GCC_ROOT}
121 >             --with-xrootd=$XROOTD_ROOT
122 >             --enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
123 >             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
124 >             --with-ssl-incdir=${OPENSSL_ROOT}/include
125 >             --with-ssl-libdir=${OPENSSL_ROOT}/lib
126 >             --enable-qtgsi"
127 > %endif
128 >
129 > CONFIG_ARGS="--enable-table
130               --disable-builtin-pcre
131               --disable-builtin-freetype
132               --disable-builtin-zlib
133               --with-gccxml=${GCCXML_ROOT}
134 <             --enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include
19 <             --enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
20 <             --with-dcap-libdir=${DCAP_ROOT}/lib
21 <             --with-dcap-incdir=${DCAP_ROOT}/include
134 >             --enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python2.4
135               --enable-explicitlink
23             --enable-qtgsi
24             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
25             --enable-mathcore
136               --enable-mathmore
137               --enable-reflex  
138               --enable-cintex
# Line 30 | Line 140 | CONFIG_ARGS="--enable-table
140               --enable-roofit
141               --disable-ldap
142               --disable-krb5
143 <                 --with-dcap-libdir=${DCAP_ROOT}/lib
143 >             --with-gsl-incdir=${GSL_ROOT}/include
144 >             --with-gsl-libdir=${GSL_ROOT}/lib
145 >             --with-dcap-libdir=${DCAP_ROOT}/lib
146               --with-dcap-incdir=${DCAP_ROOT}/include
35             --with-ssl-incdir=${OPENSSL_ROOT}/include
36             --with-ssl-libdir=${OPENSSL_ROOT}/lib
37             --with-shift-incdir=${CASTOR_ROOT}/include
38             --with-shift-libdir=${CASTOR_ROOT}/lib
147               --disable-pgsql
148 <             --disable-xml"
148 >             --disable-xml ${EXTRA_CONFIG_ARGS}"
149  
150 < case $(uname)-$(uname -m) in
150 > #case %gccver in
151 > #  4.*)
152 > #  CONFIG_ARGS="$CONFIG_ARGS --disable-cern"
153 > #  ;;
154 > #esac
155 >
156 > case $(uname)-$(uname -p) in
157    Linux-x86_64)
158 <    ./configure linuxx8664gcc $CONFIG_ARGS;;
159 <  Linux*)
160 <    ./configure linux $CONFIG_ARGS;;
158 >    ./configure linuxx8664gcc $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift --disable-astiff;;
159 >  Linux-i*86)
160 >    ./configure linux  $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift;;
161    Darwin*)
162 <    ./configure macosx $CONFIG_ARGS;;
162 >    ./configure macosx $CONFIG_ARGS --disable-rfio --disable-builtin_afterimage ;;
163 >  Linux-ppc64*)
164 >    ./configure linux $CONFIG_ARGS --disable-rfio;;
165   esac
166  
167 < make
167 > case %cmsplatf in
168 >  osx*)
169 >   makeopts=
170 >  ;;
171 >  *)
172 >   makeopts="%makeprocesses"
173 >  ;;
174 > esac
175 >
176 > make $makeopts
177   make cintdlls
178 +
179   %install
180   # Override installers if we are using GNU fileutils cp.  On OS X
181   # ROOT's INSTALL is defined to "cp -pPR", which only works with
# Line 62 | Line 188 | else
188    cp="cp -pPR"
189   fi
190  
191 < #export ROOTSYS=%i/root
191 > export ROOTSYS=%i
192   make INSTALL="$cp" INSTALLDATA="$cp" install
193 < mkdir -p %i/root/lib/python
194 < cp -r reflex/python/genreflex %i/root/lib/python
193 > mkdir -p $ROOTSYS/lib/python
194 > cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
195 > #
196 >
197 > # SCRAM ToolBox toolfile
198 > mkdir -p %i/etc/scram.d
199 > # rootcore toolfile
200 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore
201 > <doc type=BuildSystem::ToolDoc version=1.0>
202 > <Tool name=rootcore version=%v>
203 > <info url="http://root.cern.ch/root/"></info>
204 > <lib name=Tree>
205 > <lib name=Net>
206 > <lib name=Thread>
207 > <lib name=MathCore>
208 > <lib name=RIO>
209 > <lib name=Core>
210 > <lib name=Cint>
211 > <Client>
212 > <Environment name=ROOTCORE_BASE default="%i"></Environment>
213 > <Environment name=LIBDIR default="$ROOTCORE_BASE/lib"></Environment>
214 > <Environment name=INCLUDE default="$ROOTCORE_BASE/include"></Environment>
215 > <Environment name=INCLUDE default="$ROOTCORE_BASE/cint"></Environment>
216 > </Client>
217 > <use name=sockets>
218 > <use name=pcre>
219 > <use name=zlib>
220 > <Runtime name=PATH value="$ROOTCORE_BASE/bin" type=path>
221 > <Runtime name=ROOTSYS value="$ROOTCORE_BASE/">
222 > <Runtime name=PYTHONPATH value="$ROOTCORE_BASE/lib" type=path>
223 > </Tool>
224 > EOF_TOOLFILE
225 >
226 > # root toolfile, alias for rootphysics. Using rootphysics is preferred.
227 > cat << \EOF_TOOLFILE >%i/etc/scram.d/root
228 > <doc type=BuildSystem::ToolDoc version=1.0>
229 > <Tool name=root version=%v>
230 > <info url="http://root.cern.ch/root/"></info>
231 > <use name=rootphysics>
232 > </Tool>
233 > EOF_TOOLFILE
234 >
235 > # roothistmatrix toolfile
236 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roothistmatrix
237 > <doc type=BuildSystem::ToolDoc version=1.0>
238 > <Tool name=roothistmatrix version=%v>
239 > <info url="http://root.cern.ch/root/"></info>
240 > <lib name=Hist>
241 > <lib name=Matrix>
242 > <use name=ROOTCore>
243 > </Tool>
244 > EOF_TOOLFILE
245 >
246 > # rootgpad toolfile
247 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgpad
248 > <doc type=BuildSystem::ToolDoc version=1.0>
249 > <Tool name=rootgpad version=%v>
250 > <info url="http://root.cern.ch/root/"></info>
251 > <lib name=Gpad>
252 > <lib name=Graf>
253 > <use name=roothistmatrix>
254 > </Tool>
255 > EOF_TOOLFILE
256 >
257 > # rootphysics toolfile
258 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootphysics
259 > <doc type=BuildSystem::ToolDoc version=1.0>
260 > <Tool name=rootphysics version=%v>
261 > <info url="http://root.cern.ch/root/"></info>
262 > <lib name=Physics>
263 > <use name=roothistmatrix>
264 > </Tool>
265 > EOF_TOOLFILE
266 >
267 > # rootgraphics toolfile, identical to old "root" toolfile
268 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgraphics
269 > <doc type=BuildSystem::ToolDoc version=1.0>
270 > <Tool name=rootgraphics version=%v>
271 > <info url="http://root.cern.ch/root/"></info>
272 > <lib name=TreePlayer>
273 > <lib name=Graf3d>
274 > <lib name=Postscript>
275 > <use name=rootgpad>
276 > </Tool>
277 > EOF_TOOLFILE
278 >
279 > # rootcintex toolfile
280 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex
281 > <doc type=BuildSystem::ToolDoc version=1.0>
282 > <Tool name=rootcintex version=%v>
283 > <info url="http://root.cern.ch/root/"></info>
284 > <lib name=Cintex>
285 > <use name=ROOTRflx>
286 > <use name=ROOTCore>
287 > </Tool>
288 > EOF_TOOLFILE
289 >
290 > # (temporarily eviscerated) rootinteractive toolfile (GQt/qt lib dependencies
291 > # have been removed for the moment)
292 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive
293 > <doc type=BuildSystem::ToolDoc version=1.0>
294 > <Tool name=rootinteractive version=%v>
295 > <info url="http://root.cern.ch/root/"></info>
296 > <lib name=Rint>
297 > <lib name=GQt>
298 > <lib name=Gui>
299 > <use name=qt>
300 > <use name=libjpg>
301 > <use name=libpng>
302 > <use name=rootgpad>
303 > </Tool>
304 > EOF_TOOLFILE
305 >
306 > # rootmath toolfile
307 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath
308 > <doc type=BuildSystem::ToolDoc version=1.0>
309 > <Tool name=rootmath version=%v>
310 > <info url="http://root.cern.ch/root/"></info>
311 > <lib name=GenVector>
312 > <lib name=MathMore>
313 > <use name=ROOTCore>
314 > <use name=gsl>
315 > </Tool>
316 > EOF_TOOLFILE
317 >
318 > # rootminuit toolfile
319 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit
320 > <doc type=BuildSystem::ToolDoc version=1.0>
321 > <Tool name=rootminuit version=%v>
322 > <info url="http://root.cern.ch/root/"></info>
323 > <lib name=Minuit>
324 > <use name=rootgpad>
325 > </Tool>
326 > EOF_TOOLFILE
327 >
328 > # rootminuit2 toolfile
329 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2
330 > <doc type=BuildSystem::ToolDoc version=1.0>
331 > <Tool name=rootminuit2 version=%v>
332 > <info url="http://root.cern.ch/root/"></info>
333 > <lib name=Minuit2>
334 > <use name=rootgpad>
335 > </Tool>
336 > EOF_TOOLFILE
337 >
338 > # rootrflx toolfile
339 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx
340 > <doc type=BuildSystem::ToolDoc version=1.0>
341 > <Tool name=rootrflx version=%v>
342 > <info url="http://root.cern.ch/root/"></info>
343 > <lib name=Reflex>
344 > <Client>
345 > <Environment name=ROOTRFLX_BASE default="%i"></Environment>
346 > <Environment name=LIBDIR default="$ROOTRFLX_BASE/lib"></Environment>
347 > <Environment name=INCLUDE default="$ROOTRFLX_BASE/include"></Environment>
348 > </Client>
349 > <use name=sockets>
350 > <use name=gccxml>
351 > <Runtime name=PATH value="$ROOTRFLX_BASE/bin" type=path>
352 > <Runtime name=ROOTSYS value="$ROOTRFLX_BASE/">
353 > <Runtime name=GENREFLEX value="$ROOTRFLX_BASE/bin/genreflex">
354 > </Tool>
355 > EOF_TOOLFILE
356 >
357 > # roothtml toolfile
358 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml
359 > <doc type=BuildSystem::ToolDoc version=1.0>
360 > <Tool name=roothtml version=%v>
361 > <info url="http://root.cern.ch/root/"></info>
362 > <lib name=Html>
363 > <use name=rootgpad>
364 > </Tool>
365 > EOF_TOOLFILE
366 >
367 > # rootroofit toolfile
368 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootroofit
369 > <doc type=BuildSystem::ToolDoc version=1.0>
370 > <Tool name=rootroofit version=%v>
371 > <info url="http://root.cern.ch/root/"></info>
372 > <lib name=RooFit>
373 > <lib name=RooFitCore>
374 > <use name=ROOTMinuit>
375 > </Tool>
376 > EOF_TOOLFILE
377 >
378 > # rootmlp toolfile
379 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp
380 > <doc type=BuildSystem::ToolDoc version=1.0>
381 > <Tool name=rootmlp version=%v>
382 > <info url="http://root.cern.ch/root/"></info>
383 > <lib name=MLP>
384 > <use name=RootGraphics>
385 > </Tool>
386 > EOF_TOOLFILE
387 >
388 > # roottmva toolfile
389 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva
390 > <doc type=BuildSystem::ToolDoc version=1.0>
391 > <Tool name=roottmva version=%v>
392 > <info url="http://root.cern.ch/root/"></info>
393 > <lib name=TMVA>
394 > <use name=ROOTMLP>
395 > <use name=rootminuit>
396 > </Tool>
397 > EOF_TOOLFILE
398 >
399 > # rootthread toolfile
400 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread
401 > <doc type=BuildSystem::ToolDoc version=1.0>
402 > <Tool name=rootthread version=%v>
403 > <info url="http://root.cern.ch/root/"></info>
404 > <use name=ROOTCore>
405 > </Tool>
406 > EOF_TOOLFILE
407 >
408 > %post
409 > %{relocateConfig}etc/scram.d/root
410 > %{relocateConfig}etc/scram.d/rootcore
411 > %{relocateConfig}etc/scram.d/roothistmatrix
412 > %{relocateConfig}etc/scram.d/rootphysics
413 > %{relocateConfig}etc/scram.d/rootgraphics
414 > %{relocateConfig}etc/scram.d/rootcintex
415 > %{relocateConfig}etc/scram.d/rootinteractive
416 > %{relocateConfig}etc/scram.d/rootmath
417 > %{relocateConfig}etc/scram.d/rootminuit
418 > %{relocateConfig}etc/scram.d/rootminuit2
419 > %{relocateConfig}etc/scram.d/rootrflx
420 > %{relocateConfig}etc/scram.d/roothtml
421 > %{relocateConfig}etc/scram.d/rootroofit
422 > %{relocateConfig}etc/scram.d/rootmlp
423 > %{relocateConfig}etc/scram.d/roottmva
424 > %{relocateConfig}etc/scram.d/rootthread

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines