# HG changeset patch # User Karl Berry # Date 1038263058 0 # Node ID a3f777b65f7ff588ce3ee69295cb8dd2ebe96c9f # Parent a7b9a50c52139cff5603a6765d643620aae00d25 update from automake for variable quoting, $0 in error msgs, etc. diff --git a/config/install-sh b/config/install-sh --- a/config/install-sh +++ b/config/install-sh @@ -56,7 +56,7 @@ while [ x"$1" != x ]; do case $1 in - -c) instcmd="$cpprog" + -c) instcmd=$cpprog shift continue;; @@ -79,7 +79,7 @@ shift continue;; - -s) stripcmd="$stripprog" + -s) stripcmd=$stripprog shift continue;; @@ -106,7 +106,7 @@ if [ x"$src" = x ] then - echo "install-sh: no input file specified" >&2 + echo "$0: no input file specified" >&2 exit 1 else : @@ -115,7 +115,7 @@ if [ x"$dir_arg" != x ]; then dst=$src src="" - + if [ -d "$dst" ]; then instcmd=: chmodcmd="" @@ -125,20 +125,20 @@ else # Waiting for this to be detected by the "$instcmd $src $dsttmp" command -# might cause directories to be created, which would be especially bad +# might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if [ -f "$src" ] || [ -d "$src" ] then : else - echo "install-sh: $src does not exist" >&2 + echo "$0: $src does not exist" >&2 exit 1 fi - + if [ x"$dst" = x ] then - echo "install-sh: no destination specified" >&2 + echo "$0: no destination specified" >&2 exit 1 else : @@ -149,7 +149,7 @@ if [ -d "$dst" ] then - dst="$dst"/`basename "$src"` + dst=$dst/`basename "$src"` else : fi @@ -165,34 +165,34 @@ if [ ! -d "$dstdir" ]; then defaultIFS=' ' -IFS="${IFS-${defaultIFS}}" +IFS="${IFS-$defaultIFS}" -oIFS="${IFS}" +oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' -set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` -IFS="${oIFS}" +set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS=$oIFS pathcomp='' while [ $# -ne 0 ] ; do - pathcomp="${pathcomp}${1}" + pathcomp=$pathcomp$1 shift - if [ ! -d "${pathcomp}" ] ; + if [ ! -d "$pathcomp" ] ; then - $mkdirprog "${pathcomp}" + $mkdirprog "$pathcomp" else : fi - pathcomp="${pathcomp}/" + pathcomp=$pathcomp/ done fi if [ x"$dir_arg" != x ] then - $doit $instcmd $dst && + $doit $instcmd "$dst" && if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi && if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi && @@ -202,24 +202,24 @@ # If we're going to rename the final executable, determine the name now. - if [ x"$transformarg" = x ] + if [ x"$transformarg" = x ] then dstfile=`basename "$dst"` else - dstfile=`basename "$dst" $transformbasename | + dstfile=`basename "$dst" $transformbasename | sed $transformarg`$transformbasename fi # don't allow the sed command to completely eliminate the filename - if [ x"$dstfile" = x ] + if [ x"$dstfile" = x ] then dstfile=`basename "$dst"` else : fi -# Make a temp file name in the proper directory. +# Make a couple of temp file names in the proper directory. dsttmp=$dstdir/#inst.$$# rmtmp=$dstdir/#rm.$$# @@ -244,7 +244,7 @@ if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi && if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi && -# Now remove or move any old file at destination location. We try this +# Now remove or move aside any old file at destination location. We try this # two ways since rm can't unlink itself on some systems and the destination # file might be busy for other reasons. In this case, the final cleanup # might fail but the new file should still install successfully. @@ -255,21 +255,20 @@ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null || { - echo "install-sh: cannot unlink or rename $dstdir/$dstfile" >&2 + echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit } else - true + : fi } && # Now rename the file to the real destination. - $doit $mvcmd $dsttmp $dstdir/$dstfile + $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" fi && - # The final little trick to "correctly" pass the exit status to the exit trap. {