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.34 by eulisse, Mon Aug 21 09:29:11 2006 UTC vs.
Revision 1.231 by elmer, Thu Jan 20 22:54:31 2011 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.27.06b
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 false;; esac)
8 > %define ismac %(case %cmsplatf in osx*%closingbrace echo true;; *%closingbrace e
9 > cho false;; esac)
10 >
11 > Patch0: root-5.27-06-externals
12 > Patch1: root-5.27-04-CINT-maxlongline-maxtypedef
13 > Patch2: root-5.22-00a-roofit-silence-static-printout
14 > Patch3: root-5.22-00d-linker-gnu-hash-style
15 > Patch4: root-5.22-00d-TBranchElement-dropped-data-member
16 > Patch5: root-5.27-06-fireworks9
17 > Patch6: root-5.27-06b-gdb-backtrace
18 > Patch7: root-5.27-06-tmva-DecisionTreeNode
19 > Patch8: root-5.27-06b-r36567
20 > Patch9: root-5.27-06b-r36572
21 > Patch10: root-5.27-06b-r36707
22 > Patch11: root-5.27-06b-r36594
23 > Patch12: root-5.27-06b-tmva-MethodBase-initvar
24 > Patch13: root-5.27-06b-tmva_Event_dynamic_hack
25 >
26   %define cpu %(echo %cmsplatf | cut -d_ -f2)
7 %define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2)
8 Requires: gccxml python qt gsl castor openssl mysql libpng libjpg dcap pcre zlib oracle
27  
28 < %if "%cpu" != "amd64"
29 < Requires: libtiff
28 > Requires: gccxml gsl libjpg libpng libtiff libungif pcre python fftw3
29 >
30 > %if "%ismac" == "false"
31 > Requires: castor dcap
32 > %endif
33 >
34 > %if "%online-%ismac" == "false-true"
35 > Requires: openssl zlib gfortran-macosx
36 > %endif
37 >
38 > %if "%online-%ismac" == "false-false"
39 > Requires: openssl zlib qt xrootd
40   %endif
41  
14 Patch: root-cint-bug
42   %prep
43   %setup -n root
44 + %patch0 -p1
45 + %patch1 -p1
46 + %patch2 -p1
47 + # patch3 is OS version dependent, see below
48 + %patch4 -p1
49 + %patch5 -p1
50 + %patch6 -p1
51 + %patch7 -p1
52 + %patch8 -p1
53 + %patch9 -p1
54 + %patch10 -p1
55 + %patch11 -p1
56 + %patch12 -p1
57 + %patch13 -p1
58 +
59 + # The following patch can only be applied on SLC5 or later (extra linker
60 + # options only available with the SLC5 binutils)
61 + case %cmsplatf in
62 +  slc5_* | slc5onl_* )
63 + %patch3 -p1
64 +  ;;
65 + esac
66 +
67   %build
68 +
69   mkdir -p %i
70 + export LIBJPG_ROOT
71   export ROOTSYS=%_builddir/root
72 + export PYTHONV=$(echo $PYTHON_VERSION | cut -f1,2 -d.)
73 +
74 + %if "%online" == "true"
75 + # Use system qt. Also skip xrootd and odbc for online case:
76 +
77 + EXTRA_CONFIG_ARGS="--with-f77=/usr
78 +             --disable-odbc
79 +             --disable-qt --disable-qtgsi --disable-astiff"
80 + %else
81 + export LIBPNG_ROOT ZLIB_ROOT LIBTIFF_ROOT LIBUNGIF_ROOT
82 + EXTRA_CONFIG_ARGS="--with-f77=${GCC_ROOT}
83 +             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
84 +             --with-ssl-incdir=${OPENSSL_ROOT}/include
85 +             --with-ssl-libdir=${OPENSSL_ROOT}/lib
86 +             --enable-qtgsi"
87 + %endif
88 +
89   CONFIG_ARGS="--enable-table
90               --disable-builtin-pcre
91               --disable-builtin-freetype
92               --disable-builtin-zlib
93               --with-gccxml=${GCCXML_ROOT}
94 <             --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
94 >             --enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python${PYTHONV}
95               --enable-explicitlink
29             --enable-qtgsi
30             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
31             --enable-mathcore
96               --enable-mathmore
97               --enable-reflex  
98               --enable-cintex
99               --enable-minuit2
100 <             --enable-roofit
100 >             --enable-fftw3
101 >             --with-fftw3-incdir=${FFTW3_ROOT}/include
102 >             --with-fftw3-libdir=${FFTW3_ROOT}/lib
103               --disable-ldap
104               --disable-krb5
105 <                 --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
105 >             --with-xrootd=${XROOTD_ROOT}
106               --with-gsl-incdir=${GSL_ROOT}/include
107               --with-gsl-libdir=${GSL_ROOT}/lib
108 +             --with-dcap-libdir=${DCAP_ROOT}/lib
109 +             --with-dcap-incdir=${DCAP_ROOT}/include
110               --disable-pgsql
111 <             --disable-xml"
111 >             --disable-mysql
112 >             --disable-xml ${EXTRA_CONFIG_ARGS}"
113  
114   case $(uname)-$(uname -m) in
115    Linux-x86_64)
116 <    ./configure linuxx8664gcc $CONFIG_ARGS --disable-astiff;;
117 <  Linux*)
118 <    ./configure linux $CONFIG_ARGS;;
116 >    ./configure linuxx8664gcc $CONFIG_ARGS --with-rfio-libdir=${CASTOR_ROOT}/lib --with-rfio-incdir=${CASTOR_ROOT}/include/shift --with-castor-libdir=${CASTOR_ROOT}/lib --with-castor-incdir=${CASTOR_ROOT}/include/shift ;;
117 >  Linux-i*86)
118 >    ./configure linux  $CONFIG_ARGS --with-rfio-libdir=${CASTOR_ROOT}/lib --with-rfio-incdir=${CASTOR_ROOT}/include/shift --with-castor-libdir=${CASTOR_ROOT}/lib --with-castor-incdir=${CASTOR_ROOT}/include/shift ;;
119    Darwin*)
120 <    ./configure macosx $CONFIG_ARGS;;
120 >    case %cmsplatf in
121 >    *_ia32_* )
122 >      comparch=i386
123 >      macconfig=macosx
124 >      ;;
125 >    *_amd64_* )
126 >      comparch=x86_64
127 >      macconfig=macosx64
128 >      ;;
129 >    * )
130 >      comparch=ppc
131 >      macconfig=macosx
132 >      ;;
133 >    esac
134 >    export CC="gcc -arch $comparch" CXX="g++ -arch $comparch"
135 >    ./configure $macconfig $CONFIG_ARGS --with-cc="$CC" --with-cxx="$CXX" --disable-rfio --disable-builtin_afterimage ;;
136 >  Linux-ppc64*)
137 >    ./configure linux $CONFIG_ARGS --disable-rfio;;
138   esac
139  
140 < make
140 > case %cmsplatf in
141 >  osx*)
142 >   makeopts=
143 >  ;;
144 >  *)
145 >   makeopts="%makeprocesses"
146 >  ;;
147 > esac
148 >
149 > make $makeopts
150   make cintdlls
151 +
152   %install
153   # Override installers if we are using GNU fileutils cp.  On OS X
154   # ROOT's INSTALL is defined to "cp -pPR", which only works with
# Line 70 | Line 161 | else
161    cp="cp -pPR"
162   fi
163  
164 < export ROOTSYS=%i/root
164 > export ROOTSYS=%i
165   make INSTALL="$cp" INSTALLDATA="$cp" install
166 < mkdir -p %i/root/lib/python
167 < cp -r reflex/python/genreflex %i/root/lib/python
166 > mkdir -p $ROOTSYS/lib/python
167 > cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
168 >
169 > # SCRAM ToolBox toolfile
170 > mkdir -p %i/etc/scram.d
171 > # rootcore toolfile
172 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore.xml
173 >  <tool name="rootcore" version="%v">
174 >    <info url="http://root.cern.ch/root/"/>
175 >    <lib name="Tree"/>
176 >    <lib name="Net"/>
177 >    <lib name="Thread"/>
178 >    <lib name="MathCore"/>
179 >    <lib name="RIO"/>
180 >    <lib name="Core"/>
181 >    <lib name="Cint"/>
182 >    <client>
183 >      <environment name="ROOTCORE_BASE" default="%i"/>
184 >      <environment name="LIBDIR" default="$ROOTCORE_BASE/lib"/>
185 >      <environment name="INCLUDE" default="$ROOTCORE_BASE/include"/>
186 >      <environment name="INCLUDE" default="$ROOTCORE_BASE/cint"/>
187 >    </client>
188 >    <runtime name="PATH" value="$ROOTCORE_BASE/bin" type="path"/>
189 >    <runtime name="ROOTSYS" value="$ROOTCORE_BASE/"/>
190 >    <runtime name="PYTHONPATH" value="$ROOTCORE_BASE/lib" type="path"/>
191 >    <use name="sockets"/>
192 >    <use name="pcre"/>
193 >    <use name="zlib"/>
194 >  </tool>
195 > EOF_TOOLFILE
196 >
197 > # root toolfile, alias for rootphysics. Using rootphysics is preferred.
198 > cat << \EOF_TOOLFILE >%i/etc/scram.d/root.xml
199 >  <tool name="root" version="%v">
200 >    <info url="http://root.cern.ch/root/"/>
201 >    <use name="rootphysics"/>
202 >  </tool>
203 > EOF_TOOLFILE
204 >
205 > # roothistmatrix toolfile
206 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roothistmatrix.xml
207 >  <tool name="roothistmatrix" version="%v">
208 >    <info url="http://root.cern.ch/root/"/>
209 >    <lib name="Hist"/>
210 >    <lib name="Matrix"/>
211 >    <use name="ROOTCore"/>
212 >  </tool>
213 > EOF_TOOLFILE
214 >
215 > # rootgpad toolfile
216 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgpad.xml
217 >  <tool name="rootgpad" version="%v">
218 >    <info url="http://root.cern.ch/root/"/>
219 >    <lib name="Gpad"/>
220 >    <lib name="Graf"/>
221 >    <use name="roothistmatrix"/>
222 >  </tool>
223 > EOF_TOOLFILE
224 >
225 > # rootphysics toolfile
226 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootphysics.xml
227 >  <tool name="rootphysics" version="%v">
228 >    <info url="http://root.cern.ch/root/"/>
229 >    <lib name="Physics"/>
230 >    <use name="roothistmatrix"/>
231 >  </tool>
232 > EOF_TOOLFILE
233 >
234 > # rootgraphics toolfile, identical to old "root" toolfile
235 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgraphics.xml
236 >  <tool name="rootgraphics" version="%v">
237 >    <info url="http://root.cern.ch/root/"/>
238 >    <lib name="TreePlayer"/>
239 >    <lib name="Graf3d"/>
240 >    <lib name="Postscript"/>
241 >    <use name="rootgpad"/>
242 >  </tool>
243 > EOF_TOOLFILE
244 >
245 > # rootcintex toolfile
246 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex.xml
247 >  <tool name="rootcintex" version="%v">
248 >    <info url="http://root.cern.ch/root/"/>
249 >    <lib name="Cintex"/>
250 >    <use name="ROOTRflx"/>
251 >    <use name="ROOTCore"/>
252 >  </tool>
253 > EOF_TOOLFILE
254 >
255 > # rootinteractive toolfile (GQt/qt lib dependencies
256 > # have been moved to rootqt.xml)
257 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive.xml
258 >  <tool name="rootinteractive" version="%v">
259 >    <info url="http://root.cern.ch/root/"/>
260 >    <lib name="Rint"/>
261 >    <lib name="Gui"/>
262 >    <use name="libjpg"/>
263 >    <use name="libpng"/>
264 >    <use name="rootgpad"/>
265 >  </tool>
266 > EOF_TOOLFILE
267 >
268 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootqt.xml
269 >  <tool name="rootqt" version="%v">
270 >    <info url="http://root.cern.ch/root/"/>
271 >    <lib name="GQt"/>
272 >    <use name="qt"/>
273 >  </tool>
274 > EOF_TOOLFILE
275 >
276 > # rootmath toolfile
277 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath.xml
278 >  <tool name="rootmath" version="%v">
279 >    <info url="http://root.cern.ch/root/"/>
280 >    <lib name="GenVector"/>
281 >    <lib name="MathMore"/>
282 >    <use name="ROOTCore"/>
283 >    <use name="gsl"/>
284 >  </tool>
285 > EOF_TOOLFILE
286 >
287 > # rootminuit toolfile
288 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit.xml
289 >  <tool name="rootminuit" version="%v">
290 >    <info url="http://root.cern.ch/root/"/>
291 >    <lib name="Minuit"/>
292 >    <use name="rootgpad"/>
293 >  </tool>
294 > EOF_TOOLFILE
295 >
296 > # rootminuit2 toolfile
297 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2.xml
298 >  <tool name="rootminuit2" version="%v">
299 >    <info url="http://root.cern.ch/root/"/>
300 >    <lib name="Minuit2"/>
301 >    <use name="rootgpad"/>
302 >  </tool>
303 > EOF_TOOLFILE
304 >
305 > # rootrflx toolfile
306 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx.xml
307 >  <tool name="rootrflx" version="%v">
308 >    <info url="http://root.cern.ch/root/"/>
309 >    <lib name="Reflex"/>
310 >    <client>
311 >      <environment name="ROOTRFLX_BASE" default="%i"/>
312 >      <environment name="LIBDIR" default="$ROOTRFLX_BASE/lib"/>
313 >      <environment name="INCLUDE" default="$ROOTRFLX_BASE/include"/>
314 >    </client>
315 >    <runtime name="PATH" value="$ROOTRFLX_BASE/bin" type="path"/>
316 >    <runtime name="ROOTSYS" value="$ROOTRFLX_BASE/"/>
317 >    <runtime name="GENREFLEX" value="$ROOTRFLX_BASE/bin/genreflex"/>
318 >    <use name="sockets"/>
319 >    <use name="gccxml"/>
320 >  </tool>
321 > EOF_TOOLFILE
322 >
323 > # roothtml toolfile
324 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml.xml
325 >  <tool name="roothtml" version="%v">
326 >    <info url="http://root.cern.ch/root/"/>
327 >    <lib name="Html"/>
328 >    <use name="rootgpad"/>
329 >  </tool>
330 > EOF_TOOLFILE
331 >
332 > # rootmlp toolfile
333 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp.xml
334 >  <tool name="rootmlp" version="%v">
335 >    <info url="http://root.cern.ch/root/"/>
336 >    <lib name="MLP"/>
337 >    <use name="RootGraphics"/>
338 >  </tool>
339 > EOF_TOOLFILE
340 >
341 > # roottmva toolfile
342 > cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva.xml
343 >  <tool name="roottmva" version="%v">
344 >    <info url="http://root.cern.ch/root/"/>
345 >    <lib name="TMVA"/>
346 >    <use name="ROOTMLP"/>
347 >    <use name="rootminuit"/>
348 >  </tool>
349 > EOF_TOOLFILE
350 >
351 > # rootthread toolfile
352 > cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread.xml
353 >  <tool name="rootthread" version="%v">
354 >    <info url="http://root.cern.ch/root/"/>
355 >    <use name="ROOTCore"/>
356 >  </tool>
357 > EOF_TOOLFILE
358 >
359 > %post
360 > perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $(find $RPM_INSTALL_PREFIX/%pkgrel/etc/scram.d -type f)
361 >

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines