diff options
author | Karl Berry <karl@freefriends.org> | 2020-11-15 00:53:54 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-11-15 00:53:54 +0000 |
commit | 4e1dd3b1c59e94e9e09358f4edf1d35ebdbfd194 (patch) | |
tree | 65978fdb4ba16a275bd4539b0b931baf26d7a804 /Build/source/build-aux | |
parent | ed41ec13796e005c1f3923e34bfbc5e0185df3ab (diff) |
tl-update-auto
git-svn-id: svn://tug.org/texlive/trunk@56936 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/build-aux')
-rwxr-xr-x | Build/source/build-aux/install-sh | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/Build/source/build-aux/install-sh b/Build/source/build-aux/install-sh index b6d2a909d1b..8cd4f5ca5ea 100755 --- a/Build/source/build-aux/install-sh +++ b/Build/source/build-aux/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2020-11-11.03; # UTC +scriptversion=2020-11-13.01; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -73,6 +73,7 @@ mode=0755 # This is like GNU 'install' as of coreutils 8.32 (2020). mkdir_umask=22 +backupsuffix= chgrpcmd= chmodcmd=$chmodprog chowncmd= @@ -110,6 +111,7 @@ Options: -o USER $chownprog installed files to USER. -p pass -p to $cpprog. -s $stripprog installed files. + -S SUFFIX attempt to back up existing files, with suffix SUFFIX. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. @@ -120,6 +122,8 @@ Environment variables override the default commands: By default, rm is invoked with -f; when overridden with RMPROG, it's up to you to specify -f if you want it. +If -S is not specified, no backups are attempted. + Email bug reports to bug-automake@gnu.org. Automake home page: https://www.gnu.org/software/automake/ " @@ -152,6 +156,9 @@ while test $# -ne 0; do -s) stripcmd=$stripprog;; + -S) backupsuffix="$2" + shift;; + -t) is_target_a_directory=always dst_arg=$2 @@ -486,6 +493,13 @@ do then rm -f "$dsttmp" else + # If $backupsuffix is set, and the file being installed + # already exists, attempt a backup. Don't worry if it fails, + # e.g., if mv doesn't support -f. + if test -n "$backupsuffix" && test -f "$dst"; then + $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null + fi + # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || |