1 |
< |
### RPM lcg root 5.10.00c |
2 |
< |
# INITENV +PATH PYTHONPATH %i/lib/python |
3 |
< |
# Source: cvs://:pserver:cvs@root.cern.ch:2401/user/cvs?passwd=Ah<Z&tag=-rv%(echo %v | tr . -)&module=root&output=/%{n}_v%{v}.source.tar.gz |
4 |
< |
Source: ftp://root.cern.ch/%n/%{n}_v%{v}.source.tar.gz |
5 |
< |
Requires: gccxml python qt gsl rfio openssl mysql libpng libjpg libtiff |
6 |
< |
Patch0: root |
1 |
> |
### RPM lcg root 5.14.00g-CMS18l |
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 |
> |
|
7 |
> |
Patch: root-CINT-maxlongline |
8 |
> |
Patch1: root_libpng |
9 |
> |
Patch2: root_PositionVector |
10 |
> |
Patch3: root-fastmerge-ttree |
11 |
> |
Patch4: root_TXMLSetup |
12 |
> |
Patch5: root-Cintex |
13 |
> |
Patch6: root_Reflex_Cintex |
14 |
> |
Patch7: root_CallFunc |
15 |
> |
# The following patch should only be applied for gcc4.x (x>0) and when |
16 |
> |
# using gccxml 0.7.0 |
17 |
> |
Patch9: root_5.14_reflex_gccxml070_update |
18 |
> |
Patch10: root-5.14-xrootd-20071001-0000a |
19 |
> |
Patch11: root-5.14-silence-tmva |
20 |
> |
Patch12: root_5.14-CINTFunctional |
21 |
> |
Patch13: root_5.14-streamerinfo |
22 |
> |
|
23 |
> |
%define cpu %(echo %cmsplatf | cut -d_ -f2) |
24 |
> |
%define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2) |
25 |
> |
|
26 |
> |
Requires: gccxml |
27 |
> |
Requires: python |
28 |
> |
Requires: gsl |
29 |
> |
Requires: castor |
30 |
> |
Requires: libjpg |
31 |
> |
Requires: dcap |
32 |
> |
Requires: pcre |
33 |
> |
|
34 |
> |
%if "%{?online_release:set}" != "set" |
35 |
> |
Requires: qt |
36 |
> |
Requires: openssl |
37 |
> |
Requires: mysql |
38 |
> |
Requires: libpng |
39 |
> |
Requires: zlib |
40 |
> |
Requires: oracle |
41 |
> |
Requires: libungif |
42 |
> |
Requires: xrootd |
43 |
> |
%else |
44 |
> |
%define skiplibtiff true |
45 |
> |
%endif |
46 |
> |
|
47 |
> |
%if "%cpu" == "amd64" |
48 |
> |
%define skiplibtiff true |
49 |
> |
%endif |
50 |
> |
|
51 |
> |
%if "%skiplibtiff" != "true" |
52 |
> |
Requires: libtiff |
53 |
> |
%endif |
54 |
> |
|
55 |
|
%prep |
56 |
|
%setup -n root |
57 |
< |
%patch0 |
57 |
> |
%patch -p0 |
58 |
> |
%patch1 -p2 |
59 |
> |
%patch2 -p2 |
60 |
> |
%patch3 -p1 |
61 |
> |
%patch4 -p0 |
62 |
> |
%patch5 -p1 |
63 |
> |
%patch6 -p0 |
64 |
> |
%patch7 -p0 |
65 |
> |
%if "%cmsplatf" == "slc4_ia32_gcc412" |
66 |
> |
%patch9 -p1 |
67 |
> |
%endif |
68 |
> |
%patch10 -p1 |
69 |
> |
%patch11 -p1 |
70 |
> |
%patch12 -p0 |
71 |
> |
%patch13 -p0 |
72 |
|
|
73 |
|
%build |
74 |
|
mkdir -p %i |
75 |
< |
export ROOTSYS=%i |
75 |
> |
export ROOTSYS=%_builddir/root |
76 |
> |
|
77 |
> |
|
78 |
> |
%if "%{?online_release:set}" == "set" |
79 |
> |
# Use oracle from xdaq installation: |
80 |
> |
ORACLE_ROOT="/opt/xdaq" |
81 |
> |
# Build without mysql, and use system qt and openssl. |
82 |
> |
# Also skip xrootd for online case: |
83 |
> |
EXTRA_CONFIG_ARGS=" |
84 |
> |
--disable-mysql |
85 |
> |
--disable-xrootd |
86 |
> |
--disable-odbc |
87 |
> |
--enable-qt" |
88 |
> |
%else |
89 |
> |
EXTRA_CONFIG_ARGS=" |
90 |
> |
--with-xrootd=$XROOTD_ROOT |
91 |
> |
--enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include |
92 |
> |
--enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include |
93 |
> |
--with-ssl-incdir=${OPENSSL_ROOT}/include |
94 |
> |
--with-ssl-libdir=${OPENSSL_ROOT}/lib" |
95 |
> |
%endif |
96 |
> |
|
97 |
|
CONFIG_ARGS="--enable-table |
98 |
+ |
--disable-builtin-pcre |
99 |
+ |
--disable-builtin-freetype |
100 |
+ |
--disable-builtin-zlib |
101 |
|
--with-gccxml=${GCCXML_ROOT} |
102 |
< |
--enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include |
17 |
< |
--enable-mysql --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include |
102 |
> |
--enable-python --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python2.4 |
103 |
|
--enable-explicitlink |
104 |
< |
--enable-qt --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include |
104 |
> |
--enable-qtgsi |
105 |
|
--enable-mathcore |
106 |
+ |
--enable-mathmore |
107 |
|
--enable-reflex |
108 |
|
--enable-cintex |
109 |
|
--enable-minuit2 |
110 |
|
--enable-roofit |
111 |
|
--disable-ldap |
112 |
|
--disable-krb5 |
113 |
< |
--with-ssl-incdir=${OPENSSL_ROOT}/include |
114 |
< |
--with-ssl-libdir=${OPENSSL_ROOT}/lib |
115 |
< |
--with-shift-incdir=${RFIO_ROOT}/include |
116 |
< |
--with-shift-libdir=${RFIO_ROOT}/lib |
113 |
> |
--with-gsl-incdir=${GSL_ROOT}/include |
114 |
> |
--with-gsl-libdir=${GSL_ROOT}/lib |
115 |
> |
--with-dcap-libdir=${DCAP_ROOT}/lib |
116 |
> |
--with-dcap-incdir=${DCAP_ROOT}/include |
117 |
|
--disable-pgsql |
118 |
< |
--disable-xml" |
118 |
> |
--disable-xml ${EXTRA_CONFIG_ARGS}" |
119 |
|
|
120 |
< |
case $(uname)-$(uname -m) in |
120 |
> |
%if (("%cmsplatf" == "slc4_ia32_gcc412")||("%cmsplatf" == "slc4_amd64_gcc345")) |
121 |
> |
CONFIG_ARGS="$CONFIG_ARGS --disable-cern" |
122 |
> |
%endif |
123 |
> |
|
124 |
> |
case $(uname)-$(uname -p) in |
125 |
|
Linux-x86_64) |
126 |
< |
./configure linuxx8664gcc $CONFIG_ARGS;; |
127 |
< |
Linux*) |
128 |
< |
./configure linux $CONFIG_ARGS;; |
126 |
> |
./configure linuxx8664gcc $CONFIG_ARGS --enable-oracle --with-oracle-libdir=${ORACLE_ROOT}/lib --with-oracle-incdir=${ORACLE_ROOT}/include --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift --disable-astiff --disable-cern;; |
127 |
> |
Linux-i*86) |
128 |
> |
./configure linux $CONFIG_ARGS --enable-oracle --with-oracle-libdir=${ORACLE_ROOT}/lib --with-oracle-incdir=${ORACLE_ROOT}/include --with-shift-libdir=${CASTOR_ROOT}/lib --with-shift-incdir=${CASTOR_ROOT}/include/shift;; |
129 |
|
Darwin*) |
130 |
< |
./configure macosx $CONFIG_ARGS;; |
130 |
> |
./configure macosx $CONFIG_ARGS --disable-rfio;; |
131 |
> |
Linux-ppc64*) |
132 |
> |
./configure linux $CONFIG_ARGS --disable-rfio;; |
133 |
|
esac |
134 |
|
|
135 |
< |
make %makeprocesses |
136 |
< |
|
135 |
> |
make %makeprocesses |
136 |
> |
make cintdlls |
137 |
|
%install |
138 |
|
# Override installers if we are using GNU fileutils cp. On OS X |
139 |
|
# ROOT's INSTALL is defined to "cp -pPR", which only works with |
146 |
|
cp="cp -pPR" |
147 |
|
fi |
148 |
|
|
149 |
< |
export ROOTSYS=%i/root |
149 |
> |
export ROOTSYS=%i |
150 |
|
make INSTALL="$cp" INSTALLDATA="$cp" install |
151 |
< |
mkdir -p %i/root/lib/python |
152 |
< |
cp -r reflex/python/genreflex %i/root/lib/python |
151 |
> |
mkdir -p $ROOTSYS/lib/python |
152 |
> |
cp -r reflex/python/genreflex $ROOTSYS/lib/python |
153 |
> |
# |
154 |
> |
|
155 |
> |
# SCRAM ToolBox toolfile |
156 |
> |
mkdir -p %i/etc/scram.d |
157 |
> |
# rootcore toolfile |
158 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore |
159 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
160 |
> |
<Tool name=rootcore version=%v> |
161 |
> |
<info url="http://root.cern.ch/root/"></info> |
162 |
> |
<lib name=Cint> |
163 |
> |
<lib name=Core> |
164 |
> |
<lib name=Tree> |
165 |
> |
<Client> |
166 |
> |
<Environment name=ROOTCORE_BASE default="%i"></Environment> |
167 |
> |
<Environment name=LIBDIR default="$ROOTCORE_BASE/lib"></Environment> |
168 |
> |
<Environment name=INCLUDE default="$ROOTCORE_BASE/include"></Environment> |
169 |
> |
<Environment name=INCLUDE default="$ROOTCORE_BASE/cint"></Environment> |
170 |
> |
</Client> |
171 |
> |
<use name=sockets> |
172 |
> |
<use name=pcre> |
173 |
> |
<use name=zlib> |
174 |
> |
<Runtime name=PATH value="$ROOTCORE_BASE/bin" type=path> |
175 |
> |
<Runtime name=ROOTSYS value="$ROOTCORE_BASE/"> |
176 |
> |
<Runtime name=PYTHONPATH value="$ROOTCORE_BASE/lib" type=path> |
177 |
> |
</Tool> |
178 |
> |
EOF_TOOLFILE |
179 |
> |
|
180 |
> |
# root toolfile |
181 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/root |
182 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
183 |
> |
<Tool name=root version=%v> |
184 |
> |
<info url="http://root.cern.ch/root/"></info> |
185 |
> |
<lib name=TreePlayer> |
186 |
> |
<lib name=Gpad> |
187 |
> |
<lib name=Graf3d> |
188 |
> |
<lib name=Graf> |
189 |
> |
<lib name=Hist> |
190 |
> |
<lib name=Matrix> |
191 |
> |
<lib name=Physics> |
192 |
> |
<lib name=Postscript> |
193 |
> |
<use name=ROOTCore> |
194 |
> |
</Tool> |
195 |
> |
EOF_TOOLFILE |
196 |
> |
|
197 |
> |
# rootcintex toolfile |
198 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex |
199 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
200 |
> |
<Tool name=rootcintex version=%v> |
201 |
> |
<info url="http://root.cern.ch/root/"></info> |
202 |
> |
<lib name=Cintex> |
203 |
> |
<use name=ROOTRflx> |
204 |
> |
<use name=ROOTCore> |
205 |
> |
</Tool> |
206 |
> |
EOF_TOOLFILE |
207 |
> |
|
208 |
> |
# rootinteractive toolfile |
209 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive |
210 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
211 |
> |
<Tool name=rootinteractive version=%v> |
212 |
> |
<info url="http://root.cern.ch/root/"></info> |
213 |
> |
<lib name=Rint> |
214 |
> |
<lib name=GQt> |
215 |
> |
<use name=qt> |
216 |
> |
<use name=libjpg> |
217 |
> |
<use name=libpng> |
218 |
> |
<use name=ROOT> |
219 |
> |
</Tool> |
220 |
> |
EOF_TOOLFILE |
221 |
> |
|
222 |
> |
# rootmath toolfile |
223 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath |
224 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
225 |
> |
<Tool name=rootmath version=%v> |
226 |
> |
<info url="http://root.cern.ch/root/"></info> |
227 |
> |
<lib name=MathCore> |
228 |
> |
<lib name=MathMore> |
229 |
> |
<use name=ROOTCore> |
230 |
> |
<use name=gsl> |
231 |
> |
</Tool> |
232 |
> |
EOF_TOOLFILE |
233 |
> |
|
234 |
> |
# rootminuit toolfile |
235 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit |
236 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
237 |
> |
<Tool name=rootminuit version=%v> |
238 |
> |
<info url="http://root.cern.ch/root/"></info> |
239 |
> |
<lib name=Minuit> |
240 |
> |
<use name=ROOT> |
241 |
> |
</Tool> |
242 |
> |
EOF_TOOLFILE |
243 |
> |
|
244 |
> |
# rootminuit2 toolfile |
245 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2 |
246 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
247 |
> |
<Tool name=rootminuit2 version=%v> |
248 |
> |
<info url="http://root.cern.ch/root/"></info> |
249 |
> |
<lib name=Minuit2> |
250 |
> |
<use name=ROOT> |
251 |
> |
</Tool> |
252 |
> |
EOF_TOOLFILE |
253 |
> |
|
254 |
> |
# rootrflx toolfile |
255 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx |
256 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
257 |
> |
<Tool name=rootrflx version=%v> |
258 |
> |
<info url="http://root.cern.ch/root/"></info> |
259 |
> |
<lib name=Reflex> |
260 |
> |
<Client> |
261 |
> |
<Environment name=ROOTRFLX_BASE default="%i"></Environment> |
262 |
> |
<Environment name=LIBDIR default="$ROOTRFLX_BASE/lib"></Environment> |
263 |
> |
<Environment name=INCLUDE default="$ROOTRFLX_BASE/include"></Environment> |
264 |
> |
</Client> |
265 |
> |
<use name=sockets> |
266 |
> |
<use name=gccxml> |
267 |
> |
<Runtime name=PATH value="$ROOTRFLX_BASE/bin" type=path> |
268 |
> |
<Runtime name=ROOTSYS value="$ROOTRFLX_BASE/"> |
269 |
> |
<Runtime name=GENREFLEX value="$ROOTRFLX_BASE/bin/genreflex"> |
270 |
> |
</Tool> |
271 |
> |
EOF_TOOLFILE |
272 |
> |
|
273 |
> |
# roothtml toolfile |
274 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml |
275 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
276 |
> |
<Tool name=roothtml version=%v> |
277 |
> |
<info url="http://root.cern.ch/root/"></info> |
278 |
> |
<lib name=Html> |
279 |
> |
<use name=ROOT> |
280 |
> |
</Tool> |
281 |
> |
EOF_TOOLFILE |
282 |
> |
|
283 |
> |
# rootroofit toolfile |
284 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootroofit |
285 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
286 |
> |
<Tool name=rootroofit version=%v> |
287 |
> |
<info url="http://root.cern.ch/root/"></info> |
288 |
> |
<lib name=RooFit> |
289 |
> |
<use name=ROOTMinuit> |
290 |
> |
<use name=ROOTHtml> |
291 |
> |
</Tool> |
292 |
> |
EOF_TOOLFILE |
293 |
> |
|
294 |
> |
# rootmlp toolfile |
295 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp |
296 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
297 |
> |
<Tool name=rootmlp version=%v> |
298 |
> |
<info url="http://root.cern.ch/root/"></info> |
299 |
> |
<lib name=MLP> |
300 |
> |
<use name=ROOT> |
301 |
> |
</Tool> |
302 |
> |
EOF_TOOLFILE |
303 |
> |
|
304 |
> |
# roottmva toolfile |
305 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva |
306 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
307 |
> |
<Tool name=roottmva version=%v> |
308 |
> |
<info url="http://root.cern.ch/root/"></info> |
309 |
> |
<lib name=TMVA> |
310 |
> |
<use name=ROOTMLP> |
311 |
> |
</Tool> |
312 |
> |
EOF_TOOLFILE |
313 |
> |
|
314 |
> |
# rootthread toolfile |
315 |
> |
cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread |
316 |
> |
<doc type=BuildSystem::ToolDoc version=1.0> |
317 |
> |
<Tool name=rootthread version=%v> |
318 |
> |
<info url="http://root.cern.ch/root/"></info> |
319 |
> |
<lib name=Thread> |
320 |
> |
<use name=ROOTCore> |
321 |
> |
</Tool> |
322 |
> |
EOF_TOOLFILE |
323 |
> |
|
324 |
> |
%post |
325 |
> |
%{relocateConfig}etc/scram.d/root |
326 |
> |
%{relocateConfig}etc/scram.d/rootcore |
327 |
> |
%{relocateConfig}etc/scram.d/rootcintex |
328 |
> |
%{relocateConfig}etc/scram.d/rootinteractive |
329 |
> |
%{relocateConfig}etc/scram.d/rootmath |
330 |
> |
%{relocateConfig}etc/scram.d/rootminuit |
331 |
> |
%{relocateConfig}etc/scram.d/rootminuit2 |
332 |
> |
%{relocateConfig}etc/scram.d/rootrflx |
333 |
> |
%{relocateConfig}etc/scram.d/roothtml |
334 |
> |
%{relocateConfig}etc/scram.d/rootroofit |
335 |
> |
%{relocateConfig}etc/scram.d/rootmlp |
336 |
> |
%{relocateConfig}etc/scram.d/roottmva |
337 |
> |
%{relocateConfig}etc/scram.d/rootthread |