misc: update --version copyright
[debian/gzip] / znew.in
diff --git a/znew.in b/znew.in
index cc2a05c0111f275bf60c71c9607417a5fb762583..29038df5c9451284cd77649c1e737830c83e1a11 100644 (file)
--- a/znew.in
+++ b/znew.in
@@ -1,11 +1,12 @@
 #!/bin/sh
 
 #!/bin/sh
 
-# Copyright (C) 1998, 2002, 2004, 2007 Free Software Foundation
+# Copyright (C) 1998, 2002, 2004, 2007, 2010-2017 Free Software Foundation,
+# Inc.
 # Copyright (C) 1993 Jean-loup Gailly
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # Copyright (C) 1993 Jean-loup Gailly
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
 
 # This program is distributed in the hope that it will be useful,
 # (at your option) any later version.
 
 # This program is distributed in the hope that it will be useful,
 # with this program; if not, write to the Free Software Foundation, Inc.,
 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
 # with this program; if not, write to the Free Software Foundation, Inc.,
 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
-bindir=@bindir@
-case $1 in
---__bindir) bindir=${2?}; shift; shift;;
-esac
-PATH=$bindir:$PATH; export PATH
-
 version="znew (gzip) @VERSION@
 version="znew (gzip) @VERSION@
-Copyright (C) 2007 Free Software Foundation, Inc.
+Copyright (C) 2010-2017 Free Software Foundation, Inc.
 This is free software.  You may redistribute copies of it under the terms of
 This is free software.  You may redistribute copies of it under the terms of
-the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
+the GNU General Public License <https://www.gnu.org/licenses/gpl.html>.
 There is NO WARRANTY, to the extent permitted by law.
 
 Written by Jean-loup Gailly."
 There is NO WARRANTY, to the extent permitted by law.
 
 Written by Jean-loup Gailly."
@@ -41,7 +36,7 @@ Options:
   -v     Verbose; display name and statistics for each file compressed.
   -9     Use the slowest compression method (optimal compression).
   -P     Use pipes for the conversion to reduce disk space usage.
   -v     Verbose; display name and statistics for each file compressed.
   -9     Use the slowest compression method (optimal compression).
   -P     Use pipes for the conversion to reduce disk space usage.
-  -K     Keep a .Z file when it is smaller than the .gz file.
+  -K     Keep a .Z file when it is smaller than the .gz file; implies -t.
       --help     display this help and exit
       --version  output version information and exit
 
       --help     display this help and exit
       --version  output version information and exit
 
@@ -58,33 +53,9 @@ new=0
 block=1024
 # block is the disk block size (best guess, need not be exact)
 
 block=1024
 # block is the disk block size (best guess, need not be exact)
 
-warn="(does not preserve modes and timestamp)"
-tmp=${TMPDIR-/tmp}/zfoo.$$
-set -C
-echo hi > $tmp || exit
-if test -z "`(${CPMOD-cpmod} $tmp $tmp) 2>&1`"; then
-  cpmod=${CPMOD-cpmod}
-  warn=""
-fi
-
-if test -z "$cpmod" && ${TOUCH-touch} -r $tmp $tmp 2>/dev/null; then
-  cpmod="${TOUCH-touch}"
-  cpmodarg="-r"
-  warn="(does not preserve file modes)"
-fi
-
-# check if GZIP env. variable uses -S or --suffix
-gzip -q $tmp
-ext=`echo $tmp* | sed "s|$tmp||"`
-rm -f $tmp*
-if test -z "$ext"; then
-  echo znew: error determining gzip extension
-  exit 1
-fi
-if test "$ext" = ".Z"; then
-  echo znew: cannot use .Z as gzip extension.
-  exit 1
-fi
+# Beware -s or --suffix in $GZIP.
+unset GZIP
+ext=.gz
 
 for arg
 do
 
 for arg
 do
@@ -97,7 +68,7 @@ do
 done
 
 if test $# -eq 0; then
 done
 
 if test $# -eq 0; then
-  echo "$usage"
+  echo >&2 "$0: invalid number of operands; try \`$0 --help' for help"
   exit 1
 fi
 
   exit 1
 fi
 
@@ -106,7 +77,7 @@ case "$opt" in
   *t*) check=1; opt=`echo "$opt" | sed 's/t//g'`
 esac
 case "$opt" in
   *t*) check=1; opt=`echo "$opt" | sed 's/t//g'`
 esac
 case "$opt" in
-  *K*) keep=1; opt=`echo "$opt" | sed 's/K//g'`
+  *K*) keep=1; check=1; opt=`echo "$opt" | sed 's/K//g'`
 esac
 case "$opt" in
   *P*) pipe=1; opt=`echo "$opt" | sed 's/P//g'`
 esac
 case "$opt" in
   *P*) pipe=1; opt=`echo "$opt" | sed 's/P//g'`
@@ -116,26 +87,27 @@ if test -n "$opt"; then
 fi
 
 for i do
 fi
 
 for i do
-  n=`echo $i | sed 's/.Z$//'`
+  n=`echo "$i" | sed 's/.Z$//'`
   if test ! -f "$n.Z" ; then
   if test ! -f "$n.Z" ; then
-    echo $n.Z not found
+    echo "$n.Z not found"
     res=1; continue
   fi
   test $keep -eq 1 && old=`wc -c < "$n.Z"`
   if test $pipe -eq 1; then
     if gzip -d < "$n.Z" | gzip $opt > "$n$ext"; then
       # Copy file attributes from old file to new one, if possible.
     res=1; continue
   fi
   test $keep -eq 1 && old=`wc -c < "$n.Z"`
   if test $pipe -eq 1; then
     if gzip -d < "$n.Z" | gzip $opt > "$n$ext"; then
       # Copy file attributes from old file to new one, if possible.
-      test -n "$cpmod" && $cpmod $cpmodarg "$n.Z" "$n$ext" 2> /dev/null
+      touch -r"$n.Z" -- "$n$ext" 2>/dev/null
+      chmod --reference="$n.Z" -- "$n$ext" 2>/dev/null
     else
     else
-      echo error while recompressing $n.Z
+      echo "error while recompressing $n.Z"
       res=1; continue
     fi
   else
     if test $check -eq 1; then
       res=1; continue
     fi
   else
     if test $check -eq 1; then
-      if cp -p "$n.Z" "$n.$$" 2> /dev/null || cp "$n.Z" "$n.$$"; then
-       :
+      if cp -p "$n.Z" "$n.$$"; then
+        :
       else
       else
-       echo cannot backup "$n.Z"
+        echo "cannot backup $n.Z"
         res=1; continue
       fi
     fi
         res=1; continue
       fi
     fi
@@ -143,31 +115,29 @@ for i do
       :
     else
       test $check -eq 1 && mv "$n.$$" "$n.Z"
       :
     else
       test $check -eq 1 && mv "$n.$$" "$n.Z"
-      echo error while uncompressing $n.Z
+      echo "error while uncompressing $n.Z"
       res=1; continue
     fi
     if gzip $opt "$n"; then
       :
     else
       if test $check -eq 1; then
       res=1; continue
     fi
     if gzip $opt "$n"; then
       :
     else
       if test $check -eq 1; then
-       mv "$n.$$" "$n.Z" && rm -f "$n"
-        echo error while recompressing $n
+        mv "$n.$$" "$n.Z" && rm -f "$n"
+        echo "error while recompressing $n"
       else
       else
-       # compress $n  (might be dangerous if disk full)
-        echo error while recompressing $n, left uncompressed
+        # compress $n  (might be dangerous if disk full)
+        echo "error while recompressing $n, left uncompressed"
       fi
       res=1; continue
     fi
   fi
   test $keep -eq 1 && new=`wc -c < "$n$ext"`
   if test $keep -eq 1 && test `expr \( $old + $block - 1 \) / $block` -lt \
       fi
       res=1; continue
     fi
   fi
   test $keep -eq 1 && new=`wc -c < "$n$ext"`
   if test $keep -eq 1 && test `expr \( $old + $block - 1 \) / $block` -lt \
-                             `expr \( $new + $block - 1 \) / $block`; then
+                              `expr \( $new + $block - 1 \) / $block`; then
     if test $pipe -eq 1; then
       rm -f "$n$ext"
     if test $pipe -eq 1; then
       rm -f "$n$ext"
-    elif test $check -eq 1; then
-      mv "$n.$$" "$n.Z" && rm -f "$n$ext"
     else
     else
-      gzip -d "$n$ext" && compress "$n" && rm -f "$n$ext"
+      mv "$n.$$" "$n.Z" && rm -f "$n$ext"
     fi
     echo "$n.Z smaller than $n$ext -- unchanged"
 
     fi
     echo "$n.Z smaller than $n$ext -- unchanged"
 
@@ -177,7 +147,7 @@ for i do
     else
       test $pipe -eq 0 && mv "$n.$$" "$n.Z"
       rm -f "$n$ext"
     else
       test $pipe -eq 0 && mv "$n.$$" "$n.Z"
       rm -f "$n$ext"
-      echo error while testing $n$ext, $n.Z unchanged
+      echo "error while testing $n$ext, $n.Z unchanged"
       res=1; continue
     fi
   elif test $pipe -eq 1; then
       res=1; continue
     fi
   elif test $pipe -eq 1; then