Revision: | 1.26 |
Committed: | Tue Jul 26 16:45:53 2011 UTC (13 years, 9 months ago) by zafar |
Branch: | MAIN |
CVS Tags: | CMSSW_4_4_5_patch2, CMSSW_4_4_5_patch1, CMSSW_4_4_5, sm120813-44X, CMSSW_4_4_4-ports, CMSSW_4_4_4, sm20120309, sm20120309-ports, sm20120228-44X-ports, sm20120228-44X, sm120220-ports, sm120220, CMSSW_4_4_3_patch1-ports, CMSSW_4_4_3_patch1, vs20120215-44X, vs20120215-44X-ports, da20120205-44X-ports, da20120205-44X, CMSSW_4_4_3-ports, CMSSW_4_4_3, sm120124-ports, da20120123-44X-ports, da20120123-44X, CMSSW_4_4_2_p10JEmalloc, CMSSW_4_4_2_patch10-ports, CMSSW_4_4_2_patch10, azFor442patch10gcc451, azFor442patch10, CMSSW_4_4_2_patch9-ports, CMSSW_4_4_2_patch9, vsFor442patch9gcc451, vsFor442patch9, CMSSW_4_4_2_patch8-ports, CMSSW_4_4_2_patch8, vs20111130-44X-ports, vs20111130-44X, CMSSW_4_4_2_patch7-ports, CMSSW_4_4_2_patch7, azFor442patch7gcc451, azFor442patch7gcc434, CMSSW_4_4_2_patch6-ports, CMSSW_4_4_2_patch6, azFor442patch6gcc451, azFor442patch6gcc434, CMSSW_4_4_2_onlpatch2_ONLINE, CMSSW_4_4_2_patch5-ports, CMSSW_4_4_2_patch5, azFor442patch5gcc451, azFor442patch5gcc434, CMSSW_4_4_2_patch4-ports, CMSSW_4_4_2_patch4, azFor442patch4gcc451, azFor442patch4gcc434, az20111109b-44X, az20111109b-44X-ports, az20111109-44X-ports, az20111109-44X, CMSSW_4_4_2_patch3-ports, CMSSW_4_4_2_patch3, azFor442patch3gcc451, azFor442patch3gcc434, CMSSW_4_4_2_patch2-ports, CMSSW_4_4_2_patch2, CMSSW_4_4_2_patch1-ports, CMSSW_4_4_2_patch1, azFor442patch1gcc451, azFor442patch1gcc434, CMSSW_4_4_2_onlpatch1_ONLINE, CMSSW_4_4_2_ONLINE, CMSSW_4_4_2-ports, CMSSW_4_4_2, azFor442gcc451, azFor442gcc434, CMSSW_4_4_0_patch4-ports, CMSSW_4_4_0_patch4, azFor440patch4gcc451, azFor440patch4gcc434, CMSSW_4_4_1_ONLINE, CMSSW_4_4_1-ports, CMSSW_4_4_1, azFor441gcc451, azFor441gcc434, CMSSW_4_4_0_patch3-ports, CMSSW_4_4_0_patch3, azFor440patch3gcc451, azFor440patch3gcc434, CMSSW_4_4_0_patch2-ports, CMSSW_4_4_0_patch2, azFor440patch2gcc451, azFor440patch2gcc434, CMSSW_4_4_0_patch1-ports, CMSSW_4_4_0_patch1, azFor440patch1gcc451a, azFor440patch1gcc434a, azFor440patch1gcc451, azFor440patch1gcc434, CMSSW_4_4_0-ports, CMSSW_4_4_0, azFor440gcc451, azFor440gcc434, az20110921-44X-ports, az20110921-44X, CMSSW_4_4_0_pre10_ONLINE, fwFor440pre10online, CMSSW_4_4_0_pre10-ports, CMSSW_4_4_0_pre10, azFor440pre10gcc451, azFor440pre10gcc434, az20110906-44X-ports, az20110906-44X, CMSSW_4_4_0_pre9, CMSSW_4_4_0_pre9-ports, azFor440pre9gcc451, azFor440pre9gcc434, az20110821-44X-ports, az20110821-44X, CMSSW_4_4_0_pre8-ports, CMSSW_4_4_0_pre8, azFor440pre8gcc451, azFor440pre8gcc434, az20110809a-44X-ports, az20110809a-44X, az20110809-44X-ports, az20110809-44X, CMSSW_4_4_0_pre7_g494p02-ports, CMSSW_4_4_0_pre7_g494p02, azFor440p7g494p02-g451, azFor440p7g494p02, az20110804-44X-ports, az20110804-44X, CMSSW_4_4_0_pre7-ports, CMSSW_4_4_0_pre7, azFor440pre7gcc451, azFor440pre7gcc434, az20110801-44X, az20110801-44X-ports, CMSSW_4_4_0_pre6-ports, CMSSW_4_4_0_pre6, azFor440pre6gcc451, azFor440pre6gcc434, az20110729-44X-ports, az20110729-44X, DBS_2_1_6-pre1, az20110726a-44X-ports, az20110726a-44X |
Changes since 1.25: | +4 -6 lines |
Log Message: | to be able to pick the correct roofit version while downgrading 44X's root |
# | User | Rev | Content |
---|---|---|---|
1 | zafar | 1.26 | ### RPM lcg roofit 5.28.00a |
2 | elmer | 1.1 | %define svnTag %(echo %realversion | tr '.' '-') |
3 | elmer | 1.14 | Source0: svn://root.cern.ch/svn/root/tags/v%svnTag/roofit?scheme=http&module=roofit&output=/roofit.tgz |
4 | Source1: svn://root.cern.ch/svn/root/tags/v%svnTag/tutorials/?scheme=http&module=tutorials&output=/rootutorials.tgz | ||
5 | elmer | 1.18 | Source2: roofit-5.28.00-build.sh |
6 | elmer | 1.1 | |
7 | zafar | 1.26 | Patch: root-5.22-00a-roofit-silence-static-printout |
8 | elmer | 1.18 | Patch1: roofit-5.24-00-RooFactoryWSTool-include |
9 | elmer | 1.1 | |
10 | Requires: root | ||
11 | |||
12 | %prep | ||
13 | elmer | 1.14 | %setup -b0 -n roofit |
14 | elmer | 1.18 | %patch -p2 |
15 | %patch1 -p1 | ||
16 | elmer | 1.14 | %setup -D -T -b 1 -n tutorials |
17 | elmer | 1.1 | |
18 | %build | ||
19 | elmer | 1.14 | #Copy over the tutorials |
20 | mkdir -p %i/tutorials/ | ||
21 | cd ../tutorials/ | ||
22 | cp -R roofit %i/tutorials/ | ||
23 | cp -R roostats %i/tutorials/ | ||
24 | elmer | 1.18 | cp -R histfactory %i/tutorials/ |
25 | elmer | 1.14 | |
26 | cd ../roofit/ | ||
27 | elmer | 1.18 | mkdir -p %i/config |
28 | cp histfactory/config/prepareHistFactory %i/config/ | ||
29 | cp %_sourcedir/roofit-5.28.00-build.sh build.sh | ||
30 | elmer | 1.1 | chmod +x build.sh |
31 | elmer | 1.6 | # Remove an extra -m64 from Wouter's build script (in CXXFLAGS and LDFLAGS) |
32 | elmer | 1.2 | perl -p -i -e 's|-m64 ||' build.sh |
33 | dsr | 1.9 | case %cmsplatf in |
34 | osx10[0-9]_* ) | ||
35 | # Change gawk to awk | ||
36 | perl -p -i -e 's|gawk|awk|' build.sh | ||
37 | # -soname not on osx | ||
38 | perl -p -i -e 's|-Wl,-soname,\S*\.so|-dynamiclib|' build.sh | ||
39 | ;; | ||
40 | esac | ||
41 | |||
42 | elmer | 1.1 | ./build.sh |
43 | mv build/lib %i/ | ||
44 | mkdir %i/include | ||
45 | cp -r build/inc/* %i/include | ||
46 | elmer | 1.19 | # Change name of one binary by hand |
47 | mkdir %i/bin | ||
48 | mv build/bin/MakeModelAndMeasurements %i/bin/hist2workspace | ||
49 | eulisse | 1.20 | # On macosx we cannot simply rename libraries and executables. |
50 | case %cmsos in | ||
51 | osx*) | ||
52 | install_name_tool -change MakeModelAndMeasurements hist2workspace -id hist2workspace %i/bin/hist2workspace | ||
53 | find %i/lib -name "*.so" -exec install_name_tool -change build/lib/libRooStats.so libRooStats.so {} \; | ||
54 | find %i/lib -name "*.so" -exec install_name_tool -change build/lib/libRooFitCore.so libRooFitCore.so {} \; | ||
55 | find %i/lib -name "*.so" -exec install_name_tool -change build/lib/libRooFit.so libRooFit.so {} \; | ||
56 | elmer | 1.21 | find %i/lib -name "*.so" -exec install_name_tool -change build/lib/libHistFactory.so libHistFactory.so {} \; |
57 | eulisse | 1.20 | find %i/bin -type f -exec install_name_tool -change build/lib/libRooStats.so libRooStats.so {} \; |
58 | find %i/bin -type f -exec install_name_tool -change build/lib/libRooFitCore.so libRooFitCore.so {} \; | ||
59 | find %i/bin -type f -exec install_name_tool -change build/lib/libRooFit.so libRooFit.so {} \; | ||
60 | elmer | 1.21 | find %i/bin -type f -exec install_name_tool -change build/lib/libHistFactory.so libHistFactory.so {} \; |
61 | eulisse | 1.20 | ;; |
62 | esac | ||
63 | elmer | 1.12 | |
64 | elmer | 1.14 | %install |
65 | |||
66 | elmer | 1.12 | # SCRAM ToolBox toolfile |
67 | mkdir -p %i/etc/scram.d | ||
68 | |||
69 | # rootroofitcore toolfile | ||
70 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roofitcore.xml | ||
71 | <tool name="roofitcore" version="%v"> | ||
72 | <info url="http://root.cern.ch/root/"/> | ||
73 | <lib name="RooFitCore"/> | ||
74 | <client> | ||
75 | <environment name="ROOFIT_BASE" default="%i"/> | ||
76 | <environment name="LIBDIR" default="$ROOFIT_BASE/lib"/> | ||
77 | <environment name="INCLUDE" default="$ROOFIT_BASE/include"/> | ||
78 | </client> | ||
79 | <use name="rootcore"/> | ||
80 | <use name="roothistmatrix"/> | ||
81 | <use name="rootgpad"/> | ||
82 | <use name="rootminuit"/> | ||
83 | </tool> | ||
84 | EOF_TOOLFILE | ||
85 | |||
86 | # rootroofit toolfile | ||
87 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roofit.xml | ||
88 | <tool name="roofit" version="%v"> | ||
89 | <info url="http://root.cern.ch/root/"/> | ||
90 | <lib name="RooFit"/> | ||
91 | <use name="roofitcore"/> | ||
92 | </tool> | ||
93 | EOF_TOOLFILE | ||
94 | |||
95 | # rootroostats toolfile | ||
96 | cat << \EOF_TOOLFILE >%i/etc/scram.d/roostats.xml | ||
97 | <tool name="roostats" version="%v"> | ||
98 | <info url="http://root.cern.ch/root/"/> | ||
99 | <lib name="RooStats"/> | ||
100 | <use name="roofit"/> | ||
101 | </tool> | ||
102 | EOF_TOOLFILE | ||
103 | |||
104 | %post | ||
105 | perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $(find $RPM_INSTALL_PREFIX/%pkgrel/etc/scram.d -type f) | ||
106 | zafar | 1.26 | |
107 |