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.35 by eulisse, Tue Aug 22 15:30:51 2006 UTC vs.
Revision 1.169 by elmer, Tue Jul 7 15:06:48 2009 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines