ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/root.spec
Revision: 1.64
Committed: Mon Sep 3 15:28:45 2007 UTC (17 years, 7 months ago) by muzaffar
Branch: MAIN
CVS Tags: ap-20070926, CMSSW_1_7_0_pre4, dl070921t2, dl070921, dl070920, CMSSW_1_7_0_pre3, dl070916, dl070912, dl070812, sm070912b, sm070912a, sm070911a, dl070909p3, dl070909, CMSSW_1_7_0_pre2, dl070906, dl070905, sm030907a
Changes since 1.63: +191 -1 lines
Log Message:
new spec files for auto generation of toolfile i.e. no need of scramtoolbox

File Contents

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