* configure.ac: Use $CPPFLAGS everywhere $CPP is used, and use
[debian/gzip] / ChangeLog
1 2006-12-13  Bruno Haible  <bruno@clisp.org>
2
3         * configure.ac: Use $CPPFLAGS everywhere $CPP is used, and use
4         $CPPFLAGS $CFLAGS everywhere $CC is used.
5         * lib/Makefile.am (match.$(OBJEXT)): Likewise.
6         * configure.ac: Test the exit code of the $CPP and $ASCPPPOST commands
7         separately.
8
9 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
10
11         * configure.ac (ASCPPPOST): Simplify to use just 'sed'.
12         * lib/Makefile.am (match.$(OBJEXT)): Check for CPP failure.
13
14 2006-12-11  Bruno Haible  <bruno@clisp.org>
15
16         Cross-compilation support.
17         * configure.ac (ASCPP): Remove substituted variable.
18         (ASCPPPOST, ASCPPFLAGS): New substituted variables.
19         * lib/Makefile.am (ASCPP, LN_S): Remove unnecessary macro definitions.
20         (match.$(OBJEXT)): Use CPP, ASCPPFLAGS, ASCPPPOST instead of ASCPP.
21         * configure.ac: Add test for chown function.
22         * gzip.c (treat_file) [!HAVE_CHOWN]: Don't call chown.
23         * gzip.c: Include "timespec.h".  This doesn't fix any bugs, but
24         it is clearer.
25
26 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
27
28         The SSIZE_MAX fix didn't work on NSK, so fix it in a more-reliable
29         (albeit more-complicated) way.  Problem reported by Matthew Woehlke.
30         * gzip.h (read_buffer): New decl.
31         * unlzw.c (unlzw): Use read_buffer rather than read.
32         * zip.c (file_read): Likewise.
33         * util.c (copy, fill_inbuf): Likewise.
34         (read_buffer, write_buffer): New functions.
35         (write_buf): Use write_buffer rather than write.
36
37         Undo the previous SSIZE_MAX-related change; it didn't work.
38         * gzip.c: Include <limits.h>.
39         * util.c: Likewise.
40         * gzip.h: Don't include <limits.h>.
41         (INBUFSIZ): Don't worry about SSIZE_MAX here.
42
43 2006-12-08  Paul Eggert  <eggert@cs.ucla.edu>
44
45         * NEWS, configure.ac (AC_INIT):
46         Version 1.3.8 released.
47
48         * gzexe.in (mktemp_status): New var, used to see whether
49         mktemp is a known command.  Use this instead of confounding
50         mktemp's existence with its success.
51
52         * zdiff.in: Remove first line containing ":".  This follows
53         up on the SEDCMD fix of 2006-12-01.
54         * zforce.in: Likewise.
55         * zgrep.in: Likewise.
56         * zless.in: Likewise.
57         * zmore.in: Likewise.
58         * znew.in: Likewise.
59
60         Fix problems in porting to NSK reported by Matthew Woehlke in
61         <http://lists.gnu.org/archive/html/bug-gzip/2006-12/msg00025.html> and
62         <http://lists.gnu.org/archive/html/bug-gzip/2006-12/msg00027.html>.
63         * gzip.h: Include <limits.h>, for SSIZE_MAX.
64         (INBUFSIZE): Don't make it any larger than SSIZE_MAX.
65         Problem reported by Matthew Woehlke in
66         <http://lists.gnu.org/archive/html/bug-gzip/2006-11/msg00013.html>.
67         * gzip.c: Don't include <limits.h>, as gzip.h now does this.
68         * util.c: Likewise.
69         * gzip.c (main): Set exiting_signal before installing signal handlers.
70         (install_signal_handlers): Don't set exiting_signal here.  This
71         fixes a C99ism.
72         * zip.c: Include timespec.h, for time_stamp type.
73
74 2006-12-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
75
76         * gzexe.in: Work around FreeBSD shell trap bug.
77         * gzip.1: Fix typo.
78         * doc/gzip.texi: Likewise.
79
80 2006-12-08  Paul Eggert  <eggert@cs.ucla.edu>
81
82         * .cvsignore: Add .deps, gzexe, gzip, zdiff, zforce, zgrep,
83         zless, zmore, znew.
84         * doc/.cvsignore: Add Makefile.
85         * lib/.cvsignore: Add .deps, Makefile, alloca.h, config.h, fcntl.h,
86         stamp-h1, stdint.h, sys.
87
88         * configure.ac (for assembler): Set ASFLAGS_config to
89         -Wa,--noexecstack if this seems advisable on this platform.
90         Problem reported by Mike Frysinger in
91         <http://lists.gnu.org/archive/html/bug-gzip/2006-12/msg00018.html>.
92         * lib/Makefile.am (match.$(OBJEXT)): Use ASFLAGS_config.
93
94 2006-12-07  Paul Eggert  <eggert@cs.ucla.edu>
95
96         * Makefile.am (install-exec-hook): Fix bug when installing
97         symbolic links as aliases.  Problem reported by Mike Frysinger.
98
99         * deflate.c (deflate_fast, deflate): Avoid core dump.  Problem
100         originally reported by Jochen Friedrich and trivial patch supplied
101         by Anthony Towns; see <http://bugs.debian.org/184057>.
102
103 2006-12-06  Paul Eggert  <eggert@cs.ucla.edu>
104
105         * NEWS, configure.ac (AC_INIT):
106         Version 1.3.7 released.
107
108 2006-12-06  Bruno Haible  <bruno@clisp.org>  (tiny change)
109         and Paul Eggert  <eggert@cs.ucla.edu>
110
111         Fix build failure on case-insensitive file systems.
112         * configure.ac: Use match_.s instead of _match.s.
113         * Makefile.am (MOSTLYCLEANFILES): Likewise.
114         * lib/Makefile.am (match.$(OBJEXT)): Likewise.
115         (MOSTLYCLEANFILES): Likewise.
116
117 2006-12-06  Paul Eggert  <eggert@cs.ucla.edu>
118
119         * NEWS: Document the fixes below.
120         * configure.ac (AC_CHECK_FUNCS_ONCE): Add siginterrupt.
121         * gzip.c (lstat) [!defined(HAVE_LSTAT) && !defined(lstat)]: Remove.
122         (SA_NOCLDSTOP, sigprocmask, sigset_t) [!defined SA_NOCLDSTOP]:
123         New macros.
124         (siginterrupt) [!defined SA_NOCLDSTOP && ! HAVE_SIGINTERRUPT]:
125         New macro.
126         (HAVE_WORKING_O_NOFOLLOW): Define to 0 if not defined.
127         (caught_signals, exiting_signal, remove_ofname_fd): New vars.
128         (remove_ofname): Remove; all uses changed to remove_ofname_fd.
129         (same_file, name_too_long): Remove.
130         (install_signal_handlers): New function.  It prefers sigaction,
131         which is more reliable in the presence of race conditions.
132         Catch SIGXCPU and SIGXFSZ, too.
133         (main): Use it instead of installing them by hand.
134         (treat_file): Check for read error when closing ifd.
135         (treat_file, create_outfile, remove_output_file):
136         Avoid race conditions with signals.
137         (create_outfile, check_ofname): Remove most of the gorp about
138         working around ENAMETOOLONG deficiencies.  It's obsolete now, and
139         anyway it had race conditions.  Just rely on O_EXCL and
140         ENAMETOOLONG.  The worst that can happen is that a file name will
141         be silently truncated on an obsolete machine, but no data will be lost.
142         (open_and_stat): Use HAVE_WORKING_O_NOFOLLOW rather than O_NOFOLLOW
143         to work around some O_NOFOLLOW bugs.  Otherwise, fall back on
144         lstat only if lstat is available, as symlinks don't exist otherwise.
145         (open_input_file): Use O_NONBLOCK and O_NOCTTY too, to avoid
146         hanging gzip on special files.
147         (abort_gzip_signal): If sigaction is not available, ignore
148         signals.  If we get the exiting signal, exit with ERROR status
149         rather than raising a signal.
150         * tailor.h (NO_ST_INO): Remove; no longer used now that same_file
151         is gone.
152
153 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
154
155         Port to Tandem NSK/OSS, which lacks fchdir.  Problem reported by
156         Matthew Woehlke in
157         <http://lists.gnu.org/archive/html/bug-gzip/2006-11/msg00013.html>.
158         * bootstrap.conf (gnulib_modules): Remove openat, as it pulls in
159         fchdir.
160         * configure.ac: Check for fdopendir.
161         * gzip.c: Don't include openat.h; no longer needed.
162         (treat_dir) [!HAVE_FDOPENDIR]: Fall back on the old opendir method
163         since fdopendir is not available.
164
165 2006-12-04  Paul Eggert  <eggert@cs.ucla.edu>
166
167         * NEWS: Describe the following change briefly.
168         * bootstrap.conf (gnulib_modules): Remove stat-macros; no longer
169         needed.
170         * gzip.c: Don't include stat-macros.h; no longer needed.
171         (treat_file): Refuse to compress files that are setuid, or setgid,
172         as this can in theory lead to security holes.  Also, refuse to
173         compress files with the sticky bit set, on general principle.
174         (copy_stat): Don't copy the setuid, setgid, or sticky bits,
175         as (given the above change) they'll always be zero here.
176         Invoke chmod before chown, to close a race condition.
177
178         * .cvsignore: Add *.doc, build-aux.
179         * doc/.cvignore: New file.
180         * lib/.cvsignore: New file.
181         * m4/.cvsignore: New file.
182
183 2006-12-01  Paul Eggert  <eggert@cs.ucla.edu>
184
185         * doc/gzip.texi (Overview): Mention limits of gzip format's
186         time stamps.  Also, gzip doesn't always preserve time stamps.
187
188         * gzip.c (abort_gzip_signal): Don't call abort () as a "safeguard",
189         since it actually causes a core dump.  Problem reported by
190         Jakub Bogusz.
191
192         * NEWS: Describe gzexe changes noted below.
193         * Makefile.am (.in): Don't bother with SEDCMD.  This stuff isn't needed
194         any more (the hosts it caters to are long extinct), and was
195         questionable anyway since the code assumes the skip= line was line 2.
196         * configure.ac (AC_SYS_INTERPRETER, SEDCMD): Remove; no longer needed.
197
198         * gzexe.in: Sweep the code and fix some bugs.
199         My, what sharp teeth you have, gzexe!
200         The straw that broke this camel's back was Matthew Burgess's bug report
201         <http://lists.gnu.org/archive/html/bug-gzip/2006-11/msg00012.html>.
202
203         (IFS): Set it to the standard value, both here and in the
204         script gzexe generates.
205         Check for missing operand after parsing options, not before.
206         This fixes the case for "cpexe --".
207         Check for tail -n problem separately in gzexe and in the executable
208         it generates, in case it's a different 'tail'.
209         (trap): Remove $tmp only if $tmp is not the empty string.
210         Preserve exit status.
211         Don't use the nonstandard (and rarely available) "cpmod" utility.
212         Don't use "set -C"; it's no longer useful and it breaks things
213         in some cases.
214         (main loop): Handle file names beginning with "-".
215         Exit with status of failing program, not with 1.
216         Fix some bugs in printing diagnostics, and in quoting.
217         Require the skip= line to have at least one digit.
218         Use test -u and test -g rather than using the (less-reliable) ls.
219         Refuse to compress more programs, e.g., sh.
220         Use mktemp rather than tempfile.  Build a copy of
221         the compressed or uncompressed executable in the same
222         directory as the executable, as that's less likely to go wrong
223         if disk space is low.  Have the executable exit with status 127,
224         not 1, if the decompression process fails; this is more compatible
225         with meta-programs like nohup.  Have the executable
226         uncompress to a temp file with the same basename as the executable;
227         this is more likely to go right.  Fix a race condition where the
228         executable temporarily did not exist (in either old or new forms).
229         Check for race conditions better when mv fails.  Do not attempt
230         to use cp to do the real work, only to copy permissions to a temp
231         file, since we don't want to trash running executables.
232
233 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
234
235         * inflate.c (inflate_dynamic, inflate): Don't send output to
236         stderr unless DEBUG is defined and 'verbose'.  Problem reported by
237         Santiago Vila.
238
239         * zgrep.in: If the file name contains newline, &, \, or |, escape
240         the character so that 'sed' doesn't mishandle it as a replacement.
241         Problem reported by Bdale Garbee.
242
243 2006-11-25  Paul Eggert  <eggert@cs.ucla.edu>
244
245         * gzip.1 (OPTIONS): ouput -> output.  Problem reported by Matt
246         Taggart.
247         * vms/gzip.hlp: Likewise.
248
249         * Makefile.am (FILES_TO_CHECK): New macro.
250         (check-local): Check only the files in FILES_TO_CHECK, since some
251         files under the working directory might be mutating as the test is
252         run, e.g., with "make check >log".  Problem reported by Jim
253         Meyering.
254
255 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
256
257         * NEWS, configure.ac (AC_INIT):
258         Version 1.3.6 released.
259
260         * NEWS: Describe 1.3.6's changes.
261         * NEWS, README, README-alpha, TODO: Change from GPL to FDL.
262         * .cvsignore, README-cvs, bootstrap, bootstrap.conf: New files.
263         * doc/Makefile.am, lib/Makefile.am: New files.
264         * THANKS: Change own email address to cs.ucla.edu.  Add Sverre Jarp.
265         * TODO: Add new tasks to remove porting cruft and
266         all those buggy scripts.
267
268         * configure.ac: Renamed from configure.in.
269         (AC_PREREQ): Bump to 2.60.
270         (AC_INIT): Bump version to 1.3.6.
271         (AC_CONFIG_AUX_DIR): New.
272         (AC_CONFIG_HEADERS): Move config.h to lib.
273         Input is now lib/config.hin.
274         (AM_INIT_AUTOMAKE): Add gnits, dist-shar.
275         (AC_PROG_CC_STDC): New, replacing AC_PROG_CC.
276         (AM_PROG_CC_C_O, AC_PROG_RANLIB): New.
277         (AC_AIX, AC_GNU_SOURCE, AC_MINIX): Remove; gnulib does them now.
278         (gl_EARLY, gl_INIT): New.
279         match.c was moved to lib/match.c.
280         (AC_CHECK_HEADERS_ONCE): Replace AC_CHECK_HEADERS.  Don't check
281         for sys/utime.h or utime.h.
282         (AC_CHECK_FUNCS_ONCE): Replace AC_CHECK_FUNCS.  Check for fchmod
283         and fchown, not utime.
284         (AC_REPLACE_FUNCS): Remove; rpmatch is now done by gnulib.
285         (AC_CONFIG_FILES): Add doc/Makefile, lib/Makefile.
286
287         * bits.c: Use the more-usual form for copyright notices in source code.
288         * deflate.c: Likewise.
289         * gzip.c: Likewise.
290         * gzip.h: Likewise.
291         * inflate.c: Likewise.
292         * lzw.h: Likewise.
293         * revision.h: Likewise.
294         * tailor.h: Likewise.
295         * trees.c: Likewise.
296         * unpack.c: Likewise.
297         * unzip.c: Likewise.
298         * util.c: Likewise.
299         * crypt.c (dummy): Add decl so that pedantic compilers won't
300         complain about an empty file.
301         * gzip.c (license_msg): Use more-modern wording.
302         Include fcntl-safer.h, openat.h, stat-macros.h, stat-time.h.
303         Simply include <dirent.h> if !NO_DIR, removing a rats-nest of
304         #ifdefs.
305         Simply include <utimens.h> if !defined NO_UTIME, removing a
306         another rats-nest of #ifdefs.
307         (DIR_OPT, TIME_OPT): Remove.
308         (_D_EXACT_NAMLEN): Renamed from NAMLEN.  All uses changed.
309         (S_ISDIR, S_ISREG, O_BINARY, O_CREAT, O_EXCL, S_IRUSR, S_IWUSR):
310         Remove; gnulib now does this.
311         (RETSIGTYPE): Remove; Autoconf does this.
312         (program_name): Renamed from progname, for compatibility with gnulib.
313         All uses changed.
314         (time_stamp): Now struct timespec, not time_t.  All uses changd.
315         (remove_oftime): Now volatile.
316         (reset_times): Remove; now done by futimens.
317         (usage): Remove.
318         (try_help): New function.
319         (help, license): Don't output date as part of version.
320         A version number suffices.
321         (help): Redo help message to match style of coreutils etc.
322         (version): Don't bother printing compile-time configuration info
323         like STDC_HEADERS.
324         (main): Don't assume strlen (argv[0]) < INT_MAX (!).
325         On usage errors, suggest --help without outputting all the help.
326         (main, do_list): Remove unnecessary casts.
327         (treat_stdin, treat_file, get_method, copy_stat):
328         Support sub-second time stamp resolution.
329         (treat_file, copy_istat): Close some race conditions if files are
330         renamed as we read or write them.
331         (treat_file): Do not attempt to reset the access times of
332         directories that we read.
333         (open_and_stat, open_input_file): New functions.
334         (do_stat, get_istat): Remove; most of the contents went to these new
335         functions.
336         (make_ofname): Don't use WARN, as it affects exit status.
337         (get_method): When the original file name was truncated,
338         restore from its base name, not from its full name.
339         (do_list): Avoid undefined behavior with out-of-range time stamps.
340         ctime, for example, cannot be invoked on arbitrary time stamps safely,
341         since it might overrun an internal buffer.  Do not assume that
342         localtime succeeds.
343         (copy_stat): Do not remove input file; that's now the caller's
344         responsibility.  This avoids a problem if there is a write error
345         when the caller closes the output file.
346         (treat_dir): New arg FD, to avoid a race condition.  All uses changed.
347         (remove_output_file): New function.
348         (abort_gzip): Use it.
349         (abort_gzip_signal): New function, which is async-signal-safe.
350         Exit with the signal that we got.
351         * gzip.h (program_name, time_stamp, abort_gzip): Adjust decls to
352         match gzip.c changes.
353         * inflate.c (huft_build): Return 2 if null input.
354         * tailor.h (HAVE_UTIME): Do not define; gnulib does this now.
355         (OPEN): Use open_safer, not plain open.
356         * unlzh.c (NPT): Set to 1<<TBIT, not to the maximum of NT and NP.
357         (make_table): Report an error if 1<<tablebits < nextcode.
358         (read_pt_len): Report an error if 16 < c.
359         * unpack.c (read_tree): Report an error if the tree has too many
360         leaves while reading it.  Fix off-by-one error in final check.
361         * util.c: Include <xalloc.h>, for xalloc_die decl.
362         (gzip_base_name): Renamed from base_name, so we don't collide
363         with gnulib.  All uses changed.
364         (add_envopt): Use xstrdup instead of xmalloc+strcpy.
365         Use xcalloc rather than calloc + check.
366         (gzip_error): Renamed from error, so we don't collide with gnulib.
367         All uses changed.
368         (xalloc_die): New function.
369         (xmalloc): Remove; no longer needed.
370         * zip.c (zip): Watch for time stamp overflow; the old code
371         mishandled negative time stamps.
372
373         * gzexe.in: Add support for --help, --version, --.
374         Don't call basename or sed if we can avoid it.
375         * zdiff.in: Likewise.
376         * zforce.in: Likewise.
377         * zgrep.in: Likewise.
378         * zless.in: Likewise.
379         * zmore.in: Likewise.
380         * znew.in: Likewise.
381         * zdiff.in: Protect against file names beginning with "-".
382         * zmore.in: Likewise.
383         * zgrep.in: Use printf rather than echo, to avoid problems with
384         leading "-" and backslash.  Return status of subsidiary grep.
385         * zless.in: Add copyright notice.
386
387         * zless.1: We now pass "--" to LESSOPEN.
388         (BUGS): Mention that input file arguments are required.
389         Add copyright notice.
390
391         * COPYING: Update to current version.
392
393         * Makefile.am (SUBDIRS): New macro.
394         (AUTOMAKE_OPTIONS): Remove; now done in configure.ac.
395         (M4DIR, ACINCLUDE_INPUTS): Remove.
396         (EXTRA_DIST): Remove getopt.h.
397         (gzip_SOURCES): Remove getopt.c, getopt1.c, yesno.c.
398         (gzip_LDADD): Change from @LIBOBJS@ to lib/libgzip.a.
399         (AM_MAKEINFOFLAGS, info_TEXINFOS, gzip_TEXINFOS, ASCPP, LN_S):
400         (match.$(OBJEXT)): Move to subdirectory makefiles.
401         (.in): Substitute @VERSION@, too.
402         (check-local): New rule.
403         (MOSTLYCLEANFILES): Add _match.S.
404
405         * doc/gzip.texi: Renamed from gzip.texi.  Change to GNU FDL
406         without invariant sections or cover texts.  Don't put
407         version number or date into sample gzip -h output.
408         * lib/match.c: Renamed from match.c.  Add ia64 version
409         written by Sverre Jarp (HP Labs).
410
411         * INSTALL: Remove from CVS; now created automatically by
412         the bootstrap script.
413         * Makefile.in: Likewise.
414         * aclocal.m4: Likewise.
415         * config.h.in: Likewise.
416         * configure: Likewise.
417         * depcomp: Likewise.
418         * fdl.texi: Likewise.
419         * getopt.c: Likewise.
420         * getopt.h: Likewise.
421         * getopt1.c: Likewise.
422         * gzip.doc: Likewise.
423         * gzip.info: Likewise.
424         * install-sh: Likewise.
425         * mdate-sh: Likewise.
426         * missing: Likewise.
427         * mkinstalldirs: Likewise.
428         * rpmatch.c: Likewise.
429         * stamp-vti: Likewise.
430         * texinfo.tex: Likewise.
431         * version.texi: Likewise.
432         * yesno.c: Likewise.
433
434 2002-09-30  Paul Eggert  <eggert@twinsun.com>
435
436         * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
437         Revision 1.3.5, dated today.
438
439         * util.c (fprint_off): Fix bug in printing values greater than
440         10 * 2**32 bytes.  Bug reported by Bryan Andersen.
441
442         * Makefile.am (match.$(OBJEXT)): Use .S as extension for $(ASCPP),
443         to keep gcc happy.
444         * configure.in: Likewise.
445         Upgrade assembly-language checking for Autoconf 2.54, using cache vars.
446         (AC_PROG_CPP, AC_OBJEXT): Add.
447
448         * match.c: Accept __i386 and __i386__ as synonyms for i386.
449         Bug reported by "fork __" <bouloumag@hotmail.com>.
450
451 2002-09-29  Paul Eggert  <eggert@twinsun.com>
452
453         * gzip.texi (Overview): Suggest how to use gunzip on zip files.
454
455         * zless.1, zless.in: Use LESSOPEN, not PAGER.
456         Suggested by <antos@MAST.queensu.ca>.
457
458 2002-09-28  Paul Eggert  <eggert@twinsun.com>
459
460         * zforce.in: Use shell pattern matching instead of 'expr', which
461         mishandles names like "+".  Remove old check for 14-byte file
462         names on hosts with broken "mv" implementations, as such systems
463         aren't in use any more and it's better nowadays to support file
464         names longer than 14 bytes.  Rely on "mv"'s error-reporting.
465         This fixes a portability bug reported by Ralf Neubauer, along
466         with some other bugs.
467
468         Remove dangling output symlinks properly.
469         Bug reported by Kalle Olavi Niemitalo.
470         * gzip.c (lstat): New macro, for platforms lacking lstat.
471         (do_stat): Use it.
472         (name_too_long, check_ofname): Use lstat instead of stat.
473
474 2002-09-27  Paul Eggert  <eggert@twinsun.com>
475
476         * zforce.in: Use "gzip -lv", not "gzip -v".  Patch by Ralf
477         Neubauer.
478
479         * configure.in (ASCPP): Don't use test -a, as POSIX says it's
480         not portable.
481         * znew.in: Likewise.
482         * zmore.in: Likewise.  Similarly, don't use test -o, or test -t
483         with no operand.
484
485         * gzexe.in (PATH): Set to same as other programs.
486         Don't assume "tail +22" works; POSIX removed this.
487         Check against compressing "tail".
488         Check against "skip=" line with no integer.
489         * zgrep.in: Exit with status 2 if trouble, for consistency with grep.
490
491         * gzip.c (main): Avoid core dump in diagnostic message if
492         incorrect suffix is given.
493
494 2002-09-26  Paul Eggert  <eggert@twinsun.com>
495
496         * zdiff.in: Use "trap -" instead of "trap".  Patch by Nicolas Boullis.
497         Use names, not numbers, for signals.  Patch by Andrew Stribblehill.
498
499         * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
500         Revision 1.3.4, dated today.
501
502         * README-alpha: Upgrade to Autoconf 2.54 and Automake 1.7.
503         * configure.in (AC_PREREQ): Move to start, and increase to 2.54.
504         (AC_INIT, AM_INIT_AUTOMAKE, AC_CONFIG_SRCDIR, AC_CONFIG_FILES,
505         AC_OUTPUT): Use modern style.
506         (AC_OBJEXT, AC_EXEEXT): Remove; obsolete.
507         (AC_GNU_SOURCE): Add.
508         (AC_HEADER_STDC): Renamed from AC_STDC_HEADERS.
509         (AC_CHECK_HEADERS): Remove stdlib.h, string.h, unistd.h; now done
510         by Autoconf.
511         (AC_SUBST): Remove CFLAGS; now done by Autoconf.
512
513         * gzip.texi: Use the GNU FDL for distribution terms, following the
514         recipe in the Texinfo manual.  Use Automake-generated variables
515         for date and version.
516         * fdl.texi, mdate-sh: New files.
517         * Makefile.am (AM_MAKEINFOFLAGS): Add --no-split.
518         (gzip_TEXINFOS): New macro.
519
520         * tailor.h (NO_DIR): Define to 1, not the empty string.
521         * gzip.c (NO_DIR): Define to 0 if not defined.  All uses changed.
522         (usage): Don't put '#if' inside printf, as the C standard says
523         that it is not portable if printf is a macro.
524
525         Don't lose output when decompressing truncated input.
526         Bug reported by Nadav Har'El.
527         * inflate.c (GETBYTE): New macro.
528         (NEXTBYTE): Use it.
529         (inflate_dynamic, inflate_block): Add a local variable w, needed
530         by GETBYTE.
531
532 2002-03-08  Paul Eggert  <eggert@twinsun.com>
533
534         * NEWS, README, revision.h, gzip.texi,
535         configure.in (AM_INIT_AUTOMAKE): Revision 1.3.3, dated today.
536
537         * README-alpha: Now using latest stable GNU tools.
538         Using the latest tools allows gzip to build correctly on hosts
539         conforming to POSIX 1003.1-2001.
540
541         * configure.in (match): Use AC_LIBOBJ; Autoconf 2.53 requires it.
542         (LIBOBJS): No longer need to subst, since AC_LIBOBJ does it.
543         (AC_PREREQ): Bump to 2.53.
544
545         * Makefile.am (install-exec-hook, remove-installed-links):
546         Work even when configured with --program-transform-name.
547
548         * gzip.c (license_msg): Update copyright.
549         (z_len): Now of type size_t.
550
551 2001-11-03  Paul Eggert  <eggert@twinsun.com>
552
553         * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
554         Revision 1.3.2, dated today.
555
556         * Makefile.am (LN_S): New macro.
557         (install-exec-hook): Depend on remove-installed-links.
558         Affect $(DESTDIR)$(bindir), not just $(bindir).
559         (uninstall-local, remove-installed-links): New rules.
560         * README-alpha: This release built with autoconf 2.52f.
561         * TODO: Add rsync patch.
562         * configure.in: Add AC_PREREQ(2.52) and AC_PROG_LN_S.
563         * gzip.1, zmore.1: Fix troff glitches, using Eric S. Raymond's
564         suggestions for inspiration.
565         * m4/shell.m4(AC_PROG_SHELL): Add commentary and cleanup.
566
567         * gzip.texi, gzip.1: Add pointers to RFCs 1951 and 1952.
568         Mention that gzip --list reports file sizes modulo 2^32.
569         * gzip.1: Remove incorrect report of 2 GB bug.  Add copyright notice.
570
571 2001-09-30  Paul Eggert  <eggert@twinsun.com>
572
573         * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
574         Revision 1.3.1, dated today.
575
576         * INSTALL, getopt.c, getopt.h, getopt1.c, install-sh, missing,
577           mkinstalldirs, texinfo.tex:
578         Sync with latest version in other packages.
579
580         * acinclude.m4, config.guess, config.sub: Remove.
581         * depcomp, rpmatch.c, yesno.c: New files.
582
583         * ChangeLog, README, NEWS, TODO, configure.in, zgrep.in, zmore.in:
584         Add copyright notice.
585
586         * Makefile.am (ACLOCAL_AMFLAGS): New macro.
587         (ACINCLUDE_INPUTS): Remove all but shell.m4.
588         ($(srcdir)/acinclude.m4): Remove.
589         (gzip_sources): Add yesno.c.
590
591         * TODO: Add i18n.
592
593         * configure.in (AC_CANONICAL_HOST): Remove.
594         (AC_AIX, AC_MINIX): Move earlier.
595         (AC_REPLACE_FUNCS): Add rpmatch.
596
597         * gzip.c (main):
598         Report error if -b operand is not a nonnegative integer.
599         (treat_file): Don't assume tab width is 8, or that characters are
600         one column wide.
601         (make_ofname): Use WARN to warn about unchanged files.
602         (get_method): "get newer version of gzip" -> "not supported"
603         (check_ofname): Use yesno instead of checking for 'y' ourselves.
604         (treat_file): Do not assume link count fits in int.
605
606         * gzip.h (yesno): New decl.
607
608         * util.c (display_ratio): Use floating point to compute ratio:
609         this avoids problems with integer overflow.
610
611         * zgrep.in: Add support for --, -H, -h, -L, -l, -C, -d, -m and
612         their long equivalents.  Warn that -r and -d are not supported.
613
614         * zmore.in:
615         Check that file is readable before attempting to decompress it.
616
617 2000-10-09  Paul Eggert  <eggert@twinsun.com>
618
619         * configure.in (AC_CHECK_FUNCS): Add lstat.
620
621 2000-07-20  Paul Eggert  <eggert@twinsun.com>
622
623         Use a POSIX-compliant shell instead of /bin/sh.
624         Idea suggested by Albert Chin-A-Young <china@thewrittenword.com>.
625
626         * m4/shell.m4: New file.
627         * configure.in (AC_PROG_SHELL): Add it.
628         * Makefile.am (ACINCLUDE_INPUTS): Add $(M4DIR)/shell.m4.
629         (.in): Replace /bin/sh with $(SHELL).
630
631 2000-04-17  Bruno Haible  <haible@clisp.cons.org>
632
633         * Makefile.am (install-exec-hook): If hard links fail, try symlinks.
634
635 2000-04-02  Jim Meyering  <meyering@ascend.com>
636
637         * Makefile.am (install-exec-hook): Remove link targets before
638         installing.
639
640 2000-01-02  Albert Chin-A-Young  <china@thewrittenword.com>
641
642         * gzip.texi: Add direntry.
643
644 1999-12-21  Paul Eggert  <eggert@twinsun.com>
645
646         * NEWS, README, revision.h, gzip.texi: Revision 1.3, dated today.
647         * gzip.c (license_msg, usage, version, help, license):
648         Adjust to current GNU coding standards.
649         (total_in, total_out): Remove unnecessary initialization.
650         * zip.c (file_read): Report read errors.
651         * util.c (fill_inbuf): Likewise.
652         * gzip.c (main): Don't assume EOF == -1.
653         * unlzw.c (unlzw): Likewise.
654         * util.c (copy, fill_inbuf): Likewise.
655
656 1999-11-18  Paul Eggert  <eggert@twinsun.com>
657
658         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS):
659         Work around a bug in the QNX shell, which doesn't
660         propagate exit status of failed commands inside shell assignments.
661
662 1999-10-07  Paul Eggert  <eggert@twinsun.com>
663
664         * NEWS, README, revision.h, gzip.texi:
665         Revision 1.2.4294967306 dated today.  This is the successor to
666         revision 1.2.4.4294967305; automake requires the new (shorter) number.
667
668         Convert to automake.
669
670         * Makefile.am, gunzip.1, zcat.1, zcmp.1, AUTHORS: New files.
671
672         * revision.h (VERSION): Remove; moved to config.h.
673
674         * configure.in (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER,
675         AC_CANONICAL_HOST, AC_OBJEXT): Add.
676         (AC_PROG_CPP): Remove.
677         (AC_SYS_LARGEFILE): Add, replacing older inline code.
678         (ASCPP): Use $OBJEXT.
679         (LIBOBJS): Add match.o if needed.
680         (AC_PROG_INSTALL): Remove.
681         (AC_EXT, AC_C_CONST): Add.
682         (AC_CHECK_HEADERS): Add, replacing lots of AC_HEADER_CHECKs.
683         All instances of defined(NO_TIME_H) changed to !defined(HAVE_TIME_H),
684         etc.
685         (AC_CHECK_FUNCS): Add utime.
686         (SEDCMD): Use $interpval, not $ac_cv_sys_interpreter.
687         (AC_PREFIX_PROGRAM): Add, replacing AC_PREFIX.
688         (ZCAT, G): Remove.
689         (LIBOBJS): Add.
690         (OBJA): Remove; LIBOBJS now does this.
691
692         * bits.c, gzip.c, deflate.c, inflate.c, lzw.c, trees.c, unlzh.c,
693         unlzw.c, unpack.c, unzip.c, util.c, zip.c: Include <config.h>
694         first; this is needed for proper large-file support, given the new
695         way of configuring large files.
696
697         * gzip.c: Include <sys/types.h>; Ultrix needs this.
698         (TIME_OPT): Use STRUCT_UTIMBUF instead of empty string.
699         (help): Add bug-report address.
700         (do_stat): Depend on HAVE_LSTAT, not S_IFLNK, S_ISLNK, and NO_SYMLINK.
701
702 1999-06-25  Paul Eggert  <eggert@twinsun.com>
703
704         * inflate.c (huft_build):
705         Set n to length of v, to detect improper tables.
706         Don't accidentally grow j past z.
707
708 1999-06-24  Paul Eggert  <eggert@twinsun.com>
709
710         * Makefile.in (check): Update texinfo.tex size.
711
712         * configure.in (ASMV):
713         Define with AC_DEFINE; do not manipulate DEFS directly,
714         as this doesn't work with recent autoconf versions.
715
716 1999-02-06  Paul Eggert  <eggert@twinsun.com>
717
718         * NEWS, README, revision.h, gzip.texi: Revision 1.2.4.4294967305,
719         dated today.  This merges the changes from gzip 1.2.4a, which fix
720         some typographical errors in the documentation and update the
721         bug-reporting address.
722
723 1999-01-27  Paul Eggert  <eggert@twinsun.com>
724
725         * NEWS, README, revision.h (VERSION, REVDATE):
726         Revision 1.2.4.4294967304, dated today.
727
728         Port to autoconf 2.13.
729
730         * Makefile.in (next, next-fat, coherent):
731         Update dirent headers to match Autoconf 2.13.
732         * configure.in (AC_RETSIGTYP): Remove; superseded by AC_TYPE_SIGNAL.
733         (AC_DYNIX_SEQ, AC_XENIX_DIR, AC_DIR_HEADER): Remove; superseded by
734         AC_HEADER_DIRENT.
735         * tailor.h (HAVE_DIRENT_H, HAVE_SYS_DIR_H):
736         Define instad of DIRENT, SYSDIR.
737         * gzip.c (NAMLEN): Renamed from NLENGTH. Depend on Autoconf 2.13 names
738         HAVE_DIRENT_H, HAVE_SYS_NDIR_H, HAVE_SYS_DIR_H, HAVE_NDIR_H
739         instead of the oldfashioned names DIRENT, SYSDIR, SYSNDIR, NDIR.
740         (CLOSEDIR): New macro.
741         (progerror): New function.
742         (treat_stdin, treat_file, creat_outfile, get_istat, check_ofname,
743         treat_dir): Use it, for brevity.
744         (treat_dir): Report any I/O errors when reading directories.
745
746         * COPYING, INSTALL, doc/texinfo.tex, install-sh:
747         Update to latest public versions.
748
749 1998-11-18  Paul Eggert  <eggert@twinsun.com>
750
751         * NEWS, README, revision.h (VERSION, REVDATE):
752         Revision 1.2.4.4294967303, dated today.
753
754         * gzip.c (get_method): Don't complain about trailing zeros at
755         the end of a gzipped file, as they're commonly appended to fill
756         out a block (e.g. by GNU tar).
757
758         * configure.in (CPPFLAGS, LDFLAGS, LIBS): Add large-file support
759         for HP-UX 10.20 and later.
760
761         * getopt.c, getopt.h, texinfo.tex: Sync with latest version at gnu.org.
762         * getopt1.c: New file.
763         * Makefile.in (SRCS): Add getopt1.c.
764         (OBJS): Add getopt1$O.
765         (getopt1$O): New dependency.
766         (check): Adjust desired size of compressed texinfo.tex to 55637,
767         to reflect the 1998-11-13 edition of texinfo.tex.
768
769         * gpl.texinfo: Remove; its addresses were out of date and
770         these days the GPL isn't reprinted in manuals anyway.
771         * gzip.texi: Remove reference to gpl.texinfo.
772         * Makefile.in (GENFILES): Remove gpl.texinfo.
773
774 1998-11-13  Paul Eggert  <eggert@twinsun.com>
775
776         * NEWS, README, revision.h (VERSION, REVDATE):
777         Revision 1.2.4.4294967302, dated today.
778
779         * gzip.c (input_eof): New function.
780         (treat_stdin, treat_file): Use it to fix premature detection of EOF
781         bug when a gzipped file concatenation boundary is at a multiple of
782         INBUFSIZ.
783
784         * Makefile.in (installman): Fix bug when installing from subdirectory.
785         ($(srcdir)/gzip.info): Renamed from gzip.info.
786         ($(srcdir)/gzip.info, realclean): Do not split gzip.info.
787
788 1998-10-26  Paul Eggert  <eggert@twinsun.com>
789
790         * NEWS, README, revision.h (VERSION, REVDATE):
791         Revision 1.2.4.4294967301, dated today.
792
793         * TODO: Update bug reporting address.
794
795         * Makefile.in (datadir, libdir): Remove unused macros.
796         (mandir): Let configure set it.
797         (manextdir): New macro.
798         (alldirs): Remove datadir, libdir; add manextdir.
799         (TEXI2HTML): New macro.
800         (installman, uninstall): Install into manextdir, not mandir.
801         (install-strip): New rule.
802         (installdirs): No need to build $(prefix)/man separately,
803         as it's now in alldirs.
804         (match$O): Compile with $(CFLAGS).
805         (gzip_1.html): New rule.
806
807         * gzip.c (get_istat): Remove lint by initializing z_suffix_errno.
808         (check_ofname): Do not assume unsigned char.
809
810         * util.c (strlwr): Don't assume char is unsigned.
811         (warning): Renamed from `warn'.
812
813         * gzip.h (tolow): Use tolower instead of relying on 'A'-'a'.
814         (warning): Renamed from warn.
815
816         * trees.c (warning): Renamed from warn.
817
818 1998-10-14  Paul Eggert  <eggert@twinsun.com>
819
820         Merge patches from Debian.
821
822         * NEWS, README, revision.h (VERSION, REVDATE):
823         Revision 1.2.4.4294967300, dated today.
824
825         * README, algorithm.doc, gzip.texi: Update maintainer address.
826
827         * gzexe.in, zdiff.in, znew.in:
828         Close security hole portably, using `set -C'.
829
830         * zgrep.in: Add -A, -B.
831
832         * gzexe.in: Use `gzip', not full path, to run gzip.
833
834         * zdiff.in: Report proper exit status.
835
836         * gzip.h (base_name): Renamed from basename.  All uses changed.
837
838         * gzip.c (z_suffix): Now char *, so that there's no limit to length.
839         All uses change.
840         (main): If --quiet, abort gzip when SIGPIPE received.
841         (get_suffix): Don't assume z_suffix's address is a constant.
842         (get_istat): Likewise.
843         Check for buffer overflow.
844         Preserve errno correctly.
845         (make_ofname): Check for buffer overflow.
846
847         * util.c (fill_inbuf): Flush window before reporting read error.
848
849         * inflate.c (inflate_dynamic): Don't dump core if tl == NULL.
850
851         * Makefile.in (GENFILES): Add zless.in.
852         (SCRIPTS): Add zless.
853         (default): Build all programs, not just gzip.
854         (all): Add zless.
855         (installbin): Install zegrep, zfgrep.
856         (installman): Install zless man page.
857         (install_compress): Don't install compress.
858         (zless): New rule.
859
860 1998-09-16  Paul Eggert  <eggert@twinsun.com>
861
862         * NEWS, README, revision.h: Bump version number to 1.2.4.4294967299.
863
864         * tailor.h (UNLINK_READONLY_BUG): New macro.
865         * gzip.h (unlink): New decl.
866         * util.c (xunlink): New function.
867         * gzip.c
868         (treat_file, create_outfile, check_ofname, copy_stat, abort_gzip):
869         Use xunlink rather than unlink.
870         Do not chmod the file; xunlink will do that if need be.
871
872 1998-05-21  Paul Eggert  <eggert@twinsun.com>
873
874         * NEWS, README, revision.h: Bump version number to 1.2.4.4294967298.
875         * Makefile.in (prefix): Set from @prefix@.
876         (distclean): Remove config.cache.
877
878 1998-01-15  Paul Eggert  <eggert@twinsun.com>
879
880         * NEWS, README, revision.h:
881         Bump version number to indicate large-file support.
882
883 1997-10-08  Paul Eggert  <eggert@twinsun.com>
884
885         * gzip.c (CHAR_BIT): Define if <limits.h> doesn't.
886         (OFF_T_MIN, OFF_T_MAX): New macros.
887         (do_list): Revert to fixed format, but this time don't assume
888         that 9 digits suffice; use a width taken from the maximum value
889         that off_t can represent.
890         (off_t): Do not typedef; autoconf handles this now.
891         * gzip.c, util.c (<limits.h>): Include if HAVE_LIMITS_H.
892         * gzip.h, util.c (fprint_off): Now takes int width argument.
893         * configure.in (AC_HAVE_HEADERS): Check for limits.h.
894         (AC_TYPE_OFF_T): Use this instead of grepping sys/types.h for off_t.
895         (AC_TYPE_SIZE_T): Use this instead of obsolescent AC_SIZE_T.
896         * tailor.h (NO_OFF_T): Remove.
897         (off_t): Define this instead.
898
899 1997-10-03  Paul Eggert  <eggert@twinsun.com>
900
901         * Makefile.in, bits.c, configure.in, deflate.c, gzip.c, gzip.h,
902         inflate.c, trees.c, unlzw.c, unpack.c, unzip.c, util.c, zip.c:
903         Adjust to Solaris 2.6, which has large files but small off_t by default.
904         * gzip.c: Output more reasonable message if input file is too large.
905         * gzip.c, util.c: Propagate errno from point of error to `perror'.
906         * unzip.c: Allow uncompressing files larger than 4 gigabytes.
907         http://www.gzip.org/4g.patch (1996-07-21)
908
909 Wed Aug 18 09:34:23 1993  Jean-loup Gailly  (jloup@chorus.fr)
910
911         * version 1.2.4
912         By default, do not restore file name and timestamp from those saved
913           inside the .gz file (behave as 'compress'). Added the --name option
914           to force name and timestamp restoration.
915         Accept - as synonym for stdin.
916         Use manlinks=so or ln to support either hard links or .so in man pages
917         Accept foo.gz~ in zdiff.
918         Added support for Windows NT
919         Handle ENAMETOOLONG for strict Posix systems
920         Use --recursive instead of --recurse to comply with Webster and
921           the GNU stdandard.
922         Allow installation of shell scripts with a g prefix: make G=g install
923         Install by default zcat as gzcat if gzcat already exists in path.
924         Let zmore behave as more when invoked without parameters (give help)
925         Let gzip --list reject files not in gzip format even with --force.
926         Don't complain about non gzip files for options -rt or -rl.
927         Added advice in INSTALL for several systems.
928         Added makefile entries for NeXTstep 3.1 (if configure fails)
929         Avoid problem with memcpy on Pyramid (gave crc error on some files)
930         Support the -r option when compiled with Borland C++ on msdos.
931         Force lower case file names only for FAT file systems (not HPFS)
932         Rewrite one expression in inflate.c to avoid cc bug on Solaris x86.
933         In the msdos makefiles, get match.asm from the msdos subdirectory.
934         Catch SIGTERM and SIGHUP only if they are not ignored.
935         getopt.c: on Amiga, "#if !defined(const)" does not compile.
936         Use register parameters on Amiga.
937         Do not force names to lower case on Amiga.
938         Fix support of Atari TOS (Makefile.st and tailor.h)
939         In unlzw.c, do not suggest using zcat if zcat already used.
940         In INSTALL, suggest using bsdinst for HPUX.
941         Document Turbo C++ 1.0 bug in INSTALL.
942         Improved the documentation relative to the --no-name option.
943         Avoid signed/unsigned warnings in several files.
944         Added pointer to jka-compr19.el in README.
945         Added pointer to OS/2 executables in README.
946         Added --block-compress in tar -z example (gzip.1 and gzip.texi).
947         Don't keep rcsid in executable (avoid compilation warnings).
948         Check also the correctness of the first byte of an .Z file.
949         Return non zero status for an invalid option.
950         Remove "NEWFILES" from os2/gzip.def for Borland C++ on OS/2.
951         Remove "time stamp restored" message (just obey the -N request).
952
953 Thu Jun 24 10:27:57 1993  Jean-loup Gailly  (jloup@chorus.fr)
954
955         * version 1.2.3
956         Don't display the output name when decompressing except with --verbose.
957         Remove usage of alloca in getopt.c and all makefiles.
958         Use ASCPP instead of CPP to avoid breaking AC_HEADER_CHECK on RiscOS.
959         Added the zfile shell script in subdirectory sample.
960         Moved the list of compiler bugs from README to INSTALL.
961         Added vms/Readme.vms.
962         Fix DIST_BUFSIZE check in unlzh.c for 16 bit machines.
963         Fix REGSIGTYP macro in configure.in.
964         Use 'define' instead of == in vms/gzip.hlp.
965         Avoid warnings in unlzh.c
966         Allow separate installation of binaries and man pages.
967         Simplified handling of file names with spaces in zgrep and znew.
968         Fix dependencies and remove rule for trees.c in amiga/Makefile.sasc
969         Add missing quote in gzexe.
970
971 Thu Jun 17 13:47:05 1993  Jean-loup Gailly  (jloup@chorus.fr)
972
973         * version 1.2.2
974         Fix a compilation error in gzip.c on Sun with cc (worked with gcc).
975
976 Wed Jun 16 11:20:27 1993  Jean-loup Gailly  (jloup@chorus.fr)
977
978         * version 1.2.1
979          Let zmore act as more if the data is not gzipped.
980          By default, display output name only when name was actually truncated.
981          Use absolute path names in gzexe'd programs for better security.
982          In gzexe, use chmod 700 instead of 755 and don't gzexe tail,rm,etc...
983          Update vms/gzip.hlp.
984          Added a note about the fast options (-1 to -3) in algorithm.doc.
985          Improved man page for zgrep.
986          Minor fixes to gzip.texi.
987          Always set LC_ALL and LANG in configure (for tr on HPUX)
988
989 Mon Jun 14 10:03:24 1993  Jean-loup Gailly  (jloup@chorus.fr)
990
991         * version 1.2
992          Added the --list option to display the file characteristics.
993          Added the --no-name option: do not save or restore original filename
994            Save the original name by default.
995          Allow gunzip --suffix "" to attempt decompression on any file
996            regardless of its extension if an original name is present.
997          Add support for the SCO compress -H format.
998          gzip --fast now compresses faster (speed close to that of compress)
999            with degraded compression ratio (but still better than compress).
1000            Default level changed to -6 (acts exactly as previous level -5) to
1001            be a better indication of its placement in the speed/ratio range.
1002          Use smart name truncation: 123456789012.c -> 123456789.c.gz
1003            instead of 12345678901.gz
1004          With --force, let zcat pass non gzip'ed data unchanged (zcat == cat)
1005          Added the zgrep shell script.
1006          Made sub.c useful for 16 bit sound, 24 bit images, etc..
1007          Supress warnings about suffix for gunzip -r, except with --verbose.
1008          Moved the sample programs to a subdirectory sample.
1009          On MSDOS, use .gz extension when possible (files without extension)
1010          Added a "Special targets" section in INSTALL.
1011          Use stty -g correctly in zmore.in.
1012          Use cheaper test for gzipness in zforce.in.
1013          Remove space before $ in match.S (no longer accepted by gas 2.x)
1014          For the shell scripts, do not assume that gzip is in the path.
1015          Fix syntax error and define lnk$library in vms/Makefile.mms
1016          REGSIGTYPE is void on the Amiga.
1017          Do not write empty line when decompressing stdin with --verbose.
1018          Fix the 1.1.2 fix for VMS (bug in get_suffix)
1019          Added warning in README about compiler bug on Solaris 2.1 for x86.
1020          Added warning about 'rehash' in INSTALL.
1021          Removed default value of read_buf in bits.c (supermax doesn't like).
1022          In tailor.h, added support for Borland C and Zortech C on OS/2.
1023          Added warning in gzexe about Ultrix buggy sh (use /bin/sh5 instead).
1024          Added warning in zdiff about AIX buggy sh (use /bin/ksh instead).
1025          In configure.in, do not try the asm code if DEFS contains NO_ASM
1026
1027 Fri Jun  4 09:49:33 1993  Jean-loup Gailly  (jloup@chorus.fr)
1028
1029         * version 1.1.2
1030          Fix serious bug for VMS (-gz not removed when decompressing).
1031          Allow suffix other than .gz in znew.
1032          Do not display compression ratio when decompressing stdin.
1033          In zmore.in, work around brain damaged stty -g (Ultrix).
1034          Display a correct compression ratio for .Z files.
1035          Added .z to .gz renaming script in INTALL.
1036          Allow setting CFLAGS in configure.
1037          Add warning in README about bug in Concentrix cc compiler.
1038          Avoid || in Makefile.in (at least one make doesn't support this).
1039          Disable useless --ascii option for the Amiga.
1040          Add a pointer to the Primos executable in README.
1041          Added description of extra field in algorithm.doc.
1042          Do not redefine NULL in alloca.c.
1043          Added check for unsupported compression methods.
1044          Avoid getopt redeclaration on OSF/1.
1045
1046 Tue Jun  1 09:07:15 1993  Jean-loup Gailly  (jloup@chorus.fr)
1047
1048         * version 1.1.1
1049          Fix serious bug in vms.c (== instead of =).
1050          Added --ascii option.
1051          Add workaround in configure.in for Ultrix (quote eval argument)
1052          Do not use unset in znew (not supported on Ultrix)
1053          Use tar.gz instead of tar.z for the distribution of gzip.
1054          Add missing menu item in gzip.texi.
1055          Use size_t instead of unsigned, add AC_SIZE_T in configure.in.
1056
1057 Fri May 28 11:40:01 1993  Jean-loup Gailly  (jloup@chorus.fr)
1058
1059         * version 1.1
1060          Use .gz suffix by default, add --suffix option.
1061          Let gunzip accept a "_z" suffix (used by one 'compress' on Vax/VMS).
1062          Quit when reading garbage from stdin instead of reporting an error.
1063          Added sub.c and add.c for compression of 8 bit images.
1064          Added makefile for VAX/MMS and support for wildcards on VMS.
1065          Added support for MSC under OS/2.
1066          Added support for Prime/PRIMOS.
1067          Display compression ratio also when decompressing.
1068          Quit after --version (GNU standard)
1069          Use --force to bypass isatty() check.
1070          Accept --silent as synonym for --quiet (see longopts.table)
1071          Accept --to-stdout as synonym for --stdout (see longopts.table)
1072          Accept -H and -? in addition to -h and --help.
1073          Added comparison of zip and gzip in the readme file.
1074          Return an error code in all main compression/decompression functions.
1075          Continue processing other files in case of recoverable error.
1076          Add description of -f in znew.1.
1077          Do not keep uncompressed version for znew -t if .gz already exists.
1078          On Unix, use only st_ino and st_dev in same_file().
1079          Use S_IRUSR and S_IWUSR if they exist.
1080          "test $1 = -d" -> "test x$1 = x-d" in gzexe.
1081          In match.S, use symbol sysV68 to detect the Motorola Delta.
1082          Do not include memory.h with gcc (conflicting declarations on Sun).
1083          Fix more typos.
1084          On VMS, define unlink as delete also for gcc.
1085          In "make check", unset LANG because "wc -c" fails on Kanji.
1086          Renamed shdir as scriptdir.
1087          Use the 68020 code instead of 68000 code on the NeXT.
1088          Documented --uncompress as synonym for --decompress.
1089          Include the standard header files before gzip.h (needed on Bull).
1090          Do not assume that _POSIX_VERSION implies dirent.h present.
1091          Removed gzip-tar.patch since tar 1.11.2 handles gzip directly.
1092          Use less memory when compiled with -DSMALL_MEM (for MSDOS).
1093          Optimized updcrc().
1094          Don't complain if cc -E does not work correctly.
1095          Do not attempt reading 64K bytes on 16 bit Unix systems.
1096          Do not use the variable name 'overhead' which is reserved on Lynx!
1097          One BULL compiler does not like *p++ in inflate.c => *p, p++.
1098          Use casts on free and memcmp to avoid warnings.
1099          Remove the "off by more than one minute" time stamp kludge, but
1100            document how to avoid saving the time stamp on pipes if desired.
1101          Include crypt.h in inflate.c (one system predefines the CRYPT symbol).
1102          Add links to gunzip and (g)zcat in the default make rule.
1103          Create installation directories if they do not exist.
1104          Clarified --prefix option in INSTALL.
1105          Use symbol mc68k in match.S for the DIAB DS90.
1106          Guard against zero length _match.s in configure.in.
1107          In zmore, restore all tty options using stty -g.
1108          Added support for MacOS
1109          Simplified makecrc.c.
1110          Avoid warnings in getopt.c, util.c, unlzw.c.
1111          Use autoconf 1.4, in particular for INSTALL and AC_HAVE_POUNDBANG
1112          Use .so instead of hard links for zcat.1, gunzip.1 and zcmp.1.
1113          Fixed declration of sig_type.
1114          Make consistency check in fcfree.
1115          Added ztouch.
1116          Do not complain if utime fails on a directory (for OS/2).
1117
1118 Thu Mar 18 18:56:43 1993  Jean-loup Gailly  (jloup@chorus.fr)
1119
1120         * version 1.0.7
1121           Allow zmore to read from standard input (like more).
1122           Support the 68000 (Atari ST) in match.S.
1123           Retry partial writes (required on Linux when gzip is suspended in
1124             a pipe).
1125           Allow full pathnames and renamings in gzexe.
1126           Don't let gzexe compress setuid executables or gzip itself.
1127           Added vms/Makefile.gcc for gcc on the Vax.
1128           Give a pointer to Solaris and VMS executables of gzip in README.
1129           Allow installation of binaries and shell scripts in different dirs.
1130           Do not use alloca on the Cray.
1131           Provide strspn and strcspn if string.h does not exist.
1132           Define O_CREAT and O_EXCL from FCREAT and FEXCL if necessary.
1133           Remove gzip.doc in make realclean.
1134           Fixed many typos. (Corrections to my English are welcome.)
1135           Put "make manext=l install" at the correct place in INSTALL.
1136           Fix incorrect examples in INSTALL and give more examples.
1137           Include zdiff.1 for install and uninstall.
1138           Allows complex PAGER variable in zmore (e.g.: PAGER="col -x | more")
1139           Avoid warning on unused indfound in getopt.c.
1140           Cast memset arg to void* (required by some buggy compilers).
1141           Include sys/types.h before dirent.h in acgeneral.m4.
1142           Fix acgeneral.m4 AC_COMPILE_CHECK to avoid warnings.
1143           Don't use alloca.c with gcc. (One NeXT user did not have alloca.h).
1144           Change all error messages according to GNU standards.
1145           Restore time stamp only if off by more than one minute.
1146           Allow installation of zcat as gzcat.
1147           Suppress help message  and send compressed data to the terminal when
1148             gzip is invoked without parameters and without redirection.
1149            (Explicit request from Noah Friedman.)
1150           Add compile option GNU_STANDARD to respect the GNU coding standards:
1151             with -DGNU_STANDARD, behave as gzip even if invoked under the
1152             name gunzip. (Complaints to /dev/null or the FSF, not to me!)
1153
1154 Fri Mar 10 13:27:18 1993  Jean-loup Gailly  (jloup@chorus.fr)
1155
1156         * version 1.0.6
1157           Let gzexe detect executables that are already gzexe'd.
1158           Don't try restoring record format on VMS (the simple 1.0.5 code
1159             worked correctly only on fixed-512 files). Suppress text_mode.
1160           Added asm version for 68000 in amiga/match.a.
1161           Use asm version for Atari TT.
1162           Fix "make clean" in vms/Makefile.vms.
1163           For OS/2, assume HPFS by default, add flag OS2FAT if necessary.
1164           Fixed some bugs in zdiff and define zcmp as a link to zdiff.
1165           Added zdiff.1
1166           Remove configure hack for NeXT; add general fix to autoconf instead
1167           Do not strip a ".z" extension if this results in an empty name.
1168           Avoid array overflow in get_prefix() for extensions > 10 chars.
1169           Accept either q or e to quit zmore.
1170           In zmore, try restoring tty mode in all cases.
1171           Use Motorola style for match.S on the NeXT.
1172           configure.in: unsetenv *hangs* with the Siemens csh...
1173           Update vms/gzip.hlp.
1174
1175 Thu Mar 4 14:13:34 1993  Jean-loup Gailly  (jloup@chorus.fr)
1176
1177         * version 1.0.5
1178           For VMS, restore the file type for variable record format, otherwise
1179             extract in fixed length format (not perfect, but better than
1180             forcing all files to be in stream_LF format).
1181           Use "-z" suffix for VMS.
1182           Use only .z, .*-z, .tgz, .taz as valid gzip extensions; update
1183            zforce accordingly.
1184           Allow a version number in input file names for VMS.
1185           Added sample program zread.c.
1186           Fix "make check" for some implementations of /bin/sh.
1187           Don't rely on stat() for filenames with extension > 3 chars
1188             on MSDOS, OS2 and Atari.
1189           Garbage collect files in /tmp created by gzexe.
1190           Quote $opt in znew.
1191           Use TOUCH env variable in znew if it exists.
1192           Better error message for gunzip on empty or truncated file.
1193           Allow prototypes in getopt.h when __STDC__ defined but 0.
1194           Added "make clean" in vms/Makefile.vms.
1195           Removed -g from default CFLAGS (with Noah's permission!)
1196           Avoid too many HAVE_xxx_H for most systems; use common defaults.
1197           Moved default Atari flags into tailor.h for consistency.
1198           Use memzero() to clear the hash table.
1199           Update vms/gzip.hlp to reflect the VMS behavior.
1200           Fix OS_CODE (to fit in a byte).
1201           Add utime.h for the Amiga.
1202           Add gcc support for the Amiga.
1203           Work around incorrect dirent.h for NeXT 2.0.
1204           Added Makefile entry for Coherent.
1205
1206 Fri Feb 22 11:20:49 1993  Jean-loup Gailly  (jloup@chorus.fr)
1207
1208         * version 1.0.4
1209           Added optimized asm version for 68020.
1210           Add support for DJGPP.
1211           Add support for the Atari ST.
1212           Added zforce to rename gzip'ed files with truncated names.
1213           Do not install with name uncompress (some systems rely on the
1214             absence of any check in the old uncompress).
1215           Added missing function (fcfree) in msdos/tailor.c
1216           Let gunzip handle .tgz files, and let gzip skip them.
1217           Added 'stty min 1' in zmore for SysV and fixed trap code.
1218           Suppress .PHONY in Makefile.in, which breaks old makes.
1219           Added documentation about pcat and unpack in INSTALL.
1220           Add cast to getenv for systems without stdlib.h.
1221           Use VAXC instead of VMS to avoid confusion for gcc.
1222           Add -K to znew.1.
1223           Add gzexe.1.
1224           Try preserving file permissions in gzexe.
1225           Added -d option for gzexe.
1226           Guard against spaces in file names in gzexe.
1227           Use CMP env. variable in zcmp.
1228           Return a warning exit status for gzip of file with .z suffix.
1229           Suppress usage of d_ino which is not portable to all systems.
1230           Use #ifdef instead of #if for consistency.
1231           For VMS, use "cc util.c" instead of "cc util" (pb with logical names)
1232           Added utime() for Amiga.
1233           Renamed gzcat.1 as zcat.1.
1234           Include fcntl.h for Amiga (for read and write).
1235           For VMS, add definition of symbols and links in the makefiles.
1236           Give a VMS look to vms/gzip.hlp.
1237           Save the original name only when necessary.
1238           Add a mode parameter for open in read mode (required by VMS).
1239           For VMS, remove the version suffix from the original name.
1240           Accept both / and \ as path separator for MSDOS.
1241           Let gunzip extract stored .zip files correctly.
1242           Added warning about VFC format in vms/gzip.hlp.
1243           In znew, skip a bad file but process the others.
1244           Cleanup tailor.h.
1245           Use GZIP_OPT for VMS to avoid conflict with program name.
1246           Added description of GZIP variable in gzip.texi.
1247
1248 Thu Feb 11 17:21:32 1993  Jean-loup Gailly  (jloup@chorus.fr)
1249
1250         * version 1.0.3
1251           Add -K option for znew to keep old .Z files if smaller.
1252           Add -q option (quiet) to cancel -v in GZIP env variable.
1253           For Turbo C, normalize pointers before freeing them.
1254           Add more safety checks in add_envopt().
1255           Add do_exit() for uniform exit path (always free memory).
1256           Reduce MAX_PATH_LEN for MSDOS.
1257           Include sys/types.h before signal.h
1258           Avoid strdup, the NeXT does not have it.
1259           Made gzexe safer on systems with filename limitation to 14 chars.
1260
1261 Fri Feb  10 09:45:49 1993  Jean-loup Gailly  (jloup@chorus.fr)
1262
1263         * version 1.0.2
1264           Added env variable GZIP for default options.
1265           Added support for the Amiga.
1266           znew now keeps the old .Z if it is smaller than the .z file.
1267           Added gzexe to compress rarely used executables.
1268           Reduce memory usage when using static allocation (no DYN_ALLOC).
1269           Better separation of warning and error return codes.
1270           Fix unlzw.c to make DYN_ALLOC and MAXSEG_64K independent options.
1271           Allow INBUFSIZ to be >= 32K in unlzw (don't use sign of rsize)
1272           Generate tar file in old format to avoid problems with old systems.
1273           Preserve time stamp in znew -P if touch -r works.
1274           Use ${PAGER-more} instead of ${PAGER:-more} in zmore.
1275           Do not use unsigned instead of mode_t.
1276           Better error message for trailing garbage in .z file; ignore this
1277            garbage on VMS.
1278           In zmore, use icanon instead of -cbreak on SYSV.
1279           Add trap handler in zmore.
1280           Use char* instead of void* for non STDC compilers.
1281           Added makefile entry for Xenix on 286.
1282           Return an error code when existing file was not overwritten.
1283           Use prototype of lzw.h for lzw.c.
1284           Fix znew with -P option alone.
1285           Give warning for directories even without -v.
1286           Close output file before unlink() in case of error.
1287           Suppress all target dependent ifdef from the portable files.
1288           Free all dynamically allocated variables upon exit.
1289
1290 Thu Feb 4 18:23:56 1993  Jean-loup Gailly  (jloup@chorus.fr)
1291
1292         * version 1.0.1
1293           Fixed some trivial errors in msdos/Makefile.bor
1294
1295 Thu Feb 4 10:00:59 1993  Jean-loup Gailly  (jloup@chorus.fr)
1296
1297         * version 1.0
1298           gzip now runs on Vax/VMS (Amiga support will come in next version).
1299           Do not overwrite files without -f when using /bin/sh.
1300           Support the test option -t for compressed (.Z) files.
1301           Flush output for bad compressed files. Add warning in README.
1302           Added makefiles for MSDOS.
1303           Don't rely on presence of csh in configure
1304           Added gunzip.1 and gzcat.1.
1305           Updated znew.1.
1306           Check reserved flags in unlzw().
1307           Return dummy value in main to avoid lint warning.
1308           Define OF in lzw.h for lint.
1309           Allow both "znew -v -t" and "znew -vt".
1310           Don't overwrite the output file name for multiple parts.
1311           Echo just a warning if configure is out of date.
1312           Use ; instead of , in trees.c (confuses the SAS Amiga compiler).
1313           In INSTALL, document "DEFS='-DM_XENIX' ./configure".
1314           Use OTHER_PATH_SEP for more portability (DOS, OS2, VMS, AMIGA).
1315           Make all directories world writable for broken versions of tar.
1316           Use gzip -cd instead of zcat in zmore, zcmp, zdiff.
1317           Don't use GNU tar for distributions, some systems can't untar.
1318           Do not exit() for gzip --version.
1319
1320 Mon Jan 26 10:26:42 1993  Jean-loup Gailly  (jloup@chorus.fr)
1321
1322         * Beta version 0.8.2
1323           Avoid 'far' declarations for MSDOS.
1324           Use test -f instead of test -x in configure.in (for Ultrix)
1325           Add empty else part to if in Makefile.in for broken shells.
1326           Use NO_UNDERLINE instead of UNDERLINE (pb with Linux cpp)
1327           Accept continuation files with -ff (for damage recovery)
1328           Small patch to Makefile.os2
1329           Use memzero instead of bzero to avoid potential conflicts
1330           Document restriction on extraction of zip files.
1331           Fix quoting in ACL_HAVE_SHELL_HACK.
1332           Do not check file size on MSDOS because of bug in DIET.
1333           Allow zcat on a file with multiple links.
1334           Add fix in inflate.c for compatibility with pkzip 2.04c.
1335           Release gzip in tar.z and tar format. (No tar.Z).
1336
1337 Fri Jan 22 10:04:13 1993  Jean-loup Gailly  (jloup@chorus.fr)
1338
1339         * Beta version 0.8.1
1340           Fixed Makefile.os2
1341           Fixed #if directives that TurboC does not like.
1342           Don't rely on uncompress in znew, use gzip -d.
1343           Add the pipe option -P in znew.
1344           Add some more ideas in TODO.
1345           Support both NDIR and SYSNDIR.
1346
1347 Sat Jan  21 15:46:38 1993  Jean-loup Gailly  (jloup@chorus.fr)
1348
1349         * Beta version 0.8
1350           Support unpack.
1351           Check for _match.o in configure.in in addition to return status.
1352           Include <sys/types.h> in zip.c
1353           Define local variables and functions as local.
1354           Accept more alternative names for the program (pcat, gzcat, ...).
1355           Accept .exe as well as .EXE.
1356           Uncompress files with multiple links only with -f.
1357           Better error message for gunzip of non-existent file.z.
1358           Fix the entry for /etc/magic in INSTALL.
1359           Use AC_HAVE_HEADERS uniformly instead of special macros.
1360           Install the man pages as .1 by default instead of .l.
1361           Document crypt++.el in README.
1362           Fix for unlzw() on 16-bit machines (bitmask must be unsigned).
1363           Complain if input and output files are identical.
1364           Create a correct output name for files of exactly 13 chars.
1365           Do not overwrite CPP if set
1366           Check for i386 before trying to assemble match.s
1367           Check for underline in external name before assembling
1368           Add patch for tar 1.11.1.
1369
1370 Mon Jan  5 10:16:24 1993  Jean-loup Gailly  (jloup@chorus.fr)
1371
1372         * Beta version 0.7
1373           Use "make check" instead of "make test".
1374           Do not rely on dirname in znew.
1375           Keep time stamp and pass options to gzip in znew.
1376           Rename .l files back to .1 to avoid conflict with lex
1377           Do not create .z.z files with gzip -r.
1378           Use nice_match in match.asm
1379           Unroll loops in deflate.c
1380           Do not attempt matches beyond the window end
1381           Allow again gunzip .zip files (was working in 0.5)
1382           Allow again compilation with TurboC 2.0 (was working in 0.4)
1383
1384 Tue Dec 30 20:00:19 1992  Jean-loup Gailly  (jloup@chorus.fr)
1385
1386         * Beta version 0.6
1387           The .z extension is used by pack, not compact (README, gzip.1)
1388           Accept gzcat in addition to zcat.
1389           Use PAGER in zmore if defined.
1390           Man pages for /usr/local/man/manl should have extension .l.
1391           Don't redefine bzero on the NeXT
1392           Allow incomplete Huffman table if there is only one code.
1393           Don't lookahead more than 7 bits (caused premature EOF).
1394           Added "make test" to check for compiler bugs.
1395           Don't rely on `i386`; try to assemble directly
1396           Change magic header to avoid conflict with freeze 1.x.
1397           Added entry for /etc/magic in INSTALL.
1398           Do not destroy an input .zip file with more than one member.
1399           Display "untested" instead of "OK" for gzip -t foo.Z
1400           With -t, skip stdin in .Z format
1401           Allow multiple compressed members in an input file.
1402           Ignore a zero time stamp.
1403           Made znew safer.
1404
1405 Tue Dec 29 10:00:19 1992   Noah Friedman  (friedman@gnu.ai.mit.edu)
1406
1407           Added test for #!/bin/sh in configure.in.
1408           Fix some references to $srcdir in Makefile.in
1409
1410 Mon Dec 21 17:33:35 1992  Jean-Loup Gailly  (jloup@chorus.fr)
1411
1412         * Beta version 0.5
1413           Put RCS ids in all files.
1414           Added znew to recompress old .Z files with gzip.
1415           Avoid "already .z suffix" messages for -r and no -v.
1416           Put back check for d_ino in treat_dir().
1417           Use HAVE_STRING_H instead of USG.
1418           Added os2/Makefile.os2
1419           Use SYSUTIME on OS/2.
1420           Info dir is $(prefix)/info, not $(prefix)/lib/info.
1421           Support long options, added getopt and alloca
1422           Support -V and -t
1423           Reorder configure.in according to suggestions in autoconf.info
1424           Allow links when not removing original file
1425           Allow either .z or .Z in zdiff
1426
1427 Wed Nov 25 11:40:04 1992  Jean-loup Gailly  (jloup@chorus.fr)
1428
1429         * Beta version 0.4.1
1430           Save only the original base name, don't include any directory prefix.
1431           Don't use HAVE_LONG_FILE_NAMES (support multiple file system types).
1432           Fix declaration of abort_gzip in gzip.h.
1433           Include unistd.h when it exists to avoid warnings with gcc -Wall.
1434
1435 Mon Nov 23 12:39:01 1992    Jean-loup Gailly  (jloup@chorus.fr)
1436
1437         * Beta version 0.4
1438           Lots of cleanup
1439           Use autoconf generated 'configure'
1440           Fixed the NO_MULTIPLE_DOTS code
1441           Fixed the save_orig_name code
1442           Support for MSDOS (Turbo C)
1443
1444 Thu Nov 19 15:18:22 1992    Jean-loup Gailly  (jloup@chorus.fr)
1445
1446         * Beta version 0.3
1447           Added auto configuration. Just type "make" now.
1448           Don't overwrite compress by default in "make install". Use
1449             "make install_compress" to overwrite.
1450           Add match.s for 386 boxes.
1451           Added documentation in texinfo format.
1452           Provide help for "gunzip" invoked without redirected input.
1453           Save original file name when necessary.
1454           Support OS/2 (Kai-Uwe Rommel).
1455
1456 Tue Nov 17 14:32:53 1992  Jean-loup Gailly  (jloup@chorus.fr)
1457
1458         * Alpha version 0.2.4
1459           Return 0 in get_istat() when ok (caused error with zcat).
1460           Don't update crc on compressed data (caused crc errors on
1461             large files).
1462
1463 Fri Nov 13 15:04:12 1992  Jean-loup Gailly  (jloup@chorus.fr)
1464
1465         * Alpha version 0.2.3
1466           Initialize rsize in unlzw.c
1467           Initialize ofd for zcat.
1468           Do not use volatile ifname as argument of treat_dir.
1469           Add -1 to -9 in gzip.1.
1470
1471 Sat Oct 31 18:30:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
1472
1473         * Alpha version 0.2.2.
1474           Fix error messages.
1475           Accept gunzip on zip files.
1476
1477 Sat Oct 31 17:15:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
1478
1479         * Alpha version 0.2.1
1480           Use ctype.h in util.c (problem on SysV).
1481           Create BINDIR if it does not exist.
1482           Use cc by default.
1483           Added zcmp, zmore, zdiff.
1484           Fixed the man page gzip.1.
1485
1486 Sat Oct 31 17:00:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
1487
1488         * Alpha version 0.2
1489           Fixed compilation problems with gcc
1490
1491 Sat Oct 31 12:46:00 1992  Jean-loup Gailly  (jloup@chorus.fr)
1492
1493         * Alpha version 0.1 released (under time pressure), so it's not
1494           much tested, sorry.
1495
1496
1497         -----
1498
1499         Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2006 Free
1500         Software Foundation, Inc.
1501
1502         Copyright (C) 1992, 1993 Jean-loup Gailly
1503
1504         Copying and distribution of this file, with or without
1505         modification, are permitted provided the copyright notice
1506         and this notice are preserved.