"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "script/add.modules.in" between
modules-5.1.1.tar.bz2 and modules-5.2.0.tar.bz2

About: The Environment Modules package provides for the dynamic modification of a user’s environment via modulefiles.

add.modules.in  (modules-5.1.1.tar.bz2):add.modules.in  (modules-5.2.0.tar.bz2)
skipping to change at line 34 skipping to change at line 34
ETC=/skel ETC=/skel
/bin/cat <<! /bin/cat <<!
$0 $0
adds a few lines to the beginning of your adds a few lines to the beginning of your
$HOME/.cshrc, $HOME/.login, $HOME/.cshrc, $HOME/.login,
$HOME/.profile, $HOME/.bashrc, and $HOME/.profile, $HOME/.bashrc, and
possibly your $HOME/.kshenv (or whatever is possibly your $HOME/.kshenv (or whatever is
specified by the ENV environment variable). specified by the ENV environment variable).
! !
if [ -r $HOME/.bash_profile ]; then if [ -r "$HOME/.bash_profile" ]; then
/bin/cat <<! /bin/cat <<!
Also your $HOME/.bash_profile will be processed. Also your $HOME/.bash_profile will be processed.
! !
fi fi
if [ -r $HOME/.bash_login ]; then if [ -r "$HOME/.bash_login" ]; then
/bin/cat <<! /bin/cat <<!
Also your $HOME/.bash_login will be processed. Also your $HOME/.bash_login will be processed.
! !
fi fi
/bin/cat <<! /bin/cat <<!
The lines are prepended for sourcing the $ETC/csh.modules or The lines are prepended for sourcing the $ETC/csh.modules or
$ETC/profile.modules files or to define the module alias or function. $ETC/profile.modules files or to define the module alias or function.
Why is it necessary? Why is it necessary?
To ensure that you will have access to modules for all subshells, To ensure that you will have access to modules for all subshells,
these lines need to be added to some of your 'dot' files. these lines need to be added to some of your 'dot' files.
skipping to change at line 63 skipping to change at line 63
.kshenv.old respectively. So if you have any problems you will .kshenv.old respectively. So if you have any problems you will
can easily restore them. can easily restore them.
This is version $VERSION . This is version $VERSION .
! !
/bin/echo "Continue on (type n for no - default=yes)?\c" /bin/echo "Continue on (type n for no - default=yes)?\c"
read xxx read xxx
if [ x$xxx = xn ] if [ x"$xxx" = xn ]
then then
exit 1 exit 1
fi fi
# cleanse old dot file $1=file $2=clean temporary $3=file.old # cleanse old dot file $1=file $2=clean temporary $3=file.old
cleandot() { cleandot() {
/bin/cat <<! /bin/cat <<!
Cleaning $1 Cleaning $1
! !
mv $1 $3 mv "$1" "$3"
sed \ sed \
-e "/^[ ]*if[ ]*([ ]*-e[ ].*\/csh\.modules[ ]*)[ ]*then[ ]*\$/,/^[ ]*endif[ ]*\$/d" \ -e "/^[ ]*if[ ]*([ ]*-e[ ].*\/csh\.modules[ ]*)[ ]*then[ ]*\$/,/^[ ]*endif[ ]*\$/d" \
-e "/^[ ]*if[ ]*\[[ ]*-[ef][ ].*\/profile\.modules[ ]*][ ] *\$/,/^[ ]*fi[ ]*\$/d" \ -e "/^[ ]*if[ ]*\[[ ]*-[ef][ ].*\/profile\.modules[ ]*][ ] *\$/,/^[ ]*fi[ ]*\$/d" \
-e "/^[ ]*if[ ]*\[[ ]*-[ef][ ].*\/profile\.modules[ ]*].*then [ ]*\$/,/^[ ]*fi[ ]*\$/d" \ -e "/^[ ]*if[ ]*\[[ ]*-[ef][ ].*\/profile\.modules[ ]*].*then [ ]*\$/,/^[ ]*fi[ ]*\$/d" \
-e "/^[ ]*if[ ]*([ ]*\$?tcsh[ ]*)[ ]*then[ ]*\$/,/^[ ]*alias[ ]*module[ ]*.*\$/d" \ -e "/^[ ]*if[ ]*([ ]*\$?tcsh[ ]*)[ ]*then[ ]*\$/,/^[ ]*alias[ ]*module[ ]*.*\$/d" \
-e "/^[ ]*module().*[ ]*.*}[ ]*\$/d" \ -e "/^[ ]*module().*[ ]*.*}[ ]*\$/d" \
-e "/^[ ]*case[ ]*\"\$0\"[ ]*in[ ]*\$/,/^[ ]*esac[ ]*\$/d" \ -e "/^[ ]*case[ ]*\"\$0\"[ ]*in[ ]*\$/,/^[ ]*esac[ ]*\$/d" \
-e "/^[ ]*source[ ]*.*\/Modules.*\$/d" \ -e "/^[ ]*source[ ]*.*\/Modules.*\$/d" \
-e "/^[ ]*source[ ]*.*\/csh\.modules[ ]*/d" \ -e "/^[ ]*source[ ]*.*\/csh\.modules[ ]*/d" \
-e "/^[ ]*\.[ ]*.*\/profile\.modules[ ]*/d" \ -e "/^[ ]*\.[ ]*.*\/profile\.modules[ ]*/d" \
$3 > $2 "$3" > "$2"
} }
# find if certain of the dot files have load lines already # find if certain of the dot files have load lines already
findload() { findload() {
grep "^[ ]*module[ ]*load" $1 > /tmp/load.$$ grep "^[ ]*module[ ]*load" "$1" > /tmp/load.$$
} }
# put common stuff derivatives here $1=.dot_file $2=action $3=shell(csh,sh) $4=s kel alternative # put common stuff derivatives here $1=.dot_file $2=action $3=shell(csh,sh) $4=s kel alternative
shdot() { shdot() {
if [ -f $1 ] if [ -f "$1" ]
then then
/bin/cat <<! /bin/cat <<!
Processing your $1 (your old one is $1.old) Processing your $1 (your old one is $1.old)
! !
if cleandot $1 /tmp/$1.$$ $1.old if cleandot "$1" "/tmp/$1.$$" "$1.old"
then then
if [ x$2 = xsource ] if [ x"$2" = xsource ]
then then
/bin/cat <<! /bin/cat <<!
Adding sourcing lines at beginning of $1 Adding sourcing lines at beginning of "$1"
! !
if [ x$3 = xsh ] if [ x"$3" = xsh ]
then then
findload $1.old findload "$1.old"
/bin/cat > $1 <<! /bin/cat > "$1" <<!
if [ -f $ETC/profile.modules ] if [ -f $ETC/profile.modules ]
then then
. $ETC/profile.modules . $ETC/profile.modules
# put your own module loads here # put your own module loads here
! !
if [ -s /tmp/load.$$ ] if [ -s /tmp/load.$$ ]
then then
/bin/cat /tmp/load.$$ >> $1 /bin/cat /tmp/load.$$ >> "$1"
else else
/bin/cat >> $1 <<! /bin/cat >> "$1" <<!
module load null module load null
! !
fi fi
/bin/cat >> $1 <<! /bin/cat >> "$1" <<!
fi fi
! !
elif [ x$3 = xcsh ] elif [ x"$3" = xcsh ]
then then
findload $1.old findload "$1.old"
/bin/cat > $1 <<! /bin/cat > "$1" <<!
if ( -e $ETC/csh.modules ) then if ( -e $ETC/csh.modules ) then
source $ETC/csh.modules source $ETC/csh.modules
# put your own module loads here # put your own module loads here
! !
if [ -s /tmp/load.$$ ] if [ -s /tmp/load.$$ ]
then then
/bin/cat /tmp/load.$$ >> $1 /bin/cat /tmp/load.$$ >> "$1"
else else
/bin/cat >> $1 <<! /bin/cat >> "$1" <<!
module load null module load null
! !
fi fi
/bin/cat >> $1 <<! /bin/cat >> "$1" <<!
endif endif
! !
fi fi
/bin/cat /tmp/$1.$$ >> $1 && /bin/rm /tmp/$1.$$ /bin/cat "/tmp/$1.$$" >> "$1" && /bin/rm "/tmp/$1
elif [ x$2 = xalias ] .$$"
elif [ x"$2" = xalias ]
then then
/bin/cat <<! /bin/cat <<!
Adding alias or function lines at beginning of $1 Adding alias or function lines at beginning of $1
! !
if [ x$3 = xsh ] if [ x"$3" = xsh ]
then then
/bin/cat > $1 <<! /bin/cat > "$1" <<!
case "\$0" in case "\$0" in
-sh|sh|*/sh) modules_shell=sh ;; -sh|sh|*/sh) modules_shell=sh ;;
-ksh|ksh|*/ksh) modules_shell=ksh ;; -ksh|ksh|*/ksh) modules_shell=ksh ;;
-zsh|zsh|*/zsh) modules_shell=zsh ;; -zsh|zsh|*/zsh) modules_shell=zsh ;;
-bash|bash|*/bash) modules_shell=bash ;; -bash|bash|*/bash) modules_shell=bash ;;
esac esac
module() { eval \`@TCLSH@ @libexecdir@/modulecmd.tcl \$modules_shell \$*\`; } module() { eval \`@TCLSH@ '@libexecdir@/modulecmd.tcl' \$modules_shell \$*\`; }
! !
elif [ x$3 = xcsh ] elif [ x"$3" = xcsh ]
then then
/bin/cat > $1 <<! /bin/cat > "$1" <<!
if (\$?tcsh) then if (\$?tcsh) then
set modules_shell="tcsh" set modules_shell="tcsh"
else else
set modules_shell="csh" set modules_shell="csh"
endif endif
alias module 'eval \`@TCLSH@ @libexecdir@/modulecmd.tcl '\$modules_shell '\!*\`' alias module 'eval \`@TCLSH@ "@libexecdir@/modulecmd.tcl" '\$modules_shell '\!*\ `'
! !
fi fi
/bin/cat /tmp/$1.$$ >> $1 && /bin/rm /tmp/$1.$$ /bin/cat "/tmp/$1.$$" >> "$1" && /bin/rm "/tmp/$1 .$$"
fi fi
else else
/bin/echo "Had problems with your $1" /bin/echo "Had problems with your $1"
fi fi
else else
/bin/cat <<! /bin/cat <<!
You had no $1 as I see it. Copying $4 for you. You had no $1 as I see it. Copying $4 for you.
! !
/bin/cp $4 $1 /bin/cp "$4" "$1"
fi fi
/bin/rm /tmp/load.$$ 2> /dev/null /bin/rm /tmp/load.$$ 2> /dev/null
} }
# process files in $HOME # process files in $HOME
cd $HOME cd "$HOME"
if [ -r .bash_profile ]; then if [ -r .bash_profile ]; then
shdot .bash_profile source sh $SKEL/.profile shdot .bash_profile source sh $SKEL/.profile
fi fi
if [ -r .bash_login ]; then if [ -r .bash_login ]; then
shdot .bash_login source sh $SKEL/.profile shdot .bash_login source sh $SKEL/.profile
fi fi
shdot .profile source sh $SKEL/.profile shdot .profile source sh $SKEL/.profile
shdot .bashrc alias sh $SKEL/.kshenv shdot .bashrc alias sh $SKEL/.kshenv
shdot `basename ${ENV:=.kshenv}` alias sh $SKEL/.kshenv shdot "`basename "${ENV:=.kshenv}"`" alias sh $SKEL/.kshenv
shdot .login source csh $SKEL/.login shdot .login source csh $SKEL/.login
shdot .cshrc alias csh $SKEL/.cshrc shdot .cshrc alias csh $SKEL/.cshrc
exit exit
 End of changes. 31 change blocks. 
34 lines changed or deleted 35 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)