From 9b06af3367500dfe09067b047381e788969059cd Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 27 Nov 2006 11:27:46 +0100 Subject: [PATCH] Improve the check for departures from C89, and fix the departures I found. * Makefile.maint (my-distcheck): Also check for C89 compatibility as best we can with GCC. * src/stat.c (PRINTF_OPTION): Omit comma before } in enum declaration; C89 doesn't allow this. * src/dcgen: Don't generate string literals longer than what C89 requires support for. * src/cut.c (usage): Don't use string literals longer than what C89 requires support for. * src/date.c (usage): Likewise. * src/dd.c (usage): Likewise. * src/du.c (usage): Likewise. * src/ls.c (usage): Likewise. * src/od.c (usage): Likewise. * src/readlink.c (usage): Likewise. * src/seq.c (usage): Likewise. * src/shred.c (usage): Likewise. --- ChangeLog | 21 +++++++++++++++++++++ Makefile.maint | 7 ++++++- src/cut.c | 2 ++ src/date.c | 2 ++ src/dcgen | 12 +++++++----- src/dd.c | 2 ++ src/du.c | 4 ++++ src/ls.c | 4 ++++ src/od.c | 2 ++ src/readlink.c | 4 +++- src/seq.c | 2 ++ src/shred.c | 4 ++++ src/stat.c | 2 +- 13 files changed, 60 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index a2e537b72..1a0a4bf20 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +2006-11-26 Paul Eggert + + Improve the check for departures from C89, and fix the departures + I found. + * Makefile.maint (my-distcheck): Also check for C89 compatibility + as best we can with GCC. + * src/stat.c (PRINTF_OPTION): Omit comma before } in enum + declaration; C89 doesn't allow this. + * src/dcgen: Don't generate string literals longer than + what C89 requires support for. + * src/cut.c (usage): Don't use string literals longer than + what C89 requires support for. + * src/date.c (usage): Likewise. + * src/dd.c (usage): Likewise. + * src/du.c (usage): Likewise. + * src/ls.c (usage): Likewise. + * src/od.c (usage): Likewise. + * src/readlink.c (usage): Likewise. + * src/seq.c (usage): Likewise. + * src/shred.c (usage): Likewise. + 2006-11-26 Mike Frysinger Recognize new archive, audio and image formats. diff --git a/Makefile.maint b/Makefile.maint index 9400b4993..821a53c68 100644 --- a/Makefile.maint +++ b/Makefile.maint @@ -335,7 +335,7 @@ patch-check: diff -upr src src-c89 > new-diff || : ; fi fail=0; test -s $@.2 && fail=1 || : ; \ rm -f src-c89/*.o || fail=1; \ - $(MAKE) -C src-c89 CFLAGS='-g -Wdeclaration-after-statement -Werror' \ + $(MAKE) -C src-c89 CFLAGS='-Wdeclaration-after-statement -Werror' \ || fail=1; \ rm -rf src-c89 $@.1 $@.2; \ test $$fail = 0 @@ -528,6 +528,11 @@ my-distcheck: $(local-check) $(release_archive_dir)/$(prev-tgz) (cd $(t) && mv $(distdir) $(distdir).old \ && $(AMTAR) -zxf - ) < $(distdir).tar.gz diff -ur $(t)/$(distdir).old $(t)/$(distdir) + cd $(t)/$(distdir) \ + && (cd src && patch -V never --fuzz=0 ) and push @line, $_; } -my $last_line = pop @line; my $indent = ' '; -print "static char const G_line[] =\n"; +print "static char const G_line[] =\n{\n"; foreach (@line) { - print "$indent\"$_\\0\"\n"; + s/./'$&',/g; + s/'\\'/'\\\\'/g; + s/'''/'\\''/g; + print "$indent${_}0,\n"; } -print "$indent\"$last_line\";\n"; +print "};\n"; diff --git a/src/dd.c b/src/dd.c index f1dc47452..3449e1253 100644 --- a/src/dd.c +++ b/src/dd.c @@ -448,6 +448,8 @@ Each CONV symbol may be:\n\ notrunc do not truncate the output file\n\ ucase change lower case to upper case\n\ swab swap every pair of input bytes\n\ +"), stdout); + fputs (_("\ noerror continue after read errors\n\ sync pad every input block with NULs to ibs-size; when used\n\ with block or unblock, pad with spaces rather than NULs\n\ diff --git a/src/du.c b/src/du.c index 5f4e796db..6a4c8c7c8 100644 --- a/src/du.c +++ b/src/du.c @@ -293,6 +293,8 @@ Mandatory arguments to long options are mandatory for short options too.\n\ the apparent size is usually smaller, it may be\n\ larger due to holes in (`sparse') files, internal\n\ fragmentation, indirect blocks, and the like\n\ +"), stdout); + fputs (_("\ -B, --block-size=SIZE use SIZE-byte blocks\n\ -b, --bytes equivalent to `--apparent-size --block-size=1'\n\ -c, --total produce a grand total\n\ @@ -305,6 +307,8 @@ Mandatory arguments to long options are mandatory for short options too.\n\ change to be equivalent to --dereference-args (-D)\n\ -h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G)\n\ --si like -h, but use powers of 1000 not 1024\n\ +"), stdout); + fputs (_("\ -k like --block-size=1K\n\ -l, --count-links count sizes many times if hard linked\n\ -m like --block-size=1M\n\ diff --git a/src/ls.c b/src/ls.c index 03164b167..63d363fd2 100644 --- a/src/ls.c +++ b/src/ls.c @@ -4270,6 +4270,8 @@ Mandatory arguments to long options are mandatory for short options too.\n\ -h, --human-readable with -l, print sizes in human readable format\n\ (e.g., 1K 234M 2G)\n\ --si likewise, but use powers of 1000 not 1024\n\ +"), stdout); + fputs (_("\ -H, --dereference-command-line\n\ follow symbolic links listed on the command line\n\ --dereference-command-line-symlink-to-dir\n\ @@ -4331,6 +4333,8 @@ Mandatory arguments to long options are mandatory for short options too.\n\ non-recent files and FORMAT2 to recent files;\n\ if STYLE is prefixed with `posix-', STYLE\n\ takes effect only outside the POSIX locale\n\ +"), stdout); + fputs (_("\ -t sort by modification time\n\ -T, --tabsize=COLS assume tab stops at each COLS instead of 8\n\ "), stdout); diff --git a/src/od.c b/src/od.c index b358a0f15..a0c247401 100644 --- a/src/od.c +++ b/src/od.c @@ -358,6 +358,8 @@ An OFFSET operand means -j OFFSET. LABEL is the pseudo-address\n\ at first byte printed, incremented when dump is progressing.\n\ For OFFSET and LABEL, a 0x or 0X prefix indicates hexadecimal;\n\ suffixes may be . for octal and b for multiply by 512.\n\ +"), stdout); + fputs (_("\ \n\ TYPE is made up of one or more of these specifications:\n\ \n\ diff --git a/src/readlink.c b/src/readlink.c index 533b9b9e1..800d235b4 100644 --- a/src/readlink.c +++ b/src/readlink.c @@ -1,5 +1,5 @@ /* readlink -- display value of a symbolic link. - Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -74,6 +74,8 @@ usage (int status) -e, --canonicalize-existing canonicalize by following every symlink in\n\ every component of the given name recursively,\n\ all components must exist\n\ +"), stdout); + fputs (_("\ -m, --canonicalize-missing canonicalize by following every symlink in\n\ every component of the given name recursively,\n\ without requirements on components existence\n\ diff --git a/src/seq.c b/src/seq.c index 997fd730d..59dd318d4 100644 --- a/src/seq.c +++ b/src/seq.c @@ -92,6 +92,8 @@ omitted INCREMENT defaults to 1 even when LAST is smaller than FIRST.\n\ FIRST, INCREMENT, and LAST are interpreted as floating point values.\n\ INCREMENT is usually positive if FIRST is smaller than LAST, and\n\ INCREMENT is usually negative if FIRST is greater than LAST.\n\ +"), stdout); + fputs (_("\ FORMAT must be suitable for printing one argument of type `double';\n\ it defaults to %.PRECf if FIRST, INCREMENT, and LAST are all fixed point\n\ decimal numbers with maximum precision PREC, and to %g otherwise.\n\ diff --git a/src/shred.c b/src/shred.c index 4c1819ccb..23a4944b0 100644 --- a/src/shred.c +++ b/src/shred.c @@ -220,6 +220,8 @@ version 3 clients\n\ \n\ * compressed file systems\n\ \n\ +"), stdout); + fputs (_("\ In the case of ext3 file systems, the above disclaimer applies\n\ (and shred is thus of limited effectiveness) only in data=journal mode,\n\ which journals file data in addition to just metadata. In both the\n\ @@ -228,6 +230,8 @@ Ext3 journaling modes can be changed by adding the data=something option\n\ to the mount options for a particular file system in the /etc/fstab file,\n\ as documented in the mount man page (man mount).\n\ \n\ +"), stdout); + fputs (_("\ In addition, file system backups and remote mirrors may contain copies\n\ of the file that cannot be removed, and that will allow a shredded file\n\ to be recovered later.\n\ diff --git a/src/stat.c b/src/stat.c index 6de5e15c3..315fe0c65 100644 --- a/src/stat.c +++ b/src/stat.c @@ -154,7 +154,7 @@ statfs (char const *filename, struct fs_info *buf) enum { - PRINTF_OPTION = CHAR_MAX + 1, + PRINTF_OPTION = CHAR_MAX + 1 }; static struct option const long_options[] = { -- 2.11.4.GIT