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.231 by elmer, Thu Jan 20 22:54:31 2011 UTC vs.
Revision 1.300 by eulisse, Mon Sep 26 13:56:21 2011 UTC

# Line 1 | Line 1
1 < ### RPM lcg root 5.27.06b
1 > ### RPM lcg root 5.30.02
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 <
4 > #Source: ftp://root.cern.ch/%n/%{n}_v%{realversion}.source.tar.gz
5 > %define svntag %(echo %realversion | tr . -)
6 > Source: svn://root.cern.ch/svn/root/tags/v%{svntag}/?scheme=http&strategy=export&module=%n-%{realversion}&output=/%n-%{realversion}.tgz
7 > %define online %(case %cmsplatf in (*onl_*_*) echo true;; (*) echo false;; esac)
8 > %define ismac %(case %cmsplatf in (osx*) echo true;; (*) echo false;; esac)
9 >
10 > Patch0: root-5.28-00d-externals
11 > Patch1: root-5.28-00d-CINT-maxlongline-maxtypedef
12 > Patch2: root-5.28-00d-roofit-silence-static-printout
13 > Patch3: root-5.28-00d-linker-gnu-hash-style
14 > #Patch4: root-5.28-00d-TBranchElement-dropped-data-member
15 > #Patch5: root-5.30-00-TSchemaRuleProcessor-nested-space
16 > #Patch5: root-5.28-00d-r37582-tmva
17 > #Patch6: root-5.28-00d-TTreeCache-r37919
18 > #Patch7: root-5.28-00d-r38248-r38259-r38264-r38265-r38267
19 > #Patch8: root-5.28-00d-fireworks1
20 > #Patch9: root-5.28-00d-r39155
21 > #Patch10: root-5.28-00d-r39525
22 > #Patch11: root-5.28-00d-r39657
23 > #Patch12: root-5.28-00d-r39759
24 > #Patch13: root-5.28-00d-fix-tsystem-load-macosx
25 > Patch14: root-5.30.02-detect-arch
26 >
27   %define cpu %(echo %cmsplatf | cut -d_ -f2)
28  
29 < Requires: gccxml gsl libjpg libpng libtiff libungif pcre python fftw3
29 > Requires: gccxml gsl libjpg libpng libtiff libungif pcre python fftw3 xz xrootd
30  
31 < %if "%ismac" == "false"
31 > %if "%ismac" != "true"
32   Requires: castor dcap
33   %endif
34  
35 < %if "%online-%ismac" == "false-true"
36 < Requires: openssl zlib gfortran-macosx
35 > %if "%online" != "true"
36 > Requires: openssl zlib
37   %endif
38  
39 < %if "%online-%ismac" == "false-false"
40 < Requires: openssl zlib qt xrootd
39 > %define keep_archives true
40 > %if "%(case %cmsplatf in (osx*_*_gcc421) echo true ;; (*) echo false ;; esac)" == "true"
41 > Requires: gfortran-macosx
42   %endif
43  
44   %prep
45 < %setup -n root
45 > %setup -n root-%realversion
46   %patch0 -p1
47   %patch1 -p1
48   %patch2 -p1
49   # patch3 is OS version dependent, see below
50 < %patch4 -p1
51 < %patch5 -p1
52 < %patch6 -p1
53 < %patch7 -p1
54 < %patch8 -p1
55 < %patch9 -p1
56 < %patch10 -p1
57 < %patch11 -p1
58 < %patch12 -p1
59 < %patch13 -p1
50 > # patch4 -p1
51 > # patch5 -p2
52 > # patch5 -p1
53 > # patch6 -p1
54 > # patch7 -p1
55 > # patch8 -p1
56 > # patch9 -p1
57 > # patch10 -p1 TRY AGAIN!
58 > # patch11 -p0
59 > # patch12 -p2
60 > # patch13 -p1
61 > %patch14 -p0
62  
63   # The following patch can only be applied on SLC5 or later (extra linker
64   # options only available with the SLC5 binutils)
# Line 64 | Line 68 | case %cmsplatf in
68    ;;
69   esac
70  
71 + # Delete these (irrelevant) files as the fits appear to confuse rpm on OSX
72 + # (It tries to run install_name_tool on them.)
73 + rm -fR tutorials/fitsio
74 +
75   %build
76  
77   mkdir -p %i
# Line 72 | Line 80 | export ROOTSYS=%_builddir/root
80   export PYTHONV=$(echo $PYTHON_VERSION | cut -f1,2 -d.)
81  
82   %if "%online" == "true"
83 < # Use system qt. Also skip xrootd and odbc for online case:
83 > # Also skip xrootd and odbc for online case:
84  
85   EXTRA_CONFIG_ARGS="--with-f77=/usr
86 <             --disable-odbc
79 <             --disable-qt --disable-qtgsi --disable-astiff"
86 >             --disable-odbc --disable-astiff"
87   %else
88   export LIBPNG_ROOT ZLIB_ROOT LIBTIFF_ROOT LIBUNGIF_ROOT
89   EXTRA_CONFIG_ARGS="--with-f77=${GCC_ROOT}
83             --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
90               --with-ssl-incdir=${OPENSSL_ROOT}/include
91 <             --with-ssl-libdir=${OPENSSL_ROOT}/lib
86 <             --enable-qtgsi"
91 >             --with-ssl-libdir=${OPENSSL_ROOT}/lib"
92   %endif
93 <
93 > LZMA=${XZ_ROOT}
94 > export LZMA
95   CONFIG_ARGS="--enable-table
96               --disable-builtin-pcre
97               --disable-builtin-freetype
# Line 96 | Line 102 | CONFIG_ARGS="--enable-table
102               --enable-mathmore
103               --enable-reflex  
104               --enable-cintex
105 <             --enable-minuit2
105 >             --enable-minuit2
106 >             --disable-builtin-lzma
107               --enable-fftw3
108               --with-fftw3-incdir=${FFTW3_ROOT}/include
109               --with-fftw3-libdir=${FFTW3_ROOT}/lib
# Line 109 | Line 116 | CONFIG_ARGS="--enable-table
116               --with-dcap-incdir=${DCAP_ROOT}/include
117               --disable-pgsql
118               --disable-mysql
119 <             --disable-xml ${EXTRA_CONFIG_ARGS}"
119 >             --disable-qt --disable-qtgsi
120 >             --disable-oracle ${EXTRA_CONFIG_ARGS}"
121  
122 < case $(uname)-$(uname -m) in
123 <  Linux-x86_64)
122 > case %cmsos in
123 >  slc*_amd64)
124      ./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 ;;
125 <  Linux-i*86)
125 >  slc*_ia32)
126      ./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 ;;
127 <  Darwin*)
127 >  osx*)
128      case %cmsplatf in
121    *_ia32_* )
122      comparch=i386
123      macconfig=macosx
124      ;;
129      *_amd64_* )
130        comparch=x86_64
131        macconfig=macosx64
132        ;;
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*)
134 >    export CC=`which gcc` CXX=`which g++`
135 >    ./configure $arch $CONFIG_ARGS --with-cc="$CC" --with-cxx="$CXX" --disable-rfio --disable-builtin_afterimage ;;
136 >  slc*_ppc64*)
137      ./configure linux $CONFIG_ARGS --disable-rfio;;
138   esac
139  
140 < case %cmsplatf in
141 <  osx*)
142 <   makeopts=
143 <  ;;
144 <  *)
145 <   makeopts="%makeprocesses"
146 <  ;;
147 < esac
148 <
149 < make $makeopts
150 < make cintdlls
140 > makeopts="%makeprocesses"
141 >
142 > make $makeopts
143  
144   %install
145   # Override installers if we are using GNU fileutils cp.  On OS X
# Line 165 | Line 157 | export ROOTSYS=%i
157   make INSTALL="$cp" INSTALLDATA="$cp" install
158   mkdir -p $ROOTSYS/lib/python
159   cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
160 + # This file confuses rpm's find-requires because it starts with
161 + # a """ and it thinks is the shebang.
162 + rm -f %i/tutorials/pyroot/mrt.py
163  
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)
164  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines