diff options
author | Karl Berry <karl@freefriends.org> | 2017-09-24 09:20:14 -0700 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-09-24 09:20:14 -0700 |
commit | f969dd52a6974ba617ddb3930012a86b1ea4ce78 (patch) | |
tree | 718ba6ed228f72ffcef228958b1bd6e98480789e /build-aux/install-sh | |
parent | 19882ec15628386c45977ade98293e26791b7a15 (diff) | |
download | gnulib-f969dd52a6974ba617ddb3930012a86b1ea4ce78.tar.gz |
autoupdate
Diffstat (limited to 'build-aux/install-sh')
-rwxr-xr-x | build-aux/install-sh | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/build-aux/install-sh b/build-aux/install-sh index 0360b79e7d..ac159ceda4 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=2016-01-11.22; # UTC +scriptversion=2017-09-23.17; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -271,15 +271,18 @@ do fi dst=$dst_arg - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. + # If destination is a directory, append the input filename. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst - dst=$dstdir/`basename "$src"` + dstbase=`basename "$src"` + case $dst in + */) dst=$dst$dstbase;; + *) dst=$dst/$dstbase;; + esac dstdir_status=0 else dstdir=`dirname "$dst"` @@ -288,6 +291,11 @@ do fi fi + case $dstdir in + */) dstdirslash=$dstdir;; + *) dstdirslash=$dstdir/;; + esac + obsolete_mkdir_used=false if test $dstdir_status != 0; then @@ -427,8 +435,8 @@ do else # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ + dsttmp=${dstdirslash}_inst.$$_ + rmtmp=${dstdirslash}_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 |