ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/cms-env.spec
Revision: 1.43
Committed: Thu Jun 28 16:49:50 2007 UTC (17 years, 10 months ago) by elmer
Branch: MAIN
CVS Tags: nr080626_for1612flt, CMSSW_1_6_12, apFor1612v0, apFor1612p3v0, CMSSW_1_6_12_pre2, apFor1612p2v1, apFor1612p2v0, CMSSW_1_6_12_pre1, apFor1612p1v1, apFor1612p1v0, CMSSW_1_6_11, CMSSW_1_7_7, apFor1611v0, apFor1611p1v1, apFor1611p1v0, dl080227for176, CMSSW_1_6_10, apFor1610v0, CMSSW_1_6_10_pre2, CMSSW_1_6_10_pre1, apFor1610p2v0, apFor1610p1v2, CMSSW_1_6_8_FWLITE-root51800, apFor1610p1v1, CMSSW_1_6_9, apFor169v1, CMSSW_1_6_9_pre2, nr080124fwl168a, apFor169p2v2, apFor169p2v1, apFor169p2v0, CMSSW_1_7_5, CMSSW_1_7_5_g491, ap20080116d, ap20080116c, ap20080116b, ap20080116a, ap20080115d, ap20080115c, ap20080115b, ap20080115a, ap20080114b, ap20080114a, CMSSW_1_6_9_pre1, apFor169p1, apFor169p1v5, dl080111, apFor169p1v4, apFor169p1v3, apFor169p1v2, apFor169p1v1, ge20080109-webconddb, ge20080109-sitedb, apFor169p1v0, apFor169v0, CMSSW_1_6_8, CMSSW_1_7_4, CMSSW_1_7_3_g490p1, dl071212t2, dl071212, CMSSW_1_7_3, CMSSW_1_7_2, CMSSW_1_6_8_pre2_FWLITE-root51706, apFor168, CMSSW_1_6_8_pre2, CMSSW_1_7_1, apFor168p2, CMSSW_1_6_8_pre1, apFor168p1, nr071120_fwlite170_1, CMSSW_1_7_0, CMSSW_1_7_0_pre13, dl071114, ap20071113, CMSSW_1_7_0_pre12, CMSSW_1_7_0_pre11, CMSSW_1_6_7_FWLITE, nr071105a, pe20071102b-ports, pe20071102a-ports, CMSSW_1_7_0_pre10, CMSSW_1_7_0_pre9, CMSSW_1_7_0_pre8, CMSSW_1_7_0_pre7, dl071028, nr071026_fwlite167, nr071025_fwlite167, dl071024, nr071023_fwlite170p6, pe20071023-170p6-amd64, pe20071021-170p6-zlib, dl071021t2, dl071021, pe20071021a-ports, dl071020, CMSSW_1_6_7, pe20071019a-for167, CMSSW_1_6_6, nr071017_170p5onl2, CMSSW_1_7_0_pre6, nr071016_170p5onl1, nr071016onl170p5bs, nr071016onl170p5, pe20071015-xrootd, pe20071014-ports, dl071014, pe20071013a-for166p2, nr20071011-bootstrap, pe20071011a-for166, dl071010t2, dl071010, pe20071009a-for166p1, dl071009t2, dl071009, CMSSW_1_7_0_pre5, CMSSW_1_6_5, pe20071006a-for165, CMSSW_1_6_5_pre2, pe20071005a-for165p2, CMSSW_1_6_5_pre1, pe20070930b-for165p1, pe20070930a-for165p1, CMSSW_1_6_4, pe20070929a-for164, nr20070926-bootstrap, CMSSW_1_6_3, pe20070928a-for16Xdpm, dl070926t2, dl070926, pe20070926a-for163, CMSSW_1_6_2, ap-20070926, ap-20070925, pe20070925a-for162, CMSSW_1_6_2_pre1, pe20070922a-for162p1, CMSSW_1_6_1, CMSSW_1_7_0_pre4, pe20070922g-for161p2, pe20070922f-for161p2, pe20070922e-for161p2, pe20070922d-for161p2, pe20070922c-for161p2, pe20070922b-for161p2, pe20070922a-for161p2, dl070921t2, dl070921, dl070920, CMSSW_1_7_0_pre3, CMSSW_1_6_1_pre1, dl070912, dl070812, sm070912b, sm070912a, sm070911a, dl070909p3, dl070909, CMSSW_1_7_0_pre2, dl070906, dl070905, sm030907a, CMSSW_1_6_0, CMSSW_1_6_0_pre14, pe20070831d-160p14, pe20070831c-160p14, pe20070831b-160p14, pe20070831a-160p14, pe20070830a-160p14, CMSSW_1_7_0_pre1, dl070829, CMSSW_1_6_0_DAQ3, CMSSW_1_6_0_pre13, dl070828t2, dl070828, dl070827, dl070826, pe20070826a-160p13, CMSSW_1_6_0_pre12, dl070824, pe20070824b-160p12, pe20070824-160p12, pe20070823-160p12, CMSSW_1_6_0_pre11, CMSSW_1_6_0_pre10, ge20070810-ptc, CMSSW_1_6_0_pre9, CMSSW_1_6_0_pre8, CMSSW_1_6_0_pre7, dl070730, cms160daq1_zhen2, cms160daq1_zhen1, ge20070730-cmsbuild, ge20070729-amd64, CMSSW_1_6_0_pre6, pe20070727-160p6, CMSSW_1_6_0_DAQ1, ge20070726, ge20070724-slc3, nr20070723_fwlite160p5, ap20070723, CMSSW_1_6_0_pre5, dl070721, dl070720_160daq1_1, pe20070720-160daq1, pe20070720-160p5, ge20070718, ge20070717, ap20070717, ge20070713-macosx, ap20070712, ge20070712-migration, ge20070712, ge20070711-prodcommon, CMSSW_1_6_0_pre4, ge20070710-formencode, ge20070709-slc3, ge20070709-macosx, ge20070709a-macosx, ge20070706-macosx, ap20070706, CMSSW_1_6_0_pre3, pe20070705a-160p3, CMSSW_1_6_0_pre2, ge20070705, ge20070704, ge20070703b, pe20070702b-160p3, pe20070702b-160p2, ge20070702-rpm-webtools, CMSSW_1_6_0_pre1, pe20070729b-160p2, pe20070729b-160p1, pe20070729a-160p2, pe20070729a-160p1, pe20070629a-ports, pe20070628e-ports
Changes since 1.42: +1 -1 lines
Log Message:
Force a revision update on this special, singleton rpm

File Contents

# User Rev Content
1 eulisse 1.1 ### RPM cms cms-env 1.0
2     Source: cmsos
3     %prep
4     %build
5     echo $SCRAM_ROOT
6     %install
7     %define scramroot %(echo $SCRAM_ROOT)
8     %define scramv1root %(echo $SCRAMV1_ROOT)
9    
10     mkdir -p %instroot/bin
11     install -m 755 %_sourcedir/cmsos %instroot/bin/cmsos
12 eulisse 1.5 mkdir -p %{instroot}/%{cmsplatf}/etc/profile.d
13    
14 eulisse 1.28 ### Detects the SCRAM_ARCH to be used.
15     cat << \EOF_CMSARCH_SH >%instroot/bin/cmsarch
16     #!/bin/sh
17     osarch=`%instroot/bin/cmsos`
18     compilerv=gcc323
19     # We need to assume 1 compiler per platform.
20     # There is no other way around this.
21 eulisse 1.31 if [ ! "$SCRAM_ARCH" ]
22 eulisse 1.29 then
23     case $osarch in
24     slc3_ia32) compilerv=gcc323;;
25     slc3_amd64) compilerv=gcc344;;
26     slc4_ia32) compilerv=gcc345;;
27 elmer 1.43 slc4_amd64) compilerv=gcc345; osarch=slc4_ia32;;
28 eulisse 1.33 osx104_ia32) compilerv=gcc401;;
29 elmer 1.40 osx104_ppc32) compilerv=gcc400;;
30 eulisse 1.29 esac
31     echo ${osarch}_${compilerv}
32     else
33     echo $SCRAM_ARCH
34     fi
35    
36 eulisse 1.28 EOF_CMSARCH_SH
37     chmod 755 %instroot/bin/cmsarch
38    
39 eulisse 1.9 ### BASH code
40    
41 eulisse 1.1 cat << \EOF_CMSSET_DEFAULT_SH > %instroot/cmsset_default.sh
42     export PATH=%instroot/bin:$PATH
43 eulisse 1.2
44 eulisse 1.22 if [ ! $SCRAM_ARCH ]
45 eulisse 1.19 then
46 eulisse 1.28 SCRAM_ARCH=`%instroot/bin/cmsarch`
47 eulisse 1.19 export SCRAM_ARCH
48 eulisse 1.15 fi
49    
50 eulisse 1.16 here=%{instroot}
51    
52 eulisse 1.10 if [ "$VO_CMS_SW_DIR" != "" ]
53     then
54 eulisse 1.9 here=$VO_CMS_SW_DIR
55     else
56 eulisse 1.12 if [ "$OSG_APP" != "" ]
57     then
58     here=$OSG_APP/cmssoft/cms
59     fi
60 eulisse 1.10 fi
61 eulisse 1.9
62 eulisse 1.14 if [ ! -d $here/${SCRAM_ARCH}/etc/profile.d ]
63 eulisse 1.13 then
64 elmer 1.38 echo "Your shell is not able to find where cmsset_default.sh is located."
65     echo "Either you have not set VO_CMS_SW_DIR or OSG_APP correctly"
66     echo "or SCRAM_ARCH is not set to a valid architecture."
67 eulisse 1.13 fi
68 eulisse 1.9
69 eulisse 1.27 for pkg in `/bin/ls $here/${SCRAM_ARCH}/etc/profile.d/ | grep 'S.*[.]sh'`
70 eulisse 1.5 do
71     source $here/${SCRAM_ARCH}/etc/profile.d/$pkg
72     done
73 eulisse 1.21
74 eulisse 1.22 if [ ! $CMS_PATH ]
75 eulisse 1.21 then
76     export CMS_PATH=$here
77     fi
78 metson 1.32
79     if [ -f $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.sh ]; then
80     . $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.sh
81     fi
82 eulisse 1.1 EOF_CMSSET_DEFAULT_SH
83    
84 eulisse 1.9
85     ### CSH code
86    
87 eulisse 1.1 cat << \EOF_CMSSET_DEFAULT_CSH > %instroot/cmsset_default.csh
88 eulisse 1.7
89 eulisse 1.4 if (${?PATH}) then
90     setenv PATH %instroot/bin:$PATH
91     else
92     setenv PATH %instroot/bin
93     endif
94    
95 eulisse 1.19 if ( ! ${?SCRAM_ARCH}) then
96 eulisse 1.28 setenv SCRAM_ARCH `sh -c %instroot/bin/cmsarch`
97 eulisse 1.25 endif
98 eulisse 1.15
99 eulisse 1.22 set here=%instroot
100 eulisse 1.16
101 eulisse 1.7 if ( ${?VO_CMS_SW_DIR} ) then
102 eulisse 1.23 set here=$VO_CMS_SW_DIR
103 eulisse 1.7 else
104 eulisse 1.12 # OSG
105     if ( ${?OSG_APP} ) then
106 eulisse 1.23 set here=$OSG_APP/cmssoft/cms
107 eulisse 1.12 endif
108     # OSG
109 eulisse 1.7 endif
110    
111     if ( ! -e $here/cmsset_default.csh ) then
112     echo "Please cd into the directory where cmsset_default.csh is."
113     endif
114 eulisse 1.5
115 eulisse 1.27 foreach pkg ( `/bin/ls ${here}/${SCRAM_ARCH}/etc/profile.d/ | grep 'S.*[.]csh'` )
116 eulisse 1.5 source ${here}/${SCRAM_ARCH}/etc/profile.d/$pkg
117     end
118 eulisse 1.21 if ( ! ${?CMS_PATH} ) then
119     setenv CMS_PATH $here
120     endif
121 metson 1.32
122     if( -e $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.csh ) then
123     source $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.csh
124     endif
125 eulisse 1.22 unset here
126 eulisse 1.1 EOF_CMSSET_DEFAULT_CSH
127 eulisse 1.28 touch %instroot/%cmsplatf/etc/profile.d/dummy
128 eulisse 1.8 %pre
129     [ -f $RPM_INSTALL_PREFIX/cmsset_default.sh ] && cp $RPM_INSTALL_PREFIX/cmsset_default.sh $RPM_INSTALL_PREFIX/cmsset_default.sh.old`date +%Y%m%d`
130     [ -f $RPM_INSTALL_PREFIX/cmsset_default.csh ] && cp $RPM_INSTALL_PREFIX/cmsset_default.csh $RPM_INSTALL_PREFIX/cmsset_default.csh.old`date +%Y%m%d`
131     [ -d $RPM_INSTALL_PREFIX/bin ] && cp -r $RPM_INSTALL_PREFIX/bin $RPM_INSTALL_PREFIX/bin.old`date +%Y%m%d`
132 eulisse 1.1 %post
133     echo $RPM_INSTALL_PREFIX
134 eulisse 1.3 perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/cmsset_default.sh
135     perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/cmsset_default.csh
136     perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/bin/cmsos
137 eulisse 1.28 perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/bin/cmsarch
138 eulisse 1.3 %files
139     %i
140     %instroot/cmsset_default.sh
141     %instroot/cmsset_default.csh
142     %instroot/bin/cmsos
143 eulisse 1.28 %instroot/bin/cmsarch
144 eulisse 1.5 %instroot/%cmsplatf/etc/profile.d
145 eulisse 1.6 %exclude %instroot/%cmsplatf/etc/profile.d/*