Paul Eggert [Tue, 26 Apr 2005 16:44:24 +0000 (16:44 +0000)]
(Standards conformance): Do not mention head -10,
since it now works the same regardless of POSIX version.
(od invocation): -w N -> -w[N].
(pr invocation): -S STRING -> -SSTRING.
(fold invocation): -WIDTH works even when conforming to POSIX
1003.1-2001.
(head invocation, tail invocation): Likewise for -NUM.
(split invocation): Likewise for -LINES.
(uniq invocation): Likewise for -N.
(expand invocation, unexpand invocation): Likewise for -TAB.
(nice invocation): Likewise for -ADJUSTMENT.
(sort invocation): Clarify explanation of +N option.
(uniq invocation): Likewise.
(join invocation): Remove special case for --help, --version.
(touch invocation): Clarify explanation of date options.
(Options for date): -I timespec -> -I[timespec].
Paul Eggert [Tue, 26 Apr 2005 16:41:45 +0000 (16:41 +0000)]
Remove posixver.h and its uses.
(obsolete_usage): Remove.
(join_field_1, join_field_2): Initialize to SIZE_MAX to indicate
they haven't been set yet.
(tab): Now int, not char. Initialize to -1 to indicate white space
separates columns, so that we can use NUL as a separator.
All uses changed.
(OBSOLETE_LONG_OPTIONS, get_option): Remove.
(string_to_join_field): Remove ERR_MSG_FMT arg; a single format
suffices. Use xstrtoul for sizes; it suffices.
(decode_field_spec): Report an error and exit on failure. Return void,
not bool.
(add_field_list): Likewise.
(set_join_field): New function.
(enum operand_status): New enum.
(add_file_name): New args OPERAND_STATUS, JOPTION_COUNT,
PREV_OPTC_STATUS, OPTC_STATUS to handle the bewildering array of
possibilities with obsolete option parsing.
(main): Use it. Do not depend on POSIX version.
Check for conflicting options. Parse obsolete options -j1 and -j2
so that it is a pure extension to POSIX 1003.1-2001.
Allow '-t\0' to specify a NUL tab, stealing the code from 'sort'.
Paul Eggert [Tue, 26 Apr 2005 16:41:17 +0000 (16:41 +0000)]
Remove posixver.h and its uses.
(shortopts): New constant. -DIGIT now always takes an optional arg.
(main): Don't preprocess arg list; that was buggy. Use method
similar to expand.
Paul Eggert [Tue, 26 Apr 2005 16:41:03 +0000 (16:41 +0000)]
Remove posixver.h and its uses.
(shortopts): New constant. -DIGIT now always takes an optional arg.
(main): Revamp parsing of -DIGIT to let parse_tab_stops handle it.
Don't complain about -DIGIT.
Paul Eggert [Tue, 26 Apr 2005 16:40:43 +0000 (16:40 +0000)]
Remove posixver.h and its uses.
(COMMON_SHORT_OPTIONS): Remove.
(short_options): New constant.
(short_options, usage): -I now always takes an optional arg.
Paul Eggert [Tue, 26 Apr 2005 16:40:16 +0000 (16:40 +0000)]
Restore support for usages like "head -1" and "tail -1",
even when conforming to POSIX 1003.1-2001.
Fix bug with "POSIXLY_CORRECT=1 fold file -3".
join now supports a NUL field separator, e.g., "join -t '\0'".
join now detects and reports incompatible options, e.g.,
Paul Eggert [Sun, 24 Apr 2005 04:46:33 +0000 (04:46 +0000)]
* coreutils.texi (install invocation): Use a= instead of 0 for
the point of departure for -m, and explain what it meeams.
(mkdir invocation, mkfifo invocation, mknod invocation):
The umask does not affect the point of departure.
Paul Eggert [Tue, 19 Apr 2005 07:26:18 +0000 (07:26 +0000)]
Use test -p to test for fifos, rather
than the (incorrect) test -f and the (inadequate) ls. ls is
inadequate because on some hosts a buggy mv will create a file of
the wrong type (problem reported by Eric Blake). Skip this test
if test -p doesn't work.
Paul Eggert [Mon, 18 Apr 2005 23:30:41 +0000 (23:30 +0000)]
(noinst_LIBRARIES): fetish -> coreutils.
(libcoreutils_a_SOURCES): Renamed from libfetish_a_SOURCES.
All uses changed.
(libcoreutils_a_LIBADD): Renamed from libfetish_a_LIBADD.
All uses changed.
(libcoreutils_a_DEPENDENCIES): Renamed from libfetish_a_DEPENDENCIES.
All uses changed.
Paul Eggert [Wed, 13 Apr 2005 18:42:00 +0000 (18:42 +0000)]
(zone): Allow relunit_snumber after tZONE, so
that "UTC +1 second" continues to work. Problem reported
by Dmitry V. Levin.
(relunit_snumber): New rule.
(relunit): Use it.
Paul Eggert [Tue, 12 Apr 2005 07:21:18 +0000 (07:21 +0000)]
(universal_time_zone_table): New constant.
(time_zone_table): Remove GMT, UT, UTC entries; they're now in
universal_time_zone_table.
(lookup_zone): Prefer universal_time_zone_table to
local_time_zone_table, so that "GMT" time stamps are allowed in
London during the summer. Problem reported by Ian Abbott.
Paul Eggert [Mon, 11 Apr 2005 20:12:51 +0000 (20:12 +0000)]
(have_read_stdin): Remove; no longer needed. All uses
removed.
(tsort): Do not assume fopen can't return stdin.
Close stdin before returning. All uses changed.
Paul Eggert [Mon, 11 Apr 2005 20:10:23 +0000 (20:10 +0000)]
Include unistd-safer.h.
(wipename): Use fd_safer on directory file descriptor.
(wipefile): Remove special case for /dev/fd/* on older hosts.
It didn't work in general, and wasn't documented.
Use fd_safer.