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.327 by davidlt, Sun Jan 29 15:41:50 2012 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 > #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 > Patch21: root-5.30.02-longBranchName
33 >
34   %define cpu %(echo %cmsplatf | cut -d_ -f2)
35  
36 < Requires: gccxml gsl libjpg libpng libtiff libungif pcre python fftw3
36 > Requires: gccxml gsl libjpg libpng libtiff libungif pcre python fftw3 xz xrootd libxml2
37  
38 < %if "%ismac" == "false"
38 > %if "%ismac" != "true"
39   Requires: castor dcap
40   %endif
41  
42 < %if "%online-%ismac" == "false-true"
43 < Requires: openssl zlib gfortran-macosx
42 > %if "%online" != "true"
43 > Requires: openssl zlib
44 > %endif
45 >
46 > %define keep_archives true
47 > %if "%(case %cmsplatf in (osx*_*_gcc421) echo true ;; (*) echo false ;; esac)" == "true"
48 > Requires: gfortran-macosx
49   %endif
50  
51 < %if "%online-%ismac" == "false-false"
52 < Requires: openssl zlib qt xrootd
51 > %if "%(case %cmsplatf in (osx*) echo true ;; (*) echo false ;; esac)" == "true"
52 > Requires: freetype
53   %endif
54  
55   %prep
56 < %setup -n root
56 > %setup -n root-%realversion
57   %patch0 -p1
58   %patch1 -p1
59   %patch2 -p1
60   # patch3 is OS version dependent, see below
61 < %patch4 -p1
62 < %patch5 -p1
63 < %patch6 -p1
64 < %patch7 -p1
65 < %patch8 -p1
66 < %patch9 -p1
67 < %patch10 -p1
68 < %patch11 -p1
69 < %patch12 -p1
70 < %patch13 -p1
61 > # patch4 -p1
62 > # patch5 -p2
63 > # patch5 -p1
64 > # patch6 -p1
65 > # patch7 -p1
66 > # patch8 -p1
67 > # patch9 -p1
68 > # patch10 -p1 TRY AGAIN!
69 > # patch11 -p0
70 > # patch12 -p2
71 > # patch13 -p1
72 > %patch14 -p0
73 > # patch15 -p1
74 > %patch16 -p1
75 > %patch17 -p1
76 > %patch18 -p2
77 > %patch19 -p1
78 > %patch20 -p2
79 > %patch21 -p2
80  
81   # The following patch can only be applied on SLC5 or later (extra linker
82   # options only available with the SLC5 binutils)
83   case %cmsplatf in
84 <  slc5_* | slc5onl_* )
84 >  slc[56]_* | slc5onl_* )
85   %patch3 -p1
86    ;;
87   esac
88  
89 + # Delete these (irrelevant) files as the fits appear to confuse rpm on OSX
90 + # (It tries to run install_name_tool on them.)
91 + rm -fR tutorials/fitsio
92 +
93   %build
94  
95   mkdir -p %i
# Line 72 | Line 98 | export ROOTSYS=%_builddir/root
98   export PYTHONV=$(echo $PYTHON_VERSION | cut -f1,2 -d.)
99  
100   %if "%online" == "true"
101 < # Use system qt. Also skip xrootd and odbc for online case:
101 > # Also skip xrootd and odbc for online case:
102  
103   EXTRA_CONFIG_ARGS="--with-f77=/usr
104 <             --disable-odbc
79 <             --disable-qt --disable-qtgsi --disable-astiff"
104 >             --disable-odbc --disable-astiff"
105   %else
106   export LIBPNG_ROOT ZLIB_ROOT LIBTIFF_ROOT LIBUNGIF_ROOT
107   EXTRA_CONFIG_ARGS="--with-f77=${GCC_ROOT}
83             --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
86 <             --enable-qtgsi"
109 >             --with-ssl-libdir=${OPENSSL_ROOT}/lib"
110   %endif
111 <
111 > LZMA=${XZ_ROOT}
112 > export LZMA
113   CONFIG_ARGS="--enable-table
114               --disable-builtin-pcre
115               --disable-builtin-freetype
# Line 96 | Line 120 | CONFIG_ARGS="--enable-table
120               --enable-mathmore
121               --enable-reflex  
122               --enable-cintex
123 <             --enable-minuit2
123 >             --enable-minuit2
124 >             --disable-builtin-lzma
125               --enable-fftw3
126               --with-fftw3-incdir=${FFTW3_ROOT}/include
127               --with-fftw3-libdir=${FFTW3_ROOT}/lib
# Line 109 | Line 134 | CONFIG_ARGS="--enable-table
134               --with-dcap-incdir=${DCAP_ROOT}/include
135               --disable-pgsql
136               --disable-mysql
137 <             --disable-xml ${EXTRA_CONFIG_ARGS}"
137 >             --disable-qt --disable-qtgsi
138 >             --disable-oracle ${EXTRA_CONFIG_ARGS}"
139  
140 < case $(uname)-$(uname -m) in
141 <  Linux-x86_64)
140 > case %cmsos in
141 >  slc*_amd64)
142      ./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 ;;
143 <  Linux-i*86)
143 >  slc*_ia32)
144      ./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 ;;
145 <  Darwin*)
145 >  osx*)
146      case %cmsplatf in
121    *_ia32_* )
122      comparch=i386
123      macconfig=macosx
124      ;;
147      *_amd64_* )
148        comparch=x86_64
149        macconfig=macosx64
150        ;;
129    * )
130      comparch=ppc
131      macconfig=macosx
132      ;;
151      esac
152 <    export CC="gcc -arch $comparch" CXX="g++ -arch $comparch"
153 <    ./configure $macconfig $CONFIG_ARGS --with-cc="$CC" --with-cxx="$CXX" --disable-rfio --disable-builtin_afterimage ;;
136 <  Linux-ppc64*)
152 >    ./configure $arch $CONFIG_ARGS --disable-rfio --disable-builtin_afterimage ;;
153 >  slc*_ppc64*)
154      ./configure linux $CONFIG_ARGS --disable-rfio;;
155   esac
156  
157 < case %cmsplatf in
158 <  osx*)
159 <   makeopts=
143 <  ;;
144 <  *)
145 <   makeopts="%makeprocesses"
146 <  ;;
147 < esac
148 <
149 < make $makeopts
150 < make cintdlls
157 > makeopts="%makeprocesses"
158 >
159 > make $makeopts
160  
161   %install
162   # Override installers if we are using GNU fileutils cp.  On OS X
# Line 165 | Line 174 | export ROOTSYS=%i
174   make INSTALL="$cp" INSTALLDATA="$cp" install
175   mkdir -p $ROOTSYS/lib/python
176   cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
177 + # This file confuses rpm's find-requires because it starts with
178 + # a """ and it thinks is the shebang.
179 + rm -f %i/tutorials/pyroot/mrt.py
180  
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)
181  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines