ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/root.spec
Revision: 1.136
Committed: Sat Jan 24 21:36:12 2009 UTC (16 years, 3 months ago) by elmer
Branch: MAIN
CVS Tags: condcore304, condcore303, pe20090125a-30Xports-432, CMSSW_3_0_0_pre8, pe20090124b-for30X-root522-412, pe20090124b-for30X-root522, pe20090124a-for30X-root522-412, pe20090124a-for30X-root522
Changes since 1.135: +1 -1 lines
Log Message:
Get rid of obsolete --disable-cern also for the 64bit builds.

File Contents

# User Rev Content
1 elmer 1.130 ### RPM lcg root 5.22.00
2 dlange 1.57 ## INITENV +PATH PYTHONPATH %i/lib/python
3     ## INITENV SET ROOTSYS %i
4 ratnik 1.106 #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 elmer 1.96
7 andreasp 1.124 Patch0: root-5.18-00-libpng
8 elmer 1.130 Patch1: root-5.21-04-CINT-maxlongline
9 elmer 1.131 Patch2: root-5.22-00-TClass-Clone
10 elmer 1.132 Patch3: root-5.22-00-gendict
11     Patch4: root-5.22-00-RootSys
12 elmer 1.133 Patch5: root-5.22-00-TMVA-shut-the-hell-up-for-once
13 elmer 1.135 Patch6: root-5.22-00-TBranchElement_initializeoffsets
14 elmer 1.134 Patch7: root-5.22-00-TBranchElement-pcanal
15 elmer 1.98
16     %define cpu %(echo %cmsplatf | cut -d_ -f2)
17     %define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2)
18    
19 ratnik 1.106 Requires: gccxml gsl castor libjpg dcap pcre python
20 dlange 1.103
21 ratnik 1.119 %if "%cmsplatf" != "slc4onl_ia32_gcc346"
22 elmer 1.130 Requires: qt openssl mysql libpng zlib libungif
23 dlange 1.103 %else
24     %define skiplibtiff true
25     %endif
26    
27     %if "%cpu" == "amd64"
28     %define skiplibtiff true
29     %endif
30    
31     %if "%skiplibtiff" != "true"
32 elmer 1.98 Requires: libtiff
33     %endif
34 eulisse 1.25
35 eulisse 1.1 %prep
36     %setup -n root
37 ratnik 1.106 %patch0 -p1
38     %patch1 -p1
39 elmer 1.131 %patch2 -p1
40 elmer 1.132 %patch3 -p1
41     %patch4 -p1
42 elmer 1.133 %patch5 -p1
43 elmer 1.134 %patch6 -p0
44     %patch7 -p1
45 ratnik 1.79
46 eulisse 1.1 %build
47     mkdir -p %i
48 elmer 1.14 export ROOTSYS=%_builddir/root
49 dlange 1.103
50 ratnik 1.119 %if "%cmsplatf" == "slc4onl_ia32_gcc346"
51 ratnik 1.111 # Build without mysql, and use system qt.
52     # Also skip xrootd and odbc for online case:
53    
54 dlange 1.103 EXTRA_CONFIG_ARGS="
55 ratnik 1.111 --disable-mysql
56     --disable-xrootd
57     --disable-odbc
58     --enable-qt"
59 dlange 1.103 %else
60     EXTRA_CONFIG_ARGS="
61 ratnik 1.106 --enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
62     --enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
63     --with-ssl-incdir=${OPENSSL_ROOT}/include
64     --with-ssl-libdir=${OPENSSL_ROOT}/lib"
65 dlange 1.103 %endif
66    
67 elmer 1.130 CONFIG_ARGS="--with-f77=${GCC_ROOT}
68     --enable-table
69 eulisse 1.20 --disable-builtin-pcre
70     --disable-builtin-freetype
71     --disable-builtin-zlib
72 elmer 1.98 --with-gccxml=${GCCXML_ROOT}
73 ratnik 1.79 --enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python2.4
74 eulisse 1.2 --enable-explicitlink
75 elmer 1.98 --enable-qtgsi
76 eulisse 1.20 --enable-mathmore
77 eulisse 1.2 --enable-reflex
78     --enable-cintex
79     --enable-minuit2
80 eulisse 1.7 --enable-roofit
81 elmer 1.98 --disable-ldap
82     --disable-krb5
83 eulisse 1.34 --with-gsl-incdir=${GSL_ROOT}/include
84     --with-gsl-libdir=${GSL_ROOT}/lib
85 elmer 1.59 --with-dcap-libdir=${DCAP_ROOT}/lib
86 elmer 1.98 --with-dcap-incdir=${DCAP_ROOT}/include
87     --disable-pgsql
88 dlange 1.103 --disable-xml ${EXTRA_CONFIG_ARGS}"
89 elmer 1.98
90 elmer 1.130 #case %gccver in
91     # 4.*)
92     # CONFIG_ARGS="$CONFIG_ARGS --disable-cern"
93     # ;;
94     #esac
95 elmer 1.84
96 elmer 1.54 case $(uname)-$(uname -p) in
97 eulisse 1.2 Linux-x86_64)
98 elmer 1.136 ./configure linuxx8664gcc $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift --disable-astiff;;
99 elmer 1.54 Linux-i*86)
100 dlange 1.110 ./configure linux $CONFIG_ARGS --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift;;
101 elmer 1.11 Darwin*)
102 elmer 1.98 ./configure macosx $CONFIG_ARGS --disable-rfio;;
103 elmer 1.54 Linux-ppc64*)
104 elmer 1.98 ./configure linux $CONFIG_ARGS --disable-rfio;;
105 eulisse 1.1 esac
106 eulisse 1.2
107 dlange 1.57 make %makeprocesses
108 eulisse 1.20 make cintdlls
109 eulisse 1.1 %install
110     # Override installers if we are using GNU fileutils cp. On OS X
111     # ROOT's INSTALL is defined to "cp -pPR", which only works with
112     # the system cp (/bin/cp). If you have fileutils on fink, you
113     # lose. Check which one is getting picked up and select syntax
114     # accordingly. (FIXME: do we need to check that -P is accepted?)
115     if (cp --help | grep -e '-P.*--parents') >/dev/null 2>&1; then
116     cp="cp -dpR"
117     else
118     cp="cp -pPR"
119     fi
120    
121 dlange 1.57 export ROOTSYS=%i
122 eulisse 1.5 make INSTALL="$cp" INSTALLDATA="$cp" install
123 dlange 1.57 mkdir -p $ROOTSYS/lib/python
124 elmer 1.130 cp -r cint/reflex/python/genreflex $ROOTSYS/lib/python
125 eulisse 1.35 #
126 elmer 1.98
127     # SCRAM ToolBox toolfile
128     mkdir -p %i/etc/scram.d
129     # rootcore toolfile
130     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore
131     <doc type=BuildSystem::ToolDoc version=1.0>
132     <Tool name=rootcore version=%v>
133     <info url="http://root.cern.ch/root/"></info>
134     <lib name=Cint>
135     <lib name=Core>
136 ratnik 1.106 <lib name=RIO>
137     <lib name=Net>
138 elmer 1.98 <lib name=Tree>
139     <Client>
140     <Environment name=ROOTCORE_BASE default="%i"></Environment>
141     <Environment name=LIBDIR default="$ROOTCORE_BASE/lib"></Environment>
142     <Environment name=INCLUDE default="$ROOTCORE_BASE/include"></Environment>
143     <Environment name=INCLUDE default="$ROOTCORE_BASE/cint"></Environment>
144     </Client>
145     <use name=sockets>
146     <use name=pcre>
147     <use name=zlib>
148     <Runtime name=PATH value="$ROOTCORE_BASE/bin" type=path>
149     <Runtime name=ROOTSYS value="$ROOTCORE_BASE/">
150     <Runtime name=PYTHONPATH value="$ROOTCORE_BASE/lib" type=path>
151     </Tool>
152     EOF_TOOLFILE
153    
154 elmer 1.121 # root toolfile, alias for rootphysics. Using rootphysics is preferred.
155 elmer 1.98 cat << \EOF_TOOLFILE >%i/etc/scram.d/root
156     <doc type=BuildSystem::ToolDoc version=1.0>
157     <Tool name=root version=%v>
158     <info url="http://root.cern.ch/root/"></info>
159 elmer 1.121 <use name=rootphysics>
160     </Tool>
161     EOF_TOOLFILE
162    
163     # roothistmatrix toolfile
164     cat << \EOF_TOOLFILE >%i/etc/scram.d/roothistmatrix
165     <doc type=BuildSystem::ToolDoc version=1.0>
166     <Tool name=roothistmatrix version=%v>
167     <info url="http://root.cern.ch/root/"></info>
168 elmer 1.98 <lib name=Hist>
169     <lib name=Matrix>
170 elmer 1.121 <use name=ROOTCore>
171     </Tool>
172     EOF_TOOLFILE
173    
174     # rootphysics toolfile
175     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootphysics
176     <doc type=BuildSystem::ToolDoc version=1.0>
177     <Tool name=rootphysics version=%v>
178     <info url="http://root.cern.ch/root/"></info>
179 elmer 1.98 <lib name=Physics>
180 elmer 1.121 <use name=roothistmatrix>
181 elmer 1.98 </Tool>
182     EOF_TOOLFILE
183    
184 elmer 1.121 # rootgraphics toolfile, identical to old "root" toolfile
185     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootgraphics
186 elmer 1.120 <doc type=BuildSystem::ToolDoc version=1.0>
187 elmer 1.121 <Tool name=rootgraphics version=%v>
188 elmer 1.120 <info url="http://root.cern.ch/root/"></info>
189 elmer 1.121 <lib name=TreePlayer>
190     <lib name=Gpad>
191     <lib name=Graf3d>
192     <lib name=Graf>
193 elmer 1.120 <lib name=Hist>
194     <lib name=Matrix>
195 elmer 1.121 <lib name=Physics>
196     <lib name=Postscript>
197 elmer 1.120 <use name=ROOTCore>
198     </Tool>
199     EOF_TOOLFILE
200    
201 elmer 1.98 # rootcintex toolfile
202     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex
203     <doc type=BuildSystem::ToolDoc version=1.0>
204     <Tool name=rootcintex version=%v>
205     <info url="http://root.cern.ch/root/"></info>
206     <lib name=Cintex>
207     <use name=ROOTRflx>
208     <use name=ROOTCore>
209     </Tool>
210     EOF_TOOLFILE
211    
212     # rootinteractive toolfile
213     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive
214     <doc type=BuildSystem::ToolDoc version=1.0>
215     <Tool name=rootinteractive version=%v>
216     <info url="http://root.cern.ch/root/"></info>
217     <lib name=Rint>
218     <lib name=GQt>
219     <use name=qt>
220     <use name=libjpg>
221     <use name=libpng>
222     <use name=ROOT>
223     </Tool>
224     EOF_TOOLFILE
225    
226     # rootmath toolfile
227     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath
228     <doc type=BuildSystem::ToolDoc version=1.0>
229     <Tool name=rootmath version=%v>
230     <info url="http://root.cern.ch/root/"></info>
231     <lib name=MathCore>
232     <lib name=MathMore>
233 elmer 1.130 <lib name=GenVector>
234 elmer 1.98 <use name=ROOTCore>
235     <use name=gsl>
236     </Tool>
237     EOF_TOOLFILE
238    
239     # rootminuit toolfile
240     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit
241     <doc type=BuildSystem::ToolDoc version=1.0>
242     <Tool name=rootminuit version=%v>
243     <info url="http://root.cern.ch/root/"></info>
244     <lib name=Minuit>
245     <use name=ROOT>
246     </Tool>
247     EOF_TOOLFILE
248    
249     # rootminuit2 toolfile
250     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2
251     <doc type=BuildSystem::ToolDoc version=1.0>
252     <Tool name=rootminuit2 version=%v>
253     <info url="http://root.cern.ch/root/"></info>
254     <lib name=Minuit2>
255     <use name=ROOT>
256     </Tool>
257     EOF_TOOLFILE
258    
259     # rootrflx toolfile
260     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx
261     <doc type=BuildSystem::ToolDoc version=1.0>
262     <Tool name=rootrflx version=%v>
263     <info url="http://root.cern.ch/root/"></info>
264     <lib name=Reflex>
265     <Client>
266     <Environment name=ROOTRFLX_BASE default="%i"></Environment>
267     <Environment name=LIBDIR default="$ROOTRFLX_BASE/lib"></Environment>
268     <Environment name=INCLUDE default="$ROOTRFLX_BASE/include"></Environment>
269     </Client>
270     <use name=sockets>
271     <use name=gccxml>
272     <Runtime name=PATH value="$ROOTRFLX_BASE/bin" type=path>
273     <Runtime name=ROOTSYS value="$ROOTRFLX_BASE/">
274     <Runtime name=GENREFLEX value="$ROOTRFLX_BASE/bin/genreflex">
275     </Tool>
276     EOF_TOOLFILE
277    
278     # roothtml toolfile
279     cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml
280     <doc type=BuildSystem::ToolDoc version=1.0>
281     <Tool name=roothtml version=%v>
282     <info url="http://root.cern.ch/root/"></info>
283     <lib name=Html>
284     <use name=ROOT>
285     </Tool>
286     EOF_TOOLFILE
287    
288     # rootroofit toolfile
289     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootroofit
290     <doc type=BuildSystem::ToolDoc version=1.0>
291     <Tool name=rootroofit version=%v>
292     <info url="http://root.cern.ch/root/"></info>
293 ratnik 1.106 <lib name=RooFitCore>
294 elmer 1.98 <lib name=RooFit>
295     <use name=ROOTMinuit>
296     <use name=ROOTHtml>
297     </Tool>
298     EOF_TOOLFILE
299    
300     # rootmlp toolfile
301     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp
302     <doc type=BuildSystem::ToolDoc version=1.0>
303     <Tool name=rootmlp version=%v>
304     <info url="http://root.cern.ch/root/"></info>
305     <lib name=MLP>
306     <use name=ROOT>
307     </Tool>
308     EOF_TOOLFILE
309    
310     # roottmva toolfile
311     cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva
312     <doc type=BuildSystem::ToolDoc version=1.0>
313     <Tool name=roottmva version=%v>
314     <info url="http://root.cern.ch/root/"></info>
315     <lib name=TMVA>
316     <use name=ROOTMLP>
317     </Tool>
318     EOF_TOOLFILE
319    
320     # rootthread toolfile
321     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread
322     <doc type=BuildSystem::ToolDoc version=1.0>
323     <Tool name=rootthread version=%v>
324     <info url="http://root.cern.ch/root/"></info>
325     <lib name=Thread>
326     <use name=ROOTCore>
327     </Tool>
328     EOF_TOOLFILE
329    
330     %post
331     %{relocateConfig}etc/scram.d/root
332     %{relocateConfig}etc/scram.d/rootcore
333 elmer 1.120 %{relocateConfig}etc/scram.d/roothistmatrix
334 elmer 1.121 %{relocateConfig}etc/scram.d/rootphysics
335     %{relocateConfig}etc/scram.d/rootgraphics
336 elmer 1.98 %{relocateConfig}etc/scram.d/rootcintex
337     %{relocateConfig}etc/scram.d/rootinteractive
338     %{relocateConfig}etc/scram.d/rootmath
339     %{relocateConfig}etc/scram.d/rootminuit
340     %{relocateConfig}etc/scram.d/rootminuit2
341     %{relocateConfig}etc/scram.d/rootrflx
342     %{relocateConfig}etc/scram.d/roothtml
343     %{relocateConfig}etc/scram.d/rootroofit
344     %{relocateConfig}etc/scram.d/rootmlp
345     %{relocateConfig}etc/scram.d/roottmva
346     %{relocateConfig}etc/scram.d/rootthread