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.73 by dlange, Mon Oct 15 12:31:04 2007 UTC vs.
Revision 1.174 by dlange, Mon Jul 20 23:16:47 2009 UTC

# Line 1 | Line 1
1 < ### RPM lcg root 5.14.00g-CMS11
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 <
7 < Patch: root-CINT-maxlongline
8 < Patch1: root_libpng
9 < Patch2: root_PositionVector
10 < Patch3: root-fastmerge-ttree
11 < Patch4: root_TXMLSetup
12 < Patch5: root-Cintex
13 < Patch6: root_Reflex_Cintex
14 < Patch7: root_CallFunc
15 < Patch8: root-proofd
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)
19 Requires: gccxml python qt gsl castor openssl mysql libpng libjpg dcap pcre zlib oracle libungif xrootd
38  
39 < %if "%cpu" != "amd64"
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
58 < %patch1 -p2
59 < %patch2 -p2
57 > %patch0 -p1
58 > %patch1 -p1
59 > %patch2 -p1
60   %patch3 -p1
61 < %patch4 -p0
61 > %patch4 -p1
62   %patch5 -p1
63 < %patch6 -p0
63 > %patch6 -p1
64   %patch7 -p0
65 < %patch8 -p1
66 <
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 +
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/python2.4
46             --enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
135               --enable-explicitlink
48             --enable-qtgsi
49             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
50             --enable-mathcore
136               --enable-mathmore
137               --enable-reflex  
138               --enable-cintex
# Line 55 | Line 140 | CONFIG_ARGS="--enable-table
140               --enable-roofit
141               --disable-ldap
142               --disable-krb5
58             --with-ssl-incdir=${OPENSSL_ROOT}/include
59             --with-ssl-libdir=${OPENSSL_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
64             --with-xrootd=$XROOTD_ROOT
147               --disable-pgsql
148 <             --disable-xml"
148 >             --disable-xml ${EXTRA_CONFIG_ARGS}"
149 >
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 --enable-oracle --with-oracle-libdir=${ORACLE_ROOT}/lib --with-oracle-incdir=${ORACLE_ROOT}/include --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift --disable-astiff --disable-cern;;
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 --enable-oracle --with-oracle-libdir=${ORACLE_ROOT}/lib --with-oracle-incdir=${ORACLE_ROOT}/include --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift;;
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 --disable-rfio;;
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  %makeprocesses
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 93 | Line 191 | fi
191   export ROOTSYS=%i
192   make INSTALL="$cp" INSTALLDATA="$cp" install
193   mkdir -p $ROOTSYS/lib/python
194 < cp -r reflex/python/genreflex $ROOTSYS/lib/python
194 > cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
195   #
196  
197   # SCRAM ToolBox toolfile
# Line 103 | Line 201 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
201   <doc type=BuildSystem::ToolDoc version=1.0>
202   <Tool name=rootcore version=%v>
203   <info url="http://root.cern.ch/root/"></info>
106 <lib name=Cint>
107 <lib name=Core>
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>
# Line 121 | Line 223 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
223   </Tool>
224   EOF_TOOLFILE
225  
226 < # root toolfile
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 < <lib name=TreePlayer>
232 < <lib name=Gpad>
233 < <lib name=Graf3d>
234 < <lib name=Graf>
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=ROOTCore>
275 > <use name=rootgpad>
276   </Tool>
277   EOF_TOOLFILE
278  
# Line 149 | Line 287 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
287   </Tool>
288   EOF_TOOLFILE
289  
290 < # rootinteractive toolfile
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=ROOT>
302 > <use name=rootgpad>
303   </Tool>
304   EOF_TOOLFILE
305  
# Line 168 | Line 308 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
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=MathCore>
311 > <lib name=GenVector>
312   <lib name=MathMore>
313   <use name=ROOTCore>
314   <use name=gsl>
# Line 181 | Line 321 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
321   <Tool name=rootminuit version=%v>
322   <info url="http://root.cern.ch/root/"></info>
323   <lib name=Minuit>
324 < <use name=ROOT>
324 > <use name=rootgpad>
325   </Tool>
326   EOF_TOOLFILE
327  
# Line 191 | Line 331 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
331   <Tool name=rootminuit2 version=%v>
332   <info url="http://root.cern.ch/root/"></info>
333   <lib name=Minuit2>
334 < <use name=ROOT>
334 > <use name=rootgpad>
335   </Tool>
336   EOF_TOOLFILE
337  
# Line 220 | Line 360 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
360   <Tool name=roothtml version=%v>
361   <info url="http://root.cern.ch/root/"></info>
362   <lib name=Html>
363 < <use name=ROOT>
363 > <use name=rootgpad>
364   </Tool>
365   EOF_TOOLFILE
366  
# Line 230 | Line 370 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
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>
234 <use name=ROOTHtml>
375   </Tool>
376   EOF_TOOLFILE
377  
# Line 241 | Line 381 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
381   <Tool name=rootmlp version=%v>
382   <info url="http://root.cern.ch/root/"></info>
383   <lib name=MLP>
384 < <use name=ROOT>
384 > <use name=RootGraphics>
385   </Tool>
386   EOF_TOOLFILE
387  
# Line 252 | Line 392 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
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  
# Line 260 | Line 401 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roo
401   <doc type=BuildSystem::ToolDoc version=1.0>
402   <Tool name=rootthread version=%v>
403   <info url="http://root.cern.ch/root/"></info>
263 <lib name=Thread>
404   <use name=ROOTCore>
405   </Tool>
406   EOF_TOOLFILE
# Line 268 | Line 408 | EOF_TOOLFILE
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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines