X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=build-aux%2Finstall-sh;h=f56e147640dc843b1fafa0639dea583c1c309496;hb=569c14694b09263fe3238b3a68b6a48535e1599f;hp=1a8353401c4223bf93e7d7dd76164de5400be672;hpb=349957b9249bfbb75e99b03e0cd24431832bfd9e;p=gnulib.git diff --git a/build-aux/install-sh b/build-aux/install-sh index 1a8353401..f56e14764 100755 --- a/build-aux/install-sh +++ b/build-aux/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2005-02-02.21 +scriptversion=2005-07-09.12 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -219,28 +219,28 @@ do # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then - defaultIFS=' - ' - IFS="${IFS-$defaultIFS}" - + case $dstdir in + /*) pathcomp=/ ;; + -*) pathcomp=./ ;; + *) pathcomp= ;; + esac oIFS=$IFS - # Some sh's can't handle IFS=/ for some reason. - IFS='%' - set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` + IFS=/ + set fnord $dstdir shift IFS=$oIFS - pathcomp= + for d + do + test "x$d" = x && continue - while test $# -ne 0 ; do - pathcomp=$pathcomp$1 - shift + pathcomp=$pathcomp$d if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. - test -d "$pathcomp" || exit + test -d "$pathcomp" || exit 1 fi pathcomp=$pathcomp/ done