diff options
| -rw-r--r-- | ChangeLog | 2 | ||||
| -rwxr-xr-x | install-sh | 23 | 
2 files changed, 15 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog index e5b3b2e8b08..60c7b92a18e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,8 @@  	Merge from gnulib. +	* install-sh: Update to scriptversion 2011-01-19.21. +  	2011-02-13  Bruno Haible  <bruno@clisp.org>  	Consistent macro naming for macros that use GCC __attribute__. diff --git a/install-sh b/install-sh index 3f83ce9b555..a9244eb0786 100755 --- a/install-sh +++ b/install-sh @@ -1,7 +1,7 @@  #!/bin/sh  # install - install a program, script, or datafile -scriptversion=2010-02-06.18; # UTC +scriptversion=2011-01-19.21; # UTC  # This originates from X11R5 (mit/util/scripts/install.sh), which was  # later released in X11R6 (xc/config/util/install.sh) with the @@ -156,6 +156,10 @@ while test $# -ne 0; do      -s) stripcmd=$stripprog;;      -t) dst_arg=$2 +	# Protect names problematic for `test' and other utilities. +	case $dst_arg in +	  -* | [=\(\)!]) dst_arg=./$dst_arg;; +	esac  	shift;;      -T) no_target_directory=true;; @@ -186,6 +190,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then      fi      shift # arg      dst_arg=$arg +    # Protect names problematic for `test' and other utilities. +    case $dst_arg in +      -* | [=\(\)!]) dst_arg=./$dst_arg;; +    esac    done  fi @@ -232,9 +240,9 @@ fi  for src  do -  # Protect names starting with `-'. +  # Protect names problematic for `test' and other utilities.    case $src in -    -*) src=./$src;; +    -* | [=\(\)!]) src=./$src;;    esac    if test -n "$dir_arg"; then @@ -256,12 +264,7 @@ do        echo "$0: no destination specified." >&2        exit 1      fi -      dst=$dst_arg -    # Protect names starting with `-'. -    case $dst in -      -*) dst=./$dst;; -    esac      # If destination is a directory, append the input filename; won't work      # if double slashes aren't ignored. @@ -389,7 +392,7 @@ do        case $dstdir in  	/*) prefix='/';; -	-*) prefix='./';; +	[-=\(\)!]*) prefix='./';;  	*)  prefix='';;        esac @@ -407,7 +410,7 @@ do        for d        do -	test -z "$d" && continue +	test X"$d" = X && continue  	prefix=$prefix$d  	if test -d "$prefix"; then  | 
