53 Commits

Author SHA1 Message Date
Jim Meyering
c8e167e3e8 maint: update --version copyright dates
* gunzip.in, gzexe.in, gzip.c, zcat.in, zcmp.in, zdiff.in, zforce.in,
zgrep.in, zless.in, zmore.in, znew.in: Also update the --version copyright
dates (while updated by update-copyright, those didn't satisfy syntax-check)
by running this:

  grep -l 2025-2026 *.in gzip.c|xargs perl -pi -e 's/2025-2026/2026/'
2026-01-02 17:27:19 -08:00
Jim Meyering
50463e0899 maint: update copyright dates 2026-01-02 17:10:47 -08:00
Jim Meyering
7fb7d879d2 maint: update --version copyright dates
* gunzip.in, gzexe.in, gzip.c, zcat.in, zcmp.in, zdiff.in, zforce.in,
zgrep.in, zless.in, zmore.in, znew.in: Also update the --version copyright
dates (while updated by update-copyright, those didn't satisfy syntax-check)
by running this:

grep -l 2024-2025 *.in gzip.c|xargs perl -pi -e 's/2024-2025/2025/'
2025-01-03 09:34:56 -08:00
Jim Meyering
98db945a34 maint: update all copyright dates via "make update-copyright" 2025-01-03 09:33:55 -08:00
Paul Eggert
602fa20438 maint: ‘type’ → ‘command -v’
POSIX says ‘type’ is an XSI extension, whereas ‘command -v’ is
part of the base.  Problem reported by Clarence “Sparr” Risher in
<https://bugs.gnu.org/73402>.
* gzexe.in, tests/help-version, zdiff.in, zgrep.in:
Use ‘command -v’, not ‘type’.
2024-09-22 00:07:11 -07:00
Jim Meyering
34bec437e0 maint: modernize see...licenses comments
To accommodate a new syntax-check rule, ...
Adjust copyright notices that suggested to write to an old
Franklin Street address to reference the URL instead:

  git grep -l 'if not, write' |xargs \
  perl -0777 -pi -e 's{program; if not, write .*? USA\.}{program.  If not, see <https://www.gnu.org/licenses/>.}ms'

Also, run this:
  git grep -l 'License along$' | xargs \
  perl -0777 -pi -e 's{License along\n# with}{License\n# along with}ms'

to normalize a little more, changing comments like this:
  You should have received a copy of the GNU General Public License along
  with this program.  If not, see <https://www.gnu.org/licenses/>.

to this:
  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <https://www.gnu.org/licenses/>.
2024-09-08 08:52:27 -07:00
Paul Eggert
5f0fb6bf2b maint: update --version copyright dates
* gunzip.in, gzexe.in, gzip.c, zcat.in, zcmp.in, zdiff.in, zforce.in,
zgrep.in, zless.in, zmore.in, znew.in: Also update the --version copyright
dates (those are not updated by update-copyright) by running this:

git grep -l ' 2023 Free' | xargs perl -pi -e 's/ 2023 Free/ 2024 Free/'
2024-01-08 18:51:42 -08:00
Paul Eggert
22de20442e make update-copyright 2024-01-08 18:51:42 -08:00
Jim Meyering
ebe613c495 maint: update --version copyright dates
* gunzip.in, gzexe.in, gzip.c, zcat.in, zcmp.in, zdiff.in, zforce.in,
zgrep.in, zless.in, zmore.in, znew.in: Also update the --version copyright
dates (those are not updated by update-copyright) by running this:

  grep -l ' 2022 Free'|xargs perl -pi -e 's/ 2022 Free/ 2023 Free/'
2023-01-10 21:14:42 -08:00
Jim Meyering
7e6214bd1c maint: update copyright dates 2023-01-01 17:19:00 -08:00
Paul Eggert
938c4f50a8 maint: update --version copyright dates
* cfg.mk (srcdirslash): New macro.
(in_vc_files): Use it to avoid problems when srcdir is '.'.
Also look for copyright dates in shell script *.in files,
so that ‘zgrep --version’ etc. outputs current dates.
* gunzip.in, gzexe.in, gzip.c, zcat.in, zcmp.in, zdiff.in:
* zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
Update copyright date in --version output to 2022.
2022-04-07 15:50:33 -07:00
Paul Eggert
5e1fc8b92c maint: use C locale more often
* gzexe.in, zdiff.in, zgrep.in:
Run expr and sed in the C locale when it might help to avoid
undefined behavior on non-GNU platforms.
* sample/zfile, znew.in: Run in the C locale, for simplicity and
to avoid undefined behavior on non-GNU platforms.
2022-04-07 09:28:24 -07:00
Paul Eggert
31193bbd13 build: support --program-prefix etc.
Problem reported by Antonio Diaz Diaz via Dagobert Michelsen in:
https://bugs.gnu.org/16876
* Makefile.am (.in): Substitute for 'gzip', 'zdiff', 'zgrep'.
($(GZIP_TRANSFORMED), $(ZDIFF_TRANSFORMED), $(ZGREP_TRANSFORMED)):
New rules to build forwarding shell scripts, if needed.
Add these files to BUILT_SOURCES and MOSTLY_CLEANFILES if needed.
* configure.ac (GZIP_TRANSFORMED, ZDIFF_TRANSFORMED, ZGREP_TRANSFORMED):
New substituted vars.
(GZIP_IS_TRANSFORMED, ZDIFF_IS_TRANSFORMED, ZGREP_IS_TRANSFORMED):
New Automake conditions.
* gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zegrep.in:
* zfgrep.in, zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
Quote possibly-transformed subcommand names.
2022-04-04 12:00:44 -07:00
Paul Eggert
78b29bdde5 zdiff: fix another arg-handling bug
Also allow args after file names.
Problem reported by Lv Ying <https://bugs.gnu.org/54290#12>.
2022-03-08 13:05:06 -08:00
Paul Eggert
fd792d0652 zdiff: fix arg handling bug
Problem reported by Lv Ying (Bug#54291).
* zdiff.in (escape): Handle args like '-C 5'.
2022-03-07 09:42:25 -08:00
Jim Meyering
54af561326 maint: make update-copyright 2022-01-03 10:16:37 -08:00
Jim Meyering
7d3a3c0a12 maint: update all copyright year number ranges
Run "make update-copyright" and then...
* gnulib: Update to latest with copyright year adjusted.
* tests/init.sh: Sync with gnulib to pick up copyright year.
* bootstrap: Likewise.
2021-01-01 17:36:52 -08:00
Jim Meyering
89181137b9 maint: update all copyright year number ranges
Run "make update-copyright" and then...
* gnulib: Update to latest with copyright year adjusted.
* tests/init.sh: Sync with gnulib to pick up copyright year.
* bootstrap: Likewise.
2020-01-01 09:53:33 -08:00
Jim Meyering
a604573c68 maint: update all copyright dates via "make update-copyright"
* gnulib: Also update submodule for its copyright updates.
2019-01-01 19:01:58 -08:00
Paul Eggert
7868e29c3f misc: update --version copyright
* gunzip.in, gzexe.in, gzip.c, zcat.in, zdiff.in, zforce.in, zgrep.in:
* zless.in, zmore.in, znew.in:
Update copyright year in --version output to 2018.
This part of the year-number update isn’t automated yet.
2018-01-15 09:05:42 -08:00
Paul Eggert
63aa2268a5 gzexe: port to macOS mktemp
Problem reported by Jeffrey Walton (Bug#30000).
* gzexe.in, zdiff.in, zgrep.in:
Don’t assume that mktemp works when given no arguments,
as this is not true for macOS.  Instead, use a syntax
that should work with coreutils, NetBSD, and macOS.
While we’re in the neighborhood, be more consistent about how program
names are used in temporary file names.  Also, watch out for TMPDIR
values that are not absolute file names, since they can cause problems
(e.g., leading "-").
2018-01-06 15:02:02 -08:00
Jim Meyering
975508caa0 maint: update gnulib and copyright dates for 2018
* gnulib: Update to latest.
* bootstrap: Update from gnulib.
* all files: Run "make update-copyright".
2018-01-03 16:44:26 -08:00
Paul Eggert
f55f2be13c maint: script diagnostics status cleanup
Problem reported by Bruno Haible (Bug#29266#20).
* NEWS: Mention this.
* gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zforce.in:
* zgrep.in, zless.in, zmore.in, znew.in:
Use printf instead of echo if the argument might contain ‘\’, at
least in theory.  Don’t assume printf exits with status 1 on
failure; it might be some other positive status.
* gzexe.in: Use printf consistently instead of echo, and
proscribe it instead of echo.
2017-11-12 23:11:07 -08:00
Paul Eggert
09e42b7afd misc: update --version copyright
* gunzip.in, gzexe.in, gzip.c, zcat.in, zdiff.in, zforce.in, zgrep.in:
* zless.in, zmore.in, znew.in: Update copyright year in --version
output to 2017.
2017-09-19 10:43:52 -07:00
Paul Eggert
d49274f4ed maint: prefer HTTPS to HTTP, FTP in URLs 2017-09-19 10:43:52 -07:00
Jim Meyering
9110d11ac0 maint: update gnulib and copyright dates for 2017
* gnulib: Update to latest.
* all files: Run "make update-copyright".
2017-01-01 03:40:15 -08:00
Paul Eggert
5671fac192 Port to NetBSD 7.0
Problem reported by Assaf Gordon in: http://bugs.gnu.org/23107#13
* gzexe.in, zdiff.in, zgrep.in: Don't rely on mktemp -t,
as it has a different meaning in NetBSD.
2016-03-26 01:04:43 -07:00
Paul Eggert
3471e27de8 gzip: remove --__bindir
* NEWS: Document this.
* gzexe.in, gunzip.in, zcat.in, zcmp.in, zdiff.in, zegrep.in:
* zfgrep.in, zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
Remove support for undocumented --__bindir option.  Callers can
set PATH instead; that's less error-prone.  This fixes some
'make check' failures on my Solaris 11 box, which occurred
because the test scripts were mistakenly testing the installed
gzip rather than the gzip in the working directory.
* Makefile.am (.in): Don't replace bindir.
(check-local): Set PATH instead of using --__bindir.
* tests/help-version (gunzip_setuphelp, gzexe_setuphelp)
(zcat_setuphelp, zcmp_setuphelp, zdiff_setuphelp)
(zegrep_setuphelp, zfgrep_setuphelp, zforce_setuphelp)
(zgrep_setuphelp, zless_setuphelp, zmore_setuphelp)
(znew_setuphelp): Remove.  All uses removed.
(lbracket_setup): Default args to empty.
2016-03-06 00:18:30 -08:00
Paul Eggert
e6af70bb9a misc: update --version copyright
* gunzip.in, gzexe.in, zcat.in, zdiff.in, zforce.in, zgrep.in:
* zless.in, zmore.in, znew.in: Update copyright year in --version
output to 2016.
2016-02-28 00:02:58 -08:00
Jim Meyering
2725db1000 maint: update copyright year, bootstrap, init.sh
Run "make update-copyright" and then...

* gzip.c: Transform the copyright notice via s/2015/2016/.
* gnulib: Update to latest.
* tests/init.sh: Update from gnulib.
* bootstrap: Likewise.
2016-01-01 17:50:24 -08:00
Jim Meyering
cf688dd105 maint: adjust copyright notices in *.in files to be consistent
The copyright year ranges in *.in files were not being updated,
because of a missing ", Inc." suffix.  Add that, run
run "make udpate-copyright", and ensure 2010..2015 year
ranges are covered.
* gunzip.in: Update copyright notice and year ranges.
* gzexe.in: Likewise.
* zcat.in: Likewise.
* zdiff.in: Likewise.
* zforce.in: Likewise.
* zgrep.in: Likewise.
* zless.in: Likewise.
* zmore.in: Likewise.
* znew.in: Likewise.
2015-08-24 20:54:39 -07:00
Jim Meyering
3d2df61b0c maint: update copyright year ranges to include 2015; update gnulib 2015-01-01 21:43:33 -08:00
Jim Meyering
8b5725caaf maint: udpate all copyright notices via "make update-copyright" 2014-06-07 08:54:44 -07:00
Jim Meyering
00c348e658 maint: update all copyright year number ranges
Run "make update-copyright".
2013-01-04 12:05:02 +01:00
Jim Meyering
6f6a3d1589 maint: update all copyright year number ranges
Run "make update-copyright".
2012-01-01 09:53:58 +01:00
Jim Meyering
70b787436a maint: update copyright year ranges to include 2011
Run "make update-copyright", so "make syntax-check" works in 2011.
2011-01-03 22:43:04 +01:00
Paul Eggert
50ee35c903 maint: fix copyright dates that were munged by a maintenance script
* gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zforce.in:
* zgrep.in, zless.in, zmore.in, znew.in:
A script went awry when updating copyright dates in gzip's shell
scripts.  It should update comments to look like "# Copyright (C)
2007, 2010 Free Software Foundation, Inc." (with a set of years)
and version messages to look like "Copyright (C) 2010 Free
Software Foundation, Inc." (with just the most-recent year).
Instead, it sometimes ignored one, sometimes the other, and
typically put ranges into version messages.  Fix all this stuff by
hand, using dates that I divined from the change logs (so they're
a bit more accurate than script-generated dates).  We need to fix
the script before it runs in 2011.
2010-11-08 08:10:58 -08:00
Jim Meyering
3ea7fe86ac global: convert indentation-TABs to spaces
Transformed via this shell code:
t=$'\t'
git ls-files \
  | grep -vE '(^|/)((GNU)?[Mm]akefile|ChangeLog)|\.(am|mk)$' \
  | grep -vE 'tests/pr/|help2man' \
  | xargs grep -lE "^ *$t" \
  | xargs perl -MText::Tabs -ni -le \
    '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'
2010-02-03 08:53:02 +01:00
Jim Meyering
00e333a22c maint: update all FSF copyright year lists to include 2010
Use this command:
git ls-files |grep -vE '^(\..*|COPYING|gnulib)$' |xargs \
env UPDATE_COPYRIGHT_USE_INTERVALS=1 build-aux/update-copyright
2010-01-01 16:16:21 +01:00
Jim Meyering
98149fd7d5 zdiff would exit 2 (error) rather than 1 for differences
* zdiff.in: Save and restore cmp's exit status around a case
statement that would otherwise clobber its value.
* NEWS (Bug fixes): Mention it.
* tests/zdiff: New test; exercise both bugs.
* tests/test-lib.sh: New file.  From coreutils.
* Makefile.am (EXTRA_DIST): Add tests/test-lib.sh.
(TESTS): Add tests/zdiff.
(TESTS_ENVIRONMENT): Define.  From coreutils.
(EXTRA_DIST): Append all $(TESTS).
2009-10-09 15:22:09 +02:00
Jim Meyering
c2ebedad62 zdiff: fix malfunction when operating on two gzip'd inputs
zdiff would fail to print differences in two compressed inputs
* zdiff.in: Don't let cmp output mix with echo'd gzip exit
status values.  Report and fix from Jörg-Volker Peetz via
<http://bugs.debian.org/434275>
* NEWS (Bug fixes): Mention it.
2009-10-09 12:37:57 +02:00
Jim Meyering
9eec1e4079 maint: update existing copyright year lists to include 2009
* bootstrap.conf (gnulib_modules): Add update-copyright.
2009-09-26 20:44:52 +02:00
Paul Eggert
e75f428c0d Update to GPLv3. 2007-07-03 20:37:07 +00:00
Paul Eggert
4858351c63 * Makefile.am (.in): Substitute @bindir@, not BINDIR, for
consistency with other substitutions.
(check-local): Use --__bindir . rather than setting GZIP_BINDIR=.,
to allay security concerns voiced by Joerg Lehners in
<http://lists.gnu.org/archive/html/bug-gzip/2007-04/msg00003.html>.
* gunzip.in, gzexe.in, zcat.in, zcmp.in, zdiff.in, zegrep.in, zfgrep.in:
* zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
Support --__bindir rather than GZIP_BINDIR.

* gunzip.in, zcat.in, zcmp.in: Support --help and --version
directly, to avoid some confusion in help and version output.
Problem reported by Eric Blake in
<http://lists.gnu.org/archive/html/bug-gzip/2007-04/msg00006.html>.
2007-05-04 19:53:25 +00:00
Paul Eggert
80ea6acbb9 * zdiff.in: Don't use '((' in a shell script, as it's not portable
to some ksh implementations, e.g., Solaris 10 ksh M-11/16/88i.
Problem reported by Nelson H. F. Beebe in
<http://lists.gnu.org/archive/html/bug-gzip/2007-02/msg00005.html>.
2007-02-08 22:54:59 +00:00
Paul Eggert
e24e0fedb9 * gunzip.in, zcat.in, zcmp.in, zegrep.in, zfgrep.in: New files.
* Makefile.am (EXTRA_DIST): Add them.
(bin_SCRIPTS, MOSTLYCLEANFILES): Add gunzip, zcat, zcmp, zdgrep, zfgrep.
(.in): Use GZIP_BINDIR as the location of gzip binaries, if it is set.
(check-local): Use GZIP_BINDIR.
(install-exec-hook, remove-installed-links): Make 'uncompress' an
alias for gunzip.
* gzexe.1: At least one arg is required.  Don't give cat as an
example, since gzexe refuses to compress cat due to a bootstrapping
issue.  List more utilities in this category.
* gzexe.in, zdiff.in, zforce.in, zgrep.in, zless.in, zmore.in, znew.in:
Report our name in usage.
* gzexe.in: Don't compress bash.  Don't use rmdir, so it's
OK to compress rmdir.
* gzip.c: Now requires that you compile with -DGNU_STANDARD=0 to
get non GNU-standard behavior.  We now build with GNU-standard
behavior by default, so that programs do not depend on the names
of their executables.
* zdiff.in: Don't depend on the name of the executable, as per
GNU standard.  Instead, rely on an internal --__cmp option.
Support ' in options.  Check for failures in subsidiary gzip
invocations.
* zgrep.1: Clarify compression issues.
* zgrep.in: Don't assume POSIX-style case syntax.  Remove unused var
have_optarg.
* zless.1: zless sets LESSMETACHARS now.
2007-02-05 20:54:25 +00:00
Paul Eggert
6fb1dc428b * zdiff.in (cmp0): New var.
Rewrite test for /dev/fd/3 to detect bugs in Solaris 8
/bin/bash 2.03.  Problem reported by Nelson H. F. Beebe in
<http://lists.gnu.org/archive/html/bug-gzip/2007-01/msg00001.html>.
Avoid "for file; do", which doesn't work with Solaris 8 /bin/sh.
2007-01-04 08:03:20 +00:00
Paul Eggert
01ec37f377 * zdiff.in: Test /dev//fd/3, not /dev/fd/3, to work around a problem
with Tru64 4.0F ksh M-11/16/88f reported by Thomas Koutcher in
<http://lists.gnu.org/archive/html/bug-gzip/2007-01/msg00000.html>.
2007-01-04 05:24:04 +00:00
Paul Eggert
be3ce2ded4 * zdiff.in: Fix typo that broke most usages. Problem reported by
Jari Aalto in <http://bugs.debian.org/404114>.  While we're at it,
fix a bunch of other problems.  Handle "-" better.  Send
diagnostics to stderr, not stdout.  Use expr rather than echo |
sed, to handle special characters better.  Report a diagnostic in
the 1-arg case, if the argument doesn't end in .gz or the like,
rather than having incomprehensible behavior.  Do not require that
the inputs be regular files.  Avoid creating a temporary entirely,
if /dev/fd works.  If not, then resist denial-of-service attacks
better, by using mktemp.
* Makefile.am (gzip.doc.gz): New rule.
(check-local): Depend on it, and test zdiff for Debian bug 404114.
2006-12-24 04:14:57 +00:00
Paul Eggert
b2252205d9 * zdiff.in: Remove first line containing ":". This follows
up on the SEDCMD fix of 2006-12-01.
* zforce.in: Likewise.
* zgrep.in: Likewise.
* zless.in: Likewise.
* zmore.in: Likewise.
* znew.in: Likewise.
2006-12-09 04:25:56 +00:00