"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "testsuite/bin/install_test_sh" 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.

install_test_sh  (modules-5.1.1.tar.bz2):install_test_sh  (modules-5.2.0.tar.bz2)
#!/bin/sh #!/bin/sh
# #
# INSTALL_TEST_SH, sh-kind test launcher for install non-reg suite # INSTALL_TEST_SH, sh-kind test launcher for install non-reg suite
# Copyright (C) 2017-2021 Xavier Delaruelle # Copyright (C) 2017-2022 Xavier Delaruelle
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or # the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version. # (at your option) any later version.
# #
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# #
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
########################################################################## ##########################################################################
progpath=$0 progpath=$0
progdir=$(dirname $progpath) progdir=$(dirname "$progpath")
[ -z "$progdir" ] && progdir='.' [ -z "$progdir" ] && progdir='.'
ret=0 ret=0
# print message on stderr then exit # print message on stderr then exit
echo_error() { echo_error() {
echo -e "ERROR: $1" >&2 echo -e "ERROR: $1" >&2
exit 1 exit 1
} }
if [ $# -lt 4 ]; then if [ $# -lt 4 ]; then
skipping to change at line 46 skipping to change at line 46
initfile=$1 initfile=$1
shift shift
mode=$1 mode=$1
shift shift
sh=$1 sh=$1
shift shift
cmdlist=${@} cmdlist=${@}
# get shell kind and options for sublaunch # get shell kind and options for sublaunch
shname=$(basename $sh) shname=$(basename "$sh")
if [ "$shname" = 'ksh93' ]; then if [ "$shname" = 'ksh93' ]; then
shname='ksh' shname='ksh'
fi fi
case "$shname" in case "$shname" in
bash|ksh|zsh) bash|ksh|zsh)
shkind='sh' shkind='sh'
;; ;;
tcsh) tcsh)
shkind='csh' shkind='csh'
;; ;;
skipping to change at line 70 skipping to change at line 70
case "$shkind" in case "$shkind" in
# ignore global csh system init file to avoid side effect # ignore global csh system init file to avoid side effect
csh) csh)
shopts='-f' shopts='-f'
;; ;;
*) *)
shopts='' shopts=''
esac esac
# init module via autoinit cmd if modulecmd.tcl is initfile # init module via autoinit cmd if modulecmd.tcl is initfile
if [ "$(basename $initfile)" = 'modulecmd.tcl' ]; then if [ "$(basename "${initfile}")" = 'modulecmd.tcl' ]; then
autoinit=0 autoinit=0
else else
autoinit=1 autoinit=1
fi fi
if [ $autoinit -eq 0 -a ! -x $initfile ]; then if [ $autoinit -eq 0 ] && [ ! -x "$initfile" ]; then
echo_error "Cannot execute $initfile" echo_error "Cannot execute $initfile"
elif [ $autoinit -ne 0 -a ! -r $initfile ]; then elif [ $autoinit -ne 0 ] && [ ! -r "$initfile" ]; then
echo_error "Cannot read $initfile" echo_error "Cannot read $initfile"
fi fi
# source module init file if first step of given mode # source module init file if first step of given mode
if [ "$mode" = 'top' -o "$mode" = 'sub' -o "$mode" = 'subsub' ]; then if [ "$mode" = 'top' ] || [ "$mode" = 'sub' ] || [ "$mode" = 'subsub' ]; then
if [ $autoinit -eq 0 ]; then if [ $autoinit -eq 0 ]; then
eval "$($initfile $shname autoinit)" eval "$("$initfile" $shname autoinit)"
else else
. $initfile . "$initfile"
fi fi
fi fi
# execute command list or perform recursive call # execute command list or perform recursive call
case "$mode" in case "$mode" in
top|launch) top|launch)
# enable alias resolution on bash for tests # enable alias resolution on bash for tests
if [ "$shname" = 'bash' ]; then if [ "$shname" = 'bash' ]; then
shopt -s expand_aliases shopt -s expand_aliases
# enable word splitting for the below loop on zsh # enable word splitting for the below loop on zsh
elif [ "$shname" = 'zsh' ]; then elif [ "$shname" = 'zsh' ]; then
setopt sh_word_split setopt sh_word_split
fi fi
IFS=';' IFS=';'
for cmd in ${cmdlist}; do for cmd in ${cmdlist}; do
unset IFS unset IFS
eval $cmd eval "$cmd"
ret=$(($ret+$?)) ret=$(($ret+$?))
IFS=';' IFS=';'
done done
unset IFS unset IFS
;; ;;
sub|sublaunch) sub|sublaunch)
$sh $shopts $progdir/install_test_${shkind} $initfile launch $sh "$cmdlist " $sh $shopts $progdir/install_test_${shkind} "$initfile" launch "$sh" "$cmd list"
ret=$? ret=$?
;; ;;
subsub) subsub)
$sh $shopts $progdir/install_test_${shkind} $initfile sublaunch $sh "$cmdl ist" $sh $shopts $progdir/install_test_${shkind} "$initfile" sublaunch "$sh" "$ cmdlist"
ret=$? ret=$?
;; ;;
*) *)
echo_error "Unrecognized mode option. Valid mode are 'top', 'sub', 'subsub '" echo_error "Unrecognized mode option. Valid mode are 'top', 'sub', 'subsub '"
esac esac
# throw command exit code # throw command exit code
exit $ret exit $ret
# vim:set tabstop=3 shiftwidth=3 expandtab autoindent: # vim:set tabstop=3 shiftwidth=3 expandtab autoindent:
 End of changes. 12 change blocks. 
12 lines changed or deleted 12 lines changed or added

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