1 2002-09-30 Paul Eggert <eggert@twinsun.com>
3 * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
4 Revision 1.3.5, dated today.
6 * util.c (fprint_off): Fix bug in printing values greater than
7 10 * 2**32 bytes. Bug reported by Bryan Andersen.
9 * Makefile.am (match.$(OBJEXT)): Use .S as extension for $(ASCPP),
11 * configure.in: Likewise.
12 Upgrade assembly-language checking for Autoconf 2.54, using cache vars.
13 (AC_PROG_CPP, AC_OBJEXT): Add.
15 * match.c: Accept __i386 and __i386__ as synonyms for i386.
16 Bug reported by "fork __" <bouloumag@hotmail.com>.
18 2002-09-29 Paul Eggert <eggert@twinsun.com>
20 * gzip.texi (Overview): Suggest how to use gunzip on zip files.
22 * zless.1, zless.in: Use LESSOPEN, not PAGER.
23 Suggested by <antos@MAST.queensu.ca>.
25 2002-09-28 Paul Eggert <eggert@twinsun.com>
27 * zforce.in: Use shell pattern matching instead of 'expr', which
28 mishandles names like "+". Remove old check for 14-byte file
29 names on hosts with broken "mv" implementations, as such systems
30 aren't in use any more and it's better nowadays to support file
31 names longer than 14 bytes. Rely on "mv"'s error-reporting.
32 This fixes a portability bug reported by Ralf Neubauer, along
35 Remove dangling output symlinks properly.
36 Bug reported by Kalle Olavi Niemitalo.
37 * gzip.c (lstat): New macro, for platforms lacking lstat.
39 (name_too_long, check_ofname): Use lstat instead of stat.
41 2002-09-27 Paul Eggert <eggert@twinsun.com>
43 * zforce.in: Use "gzip -lv", not "gzip -v". Patch by Ralf
46 * configure.in (ASCPP): Don't use test -a, as POSIX says it's
49 * zmore.in: Likewise. Similarly, don't use test -o, or test -t
52 * gzexe.in (PATH): Set to same as other programs.
53 Don't assume "tail +22" works; POSIX removed this.
54 Check against compressing "tail".
55 Check against "skip=" line with no integer.
56 * zgrep.in: Exit with status 2 if trouble, for consistency with grep.
58 * gzip.c (main): Avoid core dump in diagnostic message if
59 incorrect suffix is given.
61 2002-09-26 Paul Eggert <eggert@twinsun.com>
63 * zdiff.in: Use "trap -" instead of "trap". Patch by Nicolas Boullis.
64 Use names, not numbers, for signals. Patch by Andrew Stribblehill.
66 * NEWS, README, revision.h, configure.in (AM_INIT_AUTOMAKE):
67 Revision 1.3.4, dated today.
69 * README-alpha: Upgrade to Autoconf 2.54 and Automake 1.7.
70 * configure.in (AC_PREREQ): Move to start, and increase to 2.54.
71 (AC_INIT, AM_INIT_AUTOMAKE, AC_CONFIG_SRCDIR, AC_CONFIG_FILES,
72 AC_OUTPUT): Use modern style.
73 (AC_OBJEXT, AC_EXEEXT): Remove; obsolete.
75 (AC_HEADER_STDC): Renamed from AC_STDC_HEADERS.
76 (AC_CHECK_HEADERS): Remove stdlib.h, string.h, unistd.h; now done
78 (AC_SUBST): Remove CFLAGS; now done by Autoconf.
80 * gzip.texi: Use the GNU FDL for distribution terms, following the
81 recipe in the Texinfo manual. Use Automake-generated variables
83 * fdl.texi, mdate-sh: New files.
84 * Makefile.am (AM_MAKEINFOFLAGS): Add --no-split.
85 (gzip_TEXINFOS): New macro.
87 * tailor.h (NO_DIR): Define to 1, not the empty string.
88 * gzip.c (NO_DIR): Define to 0 if not defined. All uses changed.
89 (usage): Don't put '#if' inside printf, as the C standard says
90 that it is not portable if printf is a macro.
92 Don't lose output when decompressing truncated input.
93 Bug reported by Nadav Har'El.
94 * inflate.c (GETBYTE): New macro.
96 (inflate_dynamic, inflate_block): Add a local variable w, needed
99 2002-03-08 Paul Eggert <eggert@twinsun.com>
101 * NEWS, README, revision.h, gzip.texi,
102 configure.in (AM_INIT_AUTOMAKE): Revision 1.3.3, dated today.
104 * README-alpha: Now using latest stable GNU tools.
105 Using the latest tools allows gzip to build correctly on hosts
106 conforming to POSIX 1003.1-2001.
108 * configure.in (match): Use AC_LIBOBJ; Autoconf 2.53 requires it.
109 (LIBOBJS): No longer need to subst, since AC_LIBOBJ does it.
110 (AC_PREREQ): Bump to 2.53.
112 * Makefile.am (install-exec-hook, remove-installed-links):
113 Work even when configured with --program-transform-name.
115 * gzip.c (license_msg): Update copyright.
116 (z_len): Now of type size_t.
118 2001-11-03 Paul Eggert <eggert@twinsun.com>
120 * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
121 Revision 1.3.2, dated today.
123 * Makefile.am (LN_S): New macro.
124 (install-exec-hook): Depend on remove-installed-links.
125 Affect $(DESTDIR)$(bindir), not just $(bindir).
126 (uninstall-local, remove-installed-links): New rules.
127 * README-alpha: This release built with autoconf 2.52f.
128 * TODO: Add rsync patch.
129 * configure.in: Add AC_PREREQ(2.52) and AC_PROG_LN_S.
130 * gzip.1, zmore.1: Fix troff glitches, using Eric S. Raymond's
131 suggestions for inspiration.
132 * m4/shell.m4(AC_PROG_SHELL): Add commentary and cleanup.
134 * gzip.texi, gzip.1: Add pointers to RFCs 1951 and 1952.
135 Mention that gzip --list reports file sizes modulo 2^32.
136 * gzip.1: Remove incorrect report of 2 GB bug. Add copyright notice.
138 2001-09-30 Paul Eggert <eggert@twinsun.com>
140 * NEWS, README, revision.h, gzip.texi, configure.in (AM_INIT_AUTOMAKE):
141 Revision 1.3.1, dated today.
143 * INSTALL, getopt.c, getopt.h, getopt1.c, install-sh, missing,
144 mkinstalldirs, texinfo.tex:
145 Sync with latest version in other packages.
147 * acinclude.m4, config.guess, config.sub: Remove.
148 * depcomp, rpmatch.c, yesno.c: New files.
150 * ChangeLog, README, NEWS, TODO, configure.in, zgrep.in, zmore.in:
151 Add copyright notice.
153 * Makefile.am (ACLOCAL_AMFLAGS): New macro.
154 (ACINCLUDE_INPUTS): Remove all but shell.m4.
155 ($(srcdir)/acinclude.m4): Remove.
156 (gzip_sources): Add yesno.c.
160 * configure.in (AC_CANONICAL_HOST): Remove.
161 (AC_AIX, AC_MINIX): Move earlier.
162 (AC_REPLACE_FUNCS): Add rpmatch.
165 Report error if -b operand is not a nonnegative integer.
166 (treat_file): Don't assume tab width is 8, or that characters are
168 (make_ofname): Use WARN to warn about unchanged files.
169 (get_method): "get newer version of gzip" -> "not supported"
170 (check_ofname): Use yesno instead of checking for 'y' ourselves.
171 (treat_file): Do not assume link count fits in int.
173 * gzip.h (yesno): New decl.
175 * util.c (display_ratio): Use floating point to compute ratio:
176 this avoids problems with integer overflow.
178 * zgrep.in: Add support for --, -H, -h, -L, -l, -C, -d, -m and
179 their long equivalents. Warn that -r and -d are not supported.
182 Check that file is readable before attempting to decompress it.
184 2000-10-09 Paul Eggert <eggert@twinsun.com>
186 * configure.in (AC_CHECK_FUNCS): Add lstat.
188 2000-07-20 Paul Eggert <eggert@twinsun.com>
190 Use a POSIX-compliant shell instead of /bin/sh.
191 Idea suggested by Albert Chin-A-Young <china@thewrittenword.com>.
193 * m4/shell.m4: New file.
194 * configure.in (AC_PROG_SHELL): Add it.
195 * Makefile.am (ACINCLUDE_INPUTS): Add $(M4DIR)/shell.m4.
196 (.in): Replace /bin/sh with $(SHELL).
198 2000-04-17 Bruno Haible <haible@clisp.cons.org>
200 * Makefile.am (install-exec-hook): If hard links fail, try symlinks.
202 2000-04-02 Jim Meyering <meyering@ascend.com>
204 * Makefile.am (install-exec-hook): Remove link targets before
207 2000-01-02 Albert Chin-A-Young <china@thewrittenword.com>
209 * gzip.texi: Add direntry.
211 1999-12-21 Paul Eggert <eggert@twinsun.com>
213 * NEWS, README, revision.h, gzip.texi: Revision 1.3, dated today.
214 * gzip.c (license_msg, usage, version, help, license):
215 Adjust to current GNU coding standards.
216 (total_in, total_out): Remove unnecessary initialization.
217 * zip.c (file_read): Report read errors.
218 * util.c (fill_inbuf): Likewise.
219 * gzip.c (main): Don't assume EOF == -1.
220 * unlzw.c (unlzw): Likewise.
221 * util.c (copy, fill_inbuf): Likewise.
223 1999-11-18 Paul Eggert <eggert@twinsun.com>
225 * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS):
226 Work around a bug in the QNX shell, which doesn't
227 propagate exit status of failed commands inside shell assignments.
229 1999-10-07 Paul Eggert <eggert@twinsun.com>
231 * NEWS, README, revision.h, gzip.texi:
232 Revision 1.2.4294967306 dated today. This is the successor to
233 revision 1.2.4.4294967305; automake requires the new (shorter) number.
237 * Makefile.am, gunzip.1, zcat.1, zcmp.1, AUTHORS: New files.
239 * revision.h (VERSION): Remove; moved to config.h.
241 * configure.in (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER,
242 AC_CANONICAL_HOST, AC_OBJEXT): Add.
243 (AC_PROG_CPP): Remove.
244 (AC_SYS_LARGEFILE): Add, replacing older inline code.
245 (ASCPP): Use $OBJEXT.
246 (LIBOBJS): Add match.o if needed.
247 (AC_PROG_INSTALL): Remove.
248 (AC_EXT, AC_C_CONST): Add.
249 (AC_CHECK_HEADERS): Add, replacing lots of AC_HEADER_CHECKs.
250 All instances of defined(NO_TIME_H) changed to !defined(HAVE_TIME_H),
252 (AC_CHECK_FUNCS): Add utime.
253 (SEDCMD): Use $interpval, not $ac_cv_sys_interpreter.
254 (AC_PREFIX_PROGRAM): Add, replacing AC_PREFIX.
257 (OBJA): Remove; LIBOBJS now does this.
259 * bits.c, gzip.c, deflate.c, inflate.c, lzw.c, trees.c, unlzh.c,
260 unlzw.c, unpack.c, unzip.c, util.c, zip.c: Include <config.h>
261 first; this is needed for proper large-file support, given the new
262 way of configuring large files.
264 * gzip.c: Include <sys/types.h>; Ultrix needs this.
265 (TIME_OPT): Use STRUCT_UTIMBUF instead of empty string.
266 (help): Add bug-report address.
267 (do_stat): Depend on HAVE_LSTAT, not S_IFLNK, S_ISLNK, and NO_SYMLINK.
269 1999-06-25 Paul Eggert <eggert@twinsun.com>
271 * inflate.c (huft_build):
272 Set n to length of v, to detect improper tables.
273 Don't accidentally grow j past z.
275 1999-06-24 Paul Eggert <eggert@twinsun.com>
277 * Makefile.in (check): Update texinfo.tex size.
279 * configure.in (ASMV):
280 Define with AC_DEFINE; do not manipulate DEFS directly,
281 as this doesn't work with recent autoconf versions.
283 1999-02-06 Paul Eggert <eggert@twinsun.com>
285 * NEWS, README, revision.h, gzip.texi: Revision 1.2.4.4294967305,
286 dated today. This merges the changes from gzip 1.2.4a, which fix
287 some typographical errors in the documentation and update the
288 bug-reporting address.
290 1999-01-27 Paul Eggert <eggert@twinsun.com>
292 * NEWS, README, revision.h (VERSION, REVDATE):
293 Revision 1.2.4.4294967304, dated today.
295 Port to autoconf 2.13.
297 * Makefile.in (next, next-fat, coherent):
298 Update dirent headers to match Autoconf 2.13.
299 * configure.in (AC_RETSIGTYP): Remove; superseded by AC_TYPE_SIGNAL.
300 (AC_DYNIX_SEQ, AC_XENIX_DIR, AC_DIR_HEADER): Remove; superseded by
302 * tailor.h (HAVE_DIRENT_H, HAVE_SYS_DIR_H):
303 Define instad of DIRENT, SYSDIR.
304 * gzip.c (NAMLEN): Renamed from NLENGTH. Depend on Autoconf 2.13 names
305 HAVE_DIRENT_H, HAVE_SYS_NDIR_H, HAVE_SYS_DIR_H, HAVE_NDIR_H
306 instead of the oldfashioned names DIRENT, SYSDIR, SYSNDIR, NDIR.
307 (CLOSEDIR): New macro.
308 (progerror): New function.
309 (treat_stdin, treat_file, creat_outfile, get_istat, check_ofname,
310 treat_dir): Use it, for brevity.
311 (treat_dir): Report any I/O errors when reading directories.
313 * COPYING, INSTALL, doc/texinfo.tex, install-sh:
314 Update to latest public versions.
316 1998-11-18 Paul Eggert <eggert@twinsun.com>
318 * NEWS, README, revision.h (VERSION, REVDATE):
319 Revision 1.2.4.4294967303, dated today.
321 * gzip.c (get_method): Don't complain about trailing zeros at
322 the end of a gzipped file, as they're commonly appended to fill
323 out a block (e.g. by GNU tar).
325 * configure.in (CPPFLAGS, LDFLAGS, LIBS): Add large-file support
326 for HP-UX 10.20 and later.
328 * getopt.c, getopt.h, texinfo.tex: Sync with latest version at gnu.org.
329 * getopt1.c: New file.
330 * Makefile.in (SRCS): Add getopt1.c.
331 (OBJS): Add getopt1$O.
332 (getopt1$O): New dependency.
333 (check): Adjust desired size of compressed texinfo.tex to 55637,
334 to reflect the 1998-11-13 edition of texinfo.tex.
336 * gpl.texinfo: Remove; its addresses were out of date and
337 these days the GPL isn't reprinted in manuals anyway.
338 * gzip.texi: Remove reference to gpl.texinfo.
339 * Makefile.in (GENFILES): Remove gpl.texinfo.
341 1998-11-13 Paul Eggert <eggert@twinsun.com>
343 * NEWS, README, revision.h (VERSION, REVDATE):
344 Revision 1.2.4.4294967302, dated today.
346 * gzip.c (input_eof): New function.
347 (treat_stdin, treat_file): Use it to fix premature detection of EOF
348 bug when a gzipped file concatenation boundary is at a multiple of
351 * Makefile.in (installman): Fix bug when installing from subdirectory.
352 ($(srcdir)/gzip.info): Renamed from gzip.info.
353 ($(srcdir)/gzip.info, realclean): Do not split gzip.info.
355 1998-10-26 Paul Eggert <eggert@twinsun.com>
357 * NEWS, README, revision.h (VERSION, REVDATE):
358 Revision 1.2.4.4294967301, dated today.
360 * TODO: Update bug reporting address.
362 * Makefile.in (datadir, libdir): Remove unused macros.
363 (mandir): Let configure set it.
364 (manextdir): New macro.
365 (alldirs): Remove datadir, libdir; add manextdir.
366 (TEXI2HTML): New macro.
367 (installman, uninstall): Install into manextdir, not mandir.
368 (install-strip): New rule.
369 (installdirs): No need to build $(prefix)/man separately,
370 as it's now in alldirs.
371 (match$O): Compile with $(CFLAGS).
372 (gzip_1.html): New rule.
374 * gzip.c (get_istat): Remove lint by initializing z_suffix_errno.
375 (check_ofname): Do not assume unsigned char.
377 * util.c (strlwr): Don't assume char is unsigned.
378 (warning): Renamed from `warn'.
380 * gzip.h (tolow): Use tolower instead of relying on 'A'-'a'.
381 (warning): Renamed from warn.
383 * trees.c (warning): Renamed from warn.
385 1998-10-14 Paul Eggert <eggert@twinsun.com>
387 Merge patches from Debian.
389 * NEWS, README, revision.h (VERSION, REVDATE):
390 Revision 1.2.4.4294967300, dated today.
392 * README, algorithm.doc, gzip.texi: Update maintainer address.
394 * gzexe.in, zdiff.in, znew.in:
395 Close security hole portably, using `set -C'.
397 * zgrep.in: Add -A, -B.
399 * gzexe.in: Use `gzip', not full path, to run gzip.
401 * zdiff.in: Report proper exit status.
403 * gzip.h (base_name): Renamed from basename. All uses changed.
405 * gzip.c (z_suffix): Now char *, so that there's no limit to length.
407 (main): If --quiet, abort gzip when SIGPIPE received.
408 (get_suffix): Don't assume z_suffix's address is a constant.
409 (get_istat): Likewise.
410 Check for buffer overflow.
411 Preserve errno correctly.
412 (make_ofname): Check for buffer overflow.
414 * util.c (fill_inbuf): Flush window before reporting read error.
416 * inflate.c (inflate_dynamic): Don't dump core if tl == NULL.
418 * Makefile.in (GENFILES): Add zless.in.
419 (SCRIPTS): Add zless.
420 (default): Build all programs, not just gzip.
422 (installbin): Install zegrep, zfgrep.
423 (installman): Install zless man page.
424 (install_compress): Don't install compress.
427 1998-09-16 Paul Eggert <eggert@twinsun.com>
429 * NEWS, README, revision.h: Bump version number to 1.2.4.4294967299.
431 * tailor.h (UNLINK_READONLY_BUG): New macro.
432 * gzip.h (unlink): New decl.
433 * util.c (xunlink): New function.
435 (treat_file, create_outfile, check_ofname, copy_stat, abort_gzip):
436 Use xunlink rather than unlink.
437 Do not chmod the file; xunlink will do that if need be.
439 1998-05-21 Paul Eggert <eggert@twinsun.com>
441 * NEWS, README, revision.h: Bump version number to 1.2.4.4294967298.
442 * Makefile.in (prefix): Set from @prefix@.
443 (distclean): Remove config.cache.
445 1998-01-15 Paul Eggert <eggert@twinsun.com>
447 * NEWS, README, revision.h:
448 Bump version number to indicate large-file support.
450 1997-10-08 Paul Eggert <eggert@twinsun.com>
452 * gzip.c (CHAR_BIT): Define if <limits.h> doesn't.
453 (OFF_T_MIN, OFF_T_MAX): New macros.
454 (do_list): Revert to fixed format, but this time don't assume
455 that 9 digits suffice; use a width taken from the maximum value
456 that off_t can represent.
457 (off_t): Do not typedef; autoconf handles this now.
458 * gzip.c, util.c (<limits.h>): Include if HAVE_LIMITS_H.
459 * gzip.h, util.c (fprint_off): Now takes int width argument.
460 * configure.in (AC_HAVE_HEADERS): Check for limits.h.
461 (AC_TYPE_OFF_T): Use this instead of grepping sys/types.h for off_t.
462 (AC_TYPE_SIZE_T): Use this instead of obsolescent AC_SIZE_T.
463 * tailor.h (NO_OFF_T): Remove.
464 (off_t): Define this instead.
466 1997-10-03 Paul Eggert <eggert@twinsun.com>
468 * Makefile.in, bits.c, configure.in, deflate.c, gzip.c, gzip.h,
469 inflate.c, trees.c, unlzw.c, unpack.c, unzip.c, util.c, zip.c:
470 Adjust to Solaris 2.6, which has large files but small off_t by default.
471 * gzip.c: Output more reasonable message if input file is too large.
472 * gzip.c, util.c: Propagate errno from point of error to `perror'.
473 * unzip.c: Allow uncompressing files larger than 4 gigabytes.
474 http://www.gzip.org/4g.patch (1996-07-21)
476 Wed Aug 18 09:34:23 1993 Jean-loup Gailly (jloup@chorus.fr)
479 By default, do not restore file name and timestamp from those saved
480 inside the .gz file (behave as 'compress'). Added the --name option
481 to force name and timestamp restoration.
482 Accept - as synonym for stdin.
483 Use manlinks=so or ln to support either hard links or .so in man pages
484 Accept foo.gz~ in zdiff.
485 Added support for Windows NT
486 Handle ENAMETOOLONG for strict Posix systems
487 Use --recursive instead of --recurse to comply with Webster and
489 Allow installation of shell scripts with a g prefix: make G=g install
490 Install by default zcat as gzcat if gzcat already exists in path.
491 Let zmore behave as more when invoked without parameters (give help)
492 Let gzip --list reject files not in gzip format even with --force.
493 Don't complain about non gzip files for options -rt or -rl.
494 Added advice in INSTALL for several systems.
495 Added makefile entries for NeXTstep 3.1 (if configure fails)
496 Avoid problem with memcpy on Pyramid (gave crc error on some files)
497 Support the -r option when compiled with Borland C++ on msdos.
498 Force lower case file names only for FAT file systems (not HPFS)
499 Rewrite one expression in inflate.c to avoid cc bug on Solaris x86.
500 In the msdos makefiles, get match.asm from the msdos subdirectory.
501 Catch SIGTERM and SIGHUP only if they are not ignored.
502 getopt.c: on Amiga, "#if !defined(const)" does not compile.
503 Use register parameters on Amiga.
504 Do not force names to lower case on Amiga.
505 Fix support of Atari TOS (Makefile.st and tailor.h)
506 In unlzw.c, do not suggest using zcat if zcat already used.
507 In INSTALL, suggest using bsdinst for HPUX.
508 Document Turbo C++ 1.0 bug in INSTALL.
509 Improved the documentation relative to the --no-name option.
510 Avoid signed/unsigned warnings in several files.
511 Added pointer to jka-compr19.el in README.
512 Added pointer to OS/2 executables in README.
513 Added --block-compress in tar -z example (gzip.1 and gzip.texi).
514 Don't keep rcsid in executable (avoid compilation warnings).
515 Check also the correctness of the first byte of an .Z file.
516 Return non zero status for an invalid option.
517 Remove "NEWFILES" from os2/gzip.def for Borland C++ on OS/2.
518 Remove "time stamp restored" message (just obey the -N request).
520 Thu Jun 24 10:27:57 1993 Jean-loup Gailly (jloup@chorus.fr)
523 Don't display the output name when decompressing except with --verbose.
524 Remove usage of alloca in getopt.c and all makefiles.
525 Use ASCPP instead of CPP to avoid breaking AC_HEADER_CHECK on RiscOS.
526 Added the zfile shell script in subdirectory sample.
527 Moved the list of compiler bugs from README to INSTALL.
528 Added vms/Readme.vms.
529 Fix DIST_BUFSIZE check in unlzh.c for 16 bit machines.
530 Fix REGSIGTYP macro in configure.in.
531 Use 'define' instead of == in vms/gzip.hlp.
532 Avoid warnings in unlzh.c
533 Allow separate installation of binaries and man pages.
534 Simplified handling of file names with spaces in zgrep and znew.
535 Fix dependencies and remove rule for trees.c in amiga/Makefile.sasc
536 Add missing quote in gzexe.
538 Thu Jun 17 13:47:05 1993 Jean-loup Gailly (jloup@chorus.fr)
541 Fix a compilation error in gzip.c on Sun with cc (worked with gcc).
543 Wed Jun 16 11:20:27 1993 Jean-loup Gailly (jloup@chorus.fr)
546 Let zmore act as more if the data is not gzipped.
547 By default, display output name only when name was actually truncated.
548 Use absolute path names in gzexe'd programs for better security.
549 In gzexe, use chmod 700 instead of 755 and don't gzexe tail,rm,etc...
551 Added a note about the fast options (-1 to -3) in algorithm.doc.
552 Improved man page for zgrep.
553 Minor fixes to gzip.texi.
554 Always set LC_ALL and LANG in configure (for tr on HPUX)
556 Mon Jun 14 10:03:24 1993 Jean-loup Gailly (jloup@chorus.fr)
559 Added the --list option to display the file characteristics.
560 Added the --no-name option: do not save or restore original filename
561 Save the original name by default.
562 Allow gunzip --suffix "" to attempt decompression on any file
563 regardless of its extension if an original name is present.
564 Add support for the SCO compress -H format.
565 gzip --fast now compresses faster (speed close to that of compress)
566 with degraded compression ratio (but still better than compress).
567 Default level changed to -6 (acts exactly as previous level -5) to
568 be a better indication of its placement in the speed/ratio range.
569 Use smart name truncation: 123456789012.c -> 123456789.c.gz
570 instead of 12345678901.gz
571 With --force, let zcat pass non gzip'ed data unchanged (zcat == cat)
572 Added the zgrep shell script.
573 Made sub.c useful for 16 bit sound, 24 bit images, etc..
574 Supress warnings about suffix for gunzip -r, except with --verbose.
575 Moved the sample programs to a subdirectory sample.
576 On MSDOS, use .gz extension when possible (files without extension)
577 Added a "Special targets" section in INSTALL.
578 Use stty -g correctly in zmore.in.
579 Use cheaper test for gzipness in zforce.in.
580 Remove space before $ in match.S (no longer accepted by gas 2.x)
581 For the shell scripts, do not assume that gzip is in the path.
582 Fix syntax error and define lnk$library in vms/Makefile.mms
583 REGSIGTYPE is void on the Amiga.
584 Do not write empty line when decompressing stdin with --verbose.
585 Fix the 1.1.2 fix for VMS (bug in get_suffix)
586 Added warning in README about compiler bug on Solaris 2.1 for x86.
587 Added warning about 'rehash' in INSTALL.
588 Removed default value of read_buf in bits.c (supermax doesn't like).
589 In tailor.h, added support for Borland C and Zortech C on OS/2.
590 Added warning in gzexe about Ultrix buggy sh (use /bin/sh5 instead).
591 Added warning in zdiff about AIX buggy sh (use /bin/ksh instead).
592 In configure.in, do not try the asm code if DEFS contains NO_ASM
594 Fri Jun 4 09:49:33 1993 Jean-loup Gailly (jloup@chorus.fr)
597 Fix serious bug for VMS (-gz not removed when decompressing).
598 Allow suffix other than .gz in znew.
599 Do not display compression ratio when decompressing stdin.
600 In zmore.in, work around brain damaged stty -g (Ultrix).
601 Display a correct compression ratio for .Z files.
602 Added .z to .gz renaming script in INTALL.
603 Allow setting CFLAGS in configure.
604 Add warning in README about bug in Concentrix cc compiler.
605 Avoid || in Makefile.in (at least one make doesn't support this).
606 Disable useless --ascii option for the Amiga.
607 Add a pointer to the Primos executable in README.
608 Added description of extra field in algorithm.doc.
609 Do not redefine NULL in alloca.c.
610 Added check for unsupported compression methods.
611 Avoid getopt redeclaration on OSF/1.
613 Tue Jun 1 09:07:15 1993 Jean-loup Gailly (jloup@chorus.fr)
616 Fix serious bug in vms.c (== instead of =).
617 Added --ascii option.
618 Add workaround in configure.in for Ultrix (quote eval argument)
619 Do not use unset in znew (not supported on Ultrix)
620 Use tar.gz instead of tar.z for the distribution of gzip.
621 Add missing menu item in gzip.texi.
622 Use size_t instead of unsigned, add AC_SIZE_T in configure.in.
624 Fri May 28 11:40:01 1993 Jean-loup Gailly (jloup@chorus.fr)
627 Use .gz suffix by default, add --suffix option.
628 Let gunzip accept a "_z" suffix (used by one 'compress' on Vax/VMS).
629 Quit when reading garbage from stdin instead of reporting an error.
630 Added sub.c and add.c for compression of 8 bit images.
631 Added makefile for VAX/MMS and support for wildcards on VMS.
632 Added support for MSC under OS/2.
633 Added support for Prime/PRIMOS.
634 Display compression ratio also when decompressing.
635 Quit after --version (GNU standard)
636 Use --force to bypass isatty() check.
637 Accept --silent as synonym for --quiet (see longopts.table)
638 Accept --to-stdout as synonym for --stdout (see longopts.table)
639 Accept -H and -? in addition to -h and --help.
640 Added comparison of zip and gzip in the readme file.
641 Return an error code in all main compression/decompression functions.
642 Continue processing other files in case of recoverable error.
643 Add description of -f in znew.1.
644 Do not keep uncompressed version for znew -t if .gz already exists.
645 On Unix, use only st_ino and st_dev in same_file().
646 Use S_IRUSR and S_IWUSR if they exist.
647 "test $1 = -d" -> "test x$1 = x-d" in gzexe.
648 In match.S, use symbol sysV68 to detect the Motorola Delta.
649 Do not include memory.h with gcc (conflicting declarations on Sun).
651 On VMS, define unlink as delete also for gcc.
652 In "make check", unset LANG because "wc -c" fails on Kanji.
653 Renamed shdir as scriptdir.
654 Use the 68020 code instead of 68000 code on the NeXT.
655 Documented --uncompress as synonym for --decompress.
656 Include the standard header files before gzip.h (needed on Bull).
657 Do not assume that _POSIX_VERSION implies dirent.h present.
658 Removed gzip-tar.patch since tar 1.11.2 handles gzip directly.
659 Use less memory when compiled with -DSMALL_MEM (for MSDOS).
661 Don't complain if cc -E does not work correctly.
662 Do not attempt reading 64K bytes on 16 bit Unix systems.
663 Do not use the variable name 'overhead' which is reserved on Lynx!
664 One BULL compiler does not like *p++ in inflate.c => *p, p++.
665 Use casts on free and memcmp to avoid warnings.
666 Remove the "off by more than one minute" time stamp kludge, but
667 document how to avoid saving the time stamp on pipes if desired.
668 Include crypt.h in inflate.c (one system predefines the CRYPT symbol).
669 Add links to gunzip and (g)zcat in the default make rule.
670 Create installation directories if they do not exist.
671 Clarified --prefix option in INSTALL.
672 Use symbol mc68k in match.S for the DIAB DS90.
673 Guard against zero length _match.s in configure.in.
674 In zmore, restore all tty options using stty -g.
675 Added support for MacOS
676 Simplified makecrc.c.
677 Avoid warnings in getopt.c, util.c, unlzw.c.
678 Use autoconf 1.4, in particular for INSTALL and AC_HAVE_POUNDBANG
679 Use .so instead of hard links for zcat.1, gunzip.1 and zcmp.1.
680 Fixed declration of sig_type.
681 Make consistency check in fcfree.
683 Do not complain if utime fails on a directory (for OS/2).
685 Thu Mar 18 18:56:43 1993 Jean-loup Gailly (jloup@chorus.fr)
688 Allow zmore to read from standard input (like more).
689 Support the 68000 (Atari ST) in match.S.
690 Retry partial writes (required on Linux when gzip is suspended in
692 Allow full pathnames and renamings in gzexe.
693 Don't let gzexe compress setuid executables or gzip itself.
694 Added vms/Makefile.gcc for gcc on the Vax.
695 Give a pointer to Solaris and VMS executables of gzip in README.
696 Allow installation of binaries and shell scripts in different dirs.
697 Do not use alloca on the Cray.
698 Provide strspn and strcspn if string.h does not exist.
699 Define O_CREAT and O_EXCL from FCREAT and FEXCL if necessary.
700 Remove gzip.doc in make realclean.
701 Fixed many typos. (Corrections to my English are welcome.)
702 Put "make manext=l install" at the correct place in INSTALL.
703 Fix incorrect examples in INSTALL and give more examples.
704 Include zdiff.1 for install and uninstall.
705 Allows complex PAGER variable in zmore (e.g.: PAGER="col -x | more")
706 Avoid warning on unused indfound in getopt.c.
707 Cast memset arg to void* (required by some buggy compilers).
708 Include sys/types.h before dirent.h in acgeneral.m4.
709 Fix acgeneral.m4 AC_COMPILE_CHECK to avoid warnings.
710 Don't use alloca.c with gcc. (One NeXT user did not have alloca.h).
711 Change all error messages according to GNU standards.
712 Restore time stamp only if off by more than one minute.
713 Allow installation of zcat as gzcat.
714 Suppress help message and send compressed data to the terminal when
715 gzip is invoked without parameters and without redirection.
716 (Explicit request from Noah Friedman.)
717 Add compile option GNU_STANDARD to respect the GNU coding standards:
718 with -DGNU_STANDARD, behave as gzip even if invoked under the
719 name gunzip. (Complaints to /dev/null or the FSF, not to me!)
721 Fri Mar 10 13:27:18 1993 Jean-loup Gailly (jloup@chorus.fr)
724 Let gzexe detect executables that are already gzexe'd.
725 Don't try restoring record format on VMS (the simple 1.0.5 code
726 worked correctly only on fixed-512 files). Suppress text_mode.
727 Added asm version for 68000 in amiga/match.a.
728 Use asm version for Atari TT.
729 Fix "make clean" in vms/Makefile.vms.
730 For OS/2, assume HPFS by default, add flag OS2FAT if necessary.
731 Fixed some bugs in zdiff and define zcmp as a link to zdiff.
733 Remove configure hack for NeXT; add general fix to autoconf instead
734 Do not strip a ".z" extension if this results in an empty name.
735 Avoid array overflow in get_prefix() for extensions > 10 chars.
736 Accept either q or e to quit zmore.
737 In zmore, try restoring tty mode in all cases.
738 Use Motorola style for match.S on the NeXT.
739 configure.in: unsetenv *hangs* with the Siemens csh...
742 Thu Mar 4 14:13:34 1993 Jean-loup Gailly (jloup@chorus.fr)
745 For VMS, restore the file type for variable record format, otherwise
746 extract in fixed length format (not perfect, but better than
747 forcing all files to be in stream_LF format).
748 Use "-z" suffix for VMS.
749 Use only .z, .*-z, .tgz, .taz as valid gzip extensions; update
751 Allow a version number in input file names for VMS.
752 Added sample program zread.c.
753 Fix "make check" for some implementations of /bin/sh.
754 Don't rely on stat() for filenames with extension > 3 chars
755 on MSDOS, OS2 and Atari.
756 Garbage collect files in /tmp created by gzexe.
758 Use TOUCH env variable in znew if it exists.
759 Better error message for gunzip on empty or truncated file.
760 Allow prototypes in getopt.h when __STDC__ defined but 0.
761 Added "make clean" in vms/Makefile.vms.
762 Removed -g from default CFLAGS (with Noah's permission!)
763 Avoid too many HAVE_xxx_H for most systems; use common defaults.
764 Moved default Atari flags into tailor.h for consistency.
765 Use memzero() to clear the hash table.
766 Update vms/gzip.hlp to reflect the VMS behavior.
767 Fix OS_CODE (to fit in a byte).
768 Add utime.h for the Amiga.
769 Add gcc support for the Amiga.
770 Work around incorrect dirent.h for NeXT 2.0.
771 Added Makefile entry for Coherent.
773 Fri Feb 22 11:20:49 1993 Jean-loup Gailly (jloup@chorus.fr)
776 Added optimized asm version for 68020.
777 Add support for DJGPP.
778 Add support for the Atari ST.
779 Added zforce to rename gzip'ed files with truncated names.
780 Do not install with name uncompress (some systems rely on the
781 absence of any check in the old uncompress).
782 Added missing function (fcfree) in msdos/tailor.c
783 Let gunzip handle .tgz files, and let gzip skip them.
784 Added 'stty min 1' in zmore for SysV and fixed trap code.
785 Suppress .PHONY in Makefile.in, which breaks old makes.
786 Added documentation about pcat and unpack in INSTALL.
787 Add cast to getenv for systems without stdlib.h.
788 Use VAXC instead of VMS to avoid confusion for gcc.
791 Try preserving file permissions in gzexe.
792 Added -d option for gzexe.
793 Guard against spaces in file names in gzexe.
794 Use CMP env. variable in zcmp.
795 Return a warning exit status for gzip of file with .z suffix.
796 Suppress usage of d_ino which is not portable to all systems.
797 Use #ifdef instead of #if for consistency.
798 For VMS, use "cc util.c" instead of "cc util" (pb with logical names)
799 Added utime() for Amiga.
800 Renamed gzcat.1 as zcat.1.
801 Include fcntl.h for Amiga (for read and write).
802 For VMS, add definition of symbols and links in the makefiles.
803 Give a VMS look to vms/gzip.hlp.
804 Save the original name only when necessary.
805 Add a mode parameter for open in read mode (required by VMS).
806 For VMS, remove the version suffix from the original name.
807 Accept both / and \ as path separator for MSDOS.
808 Let gunzip extract stored .zip files correctly.
809 Added warning about VFC format in vms/gzip.hlp.
810 In znew, skip a bad file but process the others.
812 Use GZIP_OPT for VMS to avoid conflict with program name.
813 Added description of GZIP variable in gzip.texi.
815 Thu Feb 11 17:21:32 1993 Jean-loup Gailly (jloup@chorus.fr)
818 Add -K option for znew to keep old .Z files if smaller.
819 Add -q option (quiet) to cancel -v in GZIP env variable.
820 For Turbo C, normalize pointers before freeing them.
821 Add more safety checks in add_envopt().
822 Add do_exit() for uniform exit path (always free memory).
823 Reduce MAX_PATH_LEN for MSDOS.
824 Include sys/types.h before signal.h
825 Avoid strdup, the NeXT does not have it.
826 Made gzexe safer on systems with filename limitation to 14 chars.
828 Fri Feb 10 09:45:49 1993 Jean-loup Gailly (jloup@chorus.fr)
831 Added env variable GZIP for default options.
832 Added support for the Amiga.
833 znew now keeps the old .Z if it is smaller than the .z file.
834 Added gzexe to compress rarely used executables.
835 Reduce memory usage when using static allocation (no DYN_ALLOC).
836 Better separation of warning and error return codes.
837 Fix unlzw.c to make DYN_ALLOC and MAXSEG_64K independent options.
838 Allow INBUFSIZ to be >= 32K in unlzw (don't use sign of rsize)
839 Generate tar file in old format to avoid problems with old systems.
840 Preserve time stamp in znew -P if touch -r works.
841 Use ${PAGER-more} instead of ${PAGER:-more} in zmore.
842 Do not use unsigned instead of mode_t.
843 Better error message for trailing garbage in .z file; ignore this
845 In zmore, use icanon instead of -cbreak on SYSV.
846 Add trap handler in zmore.
847 Use char* instead of void* for non STDC compilers.
848 Added makefile entry for Xenix on 286.
849 Return an error code when existing file was not overwritten.
850 Use prototype of lzw.h for lzw.c.
851 Fix znew with -P option alone.
852 Give warning for directories even without -v.
853 Close output file before unlink() in case of error.
854 Suppress all target dependent ifdef from the portable files.
855 Free all dynamically allocated variables upon exit.
857 Thu Feb 4 18:23:56 1993 Jean-loup Gailly (jloup@chorus.fr)
860 Fixed some trivial errors in msdos/Makefile.bor
862 Thu Feb 4 10:00:59 1993 Jean-loup Gailly (jloup@chorus.fr)
865 gzip now runs on Vax/VMS (Amiga support will come in next version).
866 Do not overwrite files without -f when using /bin/sh.
867 Support the test option -t for compressed (.Z) files.
868 Flush output for bad compressed files. Add warning in README.
869 Added makefiles for MSDOS.
870 Don't rely on presence of csh in configure
871 Added gunzip.1 and gzcat.1.
873 Check reserved flags in unlzw().
874 Return dummy value in main to avoid lint warning.
875 Define OF in lzw.h for lint.
876 Allow both "znew -v -t" and "znew -vt".
877 Don't overwrite the output file name for multiple parts.
878 Echo just a warning if configure is out of date.
879 Use ; instead of , in trees.c (confuses the SAS Amiga compiler).
880 In INSTALL, document "DEFS='-DM_XENIX' ./configure".
881 Use OTHER_PATH_SEP for more portability (DOS, OS2, VMS, AMIGA).
882 Make all directories world writable for broken versions of tar.
883 Use gzip -cd instead of zcat in zmore, zcmp, zdiff.
884 Don't use GNU tar for distributions, some systems can't untar.
885 Do not exit() for gzip --version.
887 Mon Jan 26 10:26:42 1993 Jean-loup Gailly (jloup@chorus.fr)
890 Avoid 'far' declarations for MSDOS.
891 Use test -f instead of test -x in configure.in (for Ultrix)
892 Add empty else part to if in Makefile.in for broken shells.
893 Use NO_UNDERLINE instead of UNDERLINE (pb with Linux cpp)
894 Accept continuation files with -ff (for damage recovery)
895 Small patch to Makefile.os2
896 Use memzero instead of bzero to avoid potential conflicts
897 Document restriction on extraction of zip files.
898 Fix quoting in ACL_HAVE_SHELL_HACK.
899 Do not check file size on MSDOS because of bug in DIET.
900 Allow zcat on a file with multiple links.
901 Add fix in inflate.c for compatibility with pkzip 2.04c.
902 Release gzip in tar.z and tar format. (No tar.Z).
904 Fri Jan 22 10:04:13 1993 Jean-loup Gailly (jloup@chorus.fr)
908 Fixed #if directives that TurboC does not like.
909 Don't rely on uncompress in znew, use gzip -d.
910 Add the pipe option -P in znew.
911 Add some more ideas in TODO.
912 Support both NDIR and SYSNDIR.
914 Sat Jan 21 15:46:38 1993 Jean-loup Gailly (jloup@chorus.fr)
918 Check for _match.o in configure.in in addition to return status.
919 Include <sys/types.h> in zip.c
920 Define local variables and functions as local.
921 Accept more alternative names for the program (pcat, gzcat, ...).
922 Accept .exe as well as .EXE.
923 Uncompress files with multiple links only with -f.
924 Better error message for gunzip of non-existent file.z.
925 Fix the entry for /etc/magic in INSTALL.
926 Use AC_HAVE_HEADERS uniformly instead of special macros.
927 Install the man pages as .1 by default instead of .l.
928 Document crypt++.el in README.
929 Fix for unlzw() on 16-bit machines (bitmask must be unsigned).
930 Complain if input and output files are identical.
931 Create a correct output name for files of exactly 13 chars.
932 Do not overwrite CPP if set
933 Check for i386 before trying to assemble match.s
934 Check for underline in external name before assembling
935 Add patch for tar 1.11.1.
937 Mon Jan 5 10:16:24 1993 Jean-loup Gailly (jloup@chorus.fr)
940 Use "make check" instead of "make test".
941 Do not rely on dirname in znew.
942 Keep time stamp and pass options to gzip in znew.
943 Rename .l files back to .1 to avoid conflict with lex
944 Do not create .z.z files with gzip -r.
945 Use nice_match in match.asm
946 Unroll loops in deflate.c
947 Do not attempt matches beyond the window end
948 Allow again gunzip .zip files (was working in 0.5)
949 Allow again compilation with TurboC 2.0 (was working in 0.4)
951 Tue Dec 30 20:00:19 1992 Jean-loup Gailly (jloup@chorus.fr)
954 The .z extension is used by pack, not compact (README, gzip.1)
955 Accept gzcat in addition to zcat.
956 Use PAGER in zmore if defined.
957 Man pages for /usr/local/man/manl should have extension .l.
958 Don't redefine bzero on the NeXT
959 Allow incomplete Huffman table if there is only one code.
960 Don't lookahead more than 7 bits (caused premature EOF).
961 Added "make test" to check for compiler bugs.
962 Don't rely on `i386`; try to assemble directly
963 Change magic header to avoid conflict with freeze 1.x.
964 Added entry for /etc/magic in INSTALL.
965 Do not destroy an input .zip file with more than one member.
966 Display "untested" instead of "OK" for gzip -t foo.Z
967 With -t, skip stdin in .Z format
968 Allow multiple compressed members in an input file.
969 Ignore a zero time stamp.
972 Tue Dec 29 10:00:19 1992 Noah Friedman (friedman@gnu.ai.mit.edu)
974 Added test for #!/bin/sh in configure.in.
975 Fix some references to $srcdir in Makefile.in
977 Mon Dec 21 17:33:35 1992 Jean-Loup Gailly (jloup@chorus.fr)
980 Put RCS ids in all files.
981 Added znew to recompress old .Z files with gzip.
982 Avoid "already .z suffix" messages for -r and no -v.
983 Put back check for d_ino in treat_dir().
984 Use HAVE_STRING_H instead of USG.
985 Added os2/Makefile.os2
986 Use SYSUTIME on OS/2.
987 Info dir is $(prefix)/info, not $(prefix)/lib/info.
988 Support long options, added getopt and alloca
990 Reorder configure.in according to suggestions in autoconf.info
991 Allow links when not removing original file
992 Allow either .z or .Z in zdiff
994 Wed Nov 25 11:40:04 1992 Jean-loup Gailly (jloup@chorus.fr)
997 Save only the original base name, don't include any directory prefix.
998 Don't use HAVE_LONG_FILE_NAMES (support multiple file system types).
999 Fix declaration of abort_gzip in gzip.h.
1000 Include unistd.h when it exists to avoid warnings with gcc -Wall.
1002 Mon Nov 23 12:39:01 1992 Jean-loup Gailly (jloup@chorus.fr)
1006 Use autoconf generated 'configure'
1007 Fixed the NO_MULTIPLE_DOTS code
1008 Fixed the save_orig_name code
1009 Support for MSDOS (Turbo C)
1011 Thu Nov 19 15:18:22 1992 Jean-loup Gailly (jloup@chorus.fr)
1014 Added auto configuration. Just type "make" now.
1015 Don't overwrite compress by default in "make install". Use
1016 "make install_compress" to overwrite.
1017 Add match.s for 386 boxes.
1018 Added documentation in texinfo format.
1019 Provide help for "gunzip" invoked without redirected input.
1020 Save original file name when necessary.
1021 Support OS/2 (Kai-Uwe Rommel).
1023 Tue Nov 17 14:32:53 1992 Jean-loup Gailly (jloup@chorus.fr)
1025 * Alpha version 0.2.4
1026 Return 0 in get_istat() when ok (caused error with zcat).
1027 Don't update crc on compressed data (caused crc errors on
1030 Fri Nov 13 15:04:12 1992 Jean-loup Gailly (jloup@chorus.fr)
1032 * Alpha version 0.2.3
1033 Initialize rsize in unlzw.c
1034 Initialize ofd for zcat.
1035 Do not use volatile ifname as argument of treat_dir.
1036 Add -1 to -9 in gzip.1.
1038 Sat Oct 31 18:30:00 1992 Jean-loup Gailly (jloup@chorus.fr)
1040 * Alpha version 0.2.2.
1042 Accept gunzip on zip files.
1044 Sat Oct 31 17:15:00 1992 Jean-loup Gailly (jloup@chorus.fr)
1046 * Alpha version 0.2.1
1047 Use ctype.h in util.c (problem on SysV).
1048 Create BINDIR if it does not exist.
1050 Added zcmp, zmore, zdiff.
1051 Fixed the man page gzip.1.
1053 Sat Oct 31 17:00:00 1992 Jean-loup Gailly (jloup@chorus.fr)
1056 Fixed compilation problems with gcc
1058 Sat Oct 31 12:46:00 1992 Jean-loup Gailly (jloup@chorus.fr)
1060 * Alpha version 0.1 released (under time pressure), so it's not
1064 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation,
1067 Copyright (C) 1992, 1993 Jean-loup Gailly
1069 This file is part of gzip (GNU zip).
1071 gzip is free software; you can redistribute it and/or modify
1072 it under the terms of the GNU General Public License as published by
1073 the Free Software Foundation; either version 2, or (at your option)
1076 gzip is distributed in the hope that it will be useful,
1077 but WITHOUT ANY WARRANTY; without even the implied warranty of
1078 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1079 GNU General Public License for more details.
1081 You should have received a copy of the GNU General Public License
1082 along with gzip; see the file COPYING. If not, write to
1083 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
1084 Boston, MA 02111-1307, USA.