ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/root.spec
Revision: 1.75
Committed: Tue Oct 16 08:38:00 2007 UTC (17 years, 6 months ago) by ratnik
Branch: MAIN
CVS Tags: forTony_001, nr071017_170p5onl2, nr071016_170p5onl1
Changes since 1.74: +1 -1 lines
Log Message:
Undo onl version suffix: causes difficulties with downloading source

File Contents

# User Rev Content
1 ratnik 1.75 ### RPM lcg root 5.14.00g-CMS9
2 dlange 1.57 ## INITENV +PATH PYTHONPATH %i/lib/python
3     ## INITENV SET ROOTSYS %i
4 elmer 1.59 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 sashby 1.51
7 dlange 1.58 Patch: root-CINT-maxlongline
8 dlange 1.62 Patch1: root_libpng
9 dlange 1.67 Patch2: root_PositionVector
10     Patch3: root-fastmerge-ttree
11     Patch4: root_TXMLSetup
12     Patch5: root-Cintex
13 elmer 1.63
14 eulisse 1.25 %define cpu %(echo %cmsplatf | cut -d_ -f2)
15 eulisse 1.27 %define pythonv %(echo $PYTHON_VERSION | cut -d. -f1,2)
16 eulisse 1.25
17 ratnik 1.74 Requires: gccxml gsl castor libjpg dcap pcre python
18    
19     %if "%{?online_release:set}" != "set"
20     Requires: qt openssl mysql libpng zlib oracle libungif
21     %else
22     %define skiplibtiff true
23     %endif
24    
25     %if "%cpu" == "amd64"
26     %define skiplibtiff true
27     %endif
28    
29     %if "%skiplibtiff" != "true"
30 eulisse 1.25 Requires: libtiff
31     %endif
32    
33 eulisse 1.1 %prep
34     %setup -n root
35 dlange 1.58 %patch -p0
36 dlange 1.62 %patch1 -p2
37 dlange 1.67 %patch2 -p2
38     %patch3 -p1
39     %patch4 -p0
40     %patch5 -p1
41 eulisse 1.1 %build
42     mkdir -p %i
43 elmer 1.14 export ROOTSYS=%_builddir/root
44 ratnik 1.74
45     %if "%{?online_release:set}" != "set"
46     EXTRA_CONFIG_ARGS="
47     --with-mysql-libdir=${MYSQL_ROOT}/lib --with-mysql-incdir=${MYSQL_ROOT}/include
48     --with-qt-libdir=${QT_ROOT}/lib --with-qt-incdir=${QT_ROOT}/include
49     --with-ssl-incdir=${OPENSSL_ROOT}/include
50     --with-ssl-libdir=${OPENSSL_ROOT}/lib"
51     %else
52     ORACLE_ROOT="/opt/xdaq"
53     EXTRA_CONFIG_ARGS=" --enable-ssl"
54     %endif
55    
56 eulisse 1.25 CONFIG_ARGS="--enable-table
57 eulisse 1.20 --disable-builtin-pcre
58     --disable-builtin-freetype
59     --disable-builtin-zlib
60 eulisse 1.2 --with-gccxml=${GCCXML_ROOT}
61 ratnik 1.74 --enable-python
62     --with-python-libdir=${PYTHON_ROOT}/lib --with-python-incdir=${PYTHON_ROOT}/include/python2.4
63     --enable-mysql
64 eulisse 1.2 --enable-explicitlink
65 eulisse 1.20 --enable-qtgsi
66 ratnik 1.74 --enable-qt
67 eulisse 1.2 --enable-mathcore
68 eulisse 1.20 --enable-mathmore
69 eulisse 1.2 --enable-reflex
70     --enable-cintex
71     --enable-minuit2
72 eulisse 1.7 --enable-roofit
73     --disable-ldap
74     --disable-krb5
75 eulisse 1.34 --with-gsl-incdir=${GSL_ROOT}/include
76     --with-gsl-libdir=${GSL_ROOT}/lib
77 elmer 1.59 --with-dcap-libdir=${DCAP_ROOT}/lib
78     --with-dcap-incdir=${DCAP_ROOT}/include
79 eulisse 1.7 --disable-pgsql
80 ratnik 1.74 --disable-xml ${EXTRA_CONFIG_ARGS}"
81 eulisse 1.2
82 elmer 1.54 case $(uname)-$(uname -p) in
83 eulisse 1.2 Linux-x86_64)
84 elmer 1.61 ./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;;
85 elmer 1.54 Linux-i*86)
86     ./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;;
87 elmer 1.11 Darwin*)
88 elmer 1.54 ./configure macosx $CONFIG_ARGS --disable-rfio;;
89     Linux-ppc64*)
90     ./configure linux $CONFIG_ARGS --disable-rfio;;
91 eulisse 1.1 esac
92 eulisse 1.2
93 dlange 1.57 make %makeprocesses
94 eulisse 1.20 make cintdlls
95 eulisse 1.1 %install
96     # Override installers if we are using GNU fileutils cp. On OS X
97     # ROOT's INSTALL is defined to "cp -pPR", which only works with
98     # the system cp (/bin/cp). If you have fileutils on fink, you
99     # lose. Check which one is getting picked up and select syntax
100     # accordingly. (FIXME: do we need to check that -P is accepted?)
101     if (cp --help | grep -e '-P.*--parents') >/dev/null 2>&1; then
102     cp="cp -dpR"
103     else
104     cp="cp -pPR"
105     fi
106    
107 dlange 1.57 export ROOTSYS=%i
108 eulisse 1.5 make INSTALL="$cp" INSTALLDATA="$cp" install
109 dlange 1.57 mkdir -p $ROOTSYS/lib/python
110     cp -r reflex/python/genreflex $ROOTSYS/lib/python
111 eulisse 1.35 #
112 dlange 1.67
113     # SCRAM ToolBox toolfile
114     mkdir -p %i/etc/scram.d
115     # rootcore toolfile
116     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcore
117     <doc type=BuildSystem::ToolDoc version=1.0>
118     <Tool name=rootcore version=%v>
119     <info url="http://root.cern.ch/root/"></info>
120     <lib name=Cint>
121     <lib name=Core>
122     <lib name=Tree>
123     <Client>
124     <Environment name=ROOTCORE_BASE default="%i"></Environment>
125     <Environment name=LIBDIR default="$ROOTCORE_BASE/lib"></Environment>
126     <Environment name=INCLUDE default="$ROOTCORE_BASE/include"></Environment>
127     <Environment name=INCLUDE default="$ROOTCORE_BASE/cint"></Environment>
128     </Client>
129     <use name=sockets>
130     <use name=pcre>
131     <use name=zlib>
132     <Runtime name=PATH value="$ROOTCORE_BASE/bin" type=path>
133     <Runtime name=ROOTSYS value="$ROOTCORE_BASE/">
134     <Runtime name=PYTHONPATH value="$ROOTCORE_BASE/lib" type=path>
135     </Tool>
136     EOF_TOOLFILE
137    
138     # root toolfile
139     cat << \EOF_TOOLFILE >%i/etc/scram.d/root
140     <doc type=BuildSystem::ToolDoc version=1.0>
141     <Tool name=root version=%v>
142     <info url="http://root.cern.ch/root/"></info>
143     <lib name=TreePlayer>
144     <lib name=Gpad>
145     <lib name=Graf3d>
146     <lib name=Graf>
147     <lib name=Hist>
148     <lib name=Matrix>
149     <lib name=Physics>
150     <lib name=Postscript>
151     <use name=ROOTCore>
152     </Tool>
153     EOF_TOOLFILE
154    
155     # rootcintex toolfile
156     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootcintex
157     <doc type=BuildSystem::ToolDoc version=1.0>
158     <Tool name=rootcintex version=%v>
159     <info url="http://root.cern.ch/root/"></info>
160     <lib name=Cintex>
161     <use name=ROOTRflx>
162     <use name=ROOTCore>
163     </Tool>
164     EOF_TOOLFILE
165    
166     # rootinteractive toolfile
167     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootinteractive
168     <doc type=BuildSystem::ToolDoc version=1.0>
169     <Tool name=rootinteractive version=%v>
170     <info url="http://root.cern.ch/root/"></info>
171     <lib name=Rint>
172     <lib name=GQt>
173     <use name=qt>
174     <use name=libjpg>
175     <use name=libpng>
176     <use name=ROOT>
177     </Tool>
178     EOF_TOOLFILE
179    
180     # rootmath toolfile
181     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmath
182     <doc type=BuildSystem::ToolDoc version=1.0>
183     <Tool name=rootmath version=%v>
184     <info url="http://root.cern.ch/root/"></info>
185     <lib name=MathCore>
186     <lib name=MathMore>
187     <use name=ROOTCore>
188     <use name=gsl>
189     </Tool>
190     EOF_TOOLFILE
191    
192     # rootminuit toolfile
193     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit
194     <doc type=BuildSystem::ToolDoc version=1.0>
195     <Tool name=rootminuit version=%v>
196     <info url="http://root.cern.ch/root/"></info>
197     <lib name=Minuit>
198     <use name=ROOT>
199     </Tool>
200     EOF_TOOLFILE
201    
202     # rootminuit2 toolfile
203     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootminuit2
204     <doc type=BuildSystem::ToolDoc version=1.0>
205     <Tool name=rootminuit2 version=%v>
206     <info url="http://root.cern.ch/root/"></info>
207     <lib name=Minuit2>
208     <use name=ROOT>
209     </Tool>
210     EOF_TOOLFILE
211    
212     # rootrflx toolfile
213     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootrflx
214     <doc type=BuildSystem::ToolDoc version=1.0>
215     <Tool name=rootrflx version=%v>
216     <info url="http://root.cern.ch/root/"></info>
217     <lib name=Reflex>
218     <Client>
219     <Environment name=ROOTRFLX_BASE default="%i"></Environment>
220     <Environment name=LIBDIR default="$ROOTRFLX_BASE/lib"></Environment>
221     <Environment name=INCLUDE default="$ROOTRFLX_BASE/include"></Environment>
222     </Client>
223     <use name=sockets>
224     <use name=gccxml>
225     <Runtime name=PATH value="$ROOTRFLX_BASE/bin" type=path>
226     <Runtime name=ROOTSYS value="$ROOTRFLX_BASE/">
227     <Runtime name=GENREFLEX value="$ROOTRFLX_BASE/bin/genreflex">
228     </Tool>
229     EOF_TOOLFILE
230    
231     # roothtml toolfile
232     cat << \EOF_TOOLFILE >%i/etc/scram.d/roothtml
233     <doc type=BuildSystem::ToolDoc version=1.0>
234     <Tool name=roothtml version=%v>
235     <info url="http://root.cern.ch/root/"></info>
236     <lib name=Html>
237     <use name=ROOT>
238     </Tool>
239     EOF_TOOLFILE
240    
241     # rootroofit toolfile
242     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootroofit
243     <doc type=BuildSystem::ToolDoc version=1.0>
244     <Tool name=rootroofit version=%v>
245     <info url="http://root.cern.ch/root/"></info>
246     <lib name=RooFit>
247     <use name=ROOTMinuit>
248     <use name=ROOTHtml>
249     </Tool>
250     EOF_TOOLFILE
251    
252     # rootmlp toolfile
253     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootmlp
254     <doc type=BuildSystem::ToolDoc version=1.0>
255     <Tool name=rootmlp version=%v>
256     <info url="http://root.cern.ch/root/"></info>
257     <lib name=MLP>
258     <use name=ROOT>
259     </Tool>
260     EOF_TOOLFILE
261    
262     # roottmva toolfile
263     cat << \EOF_TOOLFILE >%i/etc/scram.d/roottmva
264     <doc type=BuildSystem::ToolDoc version=1.0>
265     <Tool name=roottmva version=%v>
266     <info url="http://root.cern.ch/root/"></info>
267     <lib name=TMVA>
268     <use name=ROOTMLP>
269     </Tool>
270     EOF_TOOLFILE
271    
272     # rootthread toolfile
273     cat << \EOF_TOOLFILE >%i/etc/scram.d/rootthread
274     <doc type=BuildSystem::ToolDoc version=1.0>
275     <Tool name=rootthread version=%v>
276     <info url="http://root.cern.ch/root/"></info>
277     <lib name=Thread>
278     <use name=ROOTCore>
279     </Tool>
280     EOF_TOOLFILE
281    
282     %post
283     %{relocateConfig}etc/scram.d/root
284     %{relocateConfig}etc/scram.d/rootcore
285     %{relocateConfig}etc/scram.d/rootcintex
286     %{relocateConfig}etc/scram.d/rootinteractive
287     %{relocateConfig}etc/scram.d/rootmath
288     %{relocateConfig}etc/scram.d/rootminuit
289     %{relocateConfig}etc/scram.d/rootminuit2
290     %{relocateConfig}etc/scram.d/rootrflx
291     %{relocateConfig}etc/scram.d/roothtml
292     %{relocateConfig}etc/scram.d/rootroofit
293     %{relocateConfig}etc/scram.d/rootmlp
294     %{relocateConfig}etc/scram.d/roottmva
295     %{relocateConfig}etc/scram.d/rootthread