document mingw linker fix and close associated bug
[debian/gzip] / zmore.in
index 33f6798e9c8de1b220f393aa99755e1cee570e7d..c5550f5597bab01543ed665f69d4ca20ba41d481 100644 (file)
--- a/zmore.in
+++ b/zmore.in
@@ -1,11 +1,11 @@
 #!/bin/sh
 
-# Copyright (C) 2001, 2002, 2007 Free Software Foundation
+# Copyright (C) 2001-2002, 2007, 2010-2018 Free Software Foundation, Inc.
 # Copyright (C) 1992, 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,
 # with this program; if not, write to the Free Software Foundation, Inc.,
 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
-PATH="BINDIR:$PATH"; export PATH
-
 version="zmore (gzip) @VERSION@
-Copyright (C) 2007 Free Software Foundation, Inc.
+Copyright (C) 2010-2018 Free Software Foundation, Inc.
 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."
@@ -32,57 +30,25 @@ Like 'more', but operate on the uncompressed contents of any compressed FILEs.
 
 Report bugs to <bug-gzip@gnu.org>."
 
-if test "`echo -n a`" = "-n a"; then
-  # looks like a SysV system:
-  n1=''; n2='\c'
-else
-  n1='-n'; n2=''
-fi
-oldtty=`stty -g 2>/dev/null`
-if stty -cbreak 2>/dev/null; then
-  cb='cbreak'; ncb='-cbreak'
-else
-  # 'stty min 1' resets eof to ^a on both SunOS and SysV!
-  cb='min 1 -icanon'; ncb='icanon eof ^d'
-fi
-if test $? -eq 0 && test -n "$oldtty"; then
-   trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15
-else
-   trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15
-fi
+case $1 in
+  --h*) printf '%s\n' "$usage"   || exit 1; exit;;
+  --v*) printf '%s\n' "$version" || exit 1; exit;;
+  --) shift;;
+  -?*) printf >&2 '%s\n' "$0: $1: unknown option; try '$0 --help' for help"
+       exit 1;;
+esac
 
 if test $# = 0; then
     if test -t 0; then
-       echo "$usage"
-    else
-       gzip -cdfq | eval more
+        printf >&2 '%s\n' "$0: missing operands; try '$0 --help' for help"
+        exit 1
     fi
-else
-    FIRST=1
-    for FILE
-    do
-       case $FILE in
-       --h*) exec echo "$usage";;
-       --v*) exec echo "$version";;
-       esac
-
-       < "$FILE" || continue
-       if test $FIRST -eq 0; then
-               echo $n1 "--More--(Next file: $FILE)$n2"
-               stty $cb -echo 2>/dev/null
-               ANS=`dd bs=1 count=1 2>/dev/null`
-               stty $ncb echo 2>/dev/null
-               echo " "
-               case "$ANS" in
-               [eq]) exit;;
-               esac
-       fi
-       if test "$ANS" != 's'; then
-               echo "------> $FILE <------"
-               gzip -cdfq -- "$FILE" | more
-       fi
-       if test -t 1; then
-               FIRST=0
-       fi
-    done
+    set -- -
 fi
+
+for FILE
+do
+  test $# -lt 2 ||
+    printf '::::::::::::::\n%s\n::::::::::::::\n' "$FILE" || break
+  gzip -cdfq -- "$FILE"
+done 2>&1 | eval ${PAGER-more}