ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/cms-env.spec
(Generate patch)

Comparing COMP/CMSDIST/cms-env.spec (file contents):
Revision 1.1 by eulisse, Tue Jun 13 09:48:18 2006 UTC vs.
Revision 1.37 by ratnik, Thu Mar 8 21:06:28 2007 UTC

# Line 1 | Line 1
1   ### RPM cms cms-env 1.0
2   Source: cmsos
3 Requires: SCRAM SCRAMV1
3   %prep
4   %build
5   echo $SCRAM_ROOT
# Line 10 | Line 9 | echo $SCRAM_ROOT
9  
10   mkdir -p %instroot/bin
11   install -m 755 %_sourcedir/cmsos %instroot/bin/cmsos
12 + mkdir -p %{instroot}/%{cmsplatf}/etc/profile.d
13 +
14 + ### 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 + if [ ! "$SCRAM_ARCH" ]
22 + then
23 +    case $osarch in
24 +        slc3_ia32) compilerv=gcc323;;
25 +        slc3_amd64) compilerv=gcc344;;
26 +        slc4_ia32) compilerv=gcc345;;
27 +        slc4_amd64) compilerv=gcc345; osarch=slc4_ia32;;
28 +        osx104_ia32) compilerv=gcc401;;
29 +        osx104_pcc32) compilerv=gcc400;;
30 +    esac
31 +    echo ${osarch}_${compilerv}
32 + else
33 +    echo $SCRAM_ARCH
34 + fi
35 +
36 + EOF_CMSARCH_SH
37 + chmod 755 %instroot/bin/cmsarch
38 +
39 + ### BASH code
40 +
41   cat << \EOF_CMSSET_DEFAULT_SH > %instroot/cmsset_default.sh
42   export PATH=%instroot/bin:$PATH
43 < export LD_LIBRARY_PATH=%instroot/lib:$LD_LIBRARY_PATH
44 < export DYLD_FALLBACK_LIBRARY_PATH=%instroot/lib:$DYLD_FALLBACK_LIBRARY
45 < SCRAM_ARCH=$(cmsos); export SCRAM_ARCH
46 < source %instroot/lcg/SCRAM/V0_20_0/etc/profile.d/init.sh
47 < source %instroot/lcg/SCRAMV1/V1_0_2/etc/profile.d/init.sh
43 >
44 > if [ ! $SCRAM_ARCH ]
45 > then
46 >    SCRAM_ARCH=`%instroot/bin/cmsarch`
47 >    export SCRAM_ARCH
48 > fi
49 >
50 > here=%{instroot}
51 >
52 > if [ "$VO_CMS_SW_DIR" != ""  ]
53 > then
54 >    here=$VO_CMS_SW_DIR
55 > else
56 >    if [ "$OSG_APP" != "" ]
57 >    then
58 >        here=$OSG_APP/cmssoft/cms
59 >    fi
60 > fi
61 >
62 > if [ ! -d $here/${SCRAM_ARCH}/etc/profile.d ]
63 > then
64 >    echo "Your shell is not able to find where cmsset_default.sh is. Either cd into the directory where it is or move to zsh"
65 > fi
66 >
67 > for pkg in `/bin/ls $here/${SCRAM_ARCH}/etc/profile.d/ | grep 'S.*[.]sh'`
68 > do
69 >        source $here/${SCRAM_ARCH}/etc/profile.d/$pkg
70 > done
71 >
72 > if [ ! $CMS_PATH ]
73 > then
74 >    export CMS_PATH=$here
75 > fi
76 >
77 > if [ -f $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.sh ]; then
78 >        . $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.sh
79 > fi
80   EOF_CMSSET_DEFAULT_SH
81  
82 +
83 + ### CSH code
84 +
85   cat << \EOF_CMSSET_DEFAULT_CSH > %instroot/cmsset_default.csh
23 setenv PATH %instroot/bin:$PATH
24 setenv LD_LIBRARY_PATH %instroot/lib:$LD_LIBRARY_PATH
25 setenv DYLD_FALLBACK_LIBRARY_PATH %instroot/lib:$DYLD_FALLBACK_LIBRARY
26 setenv SCRAM_ARCH `cmsos`
27 . %instroot/lcg/SCRAM/V0_20_0/etc/profile.d/init.csh
28 . %instroot/lcg/SCRAMV1/V1_0_2/etc/profile.d/init.csh
29 EOF_CMSSET_DEFAULT_CSH
86  
87 + if (${?PATH}) then
88 +    setenv PATH %instroot/bin:$PATH
89 + else
90 +    setenv PATH %instroot/bin
91 + endif
92 +
93 + if ( ! ${?SCRAM_ARCH}) then
94 +    setenv SCRAM_ARCH `sh -c %instroot/bin/cmsarch`
95 + endif
96 +
97 + set here=%instroot
98 +
99 + if ( ${?VO_CMS_SW_DIR} ) then
100 +    set here=$VO_CMS_SW_DIR
101 + else
102 +    # OSG
103 +    if ( ${?OSG_APP} ) then
104 +        set here=$OSG_APP/cmssoft/cms
105 +    endif
106 +    # OSG                      
107 + endif
108 +
109 + if ( ! -e $here/cmsset_default.csh ) then
110 +    echo "Please cd into the directory where cmsset_default.csh is."
111 + endif
112 +
113 + foreach pkg ( `/bin/ls ${here}/${SCRAM_ARCH}/etc/profile.d/ | grep 'S.*[.]csh'` )
114 +        source ${here}/${SCRAM_ARCH}/etc/profile.d/$pkg
115 + end
116 + if ( ! ${?CMS_PATH} ) then
117 +    setenv CMS_PATH $here
118 + endif
119 +
120 + if( -e $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.csh ) then
121 +        source $CMS_PATH/SITECONF/local/JobConfig/cmsset_local.csh
122 + endif
123 + unset here
124 + EOF_CMSSET_DEFAULT_CSH
125 + touch %instroot/%cmsplatf/etc/profile.d/dummy
126 + %pre
127 + [ -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`
128 + [ -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`
129 + [ -d $RPM_INSTALL_PREFIX/bin ] && cp -r $RPM_INSTALL_PREFIX/bin $RPM_INSTALL_PREFIX/bin.old`date +%Y%m%d`
130   %post
131   echo $RPM_INSTALL_PREFIX
132 < perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" %instroot/cmsset_default.sh
133 < perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" %instroot/cmsset_default.csh
134 < perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" %instroot/bin/cmsos
132 > perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/cmsset_default.sh
133 > perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/cmsset_default.csh
134 > perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/bin/cmsos
135 > perl -p -i -e "s|%{instroot}|$RPM_INSTALL_PREFIX|g" $RPM_INSTALL_PREFIX/bin/cmsarch
136 > %files
137 > %i
138 > %instroot/cmsset_default.sh
139 > %instroot/cmsset_default.csh
140 > %instroot/bin/cmsos
141 > %instroot/bin/cmsarch
142 > %instroot/%cmsplatf/etc/profile.d
143 > %exclude %instroot/%cmsplatf/etc/profile.d/*

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines