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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines