document mingw linker fix and close associated bug
[debian/gzip] / ChangeLog
index c1a1076f2bce9c43d2a4922e6d3f0008e1894e20..2e956c2fe6af67436b35a7ad6f9ca70ce9236816 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
-2002-09-30  Paul Eggert  <eggert@twinsun.com>
+2018-12-29  Jim Meyering  <meyering@fb.com>
 
-       * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
-       Revision 1.3.5, dated today.
+       version 1.10
+       * NEWS: Record release date.
 
-       * util.c (fprint_off): Fix bug in printing values greater than
-       10 * 2**32 bytes.  Bug reported by Bryan Andersen.
+2018-12-23  Paul Eggert  <eggert@cs.ucla.edu>
 
-       * Makefile.am (match.$(OBJEXT)): Use .S as extension for $(ASCPP),
-       to keep gcc happy.
-       * configure.in: Likewise.
-       Upgrade assembly-language checking for Autoconf 2.54, using cache vars.
-       (AC_PROG_CPP, AC_OBJEXT): Add.
+       build: enable -Wunreachable-code
+       * configure.ac (nw): Remove -Wunreachable-code from the list of
+       disabled warnings, now that all offending statements have been removed.
 
-       * match.c: Accept __i386 and __i386__ as synonyms for i386.
-       Bug reported by "fork __" <bouloumag@hotmail.com>.
-       
-2002-09-29  Paul Eggert  <eggert@twinsun.com>
+       maint: remove unreachable code
+       Problem reported by Oracle Developer Studio 12.6.
+       In the old days we needed a return statement at the end of
+       the gzip main function to pacify traditional 'lint', but
+       lint checkers nowadays are smarter.
+       * gzip.c (main):
+       * zip.c (file_read): Remove unreachable code.
+
+2018-12-23  Jim Meyering  <meyering@fb.com>
+
+       maint: use a slightly cleaner expression
+       * gzip.c (do_list): Simplify an expression:
+       - int positive_off_t_width = INT_BUFSIZE_BOUND (off_t) - 2;
+       + int positive_off_t_width = INT_STRLEN_BOUND (off_t) - 1;
+
+2018-12-22  Jim Meyering  <meyering@fb.com>
+
+       build: avoid build failure with --enable-gcc-warnings and latest gcc
+       * gzip.c (do_list): There was a loop to compute the maximum width
+       of a decimal positive off_t value. Replace it with assignment to a
+       constant.  Noticed because gcc 9.0.0 20181219 warned about its use
+       as a printf format-width value.
+       (OFF_T_MAX): Remove now-unused definition.
+
+2018-12-21  Jim Meyering  <meyering@fb.com>
+
+       maint: improve a comment
+       * trees.c (flush_block): Fix grammar/spelling in a comment.
+
+       maint: update gnulib to latest; also update bootstrap and init.sh
+
+       build: make the autoconf-2.63 requirement explicit
+       * configure.ac: AC_PREREQ: Require 2.63, not 2.59.
+       Autoconf-2.63 has been required for some time via gnulib.
+       This merely makes it explicit.
+
+2018-11-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix use of uninitialized memory
+       Problem reported by Hanno Böck (Bug#33501).
+       * NEWS: Mention this.
+       * inflate.c (inflate_dynamic): Return if code is invalid.
+       Fix by Mark Adler.
+       * tests/hufts: Add test case for the bug.
+
+2018-08-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * gzip.c (remove_output_file): Fix typo.
+
+       gzip: fix bug in signal-handling fix
+       Problem reported by Johannes Przybilla (Bug#32375#26).
+       * gzip.c (volatile_strcpy): Source is now pointer-to-volatile too.
+       (remove_output_file): Copy remove_ofname to a private nonvolatile
+       copy so that it can be passed to xunlink safely.
+
+2018-08-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix some theoretical races in signal handling
+       Problem reported by Johannes Przybilla (Bug#32375).
+       * NEWS: Mention this.
+       * bootstrap.conf (gnulib_modules): Add sigaction.
+       * gzip.c (SA_NOCLDSTOP, sigprocmask, sigset_t)
+       (siginterrupt) [!SA_NOCLDSTOP]: Remove; Gnulib not supplies these.
+       (remove_ofname): New var.
+       (volatile_strcpy): New function.
+       (create_outfile): Use it.
+       (install_signal_handlers, abort_gzip_signal): Assume sigaction.
+       (remove_output_file): New arg SIGNALS_ALREADY_BLOCKED.
+       All uses changed.  Avoid unnecessary (and racy) call
+       to sigprocmask if this new arg is set.
+       (abort_gzip_signal): Assume C89 or better for signal handler type.
+       * gzip.h (RETSIGTYPE): Remove.
+       * lib/.gitignore, m4/.gitignore:
+       Add files brought in by Gnulib sigaction module.  Sort.
+
+2018-08-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port better to mingw again
+       Problem reported by Bdale Garbee (Bug#32305#8).
+       * gzip.c (do_chown): Use HAVE_FCHOWN || HAVE_CHOWN,
+       which is configured, instead of DO_CHOWN, which is not.
+
+2018-08-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: make the output more reproducible
+       Problem reported by Bernhard M. Wiedemann (Bug#32342).
+       * NEWS: Mention this.
+       * doc/gzip.texi (Overview, Invoking gzip): Document this.
+       * gzip.c (get_input_size_and_time): New function,
+       which implements the change.
+       (treat_stdin, treat_file): Use it.
+       * tests/reproducible: New test.
+       * tests/Makefile.am (TESTS): Add it.
+
+2018-07-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port better to mingw
+       Problem reported by Bdale Garbee for Debian
+       * gzip.c (do_chown): Don't assume uid_t and gid_t.
+
+2018-07-01  Jim Meyering  <meyering@fb.com>
+
+       maint: update gnulib to latest; also update bootstrap and init.sh
+
+2018-06-30  Jim Meyering  <meyering@fb.com>
+
+       build: remove -Wformat-truncation=2 to avoid avoid false-positive
+       * configure.ac (GNULIB_WARN_CFLAGS): Add -Wformat-truncation=2,
+       to disable it when building gnulib with --enable-gcc-warnings.
+       This avoids what looks like a false positive from GCC 9:
+       strerror_r.c: In function 'rpl_strerror_r':
+       strerror_r.c:453:35: error: 'Unknown error ' directive output \
+        truncated writing 14 bytes into a region of size 2 \
+        [-Werror=format-truncation=]
+                snprintf (buf, buflen, "Unknown error %d", errnum);
+                                        ~~^~~~~~~~~~~~
+       In file included from /usr/include/stdio.h:862,
+                        from ./stdio.h:43,
+                        from strerror_r.c:29:
+       /usr/include/bits/stdio2.h:64:10: note: '__builtin___snprintf_chk' \
+         output between 16 and 26 bytes into a destination of size 2
+          return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
+
+2018-01-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       misc: update --version copyright
+       * gunzip.in, gzexe.in, gzip.c, zcat.in, zdiff.in, zforce.in, zgrep.in:
+       * zless.in, zmore.in, znew.in:
+       Update copyright year in --version output to 2018.
+       This part of the year-number update isn’t automated yet.
+
+2018-01-07  Jim Meyering  <meyering@fb.com>
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.9
+       * NEWS: Record release date.
+
+2018-01-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzexe: port to macOS mktemp
+       Problem reported by Jeffrey Walton (Bug#30000).
+       * gzexe.in, zdiff.in, zgrep.in:
+       Don’t assume that mktemp works when given no arguments,
+       as this is not true for macOS.  Instead, use a syntax
+       that should work with coreutils, NetBSD, and macOS.
+       While we’re in the neighborhood, be more consistent about how program
+       names are used in temporary file names.  Also, watch out for TMPDIR
+       values that are not absolute file names, since they can cause problems
+       (e.g., leading "-").
+
+2018-01-03  Jim Meyering  <meyering@fb.com>
+
+       maint: update gnulib and copyright dates for 2018
+       * gnulib: Update to latest.
+       * bootstrap: Update from gnulib.
+       * all files: Run "make update-copyright".
+
+2017-12-16  Jim Meyering  <meyering@fb.com>
+
+       build: update gnulib to latest
+
+2017-11-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: zforce and zmore exit status cleanup
+       Problem reported by Nelson H. F. Beebe.
+       * zforce.in, zmore.in: On failure, exit with status 1 instead of
+       with whatever failing status that printf or mv exited with.
+
+2017-11-23  Paul Eggert  <eggert@cs.ucla.edu>
 
-       * gzip.texi (Overview): Suggest how to use gunzip on zip files.
+       gzexe: ensure file always exists
+       * gzexe.in: When in a filesystem that does not support symlinks,
+       use rm+cp rather than mv to make backups, so that the argument
+       file always exists.
 
-       * zless.1, zless.in: Use LESSOPEN, not PAGER.
-       Suggested by <antos@MAST.queensu.ca>.
+2017-11-23  Jim Meyering  <meyering@fb.com>
 
-2002-09-28  Paul Eggert  <eggert@twinsun.com>
+       build: update gnulib to latest
 
-       * zforce.in: Use shell pattern matching instead of 'expr', which
-       mishandles names like "+".  Remove old check for 14-byte file
-       names on hosts with broken "mv" implementations, as such systems
-       aren't in use any more and it's better nowadays to support file
-       names longer than 14 bytes.  Rely on "mv"'s error-reporting.
-       This fixes a portability bug reported by Ralf Neubauer, along
-       with some other bugs.
-       
-       Remove dangling output symlinks properly.
-       Bug reported by Kalle Olavi Niemitalo.
-       * gzip.c (lstat): New macro, for platforms lacking lstat.
-       (do_stat): Use it.
-       (name_too_long, check_ofname): Use lstat instead of stat.
+2017-11-16  Jim Meyering  <meyering@fb.com>
 
-2002-09-27  Paul Eggert  <eggert@twinsun.com>
+       gzexe: work even without the ability to make a hard link
+       * gzexe.in: When ln -f fails to create a "~"-style backup,
+       fall back to using mv -f.
+       Reported by Bruno Haible in http://debbugs.gnu.org/29266
 
-       * zforce.in: Use "gzip -lv", not "gzip -v".  Patch by Ralf
-       Neubauer.
+2017-11-15  Jim Meyering  <meyering@fb.com>
 
-       * configure.in (ASCPP): Don't use test -a, as POSIX says it's
-       not portable.
+       build: make each generated script unwritable
+       * Makefile.am (.in): Ensure that each generated script is unwritable.
+       This makes it less likely that someone (even me) will mistakenly
+       modify one of those generated files.
+
+2017-11-13  Jim Meyering  <meyering@fb.com>
+
+       zless, znew: exit 1 upon --help or --version write failure
+       * zless.in: Exit 1 upon --help or --version write error.
        * znew.in: Likewise.
-       * zmore.in: Likewise.  Similarly, don't use test -o, or test -t
-       with no operand.
-
-       * gzexe.in (PATH): Set to same as other programs.
-       Don't assume "tail +22" works; POSIX removed this.
-       Check against compressing "tail".
-       Check against "skip=" line with no integer.
-       * zgrep.in: Exit with status 2 if trouble, for consistency with grep.
-       
-       * gzip.c (main): Avoid core dump in diagnostic message if
-       incorrect suffix is given.
-
-2002-09-26  Paul Eggert  <eggert@twinsun.com>
-
-       * zdiff.in: Use "trap -" instead of "trap".  Patch by Nicolas Boullis.
-       Use names, not numbers, for signals.  Patch by Andrew Stribblehill.
-       
-       * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
-       Revision 1.3.4, dated today.
-
-       * README-alpha: Upgrade to Autoconf 2.54 and Automake 1.7.
-       * configure.in (AC_PREREQ): Move to start, and increase to 2.54.
-       (AC_INIT, AM_INIT_AUTOMAKE, AC_CONFIG_SRCDIR, AC_CONFIG_FILES,
-       AC_OUTPUT): Use modern style.
-       (AC_OBJEXT, AC_EXEEXT): Remove; obsolete.
-       (AC_GNU_SOURCE): Add.
-       (AC_HEADER_STDC): Renamed from AC_STDC_HEADERS.
-       (AC_CHECK_HEADERS): Remove stdlib.h, string.h, unistd.h; now done
-       by Autoconf.
-       (AC_SUBST): Remove CFLAGS; now done by Autoconf.
-
-       * gzip.texi: Use the GNU FDL for distribution terms, following the
-       recipe in the Texinfo manual.  Use Automake-generated variables
-       for date and version.
-       * fdl.texi, mdate-sh: New files.
-       * Makefile.am (AM_MAKEINFOFLAGS): Add --no-split.
-       (gzip_TEXINFOS): New macro.
-
-       * tailor.h (NO_DIR): Define to 1, not the empty string.
-       * gzip.c (NO_DIR): Define to 0 if not defined.  All uses changed.
-       (usage): Don't put '#if' inside printf, as the C standard says
-       that it is not portable if printf is a macro.
-
-       Don't lose output when decompressing truncated input.
-       Bug reported by Nadav Har'El.
-       * inflate.c (GETBYTE): New macro.
-       (NEXTBYTE): Use it.
-       (inflate_dynamic, inflate_block): Add a local variable w, needed
-       by GETBYTE.
-
-2002-03-08  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h, gzip.texi,
-       configure.in (AM_INIT_AUTOMAKE): Revision 1.3.3, dated today.
-
-       * README-alpha: Now using latest stable GNU tools.
-       Using the latest tools allows gzip to build correctly on hosts
-       conforming to POSIX 1003.1-2001.
-       
-       * configure.in (match): Use AC_LIBOBJ; Autoconf 2.53 requires it.
-       (LIBOBJS): No longer need to subst, since AC_LIBOBJ does it.
-       (AC_PREREQ): Bump to 2.53.
-
-       * Makefile.am (install-exec-hook, remove-installed-links):
-       Work even when configured with --program-transform-name.
-
-       * gzip.c (license_msg): Update copyright.
-       (z_len): Now of type size_t.
-       
-2001-11-03  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
-       Revision 1.3.2, dated today.
-
-       * Makefile.am (LN_S): New macro.
-       (install-exec-hook): Depend on remove-installed-links.
-       Affect $(DESTDIR)$(bindir), not just $(bindir).
-       (uninstall-local, remove-installed-links): New rules.
-       * README-alpha: This release built with autoconf 2.52f.
-       * TODO: Add rsync patch.
-       * configure.in: Add AC_PREREQ(2.52) and AC_PROG_LN_S.
-       * gzip.1, zmore.1: Fix troff glitches, using Eric S. Raymond's
-       suggestions for inspiration.
-       * m4/shell.m4(AC_PROG_SHELL): Add commentary and cleanup.
-
-       * gzip.texi, gzip.1: Add pointers to RFCs 1951 and 1952.
-       Mention that gzip --list reports file sizes modulo 2^32.
-       * gzip.1: Remove incorrect report of 2 GB bug.  Add copyright notice.
-       
-2001-09-30  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
-       Revision 1.3.1, dated today.
-
-       * INSTALL, getopt.c, getopt.h, getopt1.c, install-sh, missing,
-         mkinstalldirs, texinfo.tex:
-       Sync with latest version in other packages.
-
-       * acinclude.m4, config.guess, config.sub: Remove.
-       * depcomp, rpmatch.c, yesno.c: New files.
-
-       * ChangeLog, README, NEWS, TODO, configure.in, zgrep.in, zmore.in:
-       Add copyright notice.
-
-       * Makefile.am (ACLOCAL_AMFLAGS): New macro.
-       (ACINCLUDE_INPUTS): Remove all but shell.m4.
-       ($(srcdir)/acinclude.m4): Remove.
-       (gzip_sources): Add yesno.c.
-
-       * TODO: Add i18n.
-
-       * configure.in (AC_CANONICAL_HOST): Remove.
-       (AC_AIX, AC_MINIX): Move earlier.
-       (AC_REPLACE_FUNCS): Add rpmatch.
 
-       * gzip.c (main):
-       Report error if -b operand is not a nonnegative integer.
-       (treat_file): Don't assume tab width is 8, or that characters are
-       one column wide.
-       (make_ofname): Use WARN to warn about unchanged files.
-       (get_method): "get newer version of gzip" -> "not supported"
-       (check_ofname): Use yesno instead of checking for 'y' ourselves.
-       (treat_file): Do not assume link count fits in int.
-       
-       * gzip.h (yesno): New decl.
+2017-11-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: script diagnostics status cleanup
+       Problem reported by Bruno Haible (Bug#29266#20).
+       * NEWS: Mention this.
+       * gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zforce.in:
+       * zgrep.in, zless.in, zmore.in, znew.in:
+       Use printf instead of echo if the argument might contain ‘\’, at
+       least in theory.  Don’t assume printf exits with status 1 on
+       failure; it might be some other positive status.
+       * gzexe.in: Use printf consistently instead of echo, and
+       proscribe it instead of echo.
+
+       tests: don’t be so strict about timestamps
+       * tests/timestamp: We’ve had many false alarms about timestamps
+       that are not gzip problems, but instead are problems with ‘touch’.
+       Attempt to work around them by not trusting ‘touch’ so much.
+       Problems and parts of solutions proposed by Bruno Haible.
+
+2017-11-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       build: update gnulib submodule to latest
+
+2017-11-09  Jim Meyering  <meyering@fb.com>
+
+       gnulib: update to latest
+
+       maint: use noreturn, not ATTRIBUTE_NORETURN
+       Use gnulib's stdnoreturn module so we can include
+       <stdnoreturn.h> and the "noreturn" helper macro, thus
+       replacing the definition and uses of ATTRIBUTE_NORETURN.
+       * bootstrap.conf (gnulib_modules): Add stdnoreturn.
+       * gzip.h (ATTRIBUTE_NORETURN): Remove definition.
+       Include stdnoreturn.h and use "noreturn" for each
+       ATTRIBUTE_NORETURN-adorned function declaration.
+       * gzip.c (do_exit, try_help): Use "noreturn".
+
+       tests: unpack-invalid: correct and clean up a test
+       * tests/unpack-invalid: There was a logic error that would have
+       caused this test to ignore a failure if first iteration of the
+       loop set fail=1 and the second one reset it to 0.  Also, use
+       "returns_ 1 ...", to require an exit status of 1.
+
+2017-11-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: diagnose out-of-range MTIME
+       This seems to be the problem reported by Bruno Haible for GNU/Hurd
+       i386 with touch 8.26 and glibc 2.24 (Bug#29033#20).
+       * NEWS: Document this.
+       * gzip.c (get_method): If MTIME is out of range for
+       this platform, warn and substitute the nearest in-range
+       value, instead of silently ignoring it.
+       (do_list): Remove no-longer-needed test for unknown time stamp.
+
+2017-11-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       misc: diagnose year-2038 configuration problems
+       * bootstrap.conf (gnulib_modules): Add year2038.
+       * m4/.gitignore: Add year2038.m4[
+
+       maint: remove IMPORT_FROM_GETTEXT
+       * bootstrap.conf (IMPORT_FROM_GETTEXT): Remove.
+       This is a relic from older Gnulib, and has no effect now.
+
+2017-10-29  Jim Meyering  <meyering@fb.com>
+
+       tests/unpack-valid: port to printf that do not grok hex
+       Many versions of printf do not handle hexadecimal in a format string,
+       so this test would fail.
+       * tests/init.cfg (hex_printf_): Copied from grep's tests/init.cfg.
+       * tests/unpack-valid: Use hex_printf_.
+       Reported by Bruno Haible in https://bugs.gnu.org/29033#26
+
+       gnulib: update to latest; also update tests/init.sh from gnulib
+
+       gzip: fix bug with any upper case custom ('-S'-specified) suffix
+       Any user-specified suffix with an upper case
+       letter would fail to match desired file.
+       * gzip.c (get_suffix): First, arrange to have only one return
+       point rather than two. Put a lower-cased (just-malloc'd) copy
+       of z_suffix in the suffix vector, and free it before returning.
+       * tests/upper-suffix: New file.
+       * tests/Makefile.am (TESTS): Add it.
+       * NEWS: Mention it.
+       Reported by meo@xenialab.it in https://bugs.gnu.org/29006
+
+2017-10-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix bug in unpack EOB check
+       Problem reported by Vidar Holen (Bug#28861).
+       * NEWS: Mention fix.
+       * tests/unpack-valid: New test.
+       * tests/Makefile.am (TESTS): Add it.
+       * unpack.c (build_tree): Report an error if Huffman tree has
+       too few leaves.
+       * unpack.c (unpack): Fix check for EOB.
+       Remove now-unnecessary check for code out of range.
+
+2017-09-19  Jim Meyering  <meyering@fb.com>
+
+       maint: fix "make syntax-check": remove useless HAVE_UTIME_H definitions
+       * tailor.h: Don't define HAVE_UTIME_H.
+
+       maint: avoid "make syntax-check" failure due to old-NEWS modification
+       * cfg.mk (old_NEWS_hash): Update, to reflect recent NEWS correction.
+
+2017-09-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzexe: improve usage diagnostic
+       * gzexe.in (usage): Reword for clarity (Bug#28514).
+
+       misc: update --version copyright
+       * gunzip.in, gzexe.in, gzip.c, zcat.in, zdiff.in, zforce.in, zgrep.in:
+       * zless.in, zmore.in, znew.in: Update copyright year in --version
+       output to 2017.
+
+       maint: prefer HTTPS to HTTP, FTP in URLs
+
+       maint: copy bootstrap from Gnulib
+
+       maint: port to GCC 7.2
+       * configure.ac (WERROR_CFLAGS): Avoid -Wduplicated-branches.
+       * tailor.h (FALLTHROUGH): New macro, taken from Emacs.
+       * gzip.c (main): Use it.
+
+       maint: update .gitignore for recent Gnulib
+
+       build: update gnulib submodule to latest
+
+2017-05-07  Jim Meyering  <meyering@fb.com>
+
+       maint: also distribute a zip-compressed tarball
+       * configure.ac (AM_INIT_AUTOMAKE): Add dist-zip, for
+       those lacking gzip, 7zip, etc.  Suggested by Karl Berry in
+       https://bugs.gnu.org/25538.
+
+2017-03-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port zdiff, zless to Busybox
+       Problem reported by Denys Zagorui (Bug#26088).
+       * tests/zdiff: Check that diff uses POSIX-format output.
+       * zless.in (less_version): Don't exit merely because 'less -V'
+       fails; instead, assume 'less' is compatible with an old version of
+       the original 'less'.  Busybox 'less -V' fails, but apparently its
+       'less' works anyway somehow.
+
+2017-02-06  Jim Meyering  <meyering@fb.com>
+
+       tests: avoid failure when running with no tty
+       * tests/help-version (zcat_setup): Export TERM=dumb, to avoid zless
+       malfunction.  Reported by Assaf Gordon in https://bugs.gnu.org/25636#8
+
+       gnulib: update to latest; and tests/init.sh and bootstrap
+
+       maint: change "time stamp" to "timestamp" globally
+       This avoids a new syntax-check failure.
+       * ChangeLog-2007: Perform that change.
+       * NEWS: Likewise.
+       * algorithm.doc: Likewise.
+       * doc/gzip.texi: Likewise.
+       * gunzip.in: Likewise.
+       * gzip.1: Likewise.
+       * gzip.c: Likewise.
+       * gzip.h: Likewise.
+       * m4/.gitignore: Likewise.
+       * sample/ztouch: Likewise.
+       * tests/timestamp: Likewise.
+       * unzip.c: Likewise.
+       * zip.c: Likewise.
+       * znew.1: Likewise.
+       * cfg.mk: Update the old news hash accordingly.
+
+2017-01-01  Jim Meyering  <meyering@fb.com>
+
+       maint: tweak a distcheck rule
+       * dist-check.mk (my-distcheck): Don't use --disable-nls.
+       That option is now unrecognized.
+
+       maint: update gnulib and copyright dates for 2017
+       * gnulib: Update to latest.
+       * all files: Run "make update-copyright".
+
+2016-11-08  Jim Meyering  <meyering@fb.com>
+
+       maint: use "returns_" rather than explicit comparison with "$?"
+       * tests/zdiff: Use "returns_ 1" rather than testing $? = 1.
+       * tests/hufts: Likewise.
+       * tests/timestamp: Likewise, but s/1/2/.
+
+2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: minor time stamp cleanups
+       * NEWS: Document this.
+       * gzip.c (get_method): Do not warn about MTIME out of range.
+       This should avoid useless chatter on hosts with 32-bit time_t
+       after the year 2038 (!).
+       (do_list): Do not pass junk time stamp to localtime.
+       (copy_stat): Do not report "time stamp restored" if restoration
+       fails.
+
+       gzip: --no-time cleanup
+       Problem reported by Jim Meyering (Bug#24826).
+       * gzip.c (longopts): Remove non-working no-time entry.
+       (help) [UNDOCUMENTED]: Don't document it.
+
+       gzip --no-name: avoid spurious warning
+       Problem reported by Jim Meyering (Bug#24826).
+       * tests/timestamp: Add a test from Jim Meyering to exercise the fix
+       * zip.c (zip): Treat unknown time stamps as 0.
+
+2016-10-24  Jim Meyering  <meyering@fb.com>
+
+       maint: update .gitignore files to ignore more generated files
+
+2016-10-02  Jim Meyering  <meyering@fb.com>
+
+       maint: avoid unwarranted "make syntax-check" failure
+       * tests/timestamp: Reorder "rm" arguments so the doubled-word
+       syntax-check rule does not detect a false positive "in in" here.
+
+       gnulib: update to latest
+
+2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/gzip.texi: Fix off-by-one timestamp.
+
+2016-09-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix some Y2038 etc. bugs
+       * NEWS: Document this.
+       * gzip.c (get_method): Warn about out-of-range MTIME,
+       and ignore it instead of relying on possibly-undefined behavior.
+       * tests/Makefile.am (TESTS): Add timestamp.
+       * tests/timestamp: New test.
+       * zip.c (zip): Warn about out-of-range file time stamp.
+
+2016-08-29  Jim Meyering  <meyering@fb.com>
+
+       maint: fix gzip-specific syntax-check rule
+       * cfg.mk (sc_gzip_copyright_check): This rule had two problems.
+       It was failing erroneously (the copyright date in gzip.c is fine),
+       yet it was complaining.  The first problem is that the rule's
+       diagnostic mentioned the wrong file: lib/version-etc.c, rather than
+       ./gzip.c. The second problem is that it specified this file name
+       via "in_files" rather than the "in_vc_files" variable.
+
+2016-06-12  Paul Eggert  <eggert@penguin.cs.ucla.edu>
+
+       gzip: fix port to Atari by not defining ASMV
+       Problem reported by Helmut Karlowski in: http://bugs.gnu.org/23751
+       * tailor.h (ASMV) [ATARI || atarist]: Do not define.
+
+2016-06-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: drop mentions of Amiga, VMS
+       These platforms were not supported anyway, and their code was
+       suffering from bitrot.  This patch may also fix some file name
+       glitches on MS-Windowsish platforms.
+       * bootstrap.conf (gnulib_modules): Add dosname.
+       * gzip.c: Include dosname.h.
+       (shorten_name, treat_dir): Use last_component rather than looking
+       at path separators by hand.
+       * tailor.h: Remove sections on porting to VMS and to Amiga,
+       since dosname.h doesn't support these platforms anyway.
+       (PATH_SEP2, PATH_SEP3, STDC_HEADERS, SUFFIX_SEP, RECORD_IO)
+       (HAVE_CHOWN, HAVE_LSTAT, HAVE_SYS_DIR_H, direct): Remove.  All
+       uses removed.  Many uses replaced by calls to ISSLASH and/or
+       last_component.
+
+2016-04-29  Jim Meyering  <meyering@fb.com>
+
+       maint: arrange for better URLs in generated announcement message
+       * cfg.mk (url_dir_list): Define.  I had been correcting the generated
+       URLs by hand, just before the announcement.  This is better.
+
+2016-04-26  Jim Meyering  <meyering@fb.com>
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.8
+       * NEWS: Record release date.
+
+       gnulib: update to latest
+
+2016-04-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: simplify by closing ourselves
+       This simplifies the previous fix, by avoiding the use of the
+       closein module.  That module was problematic, as gzip normally
+       does not use stdio for output and never uses it for input.
+       Also, it is a heavyweight module, as it drags many files into lib
+       (c-ctype.c, c-ctype.h, closein.c, closein.h, closeout.c, closeout.h,
+       close-stream.c, close-stream.h, config.charset, c-strcasecmp.c,
+       c-strcaseeq.h, c-strcase.h, c-strncasecmp.c, fpending.c, fpending.h,
+       freadahead.c, freadahead.h, localcharset.c, localcharset.h, mbrtowc.c,
+       mbsinit.c, quotearg.c, quotearg.h, quote.h, ref-add.sin, ref-del.sin,
+       streq.h, wctype-h.c, wctype.in.h) and into m4 (closein.m4, closeout.m4,
+       close-stream.m4, codeset.m4, configmake.m4, fpending.m4, freadahead.m4,
+       glibc21.m4, localcharset.m4, locale-fr.m4, locale-ja.m4, locale-zh.m4,
+       mbrtowc.m4, mbsinit.m4, mbstate_t.m4, quotearg.m4, wctype_h.m4),
+       and these files are thus no longer needed.
+       * bootstrap.conf (gnulib_modules): Remove closein.
+       * gzip.c: Don't include closein.h.
+       (stdin_was_read): New static var.
+       (main): Don't use close_stdin.
+       Invoke finish_out to exit after outputting via stdio's stdout.
+       Close stdin after reading it.
+       Restore previous way of closing stdout.
+       (treat_stdin): Record that stdin was read.
+       (finish_out): New function.
+
+       gzip: fix bug with -l output to pipes
+       Problem reported by Christian Franke via Eric Blake in:
+       http://bugs.gnu.org/23314
+       * NEWS: Mention this.
+       * gzip.c (main): Do not close stdout twice when given -l.
+       Instead, -l now just fflushes stdout, so that fdatasync
+       can synchronize it if --synchronize is also specified.
+       * tests/list: New test case.
+       * tests/Makefile.am (TESTS): Add it.
+
+2016-03-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Port to Oracle Solaris Studio 12.4
+       Problem reported by Kiyoshi KANAZAWA in: http://bugs.gnu.org/23133
+       * NEWS: Document this.
+       * configure.ac (ASMV): Do not define if NO_ASM is
+       anywhere in DEFS; it doesn't need to be surrounded by white space.
+       * lib/match.c: Do not use x86 version if __x86_64__ is defined.
+
+2016-03-27  Jim Meyering  <meyering@fb.com>
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.7
+       * NEWS: Record release date.
+
+2016-03-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Port to NetBSD 7.0
+       Problem reported by Assaf Gordon in: http://bugs.gnu.org/23107#13
+       * gzexe.in, zdiff.in, zgrep.in: Don't rely on mktemp -t,
+       as it has a different meaning in NetBSD.
+
+       * tests/init.sh: Sync from Gnulib.
+
+       Port to Alpine Linux which uses Busybox
+       * Makefile.am (check-local): Use plain diff rather than
+
+2016-03-24  Jim Meyering  <meyering@fb.com>
+
+       gzip: also honor GZIP=--rsyncable
+       * gzip.c (main): Also accept --rsyncable when it is specified
+       via the GZIP environment variable.
+       I noticed this when gzip's "make dist" failed because maint.mk
+       detected that gzip now honors --rsyncable, yet when it set GZIP_ENV
+       to include that, and that propagated via automake-generated code
+       to the GZIP setting used in the "make dist" rule, there, it was not
+       honored, and caused "make dist" to fail.
+
+2016-03-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix typo in previous patch
+
+       Port to Solaris 11 /bin/sh
+       * m4/shell.m4 (AC_PROG_SHELL): Reject Solaris 11 /bin/sh.
+       A problem was reported by Nelson H. F. Beebe for OpenIndiana.
+       I reproduced a problem with different symptoms on Solaris 11.
+       Switching to Bash fixed it, and I hope this fixes it for
+       OpenIndiana too, since both problems appear to be shell-related.
+
+2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: with -f SPECIAL, read SPECIAL just once
+       Problem reported by Fulvio Scapin in: http://bugs.gnu.org/22945
+       * NEWS: Document this.
+       * tests/zgrep-f: Add a test.
+       Adjust a test to cover the case of more than one line in -f's input.
+       * zgrep.in (with_filename): With -f FILE, if FILE is stdin or not
+       a regular file, copy it into a temporary and use the temporary.
+
+2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port to AIX 7.1 + xlc V12.1
+       * inflate.c, unlzw.c, util.c: Include tailor.h after including any
+       system include file that might in turn include signal.h for the
+       first time, so that SIGPIPE is not #defined to 0 prematurely,
+       which clashes with signal.h's SIGPIPE.
+
+2016-03-15  Jim Meyering  <meyering@fb.com>
+
+       gnulib: update to latest
+
+       maint: don't ignore gitlog-to-changelog failure
+       * Makefile.am (gen-ChangeLog): Don't ignore failure of
+       gitlog-to-changelog. This syncs to coreutils' copy of this rule.
+
+2016-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: pacify clang
+       * gzip.c (do_list): Use 2D array of char for month abbreviations,
+       as this is clearer anyway, and it pacifies Clang.  Problem reported
+       by Assaf Gordon in: http://bugs.gnu.org/22900#40
+
+2016-03-06  Jim Meyering  <meyering@fb.com>
+
+       tests: port to systems for which ":" is not the PATH separator
+       * Makefile.am (new_path): New variable.
+       (check-local): Use $(PATH_SEPARATOR) rather than a literal ":",
+       to avoid "make syntax-check" failure.
+
+2016-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: minor --rsyncable doc fixes
+       * doc/gzip.texi (Sample): Mention --rsyncable.
+       * gzip.c (help): Sort and do not capitalize the new --rsyncable
+       help string.
+
+       gzip: minor zgrep cleanup
+       * zgrep.in: Simplify previous change.
+
+       gzip: port zgrep to Solaris 11.2
+       Problem reported by Assaf Gordon in: http://bugs.gnu.org/22900#11
+       * zgrep.in: Port to Solaris 11.2 /bin/sh (ksh 93u 2011-02-08),
+       where $? is 256+SIG when a process was killed with signal SIG, and
+       where 'exit 257' is equivalent to 'exit 1'.  Apparently some other
+       sh implementations use 256+128+SIG.  So, instead of using plain
+       'exit $?', use the equivalent of 'exit ((128 * (128 <= $?)) + $? %
+       128)' within the script, and use the equivalent of 'kill -$($? %
+       128)' at the top level if the exit status is 128 or more.
+
+       gzip: remove --__bindir
+       * NEWS: Document this.
+       * gzexe.in, gunzip.in, zcat.in, zcmp.in, zdiff.in, zegrep.in:
+       * zfgrep.in, zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
+       Remove support for undocumented --__bindir option.  Callers can
+       set PATH instead; that's less error-prone.  This fixes some
+       'make check' failures on my Solaris 11 box, which occurred
+       because the test scripts were mistakenly testing the installed
+       gzip rather than the gzip in the working directory.
+       * Makefile.am (.in): Don't replace bindir.
+       (check-local): Set PATH instead of using --__bindir.
+       * tests/help-version (gunzip_setuphelp, gzexe_setuphelp)
+       (zcat_setuphelp, zcmp_setuphelp, zdiff_setuphelp)
+       (zegrep_setuphelp, zfgrep_setuphelp, zforce_setuphelp)
+       (zgrep_setuphelp, zless_setuphelp, zmore_setuphelp)
+       (znew_setuphelp): Remove.  All uses removed.
+       (lbracket_setup): Default args to empty.
+
+2016-03-04  Jim Meyering  <meyering@fb.com>
+
+       tests: fix "make check" failure on AIX 7.1
+       * tests/Makefile.am (TESTS_ENVIRONMENT): Modernize:
+       remove unused shell_or_perl_ function, and use an
+       export_with_values function as grep does, to remove
+       a lot of duplication.
+       Reported by Assaf Gordon in http://debbugs.gnu.org/22900
+
+2016-03-02  Rusty Russell  <rusty@rustcorp.com.au>
+
+       gzip: support the --rsyncable option
+       * deflate.c: Include verify.h.
+       (RSYNC_WIN, RSYNC_SUM_MATCH): Define.
+       (rsync_sum, rsync_chunk_end): Declare file-scoped globals.
+       (lm_init): Initialize globals.
+       (fill_window): Update rsync_chunk_end.
+       (rsync_roll): New function.
+       (RSYNC_ROLL): New macro.
+       (FLUSH_BLOCK): Update for new "pad" parameter.
+       (deflate_fast): Use RSYNC_ROLL and flush/pad.
+       (deflate): Likewise.
+       * trees.c (flush_block): Add "pad" parameter.
+       * gzip.c (rsync): New global.
+       (RSYNCABLE_OPTION, longopts, help): Add the option.
+       (main): Set the new global.
+       * gzip.h (rsync): Declare new global.
+       (flush_block): Update prototype.
+       * doc/gzip.texi: Document it.
+       * gzip.1: Likewise.
+       * bootstrap.conf: Use verify module.
+       * NEWS (New feature): Mention it.
+       * Makefile.am (check-local): Add tests and use AM_V__* command-
+       hiding opions. Reported against Debian here:
+       https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=118118
+
+2016-02-28  Jim Meyering  <meyering@fb.com>
+
+       maint: dist-check.mk: remove .deps dirs before comparing
+       "make distcheck" with automake-from-trunk would fail like this:
+         ...
+         Only in /gz/tests/torture/gzip/test/gzip-1.6.42-9d47.old: .deps
+         Only in /gz/tests/torture/gzip/test/gzip-1.6.42-9d47.old/lib: .deps
+         Only in /gz/tests/torture/gzip/test/gzip-1.6.42-9d47.old/lib/glthread: .deps
+       * dist-check.mk (my-distcheck): Remove all .deps directories before
+       comparing the two hierarchies.
+
+2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       misc: update --version copyright
+       * gunzip.in, gzexe.in, zcat.in, zdiff.in, zforce.in, zgrep.in:
+       * zless.in, zmore.in, znew.in: Update copyright year in --version
+       output to 2016.
+
+       gzip: new option --synchronous
+       This follows up on the earlier patch to avoid data loss near the
+       system crashes.  It makes the new behavior optional, with the
+       default off.  See: http://bugs.gnu.org/22768
+       * NEWS, doc/gzip.texi (Sample, Invoking gzip), gunzip.in (usage):
+       * gzip.1, zcat.in (usage):
+       Document this.
+       * gzip.c (synchronous): New static var.
+       (SYNCHRONOUS_OPTION): New constant.
+       (longopts, help, main, treat_file): Add support for --synchronous.
+
+       gzip: use constants, not fileno
+       * gzip.c (main, treat_stdin, treat_file, get_method)
+       (check_ofname): Prefer STDIN_FILENO to fileno (stdin),
+       and similarly for STDOUT_FILENO.
+
+       gzip: fdatasync output dir before unlinking
+       This follows up on the earlier patch to avoid data loss near
+       the system crashes.  See: http://bugs.gnu.org/22768
+       * bootstrap.conf (gnulib_modules): Add dirname-lgpl, fdatasync,
+       openat-safer, unistd-safer, unlinkat.
+       * gzip.c: Include stddef.h, dirname.h.
+       Include fcntl--.h instead of fcntl-safer.h.
+       (RW_USER): Remove; no longer needed.
+       (dfname, dfd): New static vars.
+       (dot): New static const.
+       (atdir_eq, atdir_set): New functions.
+       (treat_file): Also fdatasync the output directory, if !keep.
+       (treat_file, create_outfile, open_and_stat):
+       Use dir fd for unlinkat and openat, if possible.
+       (open_and_stat): Omit mode argument, since it was always the
+       same.  All callers changed.
+       * lib/.gitignore, m4/.gitignore: Add new gnulib files.
+       * tailor.h (PROTO, NO_STDIN_FSTAT, OPEN): Remove.  Remove MACOS
+       section, as this stuff would not work anyway now, and circa 2001
+       Apple stopped supporting Mac OS 9 and earlier.
+       * zip.c: Do not include unistd.h and fcntl.h, as this file does
+       not directly use any symbols defined by those headers.
+
+2016-02-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fsync output file before closing
+       Problem reported by Yanyan Jiang 蒋炎岩 in: http://bugs.gnu.org/22768
+       * NEWS: Document this.
+       * bootstrap.conf (gnulib_modules): Add fsync.
+       * gzip.c (treat_file): Call fsync just before closing the output.
+       * lib/.gitignore, m4/.gitignore: Add fsync-related gnulib files.
+
+2016-01-22  Jason Leschnik  <jason@leschnik.me>
+
+       doc: correct a diagnostic in man page to match actual
+       * gzip.1: s/no change/unchanged/
+       This addresses http://debbugs.gnu.org/22413
+
+2016-01-01  Jim Meyering  <meyering@fb.com>
+
+       maint: update copyright year, bootstrap, init.sh
+       Run "make update-copyright" and then...
+
+       * gzip.c: Transform the copyright notice via s/2015/2016/.
+       * gnulib: Update to latest.
+       * tests/init.sh: Update from gnulib.
+       * bootstrap: Likewise.
+
+2015-11-01  Jim Meyering  <meyering@fb.com>
+
+       maint: avoid three warnings from the very latest gcc-built-from-git
+       * unzip.c (unzip): Correct two format strings to match the types of the corresponding arguments.
+       * unlzw.c (unlzw): Cast an "int" to unsigned to match expected type of %x.
+
+2015-08-24  Jim Meyering  <meyering@fb.com>
+
+       maint: adjust copyright notices in *.in files to be consistent
+       The copyright year ranges in *.in files were not being updated,
+       because of a missing ", Inc." suffix.  Add that, run
+       run "make udpate-copyright", and ensure 2010..2015 year
+       ranges are covered.
+       * gunzip.in: Update copyright notice and year ranges.
+       * gzexe.in: Likewise.
+       * zcat.in: Likewise.
+       * zdiff.in: Likewise.
+       * zforce.in: Likewise.
+       * zgrep.in: Likewise.
+       * zless.in: Likewise.
+       * zmore.in: Likewise.
+       * znew.in: Likewise.
+
+2015-08-24  Jim Meyering  <meyering@fb.com>
+
+       build: avoid -Wshift-negative-value warning
+       Configured with --enable-gcc-warnings, a gcc-6.x build would fail with this:
+
+         gzip.c:118:32: error: left shift of negative value
+          #define OFF_T_MIN (~ (off_t) 0 << (sizeof (off_t) * CHAR_BIT - 1))
+
+       * gzip.c [OFF_T_MAX]: Define in terms of TYPE_MAXIMUM, not OFF_T_MIN.
+       [OFF_T_MIN]: Remove now-unused definition.
+       Include "intprops.h" for definiton of TYPE_MAXIMUM.
+       * bootstrap.conf (gnulib_modules): Add intprops.
+
+2015-07-30  Jim Meyering  <meyering@fb.com>
+
+       maint: remove dead code
+       This package has not been compilable with -DCRYPT
+       since commit v1.4-82-g9d1b943.  Remove final vestiges.
+       * bits.c (copy_block) [CRYPT]: Remove #ifdef'd code.
+       * inflate.c (NEXTBYTE) [CRYPT]: Likewise.
+       Prompted by a report from Flávio Medeiros
+       that HEADER and T might be used uninitialized.
+
+2015-03-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: make the GZIP env var obsolescent
+       * NEWS, gzip.1:
+       * doc/gzip.texi (Environment, Tapes): Document this.
+       * gzip.c (args): Remove static var; no longer needed now that
+       'main' frees it.  All uses removed.
+       (ENV_OPTION, shortopts): New constants.
+       (main): Warn about nontrivial uses of GZIP.  Reject dangerous uses.
+       * tests/gzip-env: New test case.
+       * tests/Makefile.am (TESTS): Add it.
+       * util.c (add_envopt): Create new vector instead of adding to old
+       one.  Only use changed.
+
+2015-03-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: adjust to recent gnulib
+       * doc/.gitignore: Add gendocs_template_min.
+       * lib/.gitignore: Add assure.h.
+
+2015-02-08  Jim Meyering  <meyering@fb.com>
+
+       maint: ensure that --version's copyright date is current
+       * cfg.mk (sc_gzip_copyright_check): Ensure we keep this copyright
+       year number up to date.  Reported by Paul Eggert.
+       * gzip.c (license_msg): Include only the current year number,
+       as is done in nearly every other program.
+
+       gnulib: update to latest
+
+2015-01-01  Jim Meyering  <meyering@fb.com>
+
+       maint: update copyright year ranges to include 2015; update gnulib
+
+2014-11-10  Jim Meyering  <meyering@fb.com>
+
+       maint: move new NEWS entry into block for upcoming release
+       * NEWS: Move the latest NEWS entry from the block for gzip-1.6
+       into the block for the upcoming release.
+
+2014-11-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: adjust -v output when -k is also specified
+       Problem reported by Eric Benoit in: http://bugs.gnu.org/16401
+       * gzip.c (treat_file): When keeping a file, don't say it's replaced.
+       * NEWS: Document this.
+       * tests/keep: Test this.
+
+2014-11-10  Jim Meyering  <meyering@fb.com>
+
+       maint: enable more syntax checks
+       * cfg.mk (local-checks-to-skip): Remove several rule names from this
+       list, thus enabling the corresponding checks.  To fix some, I made
+       syntactic changes to source files.  In other cases, I exempted certain
+       files from the checks.
+       Add exemptions for these:
+         sc_prohibit_atoi_atof = ^(gzip|sample/sub)\.c$$
+         sc_space_tab = ^lib/match\.c$$
+         sc_useless_cpp_parens = ^(lib/match\.c|tailor\.h)$$
+       * configure.ac: Add quotes to fix under-quoting.
+       * deflate.c: Remove unnecessary cpp parentheses.
+       * tests/Makefile.am (TEST_ENVIRONMENT): Remove space-before-TAB.
+       * unlzw.c: Change some TABs to spaces.
+
+       maint: avoid false positive match in check for double semicolon
+       * cfg.mk (exclude_file_name_regexp--sc_prohibit_double_semicolon):
+       Exempt the file, lib/match.c, from gnulib's new double-semicolon
+       check.
+
+       gnulib+bootstrap: update to latest
+       * gnulib: Update the submodule.
+       * bootstrap: Update from gnulib.
+
+2014-10-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: use local dir for output
+       Reported by Kiyoshi KANAZAWA in: http://bugs.gnu.org/18679
+       * tests/unpack-invalid: Use local directory, not /tmp, for output.
+
+2014-08-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix --suffix=z bug (Bug#18239)
+       * gzip.c (get_suffix): Put --suffix string at the end
+       of the list of suffixes if it is a suffix of one one them.
+       * tests/z-suffix: New file.
+       * tests/Makefile.am (TESTS): Add it.
+
+2014-06-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: exit with status 0 if a file matches and there's no trouble
+       Reported by Pavel Raiskup in: http://bugs.gnu.org/17760
+       * zgrep.in (res): Treat exit status 0 to be greater than 1.
+       Also, exit immediately on software configuration error.
+
+2014-06-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: use UTF-8 in the manual
+       * doc/gzip.texi: Switch to UTF-8 encoding.  Fix ASCIIisms.
+       Don't use @sc; plain caps are fine for GNU manuals.
+
+       maint: update .gitignore files
+       * lib/.gitignore, m4/.gitignore: Adjust to match current sources.
+       Also, sort.
+
+2014-06-07  Jim Meyering  <meyering@fb.com>
+
+       maint: udpate all copyright notices via "make update-copyright"
+
+       maint: update copyright year range in gzip.texi
+       * doc/gzip.texi: Update copyright date.
+
+       maint: update gnulib to latest and adapt streamsavedir usage
+       * gnulib: Update module to latest.
+       * gzip.c (treat_dir): Gnulib's streamsavedir API has changed:
+       call it with a new argument, SAVEDIR_SORT_NONE, to retain the
+       preceding behavior.
+
+2014-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zless: improve gzip failure checking, and port to new -V format
+       Problem reported by Jaroslaw Weglinski, and LESSOPEN change
+       suggested by Mark Nudelman, in: http://bugs.gnu.org/16951
+       This doesn't fix bug 16951 entirely, as 'less' needs to be changed
+       too, but it's a start.
+       * zless.in (check_exit_status): New var.
+       (LESSOPEN): Use it.
+       (use_input_pipe_on_stdin): Adjust to output format on Fedora 20,
+       where 'less -V' outputs "less 458 (POSIX regular expressions)"
+       on the first line.
+
+2013-10-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix permissions issue on Solaris-like systems
+       I.e., on systems that let users give files away.
+       * gzip.c (do_chown): New function.
+       (copy_stat): Use it, to change the group, then the permissions,
+       then the owner.  Idea suggested by Vladimir Marek in
+       <http://bugs.gnu.org/15672#11>
+
+2013-10-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       znew: avoid denial-of-service issue
+       Reported by Rich Burridge in <http://bugs.gnu.org/15522>.
+       * znew.in: Rewrite to avoid the need for a temporary file in /tmp.
+       That way, we avoid the need for set -C
+       and worrying about denial of service.
+       Use touch -r and chmod --reference rather than cpmod.
+       Assume cp -p works, as it's now universal.
+       Quote 'echo' args better, while we're at it.
+       (warn, tmp, cpmod, cpmodarg): Remove.
+       (GZIP): Unset, so that we needn't test for gzip extension.
+       (ext): Now always '.gz'.
+       * znew.1: Document the change of implementation assumptions.
+
+2013-06-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix spelling typo in newly-added comment.
+
+       tests: zgrep-signal race condition fix
+       * tests/zgrep-signal: Check that Perl supports dup2.
+       (exec_with_SIGPIPE_SIGDFL): Remove.
+       (write_to_dangling_pipe): Simplify by moving more of it into Perl.
+       Fix race condition, where subcommand writes to a pipe before the ":"
+       command exits.  Problem reported by Thorsten Glaser in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00028.html>.
+
+2013-06-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: usage should say which grep options are not supported
+       * zgrep.in (usage): Document which grep options are not supported.
+       Problem reported by Liron Paryente in
+       <http://lists.gnu.org/archive/html/bug-grep/2013-06/msg00005.html>.
+
+2013-06-11  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port util.c to Compaq C V6.5-303
+       * util.c (crc_32_tab): Move definition to front, since this
+       compiler doesn't allow declarations of static arrays with
+       incomplete types.  Problem reported by Steven M. Schweda in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00010.html>.
+
+       tests: zgrep-context assumes grep knows context
+       * tests/Makefile.am (TESTS_ENVIRONMENT): Pass GREP too.
+       * tests/zgrep-context: Check that the underlying grep supports
+       context options.  Problem reported by Steven M. Schweda in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00010.html>.
+
+       doc: zgrep exit status, unsupported options
+       * zgrep.1 (EXIT STATUS, BUGS): New sections.
+       Problem reported by Bdale Garbee in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00007.html>.
+
+       maint: port to platforms lacking SIGPIPE
+       * tailor.h (SIGPIPE): Define to 0 if not defined.  This fixes a
+       porting bug introduced as part of 2012-11-16 syntax-check cleanup.
+       Problem reported by Bdale Garbee in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00006.html>.
+
+2013-06-09  Jim Meyering  <meyering@fb.com>
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.6
+       * NEWS: Record release date.
+
+       build: avoid automake warning that suggests use of subdir-objects
+       * configure.ac (AM_INIT_AUTOMAKE): Use the subdir-objects option.
+
+       build: avoid warning about deprecated use of automake's ACLOCAL_AMFLAGS
+       * Makefile.am (ACLOCAL_AMFLAGS): Don't use this deprecated variable.
+       * configure.ac: Do this instead: AC_CONFIG_MACRO_DIR([m4]).
+
+       build: use more portable shell syntax in search of working shell
+       * m4/shell.m4: Adjust sh/case syntax not to evoke a syntax
+       error from Solaris 10's /bin/sh.
+
+       build: update gnulib to latest, and bootstrap
+
+2013-05-28  Jim Meyering  <meyering@fb.com>
+
+       tests: exercise the new --keep option
+       * tests/keep: New file.
+       * tests/Makefile.am (TESTS): Add it.
+
+2013-05-28  Rodrigo Campos  <rodrigo@sdfg.com.ar>
+
+       gzip: add "--keep" option to retain (don't delete) input files
+       gzip now accepts the --keep (-k) option, for consistency with tools
+       like xz, lzip and bzip2.  With this option, gzip no longer removes
+       named input files when compressing and decompressing.
+       * doc/gzip.texi: Document it.
+       * gzip.1: Likewise.
+       * gunzip.in: Likewise.
+       * NEWS: Likewise.
+       * gzip.c: Add support for "--keep".
+
+2013-04-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: redo patch for non-GNU gzip installed in /usr/local/bin
+       Problem with previous patch reported by Antonio Diaz Diaz in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-04/msg00011.html>.
+       * tests/help-version (gunzip_setuphelp, gzexe_setuphelp)
+       (zcat_setuphelp, zcmp_setuphelp, zdiff_setuphelp)
+       (zegrep_setuphelp, zfgrep_setuphelp, zforce_setuphelp)
+       (zgrep_setuphelp, zless_setuphelp, zmore_setuphelp)
+       (znew_setuphelp): New functions, used when testing even --help.
+       (zdiff_setup, zcat_setup, znew_setup, zgrep_setup, gzexe_setup):
+       Use gzip_setuphelp to set --__bindir.
+
+2013-04-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: work even if non-GNU gzip is installed in /usr/local/bin
+       Problem reported by Antonio Diaz Diaz in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-04/msg00004.html>.
+       * tests/help-version (zdiff_setup, zcat_setup, znew_setup, zgrep_setup)
+       (gzexe_setup): Pass --__bindir so that subsidiary programs are our
+       own's, not /usr/local/bin's.  This requires using 'eval' on the result.
+       (zcmp_setup, gunzip_setup, zmore_setup, zless_setup, zforce_setup)
+       (zegrep_setup, zfgrep_setup): Invoke one of the other setup functions,
+       to make the patterns more obvious and simplify future maintenance.
+       * zcmp.in, zegrep.in, zfgrep.in: Pass __bindir to subsidiary program.
+
+       maint: adjust to Gnulib, Automake changes
+       * .gitignore: Add *.trs.
+       * lib/.gitignore: Add unused-parameter.h.
+
+       tests: port to Solaris 10 /bin/sh
+       * tests/Makefile.am (TESTS_ENVIRONMENT):
+       Use "FOO=val; export FOO" rather than "export FOO=val",
+       as the latter form doesn't work with Solaris /bin/sh.
+
+2013-02-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: port to DMF file systems
+       * util.c (read_buffer): When reading a file with O_NONBLOCK, if
+       the read fails with errno==EAGAIN, clear O_NONBLOCK and try again.
+       Problem reported by Vitezslav Cizek in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-02/msg00030.html>.
+
+2013-02-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix bug where you say "n" and gzip acts as if you said "y"
+       Problem reported for GCC 4.7 x86-64 -O2 by Allan McRae in
+       <http://lists.gnu.org/archive/html/bug-gzip/2013-02/msg00000.html>.
+       * NEWS: Document this.  Use consistent format in earlier note.
+       * gzip.c: Include yesno.h.
+       * gzip.h (yesno): Remove decl; that's yesno.h's job.
+
+2013-01-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: adjust to Gnulib changes
+       * lib/.gitignore: Add glthread, math.c, unistd.c, wctype-h.c.
+       * m4/.gitignore: Remove inline.m4.
+
+2013-01-04  Jim Meyering  <jim@meyering.net>
+
+       maint: update all copyright year number ranges
+       Run "make update-copyright".
+
+       build: update gnulib submodule to latest
+
+2012-12-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       diagnose unexpected EOF and zero lengths in packed data
+       Problem reported by Aki Helin.
+       * NEWS: Mention Aki's reports.
+       * tests/unpack-invalid: New file,
+       with test data suggested by Aki.
+       * tests/Makefile.am (TESTS): Add it.
+       * unpack.c (read_byte): New function.
+       (look_bits, read_tree): Use it.
+       (read_tree): Check against zero bit length Huffman code.
+
+       gzip: diagnose invalid code in packed data
+       * unpack.c (unpack): When encountering a code out of range, report
+       it and fail rather than charging ahead with randomish output.
+       Problem reported by Aki Helin.
+
+2012-11-16  Jim Meyering  <jim@meyering.net>
+
+       maint: avoid new syntax-check failures
+       * cfg.mk (_gl_TS_unmarked_extern_vars): Append nice_match, to avoid
+       false-positive syntax-check failure on i686.
+       * gzip.c (SIGPIPE): Remove definition.  Now always provided via gnulib.
+       * lib/.gitignore: xsize.c, added by gnulib-tool.
+
+2012-11-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix debugging/porting typo
+       * unlzw.c (unlzw) [DEBUG]: Don't assume 'long' can be printed with %d.
+
+       maint: merge build improvements from coreutils
+       * configure.ac: Invoke gl_ASSERT_NO_GNULIB_POSIXCHECK.
+       (--enable-gcc-warnings): Change help message.
+       (gl_GCC_VERSION_IFELSE): New macro.
+       Do not omit -Wunused-macros for main code.
+       Adjust other -W options as per coreutils.
+       * lib/Makefile.am (AM_CFLAGS): Use GNULIB_WARN_CFLAGS, not WARN_CFLAGS.
+       * unlzw.c (REGISTERS, REG1, REG2, ..., REG16): Remove.
+       All uses removed.  These provoked -Wunused-macros warnings.
+       This sort of fiddling with registers hasn't been needed for years.
+
+       build: update gnulib submodule to latest
+
+       maint: port to platforms lacking SIGPIPE
+       * gzip.c (SIGPIPE): Define to 0 if not already defined.
+
+       doc: bring up to date and fix troff typos
+       * doc/gzip.texi (Overview): Update RFC URLs.
+       * gzip.1: Likewise.  Don't say "SEE ALSO" to programs that almost
+       nobody has installed anymore.
+       * gzip.1, zmore.1: Fix some troff typos.
+       * zdiff.1: Clarify what happens with input files.  Don't talk
+       about temporary file names, as they're rarely used these days.
+
+2012-10-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: exercise the grep -e portability fix
+       Remove workaround for Solaris, since the bug should be fixed now.
+       Suggested by Petr Sumbera in
+       <http://lists.gnu.org/archive/html/bug-gzip/2012-10/msg00005.html>.
+       * tests/zgrep-context, tests/zgrep-f: All uses removed.
+       * tests/init.cfg (require_POSIX_grep_): Remove.
+
+2012-10-23  Eric Blake  <eblake@redhat.com>
+
+       build: default to --enable-gcc-warnings in a git tree
+       Anyone building from cloned sources can be assumed to have a new
+       enough environment, such that enabling gcc warnings by default will
+       be useful.  Tarballs still default to no warnings, and the default
+       can still be overridden with --disable-gcc-warnings.
+       * configure.ac (gl_gcc_warnings): Set default based on environment.
+
+2012-10-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: do not assume standard 'grep' has -e
+       On Solaris 11, /usr/bin/grep -e does not work.
+       Problem reported by Petr Sumbera in
+       <http://lists.gnu.org/archive/html/bug-gzip/2012-10/msg00003.html>.
+       * Makefile.am (.in): Substitute @GREP@.
+       * configure.ac (AC_PROG_GREP): Invoke.
+       * zgrep.in (grep): Use @GREP@.
+
+2012-08-14  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: do not assume GNU expr
+       * zgrep.in: Do not assume '\+' has the GNU behavior in the BRE
+       given to 'expr', as POSIX does not guarantee that.  Come to think
+       of it, use a shell pattern rather than 'expr', as this is more
+       efficient.
+
+2012-08-08  Jim Meyering  <meyering@redhat.com>
+
+       tests: exercise the just-fixed part of zgrep
+       * tests/zgrep-context: New file.
+       * tests/Makefile.am (TESTS): Add it.
+
+2012-08-08  Jim Meyering  <meyering@redhat.com>
+
+       zgrep: handle a multi-digit context option like -15
+       * zgrep.in: Do not malfunction when given an option like -15.
+       Before, it could end up treating the pattern as a file name:
+
+         $ echo x | gzip | zgrep -15 x
+         gzip: x.gz: No such file or directory
+
+       * NEWS (Bug fixes): Mention it.
+       Reported by Dan Bloch via Thomas Bushnell in
+       https://bugs.launchpad.net/bugs/1032831
+
+2012-08-07  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib, bootstrap and init.sh
+
+       maint: fix misspellings in old ChangeLog and NEWS
+       * ChangeLog-2007: s/Supress/Suppress/
+       * NEWS: Likewise.
+       * cfg.mk (old_NEWS_hash): Update to match typo fix.
+
+2012-06-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zmore: rewrite to fix bugs and assume POSIX
+       Problem reported for Solaris 9 by Daniel in
+       <http://lists.gnu.org/archive/html/bug-gzip/2012-06/msg00007.html>.
+       Rather than figure out what exactly went wrong in Solaris 9
+       it was easier to rip out all the buggy compatibility and stty cruft.
+       * zmore.in: Don't use stty or trap; simply pipe the output to 'more'
+       and let it deal with signals and terminal control.
+       Use printf, not 'echo', to avoid problems with backslashes.
+       Don't assume ANS is not 's' in the environment.
+       Use a 'more'-style header instead of rolling our own style.
+       Paginate the header, too; the old behavior lost the header.
+       * NEWS, zmore.1: Document this.
+
+2012-06-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: add .mailmap
+       * .mailmap: New file.  Unify two spellings of Paul's name,
+       to make git log output slightly cleaner.
+
+       maint: post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.5
+       * NEWS: Record release date.
+
+       build: update gnulib for fixed maint.mk
+
+       build: update gnulib submodule; bootstrap and init.sh, too
+       * cfg.mk: Exempt crufty tailor.h from its use of "#define off_t...".
+       * .gitignore, m4/.gitignore: Update semi-automatically (via bootstrap).
+
+2012-04-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: document -rf change
+       * NEWS: Document the ZFS fix.
+
+       gzip: remove CLOSEDIR
+       * gzip.c (CLOSEDIR): Remove; no longer used.
+
+       gzip: port gzip -rf to ZFS
+       Problem reported privately by Rich Burridge.
+       * bootstrap.conf: Add savedir.
+       * gzip.c: Include <savedir.h>.
+       (_D_EXACT_NAMELEN): Remove.
+       (treat_dir): Use savedir rather than reading directory entries one
+       at a time, to avoid revisiting an already-compressed file when using
+       ZFS and the -rf flags are specified.
+       * lib/.gitignore, m4/.gitignore: Ignore savedir-related files.
+
+2012-03-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix nondeterministic compression results
+       Reported by Jakub Wilk in <http://bugs.debian.org/647522>.
+       * deflate.c (fill_window): Don't let garbage pollute the dictionary.
+
+2012-01-11  Jim Meyering  <meyering@redhat.com>
+
+       tests: make all test scripts executable; work with automake-1.12
+       * tests/Makefile.am (TESTS_ENVIRONMENT): Adapt to work with upcoming
+       automake-1.12.
+       * tests/mixed: Make executable.
+       * tests/zgrep-f: Likewise.
+       * tests/zgrep-signal: Likewise.
+       * tests/znew-k: Likewise.
+
+       build: accommodate newer bootstrap from gnulib
+       * bootstrap.conf (gnulib_tool_option_extras): Add both --symlink
+       and --makefile-name=gnulib.mk.
+       * bootstrap: Update from gnulib.
+       * tests/init.sh: Update from gnulib.
+       * lib/Makefile.am: Initialize all of the following so that
+       generated code in gnulib.mk may use += to append to those variables:
+       AM_CFLAGS, BUILT_SOURCES, CLEANFILES, EXTRA_DIST, MOSTLYCLEANDIRS,
+       MOSTLYCLEANFILES, SUFFIXES, noinst_LTLIBRARIES.
+
+2012-01-01  Jim Meyering  <meyering@redhat.com>
+
+       maint: update all copyright year number ranges
+       Run "make update-copyright".
+
+2011-12-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zless: decompress stdin too, if less 429 or later
+       * zless.in: Use LESSOPEN |- feature of less 429 or later.
+       Problem reported by Jeroen Roovers via Mike Frysinger in
+       <http://lists.gnu.org/archive/html/bug-gzip/2011-12/msg00006.html>.
+
+2011-11-29  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+       build: accommodate gnulib's new warnings with --enable-gcc-warnings
+       * configure.ac (WERROR_CFLAGS): Disable two new warnings:
+       -Wno-format-nonliteral, -Wno-unsuffixed-float-constants.
+       * gzip.h (bi_reverse): Declare with _GL_ATTRIBUTE_CONST.
+       (gzip_base_name): Declare with _GL_ATTRIBUTE_PURE.
+
+2011-11-29  Jim Meyering  <meyering@redhat.com>
+
+       tests: use "compare exp out", not "compare out exp"
+       Likewise, when an empty file is expected, use "compare /dev/null out",
+       not "compare out /dev/null". I.e., specify the expected/desired contents
+       via the first file name.  Prompted by a suggestion from Bruno Haible
+       in http://thread.gmane.org/gmane.comp.gnu.grep.bugs/4020/focus=29154
+
+       Run these commands:
+
+           git grep -l -E 'compare [^ ]+ exp' \
+             |xargs perl -pi -e 's/\b(compare) (\S+) (exp\S*)/$1 $3 $2/'
+           git grep -l -E 'compare [^ ]+ /dev/null' \
+             |xargs perl -pi -e 's,\b(compare) (\S+) (/dev/null),$1 $3 $2,'
+
+2011-11-05  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+2011-11-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tests/zgrep-signal: Don't assume exit status 141 on PIPE signal.
+       Problem reported by Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gzip/2011-11/msg00007.html>.
+
+       * tests/zgrep-signal: Use perl instead of a nonportable shell trap.
+       Problem reported by Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gzip/2011-11/msg00005.html>.
+
+       * tests/zgrep-signal: Test for Fedora 15 signal bug.
+       Also, don't assume that SIGPIPE is SIG_DFL on entry.
+
+2011-11-02  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+       tests: mixed: correct size-enumeration logic
+       * tests/mixed (sizes): Fix misplaced "&& break" that made us test
+       only with a size of 0, rather than all sizes in 0..64.
+
+       maint: avoid "make syntax-check" failure
+       * gzip.c (treat_stdin): Indent with spaces, not TABs.
+
+2011-11-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * gzip.c (treat_stdin): If quiet, be quiet with plain gzip -q.
+       Problem reported by Michaël Guitton in
+       <http://lists.gnu.org/archive/html/bug-gzip/2011-11/msg00000.html>.
+
+2011-08-10  Jim Meyering  <meyering@redhat.com>
+
+       maint: remove amiga, atari, msdos, nt, os2, vms sub-directories,
+       and all files therein.  This was proposed months prior, and no
+       one objected.
+       * amiga/Makefile.gcc: Remove file.
+       * amiga/Makefile.sasc: Likewise.
+       * amiga/match.a: Likewise.
+       * amiga/tailor.c: Likewise.
+       * amiga/utime.h: Likewise.
+       * atari/Makefile.st: Likewise.
+       * msdos/Makefile.bor: Likewise.
+       * msdos/Makefile.djg: Likewise.
+       * msdos/Makefile.msc: Likewise.
+       * msdos/doturboc.bat: Likewise.
+       * msdos/gzip.prj: Likewise.
+       * msdos/match.asm: Likewise.
+       * msdos/tailor.c: Likewise.
+       * nt/Makefile.nt: Likewise.
+       * os2/Makefile.os2: Likewise.
+       * os2/gzip.def: Likewise.
+       * os2/gzip16.def: Likewise.
+       * vms/Makefile.gcc: Likewise.
+       * vms/Makefile.mms: Likewise.
+       * vms/Makefile.vms: Likewise.
+       * vms/Readme.vms: Likewise.
+       * vms/gzip.hlp: Likewise.
+       * vms/makegzip.com: Likewise.
+       * vms/vms.c: Likewise.
+       * Makefile.am (EXTRA_DIST): Remove those file names.
+
+       build: use largefile module and update to latest gnulib
+       * configure.ac: Remove AC_SYS_LARGEFILE, subsumed by ...
+       * bootstrap.conf (gnulib_modules): ...this.  Use largefile module.
+       * gnulib: Update to latest.
+
+2011-07-12  Jim Meyering  <meyering@redhat.com>
+
+       maint: update init.sh and bootstrap from gnulib
+       * bootstrap: Update from gnulib.
+       * tests/init.sh: Update from gnulib.
+
+       maint: use gnulib's realloc-gnu and malloc-gnu modules
+       * bootstrap.conf (gnulib_modules): Use realloc-gnu and malloc-gnu,
+       rather than the now-deprecated realloc and malloc modules.
+
+       build: update gnulib submodule to latest
+
+2011-06-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * deflate.c: Export nice_match to assembler.
+       (static_unless_ASMV): New macro.
+       (nice_match): Use it.
+
+2011-06-08  Jim Meyering  <meyering@redhat.com>
+
+       build: fix "make syntax-check"
+       * cfg.mk (_gl_TS_unmarked_extern_vars): Add good_match.
+
+       build: avoid link failure: this time on i686 linux
+       * deflate.c (good_match): Must not be static, since it may
+       be used from lib/match.c.
+
+2011-05-14  Jim Meyering  <meyering@redhat.com>
+
+       build: avoid link failure on at least i386-FreeBSD7.2
+       * deflate.c (match_start, prev_length, max_chain_length): Do not
+       declare these as static.  On some types of system/arch, they are
+       used via match_.s.
+       * cfg.mk (_gl_TS_unmarked_extern_vars): Mark those three variables
+       as known-extern: match_start, prev_length, max_chain_length.
+
+2011-05-13  Jim Meyering  <meyering@redhat.com>
+
+       avoid new build failure on a system without <crypt.h>
+       * bits.c: Don't include "crypt.h", now that it's deleted.
+
+       maint: use gnulib's new readme-release module
+       * bootstrap.conf (gnulib_modules): Add readme-release.
+       (bootstrap_epilogue): Add the recommended perl one-liner.
+       * README-release: Remove file; it is now generated from gnulib.
+       * .gitignore: Add it.
+
+2011-05-09  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+       maint: prepare for gnulib's new tight-scope syntax-check rule
+       * cfg.mk (_gl_TS_dir): Define.
+       (_gl_TS_unmarked_extern_vars): Define.
+
+       maint: declare many variables to be static
+       * deflate.c: Likewise.
+       * gzip.c: Likewise.
+       * gzip.h: Likewise.
+       * inflate.c: Likewise.
+       * trees.c: Likewise.
+       * unzip.c: Likewise.
+       * util.c: Likewise.
+
+       maint: remove crypt.[ch] stubs
+       * Makefile.am (gzip_SOURCES): Remove crypt.c
+       (EXTRA_DIST): Remove crypt.h
+       * crypt.c, crypt.h: Remove files.
+       * unpack.c: Don't #include "crypt.h"
+       * zip.c: Likewise
+       * util.c: Likewise.
+       * unzip.c: Likewise.
+
+       maint: limit scope of several functions
+       * deflate.c (longest_match): Move extern declaration into #if-ASMV block.
+       [!ASMV]: Define as static.
+       * inflate.c: Remove unnecessary prototypes.
+       ANSI-declify functions and declare them to be static.
+
+       maint: remove all uses of OF((...)) prototype-hiding macro
+       * bits.c: Remove all uses of OF.
+       * deflate.c: Likewise.
+       * gzip.c: Likewise.
+       * inflate.c: Likewise.
+       * lzw.h: Likewise.
+       * trees.c: Likewise.
+       * unlzh.c: Likewise.
+       * unpack.c: Likewise.
+       * util.c: Likewise.
+       * gzip.h: Likewise.
+       (OF): Remove its definition, too.
+
+       maint: prepare for tight-scope rule: use noinst_HEADERS
+       * Makefile.am (EXTRA_DIST): Move lzw.h and gzip.h from here to ...
+       (noinst_HEADERS): ...here.
+       For convenience, since the tight-scope rule uses $(noinst_HEADERS).
+
+2011-04-14  Jim Meyering  <meyering@redhat.com>
+
+       maint: update bootstrap and init.sh from gnulib
+       * bootstrap: Likewise.
+       * tests/init.sh: Update from gnulib.
+
+       maint: note that we'll remove amiga, atari, msdos, nt, os2, vms soon
+       If someone can show that any of these are being used, let us know.
+       * TODO: Note the plan to remove those directories this year.
+
+       build: update gnulib submodule to latest
+
+       maint: fix typos in vms manual: s/it\nit/\nit/
+       * vms/gzip.hlp: Remove doubled "it".
+
+2011-04-10  Jim Meyering  <meyering@redhat.com>
+
+       maint: fix typos in comment: s/to to/to/
+       * deflate.c: Remove doubled 'to's.
+
+2011-03-20  Jim Meyering  <meyering@redhat.com>
+
+       maint: stop using .x-sc_* files to list syntax-check exemptions
+       Instead, use the new mechanism with which you merely use a
+       variable (derived from the rule name) defined in cfg.mk to an ERE
+       matching the exempted file names.
+       * gnulib: Update to latest, to get maint.mk that implements this.
+       * .x-sc_file_system: Remove file.
+       * .x-sc_prohibit_tab_based_indentation: Likewise.
+       * .x-sc_require_config_h: Likewise.
+       * .x-sc_require_config_h_first: Likewise.
+       * cfg.mk: Define variables to exempt the same files.
+
+2011-03-18  Jim Meyering  <meyering@redhat.com>
+
+       doc: correct README-release
+       * README-release: Remove mention of -announce mailing list.
+       Unlike coreutils, gzip does not have its own.
+
+       doc: update release procedure
+       * README-release: Resync from coreutils' file by the same name.
+
+2011-01-03  Jim Meyering  <meyering@redhat.com>
+
+       maint: update copyright year ranges to include 2011
+       Run "make update-copyright", so "make syntax-check" works in 2011.
+
+       build: update gnulib submodule to latest
+
+       maint: avoid failure of new test for bindtextdomain
+       * cfg.mk (local-checks-to-skip): Add sc_bindtextdomain.
+
+2010-12-02  Jim Meyering  <meyering@redhat.com>
+
+       maint: avoid "make syntax-check" failure due to old-NEWS modification
+       * cfg.mk (old_NEWS_hash): Update, to reflect recent NEWS correction.
+
+2010-12-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * NEWS: The "gzip -f foo.gz" change occurred in 1.3.13, not 1.3.12
+
+2010-11-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: don't assume traditional behavior with signal numbers
+       * zgrep.in: Don't assume the exit status is the signal number plus
+       128, as POSIX doesn't require this.  No need to kill self; exiting
+       with large status is enough.  Propagate all exit statuses greater
+       than 1, not merely those in the range 129..143, as there's no need
+       to treat that range specially (and it's not portable anyway).
+
+2010-11-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: fix shell portability bug with -f; fix mishandling of "-e -"
+       * tests/zgrep-f: Check for "zgrep -e -" bug, too.
+       * zgrep.in: Don't assume that if the shell redirects fd 6, then
+       this redirection is visible to the subsidiary grep.  POSIX doesn't
+       guarantee this visibility except for file descriptors 0, 1, and 2,
+       and ksh does not support it.  Problem reported by Thomas Schulz in
+       <http://lists.gnu.org/archive/html/bug-gzip/2010-11/msg00000.html>.
+       Also, fix a related bug: "-e -" was mishandled.  These two bugs
+       were introduced by commit 5b54db4546b84ec97ff57a62f8ddb98faacf77f2
+       dated 2009-10-09.
+       (escape): Change the convention: do not assume that a stray X
+       is present at the end of the last line.  All uses changed.
+       There was no longer any need for this convention, and fixing this
+       made it a bit easier to use 'sed' in a later part of the fix.
+
+2010-11-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: fix copyright dates that were munged by a maintenance script
+       * gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zforce.in:
+       * zgrep.in, zless.in, zmore.in, znew.in:
+       A script went awry when updating copyright dates in gzip's shell
+       scripts.  It should update comments to look like "# Copyright (C)
+       2007, 2010 Free Software Foundation, Inc." (with a set of years)
+       and version messages to look like "Copyright (C) 2010 Free
+       Software Foundation, Inc." (with just the most-recent year).
+       Instead, it sometimes ignored one, sometimes the other, and
+       typically put ranges into version messages.  Fix all this stuff by
+       hand, using dates that I divined from the change logs (so they're
+       a bit more accurate than script-generated dates).  We need to fix
+       the script before it runs in 2011.
+
+2010-10-23  Jim Meyering  <meyering@redhat.com>
+
+       maint: anchor patterns in .gitignore files
+       * doc/.gitignore: Anchor patterns.
+       * lib/.gitignore: Likewise.
+       * m4/.gitignore: Likewise.
+
+       maint: update bootstrap and init.sh from gnulib
+       * bootstrap: Update.
+       * tests/init.sh: Update.
+
+2010-10-23  Rob Vermaas  <rob.vermaas@gmail.com>
+
+       maint: update to latest gnulib; use fdutimens, not gl_futimens
+       * gzip.c (copy_stat): Use fdutimens, not gl_futimens.
+       * gnulib: Update to latest.
+
+2010-10-23  Jim Meyering  <meyering@redhat.com>
+
+       maint: accommodate stricter syntax-check
+       Avoid #if, #define and #undef of always-defined symbols.
+       * gzip.c (ELOOP, SIGPIPE): Remove unneeded cpp directives.
+       * tailor.h (HAVE_DIRENT_H, HAVE_FCNTL_H, HAVE_UNISTD_H, MSDOS):
+       (O_BINARY): Likewise.
+
+       maint: make our use of gnulib's init.sh conform
+       * tests/help-version: Make use of init.sh conform.
+       * tests/helin-segv: Likewise.
+       * tests/help-version: Likewise.
+       * tests/hufts: Likewise.
+       * tests/memcpy-abuse: Likewise.
+       * tests/mixed: Likewise.
+       * tests/null-suffix-clobber: Likewise.
+       * tests/stdin: Likewise.
+       * tests/trailing-nul: Likewise.
+       * tests/zdiff: Likewise.
+       * tests/zgrep-f: Likewise.
+       * tests/zgrep-signal: Likewise.
+       * tests/znew-k: Likewise.
+
+2010-10-10  Jim Meyering  <meyering@redhat.com>
+
+       maint: describe policy on copyright year number ranges
+       * README: Mention coreutils' long-standing policy on use of M-N
+       ranges in copyright year lists.  Requested by Richard Stallman.
+
+2010-09-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       zgrep: fix parsing of -Eh options
+       * zgrep.in: Update list of single-letter options to match what's
+       in GNU grep.  Add -h as an alias for --no-filename.  Bug reported
+       by Vladimir Sidorenko in
+       <http://lists.gnu.org/archive/html/bug-gzip/2010-09/msg00007.html>.
+
+2010-08-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gzip: fix NO_SIZE_CHECK for VMS
+       * gzip.c (do_list): Use if, not #if.
+       * tailor.h (NO_SIZE_CHECK) [defined(VAXC) || defined(VMS)]: Define.
+       * zip.c (zip): Simplify conditional, which was incorrect at any rate
+       for VMS.
+
+2010-08-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       algorithm.doc: mention Internet RFC 1952 and modernize a bit
+       * algorithm.doc: Update to mention header-CRC and Internet RFC 1952.
+       Also, remove the crypto stuff, which never worked.
+       Inspired by that same suggestion of Greg Roelofs.
+
+       gzip: Use 0x%04x instead of %x when printing 16-bit checksums
+       * gzip.c (get_method): Use 0x%04x, not %x, to print 16-bit checksums.
+       Inspired by a suggestion of Greg Roelofs in
+       http://lists.gnu.org/archive/html/bug-gzip/2010-08/msg00004.html
+
+2010-08-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       maint: update bootstrap
+       * bootstrap, bootstrap.conf, tests/init.sh: Merge from gnulib.
+
+2010-07-19  Paul R. Eggert  <eggert@cs.ucla.edu>
+
+       gzip: don't assume C99, and don't assume overlapping memcpy should work
+       * tailor.h (NOMEMCPY): Remove.  memcpy is entitled to not work
+       on overlapping blocks.
+       * inflate.c (inflate_codes): Don't put decl after statement.
+       Omit NOMEMCPY.
+
+       * gzip.c (get_method): don't assume size_t can be printed with %u
+
+2010-07-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Mention that gzip -d now handles FHCRC.
+
+2010-07-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Decode FHCRC flag properly, as per Internet RFC 1952.
+       Problem reported by Greg Roelofs in:
+       http://lists.gnu.org/archive/html/bug-gzip/2010-06/msg00003.html
+
+       * gzip.c (discard_input_bytes): New function.
+       (get_method): Check header checksum, if given.  We never generate it,
+       but other programs may.
+       * gzip.h (HEADER_CRC): Renamed from CONTINUATION.  All uses changed.
+       * tailor.h [defined __50SERIES]: Remove PRIMOS stuff that was obsolete
+       anyway and would have made this patch harder to maintain.
+       (get_char, put_char): Remove.
+       * zip.c (zip): Use put_byte instead of the now-removed put_char.
+
+2010-07-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't assume that sizeof (long) == 4 when computing statistics.
+       * gzip.c (get_method): Don't assume sizeof (long) == 4.
+       * zip.c (zip): Likewise.
+
+       Update Info-ZIP name and coordinates (thanks to Greg Roelofs).
+
+2010-05-11  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doc/gzip.texi (Sample): Fix backslash quoting problem.
+       Problem reported by Ole Tange in
+       <http://lists.gnu.org/archive/html/bug-gzip/2010-05/msg00000.html>.
+
+2010-04-26  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+       maint: remove primos support
+       * Makefile.am (EXTRA_DIST): Remove all primos/ files.
+       * primos/build.cpl: Remove file.
+       * primos/ci.opts: Likewise.
+       * primos/include/errno.h: Likewise.
+       * primos/include/fcntl.h: Likewise.
+       * primos/include/stdlib.h: Likewise.
+       * primos/include/sysStat.h: Likewise.
+       * primos/include/sysTypes.h: Likewise.
+       * primos/primos.c: Likewise.
+       * primos/readme: Likewise.
+
+2010-04-08  Jim Meyering  <meyering@redhat.com>
+
+       build: include cfg.mk in the distribution tarball
+       * Makefile.am (EXTRA_DIST): Add cfg.mk.
+
+2010-04-07  Eric Blake  <eblake@redhat.com>
+
+       maint: ignore more built files
+       * .gitignore: Add version files.
+
+2010-04-07  Jim Meyering  <meyering@redhat.com>
+
+       tests: help-version: cross-check PATH in tests
+       * tests/help-version: Cross-check $VERSION and --version output.
+       * tests/Makefile.am (TESTS_ENVIRONMENT): Export VERSION=$(VERSION).
+
+       tests: improve help-version
+       * tests/help-version: Use fail_, rather than echo+Exit.
+
+       tests: pull help-version from grep
+
+       build: keep --version strictly up to date
+       Before this change, in development, gzip's --version output could lag
+       behind reality by a couple deltas or by a "-dirty" suffix.  That would
+       lead to spurious failure of the new --version-$VERSION PATH cross-check.
+       * Makefile.am (version.c, version.h): New rules.
+       (BUILT_SOURCES): Set/append.
+       (noinst_LIBRARIES, noinst_libver_a_SOURCES): Define.
+       (gzip_LDADD): Add libver.a.
+       (DISTCLEANFILES): Define.
+       * gzip.c (license): Use Version, not VERSION.
+
+2010-04-06  Jim Meyering  <meyering@redhat.com>
+
+       tests: (portability) use st, not "status" as variable name
+       * tests/zgrep-signal: Do not use status as a variable name,
+       per autoconf's documentation that it is not portable to
+       some shells.
+
+       tests: s/framework_failure/framework_failure_/
+
+       tests: update init.sh from gnulib
+       * tests/init.sh: Update from gnulib.
+
+       tests: run most tests via tests/Makefile.am
+       * Makefile.am (SUBDIRS): List tests after ".".
+       Move most test-related things from here to ...
+       * tests/Makefile.am: ... here.
+       * configure.ac (AC_CONFIG_FILES): Add tests/Makefile.
+       * tests/helin-segv: Adjust.
+       * tests/help-version: Likewise.
+       * tests/hufts: Likewise.
+       * tests/memcpy-abuse: Likewise.
+       * tests/mixed: Likewise.
+       * tests/null-suffix-clobber: Likewise.
+       * tests/stdin: Likewise.
+       * tests/trailing-nul: Likewise.
+       * tests/zdiff: Likewise.
+       * tests/zgrep-f: Likewise.
+       * tests/zgrep-signal: Likewise.
+       * tests/znew-k: Likewise.
+
+       tests: skip tests that use grep's -f and -E options, if they don't work
+       * tests/init.cfg (require_grep_minus_f): New function.
+       * tests/zgrep-f: Use require_grep_minus_f.  Use path_prepend_.
+
+       tests: arrange for skip and failure notices to go to stderr, not .log
+       * tests/init.cfg: New file.  Make init.sh's stderr_fileno_ match
+       what the "exec 9>&2" we use in TESTS_ENVIRONMENT.
+       * Makefile.am (EXTRA_DIST): Add it.
+
+2010-04-06  Eric Blake  <eblake@redhat.com>
+
+       maint: ignore generated files
+       * .gitignore: Ignore recent gnulib additions.
+
+       maint: update bootstrap
+       * bootstrap: Use latest copy from gnulib/build-aux.
+
+2010-04-05  Jim Meyering  <meyering@redhat.com>
+
+       build: use gnulib's lib-ignore module
+       * bootstrap.conf (gnulib_modules): Add lib-ignore, in case it helps.
+       * Makefile.am (AM_LDFLAGS): Define it.
+
+       maint: let configure-invoked cpp emit diagnostics to config.log
+       * configure.ac: Do not discard CPP's stderr.
+
+       build: update gnulib submodule to latest, and adapt
+       * cfg.mk: Update to use new _sc_search_regexp interface.  Run this:
+       perl -pi -e 's/\b_prohibit_regexp\b/_sc_search_regexp/;'
+       -e 's/\bmsg=/halt=/; s/\bre=/prohibit=/;' cfg.mk
+       and then adjust backslashes so they still line up.
+       * cfg.mk (local-checks-to-skip): Add new sc_texinfo_acronym, to skip it.
+       * msdos/tailor.c (fcalloc): Mark a diagnostic for translation, to
+       placate stricter syntax-check, even though no one uses this file.
+
+       use assembly code matcher when possible
+       * configure.ac (ASCPPPOST): Backslash-escape "#" in AC_SUBST'd
+       variable, to keep make from seeing it as a comment-introducer.
+       Based on a patch by Petr Pisar.
+       * lib/Makefile.am (match.$(OBJEXT)): Use AM_V_GEN and AM_V_at.
+       * lib/match.c: Don't include <config.h>.
+       It would impede configure-time assembler test.
+       * .x-sc_require_config_h: Exempt lib/match.c from syntax-check.
+       * .x-sc_require_config_h_first: Likewise.
+
+2010-03-20  Jim Meyering  <meyering@redhat.com>
+
+       do not use stat.st_mtime of a non-regular file
+       * gzip.c: Include "timespec.h".
+       (treat_stdin): Use st_mtime only from a regular file.
+       This matters at least on Cygwin 1.7.1-1, for which a stdin-pipe has
+       the mtime of /dev/null, rather than the gzip-documented-for-pipes
+       "current time".  Reported by Denis Excoffier.
+
+2010-02-22  Jim Meyering  <meyering@redhat.com>
+
+       tests: exercise the fix for the decompression data-loss bug
+       * tests/null-suffix-clobber: New file.
+       * Makefile.am (TESTS): Add it.
+
+       gzip: fix a data-loss bug when decompressing with --suffix=''
+       * gzip.c (main): Disallow an empty --suffix=S also with -d.
+       Otherwise, "gzip -d -S '' F.gz" would ask if it's ok to remove the
+       existing file, "F.gz";  if you reply "yes", you'd lose all of that data.
+       Use of an empty suffix was already rejected in compression mode.
+       * gzip.1 (--suffix (-S)): Do not recommend to use "gunzip -S '' *".
+       Describe how the suffix is used when decompressing, too.
+       * NEWS (Bug fixes): mention the fix.
+       Reported by Ripduman Sohan.
+
+       tests: add ---presume-input-tty option, solely for testing
+       * gzip.c: Include <stdbool.h>.
+       (presume_input_tty): New global.
+       (main): Set it.
+       (treat_stdin, check_ofname): Use it.
+
+2010-02-07  Jim Meyering  <meyering@redhat.com>
+
+       doc: minor adjustment to README-release
+       * README-release: Tweak description, to sync from coreutils.
+
+       tests: add the help-version sanity tests from coreutils
+       * tests/help-version: New file, from coreutils.
+       * Makefile.am (TESTS): Add it.
+
+       tests: make distcheck invoke "make syntax-check" and other tests
+       * dist-check.mk: New file, from coreutils.
+       * cfg.mk: Include it.
+       * Makefile.am (distcheck-hook): New rule, to make us use it.
+
+       zcmp: consistently indicate failure with exit status of 2
+       * zcmp.in: Exit with status of 2 (not 1), when writing
+       --help or --version output fails, to be more like cmp.
+
+2010-02-03  Jim Meyering  <meyering@redhat.com>
+
+       tests: add more tests of gzip -cdf
+       * tests/mixed: Test "gzip -cdf" for a range of small uncompressed files.
+
+       tests: flip and adjust mixed test, now that the bug is fixed
+       * NEWS (Bug fixes): Mention the fix.
+       * Makefile.am (XFAIL_TESTS): Move tests/mixed from here...
+       (TESTS): ...to here.
+       * tests/mixed: Comment out the currently (always?) failing part.
+
+2010-02-03  Mark Adler  <madler@alumni.caltech.edu>
+
+       gzip -cdf now handles concatenation of gzip'd and uncompressed data
+       * util.c (copy): Change semantics so as to honor a decremented inptr.
+       * gzip.c (get_method): When needed (-cdf), decrement inptr rather
+       than clearing it -- and output the first magic byte.
+
+2010-02-03  Dmitry V. Levin  <ldv@altlinux.org>
+
+       zgrep: terminate gracefully when a pipeline is interrupted by a signal
+       zgrep is not terminated gracefully when its grep/sed pipeline
+       is terminated by a signal.  For example, a command like
+       zgrep -F .TH /usr/share/man/man1/*.gz | head
+       continues working long after the "head" process completes.
+       Another example, a command like
+       zgrep unmatched-pattern /usr/share/man/man1/*.gz
+       cannot be interrupted by sending a SIGQUIT with Ctrl-\ key, it outputs
+       zgrep: line 221: test: : integer expression expected
+       and goes on.
+       * zgrep.in: Terminate gracefully when the grep/sed pipeline is
+       terminated by a signal.
+       * tests/zgrep-signal: New test.
+       * Makefile.am (TESTS): Add it.
+
+2010-02-03  Jim Meyering  <meyering@redhat.com>
+
+       maint: teach "make syntax-check" the space-only indentation rule
+       * cfg.mk (sc_prohibit_tab_based_indentation): New rule, from coreutils.
+       (sc_prohibit_emacs__indent_tabs_mode__setting): Likewise.
+       * bootstrap: Remove "indent-tabs-mode: nil" directive.
+       * .x-sc_prohibit_tab_based_indentation: New file.
+
+2010-02-02  Jim Meyering  <meyering@redhat.com>
+
+       global: convert indentation-TABs to spaces
+       Transformed via this shell code:
+       t=$'\t'
+       git ls-files \
+         | grep -vE '(^|/)((GNU)?[Mm]akefile|ChangeLog)|\.(am|mk)$' \
+         | grep -vE 'tests/pr/|help2man' \
+         | xargs grep -lE "^ *$t" \
+         | xargs perl -MText::Tabs -ni -le \
+           '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'
+
+2010-02-02  Dmitry V. Levin  <ldv@altlinux.org>
+
+       wrapper scripts: write diagnostics to stderr, not to stdout
+       * zforce.in: In case of usage error, output short error diagnostics to
+       stderr instead of printing help text to stdout.
+       * zmore.in: Likewise.
+       * znew.in: Likewise.
+
+2010-02-02  Jim Meyering  <meyering@redhat.com>
+
+       gzip -cdf mishandles some concatenated input streams: test it
+       * tests/mixed: Exercise "gzip -cdf" bug.
+       * Makefile.am (XFAIL_TESTS): Add it.
+       Mark Adler reported the bug.
+
+       tests: move the hufts-segv test to its own file
+       * tests/hufts: New test.
+       * Makefile.am (TESTS): Add tests/
+       (check-local): Remove the hufts-segv test from this rule.
+
+       tests: begin moving tests into their own files
+       * Makefile.am (TESTS): Add tests/stdin.
+       (check-local): Move the stdin check to its own file:
+       * tests/stdin: New script.
+
+       tests: remove unnecessary use of "path_prepend_ ."
+       It is unnecessary, since Makefile.am's TESTS_ENVIRONMENT setting
+       already adds the top build directory, and besides, is only
+       marginally useful when running stand-alone, since it presumes
+       that the script is being run from the top build directory.
+       * tests/helin-segv: Remove unnecessary use of path_prepend_.
+       * tests/memcpy-abuse: Likewise.
+       * tests/trailing-nul: Likewise.
+       * tests/zdiff: Likewise.
+       * tests/zgrep-f: Likewise.
+
+       tests: note that znew-k test depends on length of temp file name
+       * tests/znew-k: Tweak diagnostic, factor and add a surprising comment.
+
+2010-02-01  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+2010-02-01  Dmitry V. Levin  <ldv@altlinux.org>
+
+       fix "znew -K" to work without use of compress utility
+       * znew.in: Change -K option to imply -t, do not use compress(1).
+       * znew.1: Document it.
+       * tests/znew-k: New test.
+       * Makefile.am (TESTS): Add it.
+
+2010-01-20  Jim Meyering  <meyering@redhat.com>
+
+       maint: update README-release procedure
+       * README-release: sync from coreutils.
+
+       post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.4
+       * NEWS: Record release date.
+
+       tests: exercise the segfault fix
+       * tests/helin-segv: New test.
+       * Makefile.am (TESTS): Add it.
+
+       gzip -d: do not clobber stack for valid input on x86_64
+       * unlzw.c (unlzw): Avoid integer overflow.
+       Aki Helin reported the segfault along with an input to trigger the bug.
+       * NEWS (Bug fixes): Mention it.
+
+       maint: avoid a minor "make syntax-check" failure
+       * .x-sc_file_system: Exempt NEWS, since it includes a literal
+       from an old diagnostic.
+
+       maint: remove unused file: README-alpha
+       * README-alpha: Remove unused file.
+
+       build: update gnulib submodule to latest
+
+2010-01-11  Yuxi Zhang  <YZhang@qnx.com>
+
+       gzip -d: use memcpy more often
+       * inflate.c (inflate_codes): Use memcpy (rather than slower
+       memcopy-like code) in more cases.
+
+2010-01-11  Jim Meyering  <meyering@redhat.com>
+
+       build: do not override gnulib-provided AM_CFLAGS options
+       Avoid a warning from automake:
+       lib/Makefile.am:24: AM_CFLAGS multiply defined in condition TRUE ...
+       lib/gnulib.mk:30: ... `AM_CFLAGS' previously defined here
+       lib/Makefile.am:20:   `lib/gnulib.mk' included from here
+
+       * lib/Makefile.am (AM_CFLAGS): Append $(WARN_CFLAGS) and
+       $(WERROR_CFLAGS), i.e., use "+=", not "=".
+       This was introduced via 2009-12-17 commit 0341fc22,
+       "build: with --enable-gcc-warnings, use -Werror",
+       but fortunately is not a bug, because the definition
+       it would have overridden was always empty.
+
+2010-01-10  Jim Meyering  <meyering@redhat.com>
+
+       gzip -d would fail with a CRC error...
+       ...for some inputs, and some memcpy implementations.  It is possible
+       that an offending input has to be compressed "from FAT filesystem
+       (MS-DOS, OS/2, NT)", since the sole reproducer no longer evokes a
+       CRC error when uncompressed and recompressed on a GNU/Linux system.
+       Also, using an unpatched reverse-memcpy-gzip on over 100,000 inputs
+       on a GNU/Linux system did not turn up another reproducer.
+       * inflate.c (inflate_codes): Don't call memcpy with overlapping regions.
+       Properly detect when source and destination overlap.
+       * tests/memcpy-abuse: New test, to trigger misbehavior.
+       * Makefile.am (TESTS): Add it.
+       * NEWS (Bug fixes): Mention it.
+       Reported by Alain Magloire in
+       http://thread.gmane.org/gmane.comp.gnu.gzip.bugs/307
+
+2010-01-08  Jim Meyering  <meyering@redhat.com>
+
+       tests: switch to gnulib's init.sh test infrastructure
+       * tests/test-lib.sh: Remove file.
+       * tests/init.sh: New file, from gnulib.
+       * tests/trailing-nul: Use the new file.
+       * tests/zdiff: Likewise.
+       * tests/zgrep-f: Likewise.
+       * Makefile.am (EXTRA_DIST): List tests/init.sh, not test-lib.sh.
+
+       build: update gnulib submodule to latest
+
+2010-01-03  Jim Meyering  <meyering@redhat.com>
+
+       maint: record update-copyright options for this package
+       * cfg.mk: Next time, just run "make update-copyright".
+
+2010-01-01  Jim Meyering  <meyering@redhat.com>
+
+       maint: update all FSF copyright year lists to include 2010
+       Use this command:
+       git ls-files |grep -vE '^(\..*|COPYING|gnulib)$' |xargs \
+       env UPDATE_COPYRIGHT_USE_INTERVALS=1 build-aux/update-copyright
+
+2009-12-31  Jim Meyering  <meyering@redhat.com>
+
+       maint: newer gnulib; don't hard-code my GPG key ID
+       * cfg.mk (gpg_key_ID): Remove definition, now that maint.mk automates it.
+       * gnulib: Update to lastest.
+
+2009-12-30  Jim Meyering  <meyering@redhat.com>
+
+       build: update gnulib submodule to latest
+
+       maint: remove lots of obsolete #if...HAVE_* checks
+       Remove many always-true cpp tests like #ifdef HAVE_UNISTD_H,
+        #ifdef HAVE_FCNTL_H and #ifdef SSIZE_MAX.
+       * gzip.c: As above.
+       * gzip.h: Likewise.
+       * inflate.c: Likewise.
+       * tailor.h: Likewise.
+       * unlzw.c: Likewise.
+       * util.c: Likewise.
+       * zip.c: Likewise.
+
+       build: add a syntax-check
+       * cfg.mk (sc_prohibit_obsolete_HAVE_HEADER_H): New rule.
+
+       build: with --enable-gcc-warnings, use -Werror
+       * Makefile.am (AM_CFLAGS): Enable $(WERROR_CFLAGS).
+       * lib/Makefile.am (AM_CFLAGS): Enable both $(WARN_CFLAGS) and
+       $(WERROR_CFLAGS).
+
+       build: quiet warnings from util.c
+       * configure.ac (warnings): Add -Wno-overflow and -Wno-type-limits.
+
+       build: avoid warning about possibly-no-return functions
+       * gzip.h (read_error, write_error): Mark these functions as "no-return".
+
+       build: avoid warning about ignored chown/fchown return value
+       * bootstrap.conf (gnulib_modules): Add ignore-value.
+       * gzip.c: Include "ignore-value.h".
+       (copy_stat): Explicitly ignore chown and fchown failure
+
+       build: update gnulib submodule to latest
+
+2009-11-20  Jim Meyering  <meyering@redhat.com>
+
+       build: unlzw.c: avoid warnings about unused macros
+       * configure.ac: Turn off -Wunused-macros.
+
+       build: avoid warnings about unused macros
+       * unzip.c (LOCTIM): Comment out unused macro.
+       * deflate.c (EQUAL): Remove definition.  Use "0" at sole point of use.
+
+       build: util.c: avoid warnings about add_envopt
+       * util.c (add_envopt): The parameter "env" was used for two conflicting
+       purposes.  One use required a const char* parameter, while the other
+       was used as an argument to free, which must not be "const".
+       Rename the parameter and use a new local variable for the second role.
+
+       build: avoid many const-related warnings
+       * gzip.c: Add "const" to many variables, to avoid compiler warnings.
+       * util.c (add_envopt): Make 3rd parameter const
+       (gzip_error): Make sole parameter const.
+       * gzip.h: Update prototypes.
+
+       build: avoid warnings from -Wstrict-prototypes
+       * gzip.c (main): Declare using a prototype.
+       (progerror): Likewise.  And make parameter const.
+
+       build: use gnulib's fdopendir module
+       * bootstrap.conf (gnulib_modules): Add fdopendir.
+       * gzip.c (treat_dir): Don't depend on HAVE_FDOPENDIR.
+       Gnulib now guarantees its availability.
+       * configure.ac: Don't check for fdopendir here.
+
+       build: enable many warnings
+       * configure.ac: Add support for --enable-gcc-warnings.
+       * bootstrap.conf (gnulib_modules): Add manywarnings.
+       * Makefile.am (AM_CFLAGS): Add (WARN_CFLAGS) # $(WERROR_CFLAGS)
+
+       maint: tweak formatting of bootstrap.conf
+       * bootstrap.conf (gnulib_modules): Unindent list.
+
+       maint: cfg.mk: remove factored-out ftp host/dir definitions
+       * cfg.mk (gnu_ftp_host-alpha, gnu_ftp_host-beta gnu_ftp_host-stable):
+       (gnu_rel_host, url_dir_list): Remove definitions.  The defaults,
+       now provided by maint.mk, are the same.
+       * gnulib: Update for latest, including those maint.mk additions.
+
+       build: "make stable" emitted an invalid gnupload command
+       * cfg.mk (gnu_ftp_host-stable): Rename from gnu_ftp_host-major.
+       * README-release: Change another s/major/stable/.
+
+2009-10-30  Jim Meyering  <meyering@redhat.com>
+
+       post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
+
+       version 1.3.14
+       * NEWS: Record release date.
+
+       build: accommodate new syntax-check test
+       * amiga/tailor.c (_expand_args): Change each of three uses of
+       "exit(20)" to "exit(EXIT_FAILURE)".
+       * sample/add.c: Include <stdlib.h>.
+       (main): Use EXIT_FAILURE and EXIT_SUCCESS, not 1 and 0.
+       * sample/sub.c (main): Likewise.
+       * sample/zread.c (main): Likewise.
+
+       build: update gnulib submodule to latest
+
+       build: link with $(LIB_CLOCK_GETTIME)
+       * Makefile.am (gzip_LDADD): Add $(LIB_CLOCK_GETTIME), now that
+       utimens pulls in gettime.
+       (FILES_TO_CHECK): Remove $(gzip_LDADD), now that it may contain -lrt.
+
+2009-10-28  Jim Meyering  <meyering@redhat.com>
+
+       msdos: fix syntax in Makefile.djg
+       * msdos/Makefile.djg (gzip): Change each of two leading 8-space
+       sequences to a TAB.  Reported by Allan Mui.
+
+2009-10-20  Jim Meyering  <meyering@redhat.com>
 
-       * util.c (display_ratio): Use floating point to compute ratio:
-       this avoids problems with integer overflow.
+       build: do not use AC_PREFIX_PROGRAM
+       * configure.ac: Do not use "AC_PREFIX_PROGRAM(gzip)".
+       It would induce behavior that is so surprising that it is probably
+       universally considered to be buggy, these days.  Reported by Zube
+       in http://thread.gmane.org/gmane.comp.gnu.gzip.bugs/273
 
-       * zgrep.in: Add support for --, -H, -h, -L, -l, -C, -d, -m and
-       their long equivalents.  Warn that -r and -d are not supported.
+2009-10-10  Jim Meyering  <meyering@redhat.com>
 
-       * zmore.in:
-       Check that file is readable before attempting to decompress it.
+       gzip: add tests for today's bug fix
+       * tests/trailing-nul: New file.  Test for today's fix.
+       * Makefile.am (TESTS): Add new script.
+       * NEWS (Bug fixes): Mention it.
 
-2000-10-09  Paul Eggert  <eggert@twinsun.com>
+2009-10-10  Daniel Barkalow  <barkalow@iabervon.org>
 
-       * configure.in (AC_CHECK_FUNCS): Add lstat.
+       gzip: don't fail when there is exactly one trailing NUL byte
+       * gzip.c (get_method): Require the second byte of magic only if
+       the first byte was nonzero.
 
-2000-07-20  Paul Eggert  <eggert@twinsun.com>
+2009-10-09  Jim Meyering  <meyering@redhat.com>
 
-       Use a POSIX-compliant shell instead of /bin/sh.
-       Idea suggested by Albert Chin-A-Young <china@thewrittenword.com>.
+       build: enable automake color- and parallel-test options
+       * configure.ac (AM_INIT_AUTOMAKE): Enable color-tests and parallel-tests.
 
-       * m4/shell.m4: New file.
-       * configure.in (AC_PROG_SHELL): Add it.
-       * Makefile.am (ACINCLUDE_INPUTS): Add $(M4DIR)/shell.m4.
-       (.in): Replace /bin/sh with $(SHELL).
+       zgrep: portability improvements; exercise "-f -"
+       * zgrep.in: Adjust loop not to use seq; it's not portable enough.
+       Fail if we don't find a free file descriptor.
+       (exists): New function; Use it in place of less portable "test -e".
+       Testing for existence of /dev/fd/$fd doesn't work on Solaris 10,
+       since all 256 always exist (as char devices), but testing for
+       /proc/$$/fd/$fd does work, so do that instead.
+       * Makefile.am (TESTS): Add tests/zgrep-f.
+       * tests/zgrep-f: New test; exercise this bug.
+       * NEWS (Bug fixes): Mention it.
 
-2000-04-17  Bruno Haible  <haible@clisp.cons.org>
+2009-10-09  Carl Worth  <cworth@cworth.org>
 
-       * Makefile.am (install-exec-hook): If hard links fail, try symlinks.
+       zgrep: handle "-f -" the same way that it works with grep
+       Before this change, echo needle|zgrep -f - haystack.gz would not work.
+       * zgrep.in: When the pattern comes from stdin, redirect it to a
+       different file descriptor, since we're about to use stdin.
 
-2000-04-02  Jim Meyering  <meyering@ascend.com>
+2009-10-09  Jim Meyering  <meyering@redhat.com>
 
-       * Makefile.am (install-exec-hook): Remove link targets before
-       installing.
+       zdiff would exit 2 (error) rather than 1 for differences
+       * zdiff.in: Save and restore cmp's exit status around a case
+       statement that would otherwise clobber its value.
+       * NEWS (Bug fixes): Mention it.
+       * tests/zdiff: New test; exercise both bugs.
+       * tests/test-lib.sh: New file.  From coreutils.
+       * Makefile.am (EXTRA_DIST): Add tests/test-lib.sh.
+       (TESTS): Add tests/zdiff.
+       (TESTS_ENVIRONMENT): Define.  From coreutils.
+       (EXTRA_DIST): Append all $(TESTS).
 
-2000-01-02  Albert Chin-A-Young  <china@thewrittenword.com>
+       zdiff: fix malfunction when operating on two gzip'd inputs
+       zdiff would fail to print differences in two compressed inputs
+       * zdiff.in: Don't let cmp output mix with echo'd gzip exit
+       status values.  Report and fix from Jörg-Volker Peetz via
+       <http://bugs.debian.org/434275>
+       * NEWS (Bug fixes): Mention it.
 
-       * gzip.texi: Add direntry.
+       build: update gnulib submodule to latest
 
-1999-12-21  Paul Eggert  <eggert@twinsun.com>
+2009-10-07  Jim Meyering  <meyering@redhat.com>
 
-       * NEWS, README, revision.h, gzip.texi: Revision 1.3, dated today.
-       * gzip.c (license_msg, usage, version, help, license):
-       Adjust to current GNU coding standards.
-       (total_in, total_out): Remove unnecessary initialization.
-       * zip.c (file_read): Report read errors.
-       * util.c (fill_inbuf): Likewise.
-       * gzip.c (main): Don't assume EOF == -1.
-       * unlzw.c (unlzw): Likewise.
-       * util.c (copy, fill_inbuf): Likewise.
+       build: update gnulib submodule to latest
 
-1999-11-18  Paul Eggert  <eggert@twinsun.com>
+2009-10-06  Jim Meyering  <meyering@redhat.com>
 
-       * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS):
-       Work around a bug in the QNX shell, which doesn't
-       propagate exit status of failed commands inside shell assignments.
+       maint: clarify web-doc-update instructions
+       * README-release: sync a tiny change from coreutils.
 
-1999-10-07  Paul Eggert  <eggert@twinsun.com>
+2009-10-03  Jim Meyering  <meyering@redhat.com>
 
-       * NEWS, README, revision.h, gzip.texi:
-       Revision 1.2.4294967306 dated today.  This is the successor to
-       revision 1.2.4.4294967305; automake requires the new (shorter) number.
+       build: update gnulib submodule to latest
 
-       Convert to automake.
+       doc: use gnu-web-doc-update module
+       * bootstrap.conf (gnulib_modules): Add it.
 
-       * Makefile.am, gunzip.1, zcat.1, zcmp.1, AUTHORS: New files.
+2009-10-02  Jim Meyering  <meyering@redhat.com>
 
-       * revision.h (VERSION): Remove; moved to config.h.
+       doc: describe release procedure
+       * README-release: New file.
 
-       * configure.in (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER,
-       AC_CANONICAL_HOST, AC_OBJEXT): Add.
-       (AC_PROG_CPP): Remove.
-       (AC_SYS_LARGEFILE): Add, replacing older inline code.
-       (ASCPP): Use $OBJEXT.
-       (LIBOBJS): Add match.o if needed.
-       (AC_PROG_INSTALL): Remove.
-       (AC_EXT, AC_C_CONST): Add.
-       (AC_CHECK_HEADERS): Add, replacing lots of AC_HEADER_CHECKs.
-       All instances of defined(NO_TIME_H) changed to !defined(HAVE_TIME_H),
-       etc.
-       (AC_CHECK_FUNCS): Add utime.
-       (SEDCMD): Use $interpval, not $ac_cv_sys_interpreter.
-       (AC_PREFIX_PROGRAM): Add, replacing AC_PREFIX.
-       (ZCAT, G): Remove.
-       (LIBOBJS): Add.
-       (OBJA): Remove; LIBOBJS now does this.
+2009-10-01  Jim Meyering  <meyering@redhat.com>
 
-       * bits.c, gzip.c, deflate.c, inflate.c, lzw.c, trees.c, unlzh.c,
-       unlzw.c, unpack.c, unzip.c, util.c, zip.c: Include <config.h>
-       first; this is needed for proper large-file support, given the new
-       way of configuring large files.
+       maint: make cfg.mk slightly more generic
+       * cfg.mk (url_dir_list): Don't hard-code "coreutils".  Use $(PACKAGE).
 
-       * gzip.c: Include <sys/types.h>; Ultrix needs this.
-       (TIME_OPT): Use STRUCT_UTIMBUF instead of empty string.
-       (help): Add bug-report address.
-       (do_stat): Depend on HAVE_LSTAT, not S_IFLNK, S_ISLNK, and NO_SYMLINK.
+2009-09-30  Jim Meyering  <meyering@redhat.com>
 
-1999-06-25  Paul Eggert  <eggert@twinsun.com>
+       post-release administrivia
+       * NEWS: Add header line for next release.
+       * .prev-version: Record previous version.
+       * cfg.mk (old_NEWS_hash): Auto-update.
 
-       * inflate.c (huft_build):
-       Set n to length of v, to detect improper tables.
-       Don't accidentally grow j past z.
+       version 1.3.13
+       * NEWS: Record release date.
 
-1999-06-24  Paul Eggert  <eggert@twinsun.com>
+       build: update gnulib submodule to latest
 
-       * Makefile.in (check): Update texinfo.tex size.
+       maint: update bootstrap script
+       * bootstrap (with_gettext): Update from coreutils.
 
-       * configure.in (ASMV):
-       Define with AC_DEFINE; do not manipulate DEFS directly,
-       as this doesn't work with recent autoconf versions.
+       maint: pull in two release-related modules from gnulib
+       * bootstrap.conf (gnulib_modules): Add announce-gen and gnupload.
 
-1999-02-06  Paul Eggert  <eggert@twinsun.com>
+       build: use more gnulib modules for better POSIX compliance
+       * bootstrap.conf (gnulib_modules): Add modules exposed via
+       make CFLAGS=-DGNULIB_POSIXCHECK 2>&1 \
+       |perl -lne '/.* use gnulib module (\S+).*/ and print $1' \
+       |sort |uniq -c|sort -nr
+       Add these: calloc close fclose fprintf-posix lstat malloc
+       perror printf-posix realloc
 
-       * NEWS, README, revision.h, gzip.texi: Revision 1.2.4.4294967305,
-       dated today.  This merges the changes from gzip 1.2.4a, which fix
-       some typographical errors in the documentation and update the
-       bug-reporting address.
+2009-09-30  Karl Berry  <karl@freefriends.org>
 
-1999-01-27  Paul Eggert  <eggert@twinsun.com>
+       doc: update to FDL 1.3, minor clean-up
+       * NEWS, README, TODO: Update FDL s/1.2/1.3/.
 
-       * NEWS, README, revision.h (VERSION, REVDATE):
-       Revision 1.2.4.4294967304, dated today.
+2009-09-28  Karl Berry  <karl@freefriends.org>
 
-       Port to autoconf 2.13.
+       doc: update gzip.texi
+       * doc/gzip.texi: FDL 1.3+
+       Consistently (de)capitalize section names.
+       "User's" is not correct; seems best to simplify the title.
+       Throw in some "GNU"'s.
+       Make direntries be what we actually want.
+       Detabify.
 
-       * Makefile.in (next, next-fat, coherent):
-       Update dirent headers to match Autoconf 2.13.
-       * configure.in (AC_RETSIGTYP): Remove; superseded by AC_TYPE_SIGNAL.
-       (AC_DYNIX_SEQ, AC_XENIX_DIR, AC_DIR_HEADER): Remove; superseded by
-       AC_HEADER_DIRENT.
-       * tailor.h (HAVE_DIRENT_H, HAVE_SYS_DIR_H):
-       Define instad of DIRENT, SYSDIR.
-       * gzip.c (NAMLEN): Renamed from NLENGTH. Depend on Autoconf 2.13 names
-       HAVE_DIRENT_H, HAVE_SYS_NDIR_H, HAVE_SYS_DIR_H, HAVE_NDIR_H
-       instead of the oldfashioned names DIRENT, SYSDIR, SYSNDIR, NDIR.
-       (CLOSEDIR): New macro.
-       (progerror): New function.
-       (treat_stdin, treat_file, creat_outfile, get_istat, check_ofname,
-       treat_dir): Use it, for brevity.
-       (treat_dir): Report any I/O errors when reading directories.
+2009-09-26  Jim Meyering  <meyering@redhat.com>
 
-       * COPYING, INSTALL, doc/texinfo.tex, install-sh:
-       Update to latest public versions.
+       maint: temporarily exempt failing syntax-check tests
+       * cfg.mk (local-checks-to-skip): Add the list of currently-failing
+       tests, to exempt them from "make syntax-check".
 
-1998-11-18  Paul Eggert  <eggert@twinsun.com>
+       gzip: don't use an uninitialized file descriptor
+       gzip interprets an argument of "-" as indicating stdin, but when
+       "-" is not the first name on the command line, it doesn't work.
+       * gzip.c (treat_stdin): Initialize "ifd".
+       Patch and fine description by Lasse Collin in
+       http://www.mail-archive.com/bug-gzip@gnu.org/msg00213.html
+       * Makefile.am (check-local): Exercise the fix.  Based on the above.
+       * NEWS (Bug fixes): Mention this.
 
-       * NEWS, README, revision.h (VERSION, REVDATE):
-       Revision 1.2.4.4294967303, dated today.
+       maint: use a git submodule for gnulib
+       * .gitmodules: New file, to track gnulib.
+       * gnulib: New file, created by running this:
+       git submodule add git://git.sv.gnu.org/gnulib.git gnulib
 
-       * gzip.c (get_method): Don't complain about trailing zeros at
-       the end of a gzipped file, as they're commonly appended to fill
-       out a block (e.g. by GNU tar).
+       maint: update existing copyright year lists to include 2009
+       * bootstrap.conf (gnulib_modules): Add update-copyright.
 
-       * configure.in (CPPFLAGS, LDFLAGS, LIBS): Add large-file support
-       for HP-UX 10.20 and later.
+       maint: include <config.h> first in many files
 
-       * getopt.c, getopt.h, texinfo.tex: Sync with latest version at gnu.org.
-       * getopt1.c: New file.
-       * Makefile.in (SRCS): Add getopt1.c.
-       (OBJS): Add getopt1$O.
-       (getopt1$O): New dependency.
-       (check): Adjust desired size of compressed texinfo.tex to 55637,
-       to reflect the 1998-11-13 edition of texinfo.tex.
+       maint: avoid another "make syntax-check" failure
+       * lib/Makefile.am (match.$(OBJEXT)): Use $(ASCPPPOST), not @ASCPPPOST@.
 
-       * gpl.texinfo: Remove; its addresses were out of date and
-       these days the GPL isn't reprinted in manuals anyway.
-       * gzip.texi: Remove reference to gpl.texinfo.
-       * Makefile.in (GENFILES): Remove gpl.texinfo.
+       maint: remove RCS $Id$ variables and comments
 
-1998-11-13  Paul Eggert  <eggert@twinsun.com>
+       maint: change spelling in comments: s/filesystem/file system/
 
-       * NEWS, README, revision.h (VERSION, REVDATE):
-       Revision 1.2.4.4294967302, dated today.
+       maint: don't use "the the"
+       * msdos/doturboc.bat: s/the the/the/.
 
-       * gzip.c (input_eof): New function.
-       (treat_stdin, treat_file): Use it to fix premature detection of EOF
-       bug when a gzipped file concatenation boundary is at a multiple of
-       INBUFSIZ.
+       maint: remove trailing blanks
 
-       * Makefile.in (installman): Fix bug when installing from subdirectory.
-       ($(srcdir)/gzip.info): Renamed from gzip.info.
-       ($(srcdir)/gzip.info, realclean): Do not split gzip.info.
+       maint: remove useless if-before-free tests
+       * gzip.c (do_exit): Remove useless if-before-free tests.
 
-1998-10-26  Paul Eggert  <eggert@twinsun.com>
+       maint: remove useless casts to avoid "make syntax-check" failures
+       * gzip.c (do_exit): Remove anachronistic cast.
+       * inflate.c (huft_free): Likewise.
+       * util.c (add_envopt): Likewise.
+       * vms/vms.c (vms_expand_args): Likewise.
 
-       * NEWS, README, revision.h (VERSION, REVDATE):
-       Revision 1.2.4.4294967301, dated today.
+       maint: new file: .prev-version
+       * .prev-version: New file, to record previous version number.
 
-       * TODO: Update bug reporting address.
+2009-09-06  Jim Meyering  <meyering@redhat.com>
 
-       * Makefile.in (datadir, libdir): Remove unused macros.
-       (mandir): Let configure set it.
-       (manextdir): New macro.
-       (alldirs): Remove datadir, libdir; add manextdir.
-       (TEXI2HTML): New macro.
-       (installman, uninstall): Install into manextdir, not mandir.
-       (install-strip): New rule.
-       (installdirs): No need to build $(prefix)/man separately,
-       as it's now in alldirs.
-       (match$O): Compile with $(CFLAGS).
-       (gzip_1.html): New rule.
+       build: avoid spurious warnings from clang
+       * gzip.h (gzip_error): Declare with ATTRIBUTE_NORETURN.
 
-       * gzip.c (get_istat): Remove lint by initializing z_suffix_errno.
-       (check_ofname): Do not assume unsigned char.
+       maint: update build-from-scratch infrastructure
+       * bootstrap: Modernize.
+       * bootstrap.conf: Modernize.
+       * cfg.mk: New file.
 
-       * util.c (strlwr): Don't assume char is unsigned.
-       (warning): Renamed from `warn'.
+2009-08-18  Jim Meyering  <meyering@redhat.com>
 
-       * gzip.h (tolow): Use tolower instead of relying on 'A'-'a'.
-       (warning): Renamed from warn.
+       inflate: avoid a leak on a error path
+       * inflate.c (inflate_dynamic): Don't leak
+
+       maint: ignore a few generated files
+       * lib/.gitignore: ignore more generated files.
+
+       tests: add a test for just-fixed bug
+       * tests/hufts-segv.gz: New file, from bug report.
+       * Makefile.am (EXTRA_DIST): Add tests/hufts-segv.gz.
+       (check-local): Exercise the bug.
+
+       tests: don't misinterpret a failing test as successful
+       * Makefile.am (check-local): Exit "1" upon failure, not 0.
+
+2009-08-18  Thiemo Nagel  <thiemo.nagel@ph.tum.de>
+
+       avoid creating an undersized buffer for the hufts table
+       A malformed input file can cause gzip to crash with a segmentation
+       violation or hang in an endless loop.
+       Reported in <http://bugs.debian.org/507263>.
+       * NEWS (Bug fixes): Mention it.
+
+2009-08-18  Jim Meyering  <meyering@redhat.com>
 
-       * trees.c (warning): Renamed from warn.
+       avoid silent data loss e.g., on NFS, due to unchecked close of stdout
+       * gzip.c: Include "closein.h".
+       (main): Use atexit (close_stdin);
+       * bootstrap.conf (gnulib_modules): Add closein.
+       Prompted by Mark Kidwell's report and patch in
+       http://bugs.debian.org/538187
+       * NEWS (Bug fixes): Mention it.
+       * */.gitignore: Update.
+
+       build: require automake-1.11 and produce xz-compressed tarballs, too
+       * configure.ac: Require automake-1.11.  Use the dist-xz option.
+
+       build: avoid non-srcdir build failure
+       * Makefile.am (gzip.doc.gz): Use $(srcdir)/gzip.doc, not gzip.doc.
+       Don't redirect directly to $@.  Use $(AM_V_GEN).
+       (gzip.doc, .in): Don't redirect directly to $@.  Use $(AM_V_GEN).
+       * NEWS: Add template header for upcoming release.
+
+       build: enable git-version-gen, automake silent rules, generate ChangeLog
+       * configure.ac (AC_INIT): Use git-version-gen.
+       Use AM_SILENT_RULES([yes]).
+       (AM_INIT_AUTOMAKE): Drop gnits; conflicts with git-version-gen versions.
+       * bootstrap.conf (gnulib_modules): Use getopt-gnu
+       Ensure ChangeLog exists, for automake.
+       rather than obsolete "getopt" module.
+       Add gitlog-to-changelog.
+       Add git-version-gen.
+       Add gnu-make, gnumakefile and maintainer-makefile.
+       * Makefile.am (dist-hook, gen-ChangeLog): New rules, to generate
+       ChangeLog and insert it into the distribution tarball.
+       (EXTRA_DIST): Add ChangeLog-2007.
 
-1998-10-14  Paul Eggert  <eggert@twinsun.com>
-
-       Merge patches from Debian.
-
-       * NEWS, README, revision.h (VERSION, REVDATE):
-       Revision 1.2.4.4294967300, dated today.
-
-       * README, algorithm.doc, gzip.texi: Update maintainer address.
-
-       * gzexe.in, zdiff.in, znew.in:
-       Close security hole portably, using `set -C'.
-
-       * zgrep.in: Add -A, -B.
-
-       * gzexe.in: Use `gzip', not full path, to run gzip.
-
-       * zdiff.in: Report proper exit status.
-
-       * gzip.h (base_name): Renamed from basename.  All uses changed.
-
-       * gzip.c (z_suffix): Now char *, so that there's no limit to length.
-       All uses change.
-       (main): If --quiet, abort gzip when SIGPIPE received.
-       (get_suffix): Don't assume z_suffix's address is a constant.
-       (get_istat): Likewise.
-       Check for buffer overflow.
-       Preserve errno correctly.
-       (make_ofname): Check for buffer overflow.
-
-       * util.c (fill_inbuf): Flush window before reporting read error.
-
-       * inflate.c (inflate_dynamic): Don't dump core if tl == NULL.
-
-       * Makefile.in (GENFILES): Add zless.in.
-       (SCRIPTS): Add zless.
-       (default): Build all programs, not just gzip.
-       (all): Add zless.
-       (installbin): Install zegrep, zfgrep.
-       (installman): Install zless man page.
-       (install_compress): Don't install compress.
-       (zless): New rule.
-
-1998-09-16  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h: Bump version number to 1.2.4.4294967299.
-
-       * tailor.h (UNLINK_READONLY_BUG): New macro.
-       * gzip.h (unlink): New decl.
-       * util.c (xunlink): New function.
-       * gzip.c
-       (treat_file, create_outfile, check_ofname, copy_stat, abort_gzip):
-       Use xunlink rather than unlink.
-       Do not chmod the file; xunlink will do that if need be.
-
-1998-05-21  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h: Bump version number to 1.2.4.4294967298.
-       * Makefile.in (prefix): Set from @prefix@.
-       (distclean): Remove config.cache.
-
-1998-01-15  Paul Eggert  <eggert@twinsun.com>
-
-       * NEWS, README, revision.h:
-       Bump version number to indicate large-file support.
-
-1997-10-08  Paul Eggert  <eggert@twinsun.com>
-
-       * gzip.c (CHAR_BIT): Define if <limits.h> doesn't.
-       (OFF_T_MIN, OFF_T_MAX): New macros.
-       (do_list): Revert to fixed format, but this time don't assume
-       that 9 digits suffice; use a width taken from the maximum value
-       that off_t can represent.
-       (off_t): Do not typedef; autoconf handles this now.
-       * gzip.c, util.c (<limits.h>): Include if HAVE_LIMITS_H.
-       * gzip.h, util.c (fprint_off): Now takes int width argument.
-       * configure.in (AC_HAVE_HEADERS): Check for limits.h.
-       (AC_TYPE_OFF_T): Use this instead of grepping sys/types.h for off_t.
-       (AC_TYPE_SIZE_T): Use this instead of obsolescent AC_SIZE_T.
-       * tailor.h (NO_OFF_T): Remove.
-       (off_t): Define this instead.
-
-1997-10-03  Paul Eggert  <eggert@twinsun.com>
-
-       * Makefile.in, bits.c, configure.in, deflate.c, gzip.c, gzip.h,
-       inflate.c, trees.c, unlzw.c, unpack.c, unzip.c, util.c, zip.c:
-       Adjust to Solaris 2.6, which has large files but small off_t by default.
-       * gzip.c: Output more reasonable message if input file is too large.
-       * gzip.c, util.c: Propagate errno from point of error to `perror'.
-       * unzip.c: Allow uncompressing files larger than 4 gigabytes.
-       http://www.gzip.org/4g.patch (1996-07-21)
-
-Wed Aug 18 09:34:23 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.2.4
-       By default, do not restore file name and timestamp from those saved
-         inside the .gz file (behave as 'compress'). Added the --name option
-          to force name and timestamp restoration.
-       Accept - as synonym for stdin.
-       Use manlinks=so or ln to support either hard links or .so in man pages
-       Accept foo.gz~ in zdiff.
-       Added support for Windows NT
-        Handle ENAMETOOLONG for strict Posix systems
-       Use --recursive instead of --recurse to comply with Webster and
-          the GNU stdandard.
-       Allow installation of shell scripts with a g prefix: make G=g install
-       Install by default zcat as gzcat if gzcat already exists in path.
-       Let zmore behave as more when invoked without parameters (give help)
-       Let gzip --list reject files not in gzip format even with --force.
-       Don't complain about non gzip files for options -rt or -rl.
-       Added advice in INSTALL for several systems.
-       Added makefile entries for NeXTstep 3.1 (if configure fails)
-       Avoid problem with memcpy on Pyramid (gave crc error on some files)
-       Support the -r option when compiled with Borland C++ on msdos.
-       Force lower case file names only for FAT file systems (not HPFS)
-       Rewrite one expression in inflate.c to avoid cc bug on Solaris x86.
-       In the msdos makefiles, get match.asm from the msdos subdirectory.
-       Catch SIGTERM and SIGHUP only if they are not ignored.
-        getopt.c: on Amiga, "#if !defined(const)" does not compile.
-       Use register parameters on Amiga.
-       Do not force names to lower case on Amiga.
-       Fix support of Atari TOS (Makefile.st and tailor.h)
-       In unlzw.c, do not suggest using zcat if zcat already used.
-       In INSTALL, suggest using bsdinst for HPUX.
-       Document Turbo C++ 1.0 bug in INSTALL.
-       Improved the documentation relative to the --no-name option.
-       Avoid signed/unsigned warnings in several files.
-       Added pointer to jka-compr19.el in README.
-       Added pointer to OS/2 executables in README.
-       Added --block-compress in tar -z example (gzip.1 and gzip.texi).
-       Don't keep rcsid in executable (avoid compilation warnings).
-       Check also the correctness of the first byte of an .Z file.
-       Return non zero status for an invalid option.
-        Remove "NEWFILES" from os2/gzip.def for Borland C++ on OS/2.
-       Remove "time stamp restored" message (just obey the -N request).
-
-Thu Jun 24 10:27:57 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.2.3
-       Don't display the output name when decompressing except with --verbose.
-       Remove usage of alloca in getopt.c and all makefiles.
-       Use ASCPP instead of CPP to avoid breaking AC_HEADER_CHECK on RiscOS.
-        Added the zfile shell script in subdirectory sample.
-       Moved the list of compiler bugs from README to INSTALL.
-       Added vms/Readme.vms.
-       Fix DIST_BUFSIZE check in unlzh.c for 16 bit machines.
-       Fix REGSIGTYP macro in configure.in.
-       Use 'define' instead of == in vms/gzip.hlp.
-       Avoid warnings in unlzh.c
-       Allow separate installation of binaries and man pages.
-       Simplified handling of file names with spaces in zgrep and znew.
-       Fix dependencies and remove rule for trees.c in amiga/Makefile.sasc
-       Add missing quote in gzexe.
-
-Thu Jun 17 13:47:05 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.2.2
-       Fix a compilation error in gzip.c on Sun with cc (worked with gcc).
-
-Wed Jun 16 11:20:27 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.2.1
-        Let zmore act as more if the data is not gzipped.
-         By default, display output name only when name was actually truncated.
-        Use absolute path names in gzexe'd programs for better security.
-        In gzexe, use chmod 700 instead of 755 and don't gzexe tail,rm,etc...
-        Update vms/gzip.hlp.
-        Added a note about the fast options (-1 to -3) in algorithm.doc.
-        Improved man page for zgrep.
-        Minor fixes to gzip.texi.
-        Always set LC_ALL and LANG in configure (for tr on HPUX)
-
-Mon Jun 14 10:03:24 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.2
-        Added the --list option to display the file characteristics.
-         Added the --no-name option: do not save or restore original filename
-           Save the original name by default.
-         Allow gunzip --suffix "" to attempt decompression on any file
-           regardless of its extension if an original name is present.
-        Add support for the SCO compress -H format.
-         gzip --fast now compresses faster (speed close to that of compress)
-           with degraded compression ratio (but still better than compress).
-          Default level changed to -6 (acts exactly as previous level -5) to
-           be a better indication of its placement in the speed/ratio range.
-        Use smart name truncation: 123456789012.c -> 123456789.c.gz
-          instead of 12345678901.gz
-        With --force, let zcat pass non gzip'ed data unchanged (zcat == cat)
-        Added the zgrep shell script.
-        Made sub.c useful for 16 bit sound, 24 bit images, etc..
-        Supress warnings about suffix for gunzip -r, except with --verbose.
-        Moved the sample programs to a subdirectory sample.
-        On MSDOS, use .gz extension when possible (files without extension)
-        Added a "Special targets" section in INSTALL.
-        Use stty -g correctly in zmore.in.
-        Use cheaper test for gzipness in zforce.in.
-        Remove space before $ in match.S (no longer accepted by gas 2.x)
-        For the shell scripts, do not assume that gzip is in the path.
-        Fix syntax error and define lnk$library in vms/Makefile.mms
-        REGSIGTYPE is void on the Amiga.
-        Do not write empty line when decompressing stdin with --verbose.
-        Fix the 1.1.2 fix for VMS (bug in get_suffix)
-        Added warning in README about compiler bug on Solaris 2.1 for x86.
-        Added warning about 'rehash' in INSTALL.
-        Removed default value of read_buf in bits.c (supermax doesn't like).
-        In tailor.h, added support for Borland C and Zortech C on OS/2.
-        Added warning in gzexe about Ultrix buggy sh (use /bin/sh5 instead).
-        Added warning in zdiff about AIX buggy sh (use /bin/ksh instead).
-        In configure.in, do not try the asm code if DEFS contains NO_ASM
-
-Fri Jun  4 09:49:33 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.1.2
-        Fix serious bug for VMS (-gz not removed when decompressing).
-        Allow suffix other than .gz in znew.
-        Do not display compression ratio when decompressing stdin.
-        In zmore.in, work around brain damaged stty -g (Ultrix).
-        Display a correct compression ratio for .Z files.
-        Added .z to .gz renaming script in INTALL.
-        Allow setting CFLAGS in configure.
-        Add warning in README about bug in Concentrix cc compiler.
-        Avoid || in Makefile.in (at least one make doesn't support this).
-        Disable useless --ascii option for the Amiga.
-        Add a pointer to the Primos executable in README.
-        Added description of extra field in algorithm.doc.
-        Do not redefine NULL in alloca.c.
-        Added check for unsupported compression methods.
-        Avoid getopt redeclaration on OSF/1.
-
-Tue Jun  1 09:07:15 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.1.1
-        Fix serious bug in vms.c (== instead of =).
-        Added --ascii option.
-        Add workaround in configure.in for Ultrix (quote eval argument)
-        Do not use unset in znew (not supported on Ultrix)
-        Use tar.gz instead of tar.z for the distribution of gzip.
-        Add missing menu item in gzip.texi.
-        Use size_t instead of unsigned, add AC_SIZE_T in configure.in.
-
-Fri May 28 11:40:01 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.1
-        Use .gz suffix by default, add --suffix option.
-        Let gunzip accept a "_z" suffix (used by one 'compress' on Vax/VMS).
-        Quit when reading garbage from stdin instead of reporting an error.
-        Added sub.c and add.c for compression of 8 bit images.
-        Added makefile for VAX/MMS and support for wildcards on VMS.
-        Added support for MSC under OS/2.
-        Added support for Prime/PRIMOS.
-        Display compression ratio also when decompressing.
-        Quit after --version (GNU standard)
-        Use --force to bypass isatty() check.
-        Accept --silent as synonym for --quiet (see longopts.table)
-        Accept --to-stdout as synonym for --stdout (see longopts.table)
-        Accept -H and -? in addition to -h and --help.
-        Added comparison of zip and gzip in the readme file.
-        Return an error code in all main compression/decompression functions.
-        Continue processing other files in case of recoverable error.
-        Add description of -f in znew.1.
-        Do not keep uncompressed version for znew -t if .gz already exists.
-        On Unix, use only st_ino and st_dev in same_file().
-        Use S_IRUSR and S_IWUSR if they exist.
-        "test $1 = -d" -> "test x$1 = x-d" in gzexe.
-        In match.S, use symbol sysV68 to detect the Motorola Delta.
-        Do not include memory.h with gcc (conflicting declarations on Sun).
-        Fix more typos.
-        On VMS, define unlink as delete also for gcc.
-        In "make check", unset LANG because "wc -c" fails on Kanji.
-        Renamed shdir as scriptdir.
-        Use the 68020 code instead of 68000 code on the NeXT.
-        Documented --uncompress as synonym for --decompress.
-        Include the standard header files before gzip.h (needed on Bull).
-        Do not assume that _POSIX_VERSION implies dirent.h present.
-        Removed gzip-tar.patch since tar 1.11.2 handles gzip directly.
-        Use less memory when compiled with -DSMALL_MEM (for MSDOS).
-        Optimized updcrc().
-        Don't complain if cc -E does not work correctly.
-        Do not attempt reading 64K bytes on 16 bit Unix systems.
-        Do not use the variable name 'overhead' which is reserved on Lynx!
-        One BULL compiler does not like *p++ in inflate.c => *p, p++.
-        Use casts on free and memcmp to avoid warnings.
-         Remove the "off by more than one minute" time stamp kludge, but
-           document how to avoid saving the time stamp on pipes if desired.
-        Include crypt.h in inflate.c (one system predefines the CRYPT symbol).
-        Add links to gunzip and (g)zcat in the default make rule.
-         Create installation directories if they do not exist.
-        Clarified --prefix option in INSTALL.
-        Use symbol mc68k in match.S for the DIAB DS90.
-        Guard against zero length _match.s in configure.in.
-        In zmore, restore all tty options using stty -g.
-        Added support for MacOS
-        Simplified makecrc.c.
-        Avoid warnings in getopt.c, util.c, unlzw.c.
-        Use autoconf 1.4, in particular for INSTALL and AC_HAVE_POUNDBANG
-        Use .so instead of hard links for zcat.1, gunzip.1 and zcmp.1.
-        Fixed declration of sig_type.
-        Make consistency check in fcfree.
-        Added ztouch.
-        Do not complain if utime fails on a directory (for OS/2).
-
-Thu Mar 18 18:56:43 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.7
-         Allow zmore to read from standard input (like more).
-         Support the 68000 (Atari ST) in match.S.
-         Retry partial writes (required on Linux when gzip is suspended in
-           a pipe).
-         Allow full pathnames and renamings in gzexe.
-         Don't let gzexe compress setuid executables or gzip itself.
-         Added vms/Makefile.gcc for gcc on the Vax.
-         Give a pointer to Solaris and VMS executables of gzip in README.
-         Allow installation of binaries and shell scripts in different dirs.
-         Do not use alloca on the Cray.
-         Provide strspn and strcspn if string.h does not exist.
-         Define O_CREAT and O_EXCL from FCREAT and FEXCL if necessary.
-         Remove gzip.doc in make realclean.
-         Fixed many typos. (Corrections to my English are welcome.)
-         Put "make manext=l install" at the correct place in INSTALL.
-         Fix incorrect examples in INSTALL and give more examples.
-         Include zdiff.1 for install and uninstall.
-         Allows complex PAGER variable in zmore (e.g.: PAGER="col -x | more")
-         Avoid warning on unused indfound in getopt.c.
-         Cast memset arg to void* (required by some buggy compilers).
-         Include sys/types.h before dirent.h in acgeneral.m4.
-         Fix acgeneral.m4 AC_COMPILE_CHECK to avoid warnings.
-         Don't use alloca.c with gcc. (One NeXT user did not have alloca.h).
-         Change all error messages according to GNU standards.
-         Restore time stamp only if off by more than one minute.
-         Allow installation of zcat as gzcat.
-         Suppress help message  and send compressed data to the terminal when
-           gzip is invoked without parameters and without redirection.
-          (Explicit request from Noah Friedman.)
-         Add compile option GNU_STANDARD to respect the GNU coding standards:
-           with -DGNU_STANDARD, behave as gzip even if invoked under the
-           name gunzip. (Complaints to /dev/null or the FSF, not to me!)
-
-Fri Mar 10 13:27:18 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.6
-         Let gzexe detect executables that are already gzexe'd.
-         Don't try restoring record format on VMS (the simple 1.0.5 code
-           worked correctly only on fixed-512 files). Suppress text_mode.
-         Added asm version for 68000 in amiga/match.a.
-         Use asm version for Atari TT.
-         Fix "make clean" in vms/Makefile.vms.
-         For OS/2, assume HPFS by default, add flag OS2FAT if necessary.
-         Fixed some bugs in zdiff and define zcmp as a link to zdiff.
-         Added zdiff.1
-         Remove configure hack for NeXT; add general fix to autoconf instead
-         Do not strip a ".z" extension if this results in an empty name.
-         Avoid array overflow in get_prefix() for extensions > 10 chars.
-         Accept either q or e to quit zmore.
-         In zmore, try restoring tty mode in all cases.
-         Use Motorola style for match.S on the NeXT.
-         configure.in: unsetenv *hangs* with the Siemens csh...
-         Update vms/gzip.hlp.
-
-Thu Mar 4 14:13:34 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.5
-         For VMS, restore the file type for variable record format, otherwise
-           extract in fixed length format (not perfect, but better than
-            forcing all files to be in stream_LF format).
-         Use "-z" suffix for VMS.
-         Use only .z, .*-z, .tgz, .taz as valid gzip extensions; update
-          zforce accordingly.
-         Allow a version number in input file names for VMS.
-         Added sample program zread.c.
-         Fix "make check" for some implementations of /bin/sh.
-         Don't rely on stat() for filenames with extension > 3 chars
-           on MSDOS, OS2 and Atari.
-         Garbage collect files in /tmp created by gzexe.
-         Quote $opt in znew.
-         Use TOUCH env variable in znew if it exists.
-         Better error message for gunzip on empty or truncated file.
-         Allow prototypes in getopt.h when __STDC__ defined but 0.
-         Added "make clean" in vms/Makefile.vms.
-         Removed -g from default CFLAGS (with Noah's permission!)
-         Avoid too many HAVE_xxx_H for most systems; use common defaults.
-         Moved default Atari flags into tailor.h for consistency.
-         Use memzero() to clear the hash table.
-         Update vms/gzip.hlp to reflect the VMS behavior.
-         Fix OS_CODE (to fit in a byte).
-         Add utime.h for the Amiga.
-         Add gcc support for the Amiga.
-         Work around incorrect dirent.h for NeXT 2.0.
-         Added Makefile entry for Coherent.
-
-Fri Feb 22 11:20:49 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.4
-         Added optimized asm version for 68020.
-         Add support for DJGPP.
-         Add support for the Atari ST.
-         Added zforce to rename gzip'ed files with truncated names.
-         Do not install with name uncompress (some systems rely on the
-           absence of any check in the old uncompress).
-         Added missing function (fcfree) in msdos/tailor.c
-         Let gunzip handle .tgz files, and let gzip skip them.
-         Added 'stty min 1' in zmore for SysV and fixed trap code.
-         Suppress .PHONY in Makefile.in, which breaks old makes.
-         Added documentation about pcat and unpack in INSTALL.
-         Add cast to getenv for systems without stdlib.h.
-         Use VAXC instead of VMS to avoid confusion for gcc.
-         Add -K to znew.1.
-         Add gzexe.1.
-         Try preserving file permissions in gzexe.
-         Added -d option for gzexe.
-         Guard against spaces in file names in gzexe.
-         Use CMP env. variable in zcmp.
-         Return a warning exit status for gzip of file with .z suffix.
-         Suppress usage of d_ino which is not portable to all systems.
-         Use #ifdef instead of #if for consistency.
-         For VMS, use "cc util.c" instead of "cc util" (pb with logical names)
-         Added utime() for Amiga.
-         Renamed gzcat.1 as zcat.1.
-         Include fcntl.h for Amiga (for read and write).
-         For VMS, add definition of symbols and links in the makefiles.
-         Give a VMS look to vms/gzip.hlp.
-         Save the original name only when necessary.
-         Add a mode parameter for open in read mode (required by VMS).
-         For VMS, remove the version suffix from the original name.
-         Accept both / and \ as path separator for MSDOS.
-         Let gunzip extract stored .zip files correctly.
-         Added warning about VFC format in vms/gzip.hlp.
-         In znew, skip a bad file but process the others.
-         Cleanup tailor.h.
-         Use GZIP_OPT for VMS to avoid conflict with program name.
-         Added description of GZIP variable in gzip.texi.
-
-Thu Feb 11 17:21:32 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.3
-         Add -K option for znew to keep old .Z files if smaller.
-         Add -q option (quiet) to cancel -v in GZIP env variable.
-          For Turbo C, normalize pointers before freeing them.
-          Add more safety checks in add_envopt().
-          Add do_exit() for uniform exit path (always free memory).
-          Reduce MAX_PATH_LEN for MSDOS.
-         Include sys/types.h before signal.h
-         Avoid strdup, the NeXT does not have it.
-          Made gzexe safer on systems with filename limitation to 14 chars.
-
-Fri Feb  10 09:45:49 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.2
-         Added env variable GZIP for default options.
-         Added support for the Amiga.
-         znew now keeps the old .Z if it is smaller than the .z file.
-         Added gzexe to compress rarely used executables.
-         Reduce memory usage when using static allocation (no DYN_ALLOC).
-         Better separation of warning and error return codes.
-         Fix unlzw.c to make DYN_ALLOC and MAXSEG_64K independent options.
-         Allow INBUFSIZ to be >= 32K in unlzw (don't use sign of rsize)
-         Generate tar file in old format to avoid problems with old systems.
-         Preserve time stamp in znew -P if touch -r works.
-         Use ${PAGER-more} instead of ${PAGER:-more} in zmore.
-         Do not use unsigned instead of mode_t.
-         Better error message for trailing garbage in .z file; ignore this
-          garbage on VMS.
-         In zmore, use icanon instead of -cbreak on SYSV.
-         Add trap handler in zmore.
-         Use char* instead of void* for non STDC compilers.
-         Added makefile entry for Xenix on 286.
-         Return an error code when existing file was not overwritten.
-         Use prototype of lzw.h for lzw.c.
-         Fix znew with -P option alone.
-         Give warning for directories even without -v.
-         Close output file before unlink() in case of error.
-         Suppress all target dependent ifdef from the portable files.
-         Free all dynamically allocated variables upon exit.
-
-Thu Feb 4 18:23:56 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0.1
-         Fixed some trivial errors in msdos/Makefile.bor
-
-Thu Feb 4 10:00:59 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * version 1.0
-         gzip now runs on Vax/VMS (Amiga support will come in next version).
-         Do not overwrite files without -f when using /bin/sh.
-          Support the test option -t for compressed (.Z) files.
-         Flush output for bad compressed files. Add warning in README.
-         Added makefiles for MSDOS.
-         Don't rely on presence of csh in configure
-         Added gunzip.1 and gzcat.1.
-         Updated znew.1.
-         Check reserved flags in unlzw().
-         Return dummy value in main to avoid lint warning.
-         Define OF in lzw.h for lint.
-         Allow both "znew -v -t" and "znew -vt".
-         Don't overwrite the output file name for multiple parts.
-         Echo just a warning if configure is out of date.
-         Use ; instead of , in trees.c (confuses the SAS Amiga compiler).
-         In INSTALL, document "DEFS='-DM_XENIX' ./configure".
-         Use OTHER_PATH_SEP for more portability (DOS, OS2, VMS, AMIGA).
-         Make all directories world writable for broken versions of tar.
-         Use gzip -cd instead of zcat in zmore, zcmp, zdiff.
-         Don't use GNU tar for distributions, some systems can't untar.
-         Do not exit() for gzip --version.
-
-Mon Jan 26 10:26:42 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.8.2
-         Avoid 'far' declarations for MSDOS.
-         Use test -f instead of test -x in configure.in (for Ultrix)
-         Add empty else part to if in Makefile.in for broken shells.
-         Use NO_UNDERLINE instead of UNDERLINE (pb with Linux cpp)
-         Accept continuation files with -ff (for damage recovery)
-         Small patch to Makefile.os2
-         Use memzero instead of bzero to avoid potential conflicts
-         Document restriction on extraction of zip files.
-         Fix quoting in ACL_HAVE_SHELL_HACK.
-          Do not check file size on MSDOS because of bug in DIET.
-         Allow zcat on a file with multiple links.
-         Add fix in inflate.c for compatibility with pkzip 2.04c.
-         Release gzip in tar.z and tar format. (No tar.Z).
-
-Fri Jan 22 10:04:13 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.8.1
-         Fixed Makefile.os2
-         Fixed #if directives that TurboC does not like.
-         Don't rely on uncompress in znew, use gzip -d.
-         Add the pipe option -P in znew.
-         Add some more ideas in TODO.
-         Support both NDIR and SYSNDIR.
-
-Sat Jan  21 15:46:38 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.8
-         Support unpack.
-         Check for _match.o in configure.in in addition to return status.
-         Include <sys/types.h> in zip.c
-         Define local variables and functions as local.
-         Accept more alternative names for the program (pcat, gzcat, ...).
-         Accept .exe as well as .EXE.
-         Uncompress files with multiple links only with -f.
-         Better error message for gunzip of non-existent file.z.
-         Fix the entry for /etc/magic in INSTALL.
-         Use AC_HAVE_HEADERS uniformly instead of special macros.
-         Install the man pages as .1 by default instead of .l.
-         Document crypt++.el in README.
-         Fix for unlzw() on 16-bit machines (bitmask must be unsigned).
-         Complain if input and output files are identical.
-         Create a correct output name for files of exactly 13 chars.
-         Do not overwrite CPP if set
-         Check for i386 before trying to assemble match.s
-         Check for underline in external name before assembling
-         Add patch for tar 1.11.1.
-
-Mon Jan  5 10:16:24 1993  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.7
-         Use "make check" instead of "make test".
-         Do not rely on dirname in znew.
-         Keep time stamp and pass options to gzip in znew.
-         Rename .l files back to .1 to avoid conflict with lex
-         Do not create .z.z files with gzip -r.
-         Use nice_match in match.asm
-         Unroll loops in deflate.c
-         Do not attempt matches beyond the window end
-         Allow again gunzip .zip files (was working in 0.5)
-         Allow again compilation with TurboC 2.0 (was working in 0.4)
-
-Tue Dec 30 20:00:19 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.6
-         The .z extension is used by pack, not compact (README, gzip.1)
-         Accept gzcat in addition to zcat.
-         Use PAGER in zmore if defined.
-         Man pages for /usr/local/man/manl should have extension .l.
-         Don't redefine bzero on the NeXT
-         Allow incomplete Huffman table if there is only one code.
-         Don't lookahead more than 7 bits (caused premature EOF).
-         Added "make test" to check for compiler bugs.
-         Don't rely on `i386`; try to assemble directly
-         Change magic header to avoid conflict with freeze 1.x.
-         Added entry for /etc/magic in INSTALL.
-         Do not destroy an input .zip file with more than one member.
-         Display "untested" instead of "OK" for gzip -t foo.Z
-         With -t, skip stdin in .Z format
-         Allow multiple compressed members in an input file.
-         Ignore a zero time stamp.
-         Made znew safer.
-
-Tue Dec 29 10:00:19 1992   Noah Friedman  (friedman@gnu.ai.mit.edu)
-
-         Added test for #!/bin/sh in configure.in.
-         Fix some references to $srcdir in Makefile.in
-
-Mon Dec 21 17:33:35 1992  Jean-Loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.5
-         Put RCS ids in all files.
-         Added znew to recompress old .Z files with gzip.
-         Avoid "already .z suffix" messages for -r and no -v.
-         Put back check for d_ino in treat_dir().
-         Use HAVE_STRING_H instead of USG.
-         Added os2/Makefile.os2
-         Use SYSUTIME on OS/2.
-         Info dir is $(prefix)/info, not $(prefix)/lib/info.
-         Support long options, added getopt and alloca
-         Support -V and -t
-         Reorder configure.in according to suggestions in autoconf.info
-         Allow links when not removing original file
-         Allow either .z or .Z in zdiff
-
-Wed Nov 25 11:40:04 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.4.1
-         Save only the original base name, don't include any directory prefix.
-         Don't use HAVE_LONG_FILE_NAMES (support multiple file system types).
-         Fix declaration of abort_gzip in gzip.h.
-         Include unistd.h when it exists to avoid warnings with gcc -Wall.
-
-Mon Nov 23 12:39:01 1992    Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.4
-          Lots of cleanup
-         Use autoconf generated 'configure'
-          Fixed the NO_MULTIPLE_DOTS code
-          Fixed the save_orig_name code
-          Support for MSDOS (Turbo C)
-
-Thu Nov 19 15:18:22 1992    Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Beta version 0.3
-         Added auto configuration. Just type "make" now.
-         Don't overwrite compress by default in "make install". Use
-           "make install_compress" to overwrite.
-         Add match.s for 386 boxes.
-         Added documentation in texinfo format.
-         Provide help for "gunzip" invoked without redirected input.
-         Save original file name when necessary.
-         Support OS/2 (Kai-Uwe Rommel).
-
-Tue Nov 17 14:32:53 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.2.4
-         Return 0 in get_istat() when ok (caused error with zcat).
-         Don't update crc on compressed data (caused crc errors on
-           large files).
-
-Fri Nov 13 15:04:12 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.2.3
-         Initialize rsize in unlzw.c
-         Initialize ofd for zcat.
-         Do not use volatile ifname as argument of treat_dir.
-         Add -1 to -9 in gzip.1.
-
-Sat Oct 31 18:30:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.2.2.
-         Fix error messages.
-         Accept gunzip on zip files.
-
-Sat Oct 31 17:15:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.2.1
-         Use ctype.h in util.c (problem on SysV).
-         Create BINDIR if it does not exist.
-         Use cc by default.
-         Added zcmp, zmore, zdiff.
-         Fixed the man page gzip.1.
-
-Sat Oct 31 17:00:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.2
-         Fixed compilation problems with gcc
-
-Sat Oct 31 12:46:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
-
-       * Alpha version 0.1 released (under time pressure), so it's not
-         much tested, sorry.
-
-
-Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation,
-Inc.
-       
-Copyright (C) 1992, 1993 Jean-loup Gailly
-
-This file is part of gzip (GNU zip).
+       maint: retire the last VC'd ChangeLog file
+       * ChangeLog-2007: Rename from ChangeLog.
+       From now on, the ChangeLog file will be generated automatically
+       from commit logs.
 
-gzip 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, or (at your option)
-any later version.
-
-gzip is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with gzip; see the file COPYING.  If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.
+       maint: rename .cvsignore files to .gitignore
+       * .gitignore: Renamed from .cvsignore.
+       * doc/.gitignore: Likewise.
+       * lib/.gitignore: Likewise.
+       * m4/.gitignore: Likewise.