From 2c64bc87293bd8bf369b8dbd487a793ea9803775 Mon Sep 17 00:00:00 2001 From: Pádraig Brady Date: Tue, 31 Jan 2017 21:55:22 -0800 Subject: doc: only distribute 5 years of ChangeLogs Remove old log files that have corresponding entries in the source code repository. This saves about 2.5MB uncompressed, 0.5M compressed. * Makefile.am (gen-ChangeLog): Adjust to taking all logs since a particular version (8.15 in this case). Also mention in the truncated log where to get older entries. (changelog_etc): Remove the no longer distributed files. * build-aux/git-log-fix: Remove now unused entries. * ChangeLog-200[5-8]: Delete. * doc/ChangeLog-2007: Likewise. * po/ChangeLog-2007: Likewise. * old/*: Likewise. --- old/textutils/ChangeLog | 8752 ----------------------------------------------- 1 file changed, 8752 deletions(-) delete mode 100644 old/textutils/ChangeLog (limited to 'old/textutils/ChangeLog') diff --git a/old/textutils/ChangeLog b/old/textutils/ChangeLog deleted file mode 100644 index 96db71fb8..000000000 --- a/old/textutils/ChangeLog +++ /dev/null @@ -1,8752 +0,0 @@ -2006-08-17 Paul Eggert - - * ChangeLog: Add copyright notice. - * NEWS: Likewise. - -2002-07-29 Jim Meyering - - * Version 2.1. - - * src/tail.c: Adjust command examples in comments to use - POSIX 1003.1-2001 option syntax. - * src/sort.c: Likewise. - From Paul Eggert. - -2002-07-28 Jim Meyering - - * configure.ac: Require automake-1.6b. - -2002-07-20 Jim Meyering - - * Version 2.0.22. - - * Upgrade to cvs automake -- required to work with 2.53b. - * configure.ac: Require automake-1.6a. - - * Upgrade to gettext-0.11.3. - * Upgrade to autoconf-2.53b. - -2002-07-02 Jim Meyering - - * src/cat.c, src/cksum.c, src/comm.c, src/csplit.c, src/cut.c (usage): - Use the PACKAGE_BUGREPORT e-mail address, rather than hard-coding it. - * src/expand.c, src/fmt.c, src/fold.c, src/head.c, src/join.c: Likewise. - * src/md5sum.c, src/nl.c, src/od.c, src/paste.c, src/pr.c: Likewise. - * src/sort.c, src/split.c, src/sum.c, src/tac.c, src/tail.c: Likewise. - * src/tr.c, src/tsort.c, src/unexpand.c, src/uniq.c, src/wc.c: Likewise. - -2002-06-22 Jim Meyering - - * configure.ac: Invoke AC_GNU_SOURCE very early. - -2002-06-15 Jim Meyering - - * src/cksum.c: Include before system.h. - -2002-05-22 Jim Meyering - - * src/od.c [struct dummy]: Renamed. Don't rely on portability of - zero-length arrays. Instead, use sizes of -1 or +1. - Reported by Eric Backus. - -2002-05-14 Jim Meyering - - `od -t f8' didn't work. - This bug was introduced with my change of 2000-10-22 (textutils-2.0.8). - * src/od.c (ulonglong_t): Move declaration to precede new use. - [enum size_spec] (N_SIZE_SPECS): New member. - (width_bytes): Add initializer corresponding to ulonglong_t type. - (struct assert_width_bytes_matches_size_spec_decl): Declare. - Based on a patch from Tony Kocurko. - -2002-04-29 Paul Eggert - - Use ENABLE_NLS only for gettext-related stuff, not also for - setlocale-related stuff. From a patch suggested by Bruno - Haible. - - Since setlocale is now almost universal, this patch also - removes some of the optimizations that clutter up the code and - which don't help all that much even on hosts that lack - setlocale. - - * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1. - * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h. - Do not check for alloca.h (no longer used) or stdbool.h (was never - used?). Add AM_C_PROTOTYPES since hard-locale.h uses it. - - * src/sys2.h (HAVE_SETLOCALE): Define to 0 if not defined. - * src/comm.c (compare_files): Replace #ifdef ENABLE_NLS - with if (HAVE_SETLOCALE). - * src/join.c (keycmp): Likewise. - * src/sort.c (keycompare, compare): Likewise. - - * src/comm.c (hard_LC_COLLATE): Define even if ! ENABLE_NLS. - * src/join.c (hard_LC_COLLATE): Likewise. - * src/sort.c (hard_LC_COLLATE): Likewise. - - * src/comm.c (main): Always initialize hard_LC_COLLATE. - Put initialization next to other locale-related stuff. - * src/join.c (main): Likewise. - * src/sort.c (main): Likewise. - - * src/sort.c: Include even if ! ENABLE_NLS. - (decimal_point, th_sep): Depend on HAVE_SETLOCALE, not ENABLE_NLS. - (main): Likewise. - (MONTHTAB_CONST): Remove; all uses removed. - (struct_month_cmp, inittables): Do not depend on ENABLE_NLS. - (main): hard_LC_TIME locale does not depend on ENABLE_NLS. - -2002-04-29 Jim Meyering - - * src/tail.c (parse_obsolescent_option): Do not limit the maximum - line/byte count (when specified via obsolete option syntax) to be - less than ULONG_MAX on systems where OFF_T_MAX is larger. - -2002-04-28 Paul Eggert - - * src/tail.c (tail_forever): Do not treat - max_n_unchanged_stats_between_opens specially (as if it were - infinite) if it has its maximal value. Similarly for - max_n_consecutive_size_changes_between_opens. - -2002-04-28 Jim Meyering - - Avoid new warnings from gcc. - * src/pr.c [struct COLUMN] : Declare member to be const. - (init_fps): Declare local variable `firstname' to be const. - -2002-04-25 Jim Meyering - - * src/wc.c (usage): Adjust ordering to match that of default output. - Suggestion from Gaute Hvoslef Kvalnes. - - * configure.ac (AM_GNU_GETTEXT): Add external arg. - (AC_CONFIG_FILES): Remove intl/Makefile. - * Makefile.am (SUBDIRS): Remove intl. - * src/Makefile.am (INCLUDES): Remove -I../intl. - -2002-04-15 Jim Meyering - - * src/tr.c (usage): Give a verbose description of --squeeze-repeats, - including the mention of SET1. Reported by Dan Jacobson. - -2002-04-12 Jim Meyering - - * src/Makefile.am (LDADD): List ../lib/libfetish.a both before - and after @LIBINTL@. Thanks to Paul Eggert for the fix and to - Bruno Haible for diagnosing the problem. - -2002-03-16 Jim Meyering - - * src/Makefile.am (datadir): Don't override $(datadir) - which might be set by --datadir and different from $(prefix)/share. - Patch from Albert Chin-A-Young. - -2002-03-10 Jim Meyering - - * configure.ac (AM_INIT_AUTOMAKE): Specify the required version - of automake (1.6), and options (gnits dist-bzip2), rather than... - * Makefile.am (AUTOMAKE_OPTIONS): ...here. Remove definition. - -2002-03-09 Jim Meyering - - * Makefile.am (EXTRA_DIST): Remove config/config.rpath, - now that automake knows about it. - -2002-03-05 Jim Meyering - - * Makefile.am (EXTRA_DIST): Add config/config.rpath. - -2002-02-23 Paul Eggert - - * src/cat.c (simple_cat, cat, main): Use char * rather than - unsigned char *, to avoid some technical violations of the C - standard, and to avoid the need for casts. I guess the - unsigned char * was probably there for improved performance - with ancient compilers, but the code wasn't using the - unsignedness any more. - Reported by Nelson H. F. Beebe. - - (cat): int -> size_t for full_write arg. This doesn't - fix any bugs since the buffer size is small, but it makes - the code a bit clearer. - -2002-02-18 Jim Meyering - - * Version 2.0.21. - - * tests/tail/Test.pm: For tests matching /^(obs|err-[134])/, - put _POSIX2_VERSION=199209 in the environment, so the tests succeed - even when the environment would have contained _POSIX2_VERSION=200112. - * tests/uniq/Test.pm (test_vector): Rename tests of obsolete usage - to have prefix of `obs'. Adjust environment for those tests as above. - - * tests/mk-script: When getting input via a pipe, apply the - environment settings to the command in question, not to `cat'. - No longer allow more than one element in the $Test::env or - $Test::env_default arrays. No caller used that feature. - -2002-02-17 Jim Meyering - - * tests/head/Test.pm: Accept pre-POSIX 1003.1-2001 options. - * tests/pr/Test.pm: Likewise. - * tests/sort/Test.pm: Likewise. - - * Makefile.cfg (wget_files): Reflect new location of these files. - -2002-02-16 Jim Meyering - - * ABOUT-NLS, intl/*: Update to Gettext 0.11. - * INSTALL: Update to Autoconf 2.52h. - - * src/Makefile.am (datadir): Use `share' in place of @DATADIRNAME@, - per Gettext-0.11. - (LDADD): Use @LIBINTL@ instead of @INTLLIBS@, per Gettext-0.11. - - * configure.ac (AC_CONFIG_AUX_DIR): New macro invocation. - (ALL_LINGUAS): Remove: now in po/LINGUAS as per Gettext 0.11. - - * config: New subdirectory, containing the following files from .: - config.guess, config.sub, depcomp, missing, install-sh, mkinstalldirs. - Move the following files here from doc: texinfo.tex, mdate-sh. - -2002-02-15 Paul Eggert - - Add support for _POSIX2_VERSION, which lets you pick which POSIX - version you want the utilities to conform to. Remove warnings about - failure to conform to a future POSIX version. - - * NEWS, doc/coreutils.texi: Document _POSIX2_VERSION. - * doc/coreutils.texi (Standards Conformance): New section. - - * src/expand.c: Include posixver.h. - (usage): Document only the intersection of the old and new behaviors, - to encourage portability. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/od.c: Likewise. - * src/pr.c: Likewise. - * src/sort.c: Likewise. - * src/split.c: Likewise. - * src/uniq.c: Likewise. - * src/tail.c: Likewise. - * src/unexpand.c: Likewise. - - * src/expand.c (shortopts): Remove; no longer needed. - * src/od.c (short_options): Likewise. - * src/pr.c (short_options): Likewise. - * src/sort.c (short_options): Likewise. - * src/split.c (shortopts): Likewise. - * src/uniq.c (shortopts): Likewise. - * src/unexpand.c (shortopts): Likewise. - - * src/od.c (COMMON_SHORT_OPTIONS): New macro. - * src/pr.c (COMMON_SHORT_OPTIONS): Likewise. - * src/sort.c (COMMON_SHORT_OPTIONS): Likewise. - - * src/expand.c (main): Revert to previous behavior, except report - an error and exit if the obsolete syntax is used and if conforming - to the new standard. - * src/fold.c (main): Likewise. - * src/head.c (main): Likewise. - * src/split.c (main): Likewise. - * src/uniq.c (main): Likewise. - * src/tail.c (main, parse_obsolescent_option): Likewise. - * src/unexpand.c (main): Likewise. - - * src/od.c (STRINGS_OPTION, WIDTH_OPTION): Remove; no longer needed. - All uses changed back to the corresponding short options. - * src/pr.c (SEP_STRING_OPTION): Likewise. - - * src/od.c (main): Parse options using POSIX 1003.1-2001 rules if - conforming to that standard. Do not warn of obsolete options. - * src/pr.c (main): Likewise. - * src/sort.c (main): Likewise. - - * src/system.h (_POSIX2_VERSION, POSIX2_VERSION): Remove definitions. - (OPTARG_POSIX, OBSOLETE_OPTION_WARNINGS): Likewise. - -2002-02-16 Jim Meyering - - * tests/misc/split-a: New test for change of 2002-02-05. - * tests/misc/Makefile.am (TESTS): Add split-a. - -2002-02-12 Jim Meyering - - * src/split.c (DEFAULT_SUFFIX_LENGTH): Define constant. - (suffix_length): Use it here. - (usage): Use it here. - -2002-02-05 Paul Eggert - - Change 'split' to conform to POSIX. It now accepts an -a or - --suffix-length option, and refuses to generate more files - than there are suffixes. - - * NEWS, doc/coreutils.texi: Document this. - * src/split.c: Include "dirname.h". - (outbase): Now a global var. - (outfile_end): Remove. - (suffix_length): New var. - (shortopts, longopts, main): Add -a or --suffix-length. - (next_file_name): Implement -a. Do not extend the suffix length. - Check for file names that are too long. - (main): Move outfile initialization to next_file_name. - - * src/split.c (shortopts): Remove -v (a typo). - -2002-02-11 Jim Meyering - - * tests/misc/head-pos: New file/test for the change of 2002-02-08. - * tests/misc/Makefile.am (TESTS): Add head-pos. - - * src/tr.c (unquote): Make comment a little clearer. - -2002-02-08 Paul Eggert - - * src/head.c (head_lines): If we have read too much data, try - to seek back to the position we would have gotten to had we - been reading one byte at a time. POSIX currently doesn't - require this, but it's easy to do and some software relies on it. - -2002-02-02 Jim Meyering - - * src/uniq.c (main): Prepend `warning: ' to the diagnostic, so it's - consistent with all of the other `... is obsolete...' diagnostics. - -2002-01-31 Paul Eggert - - Add more support for POSIX 1003.1-2001, which requires removal for - support of obsolete "-N" option syntax in expand, head, fold, - split, tail, unexpand, uniq, and which prohibits options with - optional arguments in od and pr. - - * NEWS: Document this. - * doc/coreutils.texi: Likewise. - * src/expand.c (usage): Likewise. - * src/fold.c (usage): Likewise. - * src/head.c (usage): Likewise. - * src/od.c (usage): Likewise. - * src/pr.c (usage): Likewise. - * src/split.c (usage): Likewise. - * src/unexpand.c (usage): Likewise. - * src/uniq.c (usage): Likewise. - - * NEWS: Improve doc for previous fix in this area. - - * src/expand.c (shortopts): New constant. - * src/od.c (short_options): Likewise. - * src/pr.c (short_options): Likewise. - * src/sort.c (short_options): Likewise. - * src/split.c (shortopts): Likewise. - * src/unexpand.c (shortopts): Likewise. - * src/uniq.c (shortopts): Likewise. - - * src/expand.c (main): Check for obsolete options. - * src/fold.c (main): Likewise. - * src/head.c (main): Likewise. - * src/od.c (main): Likewise. - * src/pr.c (main): Likewise. - * src/sort.c (main): Likewise. - * src/split.c (main): Likewise. - * src/tail.c (parse_obsolescent_option, main): Likewise. - * src/unexpand.c (main): Likewise. - * src/uniq.c (main): Likewise. - - * src/head.c (header_mode_option): New constant. - - * src/od.c: New enum for long options. - - * src/pr.c (SEP_STRING_OPTION): New enum value. - (long_options): Use it. - - * src/split.c (main): Use -1, not EOF, for getopt_long. - - * src/system.h (OPTARG_POSIX, OBSOLETE_OPTION_WARNINGS): New macros. - - * src/fold.c (main): Fix bug: -- -N was treated as -N --. - -2002-02-01 Jim Meyering - - * src/tail.c (start_lines): Handle the case in which bytes_read is zero. - -2002-01-28 Jim Meyering - - * Makefile.maint (ac-check): Remove, now that we no longer have - to duplicate that information. - (local-check): Remove ac-check. - - * Makefile.am (AUTOMAKE_OPTIONS): Require automake-1.5d. - - * configure.ac (AM_INIT_AUTOMAKE): Use zero-arg form of this macro. - (ALL_LINGUAS): Add the bokmål dialect of Norwegian (nb). - -2002-01-27 Jim Meyering - - tail -n +2 would perform an extra read after encountering EOF - * src/tail.c (start_lines): Detect EOF, inform caller. - (tail_lines): Upon EOF in start_lines, return immediately. - -2002-01-22 Jim Meyering - - * Version 2.0.20. - -2002-01-22 Paul Eggert - - * src/od.c (skip): Remove redundant check for overflow. - fseeko's seek argument is already known to be in range, - since it is less than the file size. - -2002-01-22 Jim Meyering - - * po/POTFILES.in: Add lib/xmemcoll.c. - -2002-01-22 Paul Eggert - - * src/tac.c (save_stdin): Report proper errno value after - fwrite failures. Do not bother to rewind the temp file, as - it'll be read backwards anyway. - -2002-01-22 Paul Eggert - - * src/ptx.c (swallow_file_in_memory): Work even if `open' returns 0. - Check for `close' error. - -2002-01-22 Paul Eggert - - Port to glibc 2.2.5, whose mmap stdio positions the underlying - file descriptor at a nonzero offset after an fopen. - - * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO. - * src/od.c (skip): Use fseeko rather than lseek. - (Also, check for overflow when converting uintmax_t to off_t.) - * src/sys2.h (EOVERFLOW, fseeko): New macros. - -2001-01-21 Paul Eggert - - * src/comm.c: Include xmemcoll.h, not memcoll.h. - Use xmemcoll instead of memcoll. - * src/join.c: Likewise. - * src/sort.c: Likewise. - - * src/sort.c (die): Do not invoke cleanup; atexit does this now. - (main): Use atexit to invoke cleanup on exit. - Set xmemcoll_exit_failure to SORT_FAILURE. - -2002-01-20 Paul Eggert - - * src/comm.c (compare_files): Don't assume that the difference - between two size_t values can be stored in an int; this doesn't - work, for example, on 64-bit Solaris. - * src/sort.c (CMP_WITH_IGNORE): Likewise. - * src/join.c (keycmp): Likewise. Also, fix the type of two locals - to be size_t instead of int. - -2002-01-20 Paul Eggert - - * src/csplit.c: Don't include "xalloc.h", as system.h already - does that via sys2.h. - * src/sort.c: Likewise. - -2002-01-19 Jim Meyering - - * configure.ac: Remove code that set LIBOBJS in support of ansi2knr. - The latest version of autoconf objected to it, and besides, I don't - care too much about K&R support these days. - -2002-01-18 Jim Meyering - - Fix tr so it no longer gets a failed assertion for [::] or [==]. - - * src/tr.c (xmemdup): Rename from `substr' and rewrite to - take only pointer/length parameters. - (build_spec_list): Update sole caller. - Properly diagnose the invalid specs [::] and [==]. - Pawel Prokop reported that `tr '[::]' x' elicits a failed assertion. - * tests/tr/Test.pm: Add tests for the above fix. - -2002-01-14 Paul Eggert - - * src/sort.c (main): Issue a warning for obsolete usage, unless - POSIXLY_CORRECT. - * src/tail.c (parse_obsolescent_option): Likewise. - * src/uniq.c (main): Likewise. - -2002-01-14 Paul Eggert - - Add support for POSIX 1003.1-2001, which requires removal for - support of obsolete "+" option syntax in sort, tail, and uniq. - - * NEWS: Document this. - - * src/sort.c (usage, main): Implement this. - * src/tail.c (usage, parse_obsolescent_option): Likewise. - * src/uniq.c (usage, main): Likewise. - * src/system.h (_POSIX2_VERSION, POSIX2_VERSION): New macros. - - * src/sys2.h (ISDIGIT, S_ISVTX, S_IXUGO): Comment fix. - -2002-01-14 Jim Meyering - - * tests/misc/sort: New test, for just-fixed bug. - * tests/misc/Makefile.am (TESTS): Add sort. - (TESTS_ENVIRONMENT): Add PROG=$$tst. This is a gross kludge - that depends on the name of an automake-generated local variable. - -2002-01-13 Paul Eggert - - * src/sort.c (mergefps): Fix bug when eliminating empty files. - Bug reported by James Hutt. - -2002-01-13 Jim Meyering - - * tests/help-version: Tweak to work with the programs in diffutils. - -2002-01-09 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Turkish (tr). - -2001-12-18 Paul Eggert - - * src/sort.c (usage, specify_sort_size): Accept 'K' (which is - now preferred, as it connotes 1024) as well as 'k'. - * NEWS: Document this change. - -2001-12-17 Jim Meyering - - * src/uniq.c (usage): Remove stray `)' in --help output. - Reported by Padraig Brady. - - * Makefile.maint (real_dir): Remove unused variable. - (url_dir_list): Don't set define it here, but... - * Makefile.cfg (url_dir_list): ...define it here instead. - (hosts, a_host, b_host): Remove now-unused variables. - (alpha_subdir, a_url_dir, b_url_dir): Remove now-unused variables. - -2001-12-12 Bruno Haible - Paul Eggert - - * src/wc.c (wc): Use ISSPACE and iswspace in addition to hard-coding - the ASCII space character. - -2001-12-08 Jim Meyering - - * Version 2.0.19. - - * Makefile.cfg (wget_files): Remove ansi2knr.c, since it's - no longer available at that location. - -2001-12-03 Jim Meyering - - * src/od.c, src/tail.c, src/tr.c (usage): I will not split translatable - strings in the middle of a sentence. I will not split translatable - strings in the middle of a sentence. I will not split translatable - strings in the middle of a sentence. ... - * src/join.c (usage): Merge lone "\n" into adjacent string. - * src/md5sum.c (usage): Likewise. - * src/paste.c (usage): Likewise. - Reported by Karl Eichwalder. - -2001-12-02 Jim Meyering - - * Makefile.maint (emit-upload-commands): Fix typo: s/distdir/PACKAGE/. - -2001-12-01 Jim Meyering - - * Version 2.0.18. - - * Makefile.maint (po-check): Check for uses of _() not just in .c - files, but also in .h files. - - Ideally, there would be just one translation for all --help - and --version description strings. Before this change, they - differed only in the number of blanks between the option name - and the description. Someday gettext may be smart enough - to merge such strings and to reconstruct the proper spacing at - run time. In the mean time, now there is one string for each, - and those descriptions in the --help output are no longer aligned - with the others. - * src/sys2.h (HELP_OPTION_DESCRIPTION): New macro. - (VERSION_OPTION_DESCRIPTION): New macro. - * src/cat.c, src/cksum.c, src/comm.c, src/csplit.c, src/cut.c: - * src/expand.c, src/fmt.c, src/fold.c, src/head.c, src/join.c: - * src/md5sum.c, src/nl.c, src/od.c, src/paste.c, src/pr.c, src/ptx.c: - * src/sort.c, src/split.c, src/sum.c, src/sys2.h, src/tac.c: - * src/tail.c, src/tr.c, src/tsort.c, src/unexpand.c, src/uniq.c: - * src/wc.c (usage): Use new macros, HELP_OPTION_DESCRIPTION and - VERSION_OPTION_DESCRIPTION instead of hard-coding --help and - --version descriptions. - * po/POTFILES.in: Add src/sys2.h. - -2001-11-27 Jim Meyering - - * src/system.h (SET_MODE) [O_BINARY]: Call setmode, not set_mode. - From Matthew Smith. - -2001-11-26 Jim Meyering - - * src/cat.c (cat): Don't test whether the full_write return value - (of type size_t) is less than 0. Reported by Nelson H. F. Beebe, - as a warning from Irix 6.5's C compiler. - -2001-11-25 Jim Meyering - - * src/cksum.c (usage): Indent --help and --version strings to - start in the 7th column. - * src/pr.c (usage): Likewise. - -2001-11-23 Jim Meyering - - Factor out some common strings to make translation easier. - - * cat.c, cksum.c, comm.c, csplit.c, cut.c, expand.c, fmt.c, fold.c: - * head.c, join.c, md5sum.c, nl.c, od.c, paste.c, pr.c, ptx.c: - * sort.c, split.c, sum.c, tac.c, tail.c, tr.c, tsort.c, unexpand.c: - * uniq.c, wc.c: Split usage strings so that --help and --version - descriptions are alone in their own string. - Likewise for the one that says ``Mandatory arguments to long - options are mandatory for short options too.'' - Suggestion from Karl Eichwalder. - - * src/ptx.c (main): Don't split copyright string in the middle - of a sentence. - -2001-11-22 Jim Meyering - - * Version 2.0.17. - - csplit could get a failed assertion: printf 'a\n\n'|csplit - '/^$/' 2 - * src/csplit.c: No longer include assert.h. - (process_line_count): Remove invalid assertion. The test that caused - the failure has been in the code since before 1992-11-08, but since - 1996 it's been in an assertion. That assertion was disabled by default - until textutils-1.22g (1999-01-10). Reported by Eric Pemente. - - * tests/misc/csplit: New file. Test for the above fix and others. - * tests/misc/Makefile.am (TESTS): Add csplit. - * tests/Makefile.am (EXTRA_DIST): Add lang-default. - -2001-11-19 Jim Meyering - - * src/tail.c (xlseek): New function. - Call it instead of lseek, in most cases, so any failure is reported. - -2001-11-18 Jim Meyering - - * config.sub: Update from master repository. - * config.guess: Likewise. - -2001-11-17 Jim Meyering - - * Makefile.cfg ($(srcdir)/m4/jm-glibc-io.m4): Use $(move_if_change), - not the literal `move-if-change'. - - * src/tail.c (tail_forever): Add a cast. - - Avoid compiler warnings. - * src/fmt.c: Remove `unsigned' attribute from type of global `prefix'. - (copy_rest): Cast to (unsigned char *) before dereferencing. - (get_prefix): Likewise. - - * configure.ac: Replace use of the one-arg form of AC_INIT - with a use of the 3-arg form and a use of AC_CONFIG_SRCDIR. - -2001-11-14 Paul Eggert - - * src/tail.c (file_lines): Remove unnecessary cast. - (tail_lines): Could have called file_lines even though the first - lseek failed. Fix that. - -2001-11-14 Jim Meyering - - * src/tail.c (file_lines): Add a parameter, start_pos. - Work properly even when the read pointer is not at beginning of file. - (tail_lines): Call file_lines for any regular file, as long as lseek - can be used to seek to its end, not just when the initial read pointer - is at beginning of file. - -2001-11-13 Jim Meyering - - * src/tail.c (tail_lines): Move declaration of local `length' - into scope where it's used. - (tail_file): Likewise for local `stats'. - - * tests/tail-2/Makefile.am (TESTS): Add proc-ksyms and start-middle. - * tests/tail-2/start-middle: New test, for the bug fixed on 1995-07-24. - - `tail /proc/ksyms' would segfault on Linux. - * src/tail.c (tail_lines): Use status of lseek (...SEEK_END) call - in deciding whether to call file_lines or pipe_lines. - From Herbert Xu. - * tests/tail-2/proc-ksyms: New test, for the above fix. - -2001-11-11 Jim Meyering - - * src/od.c (struct tspec): Declare function pointer with prototype. - - * src/sum.c (main): Declare function pointer with prototype. - - * src/tsort.c (count_items): Mark parameter as unused. - - * src/sort.c (struct_month_cmp): Guard definition with the same - cpp condition that guards the use. - - * src/tail.c (xwrite): Remove assertion that size_t N >= 0. - - * src/pr.c (struct COLUMN) [print_func]: Declare with a protype. - (struct COLUMN) [char_func]: Declare with a protype. - - * src/od.c (parse_old_offset): Declare to be static. - - * src/join.c (make_blank): Declare to be static. - (prfield): Declare local to be of type size_t, not int. - - Some help strings were very long. Split them so that - they're no longer than the magic length 509 that ISO C89 - compilers are required to support. Sorry, translators :-( - - * src/md5sum.c (usage): Split --help output into smaller pieces. - * src/ptx.c (main, usage): Likewise. - * src/fmt.c (usage): Likewise. - - * src/wc.c (usage): Split --help output into smaller pieces. - Use fputs, not printf. - * src/cat.c (usage): Likewise. - * src/cut.c (usage): Likewise. - * src/csplit.c (usage): Likewise. - * src/expand.c (usage): Likewise. - * src/head.c (usage): Likewise. - * src/join.c (usage): Likewise. - * src/nl.c (usage): Likewise. - * src/od.c (usage): Likewise. - * src/pr.c (usage): Likewise. - * src/sort.c (usage): Likewise. - * src/split.c (usage): Likewise. - * src/tac.c (usage): Likewise. - * src/tr.c (usage): Likewise. - * src/unexpand.c (usage): Likewise. - * src/uniq.c (usage): Likewise. - * src/tail.c (usage): Likewise. - - * src/sys2.h (alloca) [__GNUC__]: Define only if not already defined. - - * src/Makefile.am (sort_LDADD): Reflect spelling change: - s/POW_LIBM/POW_LIB/. - -2001-11-10 Jim Meyering - - * src/nl.c (proc_text): Use `puts' to output a string of spaces, - not printf. This avoids a warning from gcc's -Wformat-security. - -2001-11-09 Jim Meyering - - * configure.ac: Use AC_CONFIG_FILES(...) and call AC_OUTPUT with no - arguments. - -2001-11-05 Jim Meyering - - * src/sort.c (usage): Don't recommend setting LC_COLLATE=C. - That can cause problems (now documented in coreutils.texi). - -2001-11-04 Jim Meyering - - * uniq.c, unexpand.c, tail.c, tac.c, split.c, sort.c, pr.c, paste.c: - * od.c, nl.c, head.c, fold.c, expand.c, cut.c, csplit.c (usage): - Say that ``Mandatory arguments to long options are mandatory for - short options too.'' - - * src/ptx.c (usage): Add one-line description. - -2001-10-28 Jim Meyering - - * tests/sum/sysv: New test for the fix below. - * tests/sum/Makefile.am (TESTS): Add sysv. - -2001-10-27 Paul Eggert - - * src/sum.c: Include human.h. - (ROTATE_RIGHT): Remove; it was slow and the comment was - misleading anyway. - (bsd_sum_file): Avoid unsigned and long when they're not needed. - Compute total input bytes as uintmax_t, not long, so that the - code works even with files whose size does not fit in 'long'. - (sysv_sum_file): Likewise. - (sysv_sum_file): Do not reduce checksum until the end; this is - what System V does. - Reported by Nick Lawes. - -2001-10-27 Jim Meyering - - Give an accurate diagnostic when `head --bytes=30M' fails. - * src/head.c (string_to_integer): Check explicitly for overflow, - and lump everything else together as `invalid'. - -2001-10-04 Jim Meyering - - Rename --all-repeated argument `precede' to `prepend'. - * src/uniq.c (enum delimit_method): s/DM_PRECEDE/DM_PREPEND/ - and change all uses. - (delimit_method_string): s/precede/prepend/ - * tests/uniq/Test.pm: Adjust tests accordingly. - Patches by Padraig Brady. - - * src/uniq.c (usage): Correct typo in description of --all-repeated. - Patch by Padraig Brady. - -2001-09-30 Jim Meyering - - * Version 2.0.16. - - tail -F would segfault - * src/tail.c (parse_options): Add missing `break;' from last change. - -2001-09-28 Jim Meyering - - * configure.ac: Tell automake to use the file name `config.hin' - rather than the two-`.' config.h.in. - -2001-09-26 Jim Meyering - - * man/Makefile.am (common_dep): Define it, so we depend on configure.ac. - - * configure.ac: Renamed from configure.in. - -2001-09-25 Jim Meyering - - * src/Makefile.am (sort_DEPENDENCIES): Remove definition altogether. - It adds nothing to the existing: $(PROGRAMS): ../lib/libfetish.a. - -2001-09-24 Paul Eggert - - * src/Makefile.am (sort_DEPENDENCIES): Depend only on - ../lib/libfetish.a, not on $(LDADD), since the latter may - contain `-lintl'. This resembles yesterday's patch for the - `$(PROGRAMS)' rule. - -2001-09-23 Jim Meyering - - * Version 2.0.15. - - * src/Makefile.am ($(PROGRAMS)): Depend only on ../lib/libfetish.a, - not on $(LDADD), since the former may contain `-lintl'. - - * Makefile.am (SUBDIRS): When using newer gettext (in which - intl/libintl.h is created by rules intl/Makefile) - `intl' must precede `lib'. - -2001-09-22 Jim Meyering - - * ABOUT-NLS: Upgrade to gettext 0.10.40 - * intl: Upgrade entire directory to gettext 0.10.40 - * po/ChangeLog: New file. - - * Makefile.am (DISTCLEANFILES): Remove definition, since intl/libintl.h - is no longer created via configure. - - * tests/od/od-N: New test for the 2001-09-19 fix by Ian Bruce. - * tests/od/Makefile.am: New file. - * tests/od: New directory. - * tests/Makefile.am (SUBDIRS): Add od. - * configure.in (AC_OUTPUT): Add tests/od/Makefile. - -2001-09-19 Paul Eggert - - * src/od.c (MAX_ADDRESS_LENGTH, pseudo_offset, format_address, - n_bytes_to_skip, skip, format_address_none, - format_address_std, format_address_paren, - format_address_label, write_block, parse_old_offset, dump, - dump_strings, main): - Use uintmax_t, not off_t, for file addresses, so that we can - handle multiple large files even if the sum of their sizes - exceeds off_t limits. - - (print_s_char, print_char, print_s_short, print_short, - print_int, print_long, print_long_long, print_float, - print_double, print_long_double, dump_hexl_mode_trailer, - print_named_ascii, print_ascii, decode_one_format): - Use size_t, not off_t, for in-memory byte counts. - - (end_offset): New var. - (dump, dump_strings): Use it. - (main): Set it, but check for overflow while doing so. - - (skip): Report an error if an in-range lseek fails on a - regular file, as something's seriously wrong. Check for - negative regular file sizes (possible with some broken NFS - implementations). - - (parse_old_offset): Now all offsets are valid, so return a - success boolean and take a pointer to an offset as an argument. - All callers changed. - - (dump_strings): Check for overflow when computing end_offset - - string_min. - - (main): Remove OFF_T_MAX checks that are no longer needed. - Don't bother assigning through temporary when there's no size - limit to check. - -2001-09-19 Jim Meyering - - * src/od.c (open_next_file): Use SETVBUF, not setbuf. - (skip): Revert part of last change: use lseek, not fseek. - - When --read-bytes=N (-N N) is used, disable input buffering in - the standard I/O library. Otherwise, od would read more input - than requested. This could have caused problems when reading - from pipes, character devices, or open file descriptors inherited - from a parent process. - - * src/od.c (open_next_file): New function, factored out of... - (skip): Adapt to use open_next_file. - (read_char): Likewise. - (read_block): Likewise. - (main): Likewise. - (dump): Fix an off-by-one error that could have made od fail to - report a read error when reading from a named file (not stdin). - (check_and_close): Account for the fact that in_stream may now be NULL. - (usage): Correct descriptions of -j and -N options. - Patch by Ian Bruce. - -2001-09-16 Jim Meyering - - * Makefile.am (AUTOMAKE_OPTIONS): Require automake-1.5. - - * man/Makefile.am: Revamp this file, as for fileutils. - - * src/md5sum.c (digest_check): On systems for which setmode actually - does something, arrange to read the file containing checksum strings - in text mode. Based on a patch from Chris Faylor. - * src/system.h (SET_MODE): Define. - -2001-09-12 Jim Meyering - - The command `echo a|./fmt -2147483647' would cause fmt to segfault. - * src/fmt.c (fmt_paragraph): Test for sentinal directly, rather than - doing arithmetic with it's potentially large (INT_MAX) length. - * tests/fmt/basic: Add tests for the above. - - tail: accept new option: -F, equivalent to `--follow=name --retry', - for compatibility with FreeBSD and NetBSD versions of tail. - - * src/tail.c (usage): Describe new option. - (parse_options): Accept it. - Patch by Christian Kurz, via Herbert Xu. - - The command `echo foo|fmt -w N' for N>=32K would cause fmt to segfault. - - * src/fmt.c [struct Word]: Declare members length, space, and - line_length to be of type `int', not short. - (MAXCOST): Define using TYPE_MAXIMUM. - Reported by Herbert Xu. - -2001-08-31 Jim Meyering - - * src/fmt.c (bool): Remove typedef, now that it's in system.h. - (TRUE): Define to `true', not 1. - (FALSE): Define to `false', not 0. - -2001-08-30 Paul Eggert - - * src/cat.c: Include full-write.h. - (full_write): Remove decl; not needed. - * src/split.c: Likewise. - - * src/cat.c (simple_cat, cat): - Don't assume read and write size fits in int. - -2001-08-28 Jim Meyering - - * src/fmt.c (main): Correct the diagnostic for invalid argument to -w. - (main): Diagnose an invalid, old-style width option. - -2001-08-27 Jim Meyering - - * Makefile.maint: Undo last change. Instead, simply remove `N_(', - since the `Copyright ...' line should not be translated. - -2001-08-26 Jim Meyering - - * Makefile.maint (copyright-check): Update to reflect fact that - the copyright year is now defined separately. - -2001-08-08 Charles Randall - - * src/sort.c (mergefps): Do not allocate at least sort_size - bytes for each merge buffer. Instead, allocate at least - sort_size bytes total. - -2001-08-25 Jim Meyering - - * tests/uniq/Test.pm: Re-enable some commented-out tests. - -2001-08-25 Paul Eggert - - * src/uniq.c (main): Fix a typo in the previous patch: missing - a bounds check for examples like `uniq a b c'. - - * uniq.c (main): Fix some more incompatibilities with POSIX.2, - (e.g. `uniq +3 --' did not work) by invoking getopt_long with - leading '-', resembling what was done to 'sort' on 2001-03-20. - Recognize an +N option only if it is an integer in range, and - (if POSIXLY_CORRECT) only if a file name argument has not been seen; - otherwise silently treat it as a file name. - - If the user specifies too many operands, output the first one - in the error message, as a diagnostic aid. - -2001-08-24 Paul Eggert - - * src/uniq.c (main): Don't report an error when given the - valid options `+3 -d'. - -2001-08-24 Paul Eggert - - * src/uniq.c (different): Don't assume that lengths can fit - into size_t. Tune code for the common case where the line - lengths differ: we avoid comparing them entirely in that case. - -2001-08-25 Jim Meyering - - * tests/uniq/Test.pm: Add tests for -s 0 and -w 0. - -2001-08-24 Paul Eggert - - Remove arbitrary restrictions on sizes, fixing a bug reported - by Geoff Whale. - - * src/uniq.c (skip_fields, skip_chars, check_chars): Now size_t, - not int. - (size_opt): New function. Do not arbitrarily reject size zero. - Change the wording of the error message slightly, for convenience. - (find_field): Use size_t, not int, to compute sizes. - (different, main): check_chars==0 is no longer a special case, as - it defaults to SIZE_MAX. - (main): Check for overflow with args like -234234234234234. - Use 'size_opt' to convert optional arguments to sizes. - -2001-08-25 Jim Meyering - - * tests/uniq/Test.pm: Add new test, #54, for the just-fixed bug. - -2001-08-24 Paul Eggert - - * src/uniq.c (find_field): Don't count trailing newline to be - part of the field. This disagrees with POSIX.2, but it's - gotta be a bug in the standard. An interpretations request - has been submitted to PASC. - Reported by Geoff Whale. - -2001-08-18 Jim Meyering - - * Makefile.maint: Merge in changes from autoconf. - - * Makefile.maint ($(v_etc_file)): Define. - (copyright-check): Use the new variable. - (my-distcheck): Depend on local-check so those checks are once - again run by `make distcheck'. - - * src/head.c (head_bytes): Read no more than the specified - number of bytes. Patch by Ian Bruce. - - * tests/misc/head-c: New test for the above. - * tests/misc/Makefile.am: New file. - * tests/misc: New directory. - * tests/Makefile.am (SUBDIRS): Add misc. - * configure.in (AC_OUTPUT): Add tests/misc/Makefile. - -2001-08-14 Jim Meyering - - * src/Makefile.am (INCLUDES): Add -I../lib so sys2.h can include - the new, generated file, unlocked-io.h. - -2001-08-13 Jim Meyering - - * src/cat.c (AUTHORS): Mark string for translation, since it - contains the English word `and'. - * src/comm.c: Likewise - * src/csplit.c: Likewise - * src/cut.c: Likewise - * src/md5sum.c: Likewise - * src/nl.c: Likewise - * src/paste.c: Likewise - * src/pr.c: Likewise - * src/sort.c: Likewise - * src/split.c: Likewise - * src/sum.c: Likewise - * src/tac.c: Likewise - * src/uniq.c: Likewise - * src/wc.c: Likewise - -2001-08-12 Jim Meyering - - * tests/mk-script ($program_name): Define. - (main): Use $program_name, rather than long-inaccurate `build-script'. - (main): Iterate over the sorted keys (rather than `while...each...'), - so this script produces the same output regardless of which version - of perl (e.g., perl5.6) is used. - -2001-08-04 Jim Meyering - - * Makefile.am (EXTRA_DIST): Add Makefile.cfg. - - * man/Makefile.am (EXTRA_DIST): Remove duplicate definition. - -2001-07-08 Jim Meyering - - * src/tail.c (usage): Reformat so help2man generates a properly - indented man page. Patch by Herbert Xu. - -2001-07-04 Jim Meyering - - * Makefile.cfg: New file with package-specific definitions. - * Makefile.am (EXTRA_DIST): Add Makefile.cfg. - -2001-07-01 Jim Meyering - - * src/sort.c (usage): Suggest setting LC_COLLATE=C, rather - than LC_ALL=C. - -2001-06-10 Jim Meyering - - * tests/sort/Test.pm: Add a test based on a report from Herbert Xu. - -2001-05-20 Jim Meyering - - * src/uniq.c: Rename new option values: s/all/precede/ and - s/minimum/separate/. - * tests/uniq/Test.pm: Reflect the above renamings. - -2001-05-12 Bruno Haible - - * src/tail.c (parse_obsolescent_option): Accept a b suffix. - -2001-05-19 Jim Meyering - - msgmerge-0.10.37 complains about some `invalid multibyte sequences.' - * po/el.po: Remove the offending entries. - * po/ko.po: Likewise. - * po/zh.po: Likewise. - -2001-05-19 Jim Meyering - - Support new modes for uniq's --all-repeated option. - The default behavior is unchanged. - - * src/uniq.c: Include argmatch.h. - (usage): Update. - (check_file): Implement it. - (main): Handle new, optional arguments. - * tests/uniq/Test.pm: New tests for the above. - Patch by Padraig Brady. - -2001-05-12 Bruno Haible - - * src/tail.c (parse_obsolescent_option): Use t_count_lines, not - count_lines, in error message. - -2001-05-05 Jim Meyering - - * src/comm.c (usage): Correct description of -3. - Reported by Soeren Sonnenburg. - -2001-04-22 Jim Meyering - - * Version 2.0.14. - - * configure: Regenerate using a patched copy of autoconf-2.49e to - work around a bug in its test for a working memcmp function. - -2001-03-28 Paul Eggert - - * src/cksum.c: Fix bugs when computing length of large files. - Add overflow and write error checks. Use uint_fast32_t, not - unsigned long, to do checksum calculation, as C99 says - uint_fast32_t should be no slower and might be faster. - - Include and "system.h" even if CRCTAB is defined, - so that the code will compile if CRCTAB is defined. - Include "human.h" if CRCTAB is not defined. - (uint_fast32_t): Define if it appears that stdint.h didn't. - (BIT, remainder, main, crctab): Use uint_fast32_t, not unsigned long, - for checksums. - (fill_r, remainder, main): Use ANSI prototypes. - (fill_r, remainder, main): Omit duplicate code. - (main): Use uintmax_t, not unsigned long, for file lengths. - Use size_t, not long, for result of fread. - Check for overflow when computing file lengths. - Check for write error immediately after printing a line, so that - we don't write to stdout indefinitely after an error. - -2001-04-14 Paul Eggert - - * src/sort.c (default_sort_size): Leave a 1/16 margin for RSS. - Suggestion from Solar Designer. - -2001-04-14 Jim Meyering - - * src/wc.c (usage): Tweak --help output: s/line,/newline,/ - -2001-04-13 Jim Meyering - - * src/sort.c (main): Add a comment justifying the use of - `multi-character' rather than `multibyte' in a diagnostic. - From Paul Eggert. - -2001-04-12 Paul Eggert - - * src/sort.c (RLIMIT_AS): Do not define; just use conditional - code, since RLIMIT_RSS is similar (and is not standardized). - (default_sort_size): Don't allocate more than the RSS limit, - if this host has such a limit. - -2001-03-20 Paul Eggert - - * NEWS, doc/textutils.texi: sort now accepts long options and - checks POSIX option syntax. - - * doc/textutils.texi: Document --, -, sort long options, and - sort -o after files. - - * src/sort.c: Include . - (usage, main): Add support for long options, and check option - syntax as POSIX requires, though (as usual for GNU apps) - options can follow file names unless POSIXLY_CORRECT is set. - Many diagnostic revamped. - (long_options): New constant. - (badfieldspec): New arg MSGID. Mark as noreturn. - (parse_field_count): New arg MSGID; if null, just return null on error. - (new_key): Renamed from key_init. All callers changed. Now allocates - the new key. - -2001-03-18 Jim Meyering - - * Version 2.0.13. - - * tests/Fetish.pm: If the $DJDIR envvar is defined, set SHELL - to $DJDIR/bin/bash.exe. Patch from Richard Dawe, based on a - suggestion from Eli Zaretskii. - -2001-03-17 Paul Eggert - - * src/sort.c, src/tail.c, src/uniq.c (usage): - Warn that the +N form will be withdrawn. - * doc/textutils.texi: Likewise. - -2001-03-08 Paul Eggert - - * NEWS, doc/textutils.texi: Document pr changes. - - * src/pr.c: Include mbswidth.h. - (standard_header, header, test_suite): Remove. - (date_format, date_text, file_text, header_width_available): New vars. - (long_options, main, init_header, usage): - Add new -D or --date-format option. - (CHARS_FOR_DATE_AND_PAGE, T_BUF_FMT, T_BUF_SIZE, NO_DATE): Remove. - (init_header): Allow arbitrary width for date format. Change - "Page %5d" to "Page %d", since the code no longer assumes fixed width. - Do not assume that localtime succeeds. - (init_header, print_header, usage): Do not truncate headers. - (init_header, print_header): Defer width calculations until - page is printed, since "Page 100000" is wider than "Page 1". - Count columns, not bytes, in page headers. - Custom headers take up only the center, not the whole header. - (print_header): Use printf rather than fprintf(stdout). - - * po/Makefile.in.in (install-data-yes): Install LC_TIME locale - for all packages, not just for fileutils. - (uninstall): Remove LC_TIME locale too. - - * src/sys2.h (INT_STRLEN_BOUND): New macro. - - * tests/pr/0F, tests/pr/0FF, tests/pr/2-S_f-t_notab, - tests/pr/2-Sf-t_notab, tests/pr/2f-t_notab, - tests/pr/2s_f-t_notab, tests/pr/2s_w60f-t_nota, - tests/pr/2sf-t_notab, tests/pr/2sw60f-t_notab, - tests/pr/2w60f-t_notab, tests/pr/3-0F, tests/pr/3-5l17f-t, - tests/pr/3-FF, tests/pr/3a2l17-FF, tests/pr/3a3f-0F, - tests/pr/3a3l15-t, tests/pr/3a3l8f-t, tests/pr/3b2l17-FF, - tests/pr/3b3f-0F, tests/pr/3b3f-0FF, tests/pr/3b3f-FF, - tests/pr/3b3l15-t, tests/pr/3b3l8f-t, tests/pr/3f-0F, - tests/pr/3f-FF, tests/pr/3l17f-t, tests/pr/3l24-t, - tests/pr/3ml17f-t, tests/pr/3ml24-FF, tests/pr/3ml24-t, - tests/pr/3ml24-t-FF, tests/pr/4-7l24-FF, tests/pr/4l24-FF, - tests/pr/a2l15-FF, tests/pr/a2l17-FF, tests/pr/a3-0F, - tests/pr/a3f-0F, tests/pr/a3f-0FF, tests/pr/a3f-FF, - tests/pr/a3l15-t, tests/pr/a3l17f-lm, tests/pr/a3l8f-t, - tests/pr/b2l15-FF, tests/pr/b2l17-FF, tests/pr/b3-0F, - tests/pr/b3f-0F, tests/pr/b3f-0FF, tests/pr/b3f-FF, - tests/pr/b3l15-t, tests/pr/b3l17f-lm, tests/pr/b3l8f-t, - tests/pr/FF, tests/pr/Ja3l17f-lm, tests/pr/Jb3l17f-lm, - tests/pr/Jml17f-lm-lo, tests/pr/l17f-t, tests/pr/l24-FF, - tests/pr/l24-t, tests/pr/ml17f-0F, tests/pr/ml17f-lm-lo, - tests/pr/ml17f-t, tests/pr/ml17f-t-0F, tests/pr/ml20-FF-t, - tests/pr/ml24-FF, tests/pr/ml24-t, tests/pr/ml24-t-FF, - tests/pr/n+2-5l17f-0FF, tests/pr/n+2l17f-0FF, - tests/pr/n+2l17f-bl, tests/pr/n+3-7l24-FF, - tests/pr/n+3l17f-0FF, tests/pr/n+3l17f-bl, - tests/pr/n+3ml13f-bl-FF, tests/pr/n+3ml17f-bl-tn, - tests/pr/n+3ml17f-tn-bl, tests/pr/n+4-8a2l17-FF, - tests/pr/n+4b2l10f-0FF, tests/pr/n+5-8b3l10f-FF, - tests/pr/n+5a3l6f-0FF, tests/pr/n+6a2l17-FF, - tests/pr/n+6b3l6f-FF, tests/pr/n+7l24-FF, - tests/pr/n+8l20-FF, tests/pr/nJml17f-lmlmlo, - tests/pr/nJml17f-lmlolm, tests/pr/nl17f-bl, - tests/pr/nN1+3l17f-bl, tests/pr/nN15l17f-bl, - tests/pr/nSml13-bl-FF, tests/pr/nSml13-t-t-FF, - tests/pr/nSml13-t-tFFFF, tests/pr/nSml17-bl-FF, - tests/pr/nSml17-t-t-FF, tests/pr/nSml17-t-tFFFF, - tests/pr/o3a3l17f-tn, tests/pr/o3a3Sl17f-tn, - tests/pr/o3a3Snl17f-tn, tests/pr/o3b3l17f-tn, - tests/pr/o3b3Sl17f-tn, tests/pr/o3b3Snl17f-tn, - tests/pr/o3Jml17f-lm-lo, tests/pr/o3ml17f-bl-tn, - tests/pr/o3mSl17f-bl-tn, tests/pr/o3mSnl17fbltn, - tests/pr/Test.pm, tests/pr/W-72l17f-ll, tests/pr/W20l17f-ll, - tests/pr/W26l17f-ll, tests/pr/W27l17f-ll, - tests/pr/W28l17f-ll, tests/pr/W35a3l17f-lm, - tests/pr/W35b3l17f-lm, tests/pr/W35Ja3l17f-lm, - tests/pr/W35Jb3l17f-lm, tests/pr/W35Jml17f-lmlo, - tests/pr/W35ml17f-lm-lo, tests/pr/W72Jl17f-ll, - tests/pr/w72l17f-ll: - Adjust to minor spacing changes in pr headers. - -2001-03-11 Paul Eggert - - * src/sort.c (die): New message arg, to describe failures - better. All callers changed. - -2001-03-11 Paul Eggert - - * src/sort.c: Decrease buffer size when only merging or checking. - (sort_size): Now the user-specified sort size. - (MIN_MERGE_BUFFER_SIZE): New macro. - (MIN_SORT_SIZE): Use it. - (merge_buffer_size): New variable. - (fillbuf): Increase merge_buffer_size if a longer line is encountered. - (checkfp, mergefps): Do not allocate a buffer smaller than - merge_buffer_size. - (sort): Use the default_sort_size if sort_size is zero. - (main): Do not set sort_size to default_sort_size. - -2001-03-06 Paul Eggert - - * src/sort.c (sort): If all the input files are empty, create - an empty output file. - * tests/sort/Test.pm: Test for this. - -2001-03-13 Jim Meyering - - * src/sort.c (merge): Move declarations of local variables into - the inner scope where they're used. - (sort): Likewise. - -2001-03-06 Paul Eggert - - Avoid the need for a copy of the input file when the input and - output overlap, e.g. 'sort F -o F'. With -m, though, a copy - is still needed sometimes. - - * doc/textutils.texi: 'sort F -o F' no longer needs to copy F. - - * src/sort.c: Do not include closeout.h. - (xfopen): Use stdout if *how != 'r'. - (mergefps): Remove FPS arg. - Open all input files, and close all files when done. - If OFP is null, open the output file (but after opening input files). - All callers changed. - (first_same_file): New function. - (sort, merge): Remove arg OFP; we now open the output file as needed. - All callers changed. - (merge): New arg MAX_MERGE. All callers changed. - (sort): For "sort F -o F", close the input before opening the output. - (main): Do not use close_stdout; 'sort' and 'merge' now close stdout. - (This also fixes a close-stdout-twice bug.) - Remove test for overlapping input and output files, as 'sort' no longer - needs to worry about overlap, and 'merge' checks for overlap itself. - Use first_same_file to inform 'merge' about how much to merge at - the top level, to avoid overlap. - -2001-03-12 Jim Meyering - - `fmt --prefix=S' would not work properly for any string S containing - a byte with the high bit set. - * src/fmt.c (prefix): Declare to be of type unsigned char, not `char'. - (get_prefix): Likewise for local, `p'. - Reported by François Pinard. - - Add a test for the above-fixed problem. - * tests/fmt: New directory/files. - * configure.in (AC_OUTPUT): Add tests/fmt/Makefile. - * tests/Makefile.am (SUBDIRS): Add fmt. - -2001-03-05 Andreas Schwab - - * src/tac.c (save_stdin): Use mkstemp to create temporary file. - -2001-03-09 Jim Meyering - - * Makefile.maint (my_distdir): Define new variable, and use this - in place of most old uses of $(distdir). - - * tests/help-version: Ensure that /dev/full is a character device - (using test -c) as well as being writable, before trying to write to it. - Otherwise, the test could mistakenly append a newline to an existing, - regular, writable, /dev/full file. - Suggested by Ulrich Drepper. - -2001-03-08 Jim Meyering - - * tests/sha1sum/sample-vec: Insert the `--text' argument for each test. - Reported by Matthew Smith. - -2001-03-04 Jim Meyering - - * Makefile.maint (my_distdir): Define. - Use it in place of $(distdir) almost everywhere. - - * Version 2.0.12. - - * Makefile.maint (alpha): Use $(PACKAGE)-$(VERSION), not $(distdir), - since the latter now has a `$(top_distdir)/' prefix. - -2001-03-01 Paul Eggert - - * src/sort.c (die): New function. - (create_temp_file, xfopen, xfclose, write_bytes, sort_buffer_size, - fillbuf, main): Use it to regularize error messages. The only change - in behavior is that write_bytes and the final close used to say "write - error" but now give just the output file name, which should be enough. - -2001-03-01 Paul Eggert - - * src/sort.c (xfclose): Add FILE arg, and report the file name - on error. All callers changed. - -2001-03-01 Paul Eggert - - * src/sort.c (main): When fclose (stdin) fails, do not mention - the output file in the error message; mention "-" instead. - -2001-02-28 Paul Eggert - - * src/sort.c (xfopen): Set have_read_stdin to 1 only if file is "-". - Use fopen_safer, not fopen, to avoid subtle bugs when fopen returns - stdin, stdout, or stderr. - (xfclose): stdout is no longer a special case. - (main): Close output file, don't just flush it; there might be - an error on the close. - -2001-02-27 Paul Eggert - - * src/sort.c (initbuf): If the desired size cannot be - allocated, repeatedly halve it until allocation succeeds. - Reported by Solar Designer. - -2001-02-26 Paul Eggert - - * src/sort.c (parse_field_count): Comment fix. - -2001-02-25 Paul Eggert - - * src/sort.c: Tune allocation and comparison of nodes - representing temp files. This improved CPU performance of - 'sort -S 1 *.[ch]' by 17% on my host. - - (struct tempnode): name member now uses struct hack. - (temphead): Now a pointer, not a structure. All uses changed. - (create_temp_file): Allocate node using struct hack. - (zaptemp): Free node using struct hack. Use pointer comparison, not - string comparison. - -2001-02-25 Paul Eggert - - * src/sort.c (eolchar, trim_trailing_blanks): Now static. - -2001-02-25 Paul Eggert - - 'sort' race condition fixes. - - Defend against a DoS attack where someone else creates a - temporary file with the same name as ours. Use mkstemp to do - this, supplying our own mkstemp if the system doesn't have one. - - Also, fix a race condition during cleanup on hosts without - sigaction. - - * src/sort.c (NAME_MAX_IN_DIR): Remove. - (sigprocmask, sigset_t): New macros, defined only on older hosts. - (caught_signals): New var. - (xtmpfopen, tempname): Removed. - (create_temp_file): New function, combining the functions of the old - xtmpfopen and tempname. All callers changed. - Use mkstemp to create the file. - (sighandler): On hosts without sigaction, ignore signals while - cleaning up, instead of letting them interrupt cleanup. - (main): Initialize caught_signals. On hosts with sigaction, block all - caught signals while handling one. Remove duplicate code. - -2001-02-22 Jim Meyering - - * src/sort.c (keycompare): Move declarations of locals, lena and lenb, - into the inner scope where they are used. - -2001-02-19 Jim Meyering - - * src/sort.c (AUTHORS): Add Paul Eggert. - - * src/wc.c (wc): Rename innermost `buf' to avoid shadowing warning. - (wc): Rename local `wc' to avoid shadowing function name. - -2001-02-18 Paul Eggert - - Fix a race condition: freed storage accessed during a signal handler. - - * src/sort.c (struct tempnode.next): Now volatile. - (zaptemp): Free the file name after removing it from the temp list, - not before, because a signal can arrive between the two actions - and cleanup () traverses the list. - -2001-02-18 Paul Eggert - - Check for input size, and do not overallocate memory. - Also check for memory quotas. - - Revamp storage management so that line tables and character data are - taken from the same buffer. Line tables are now in reverse order, - since they grow down while the character data grow up. - - * src/sort.c: - (): Include if HAVE_SYS_RESOURCE_H. - (struct rlimit, getrlimit): Define a replacement if RLIMIT_DATA - is not defined. - (RLIMIT_AS): Define to RLIMIT_DATA if not defined. - (struct lines): Remove. - (struct buffer): New members nlines, line_bytes, eof. - Remove member newline_free; no longer needed, since the code no longer - runs out of line table space. - (SORTALLOC_MIN, SORTALLOC_DEFAULT_MIN): Remove. - (sort_size): Renamed from sortalloc; now applies to the sum of the - character data and the line table, not just the character data. - (MIN_SORT_SIZE, INPUT_FILE_SIZE_GUESS): New macros. - (linelength): remove. - (specify_sort_size): Don't worry about the distinction between the - character data and the line table; that is now the caller's - responsibility. - (default_sort_size): Return the value, instead of being executed for - side effect. Return half of available memory, or 1/16 of total memory, - whichever is greater; except do not exceed 1/2 of quota. - (sort_buffer_size): New function. - (initbuf): New arg LINE_BYTES. Ensure that the line array is properly - aligned. Initialize the new set of struct buffer members. - (buffer_linelim): New function. - (fillbuf): Return int, not size_t, since the callers merely care - whether the result is nonzero. New arg FILE so that error messages - can report the file name. Keep track of eof. Initialize the line - table too, taking its memory from the input buffer's memory; this - subsumes the old findlines function and removes the need for worrying - about running out of line table entries. - (checkfp, mergefps, sortlines, merge, sort): Adjust to the new storage - management regime, in particular the fact that line tables are now - filled in by fillbuf and are in reverse order. - (checkfp): Now takes char *, not const char *, since subroutines - require that now. Rewrite to avoid lint and duplicate code. - If line length alloc calculation overflows, - simply allocate enough memory to hold the line. - (mergefps): New arg FILES, used for buffer size calculation and error - messages. Rewrite to avoid lint. Do not loop if savealloc*2 - overflows. - (mergefps, merge): Zap temporary files eagerly rather than lazily; - this is needed because we now pass FILES to mergefps. - (sortlines): Args now point at end of arrays, not at beginnings. - (sort): Do not allocate temporary line array for sortlines; - instead, take the space from the same buffer. - (main): Adjust to sort_size and default_sort_size changes. - -2001-02-18 Jim Meyering - - Rename test input files to avoid conflicts on case-insensitive - file systems. - * tests/pr/2-Sf-t_notab: Rename from 2Sf-t_notab. - * tests/pr/2-S_f-t_notab: Rename from 2S_f-t_notab. - * tests/pr/W-72l17f-ll: Rename from W72l17f-ll. - * tests/pr/Test.pm: Update file names to reflect renamings. - Reported by Matthew Smith. - -2001-01-20 Jim Meyering - - * configure.in: Remove jm_CHECK_ALL_TYPES. - Now it's invoked by jm_MACROS. - -2001-01-17 Jim Meyering - - * src/cksum.c (main): Use PACKAGE, not GNU_PACKAGE. - * src/tsort.c (main): Likewise. - * src/sort.c (main): Likewise. - (usage): Convert each TAB in --help output to a sequence of 8 spaces. - -2001-01-07 Jim Meyering - - * src/tail.c (usage): Split a string that was longer than 2048 bytes. - -2001-01-03 Jim Meyering - - * src/sort.c (main): Remove embedded \n from diagnostic. - -2001-01-02 Jim Meyering - - * src/od.c (ulonglong_t): Define place-holder type to avoid some #if - directives. - (LONGEST_INTEGRAL_TYPE): Remove definition. - (MAX_INTEGRAL_TYPE_SIZE): Use ulonglong_t instead of - LONGEST_INTEGRAL_TYPE. - (print_long_long): Compile this function even on systems without - long long support. - (decode_one_format): Remove #if directive. - - * src/od.c (decode_one_format): Guard use of print_long_long with - `#if HAVE_UNSIGNED_LONG_LONG'. From Darren Salt. - Change all `#ifdef HAVE_UNSIGNED_LONG_LONG' to use `#if' instead. - -2000-12-23 Jim Meyering - - * src/sys2.h [HAVE_INTTYPES_H]: Include . - -2000-12-19 Jim Meyering - - * Version 2.0.11. - -2000-12-18 Paul Eggert - - * NEWS, doc/textutils.texi: New "sort" option -S SIZE. - - * src/sys2.h (UINTMAX_MAX): New macro, taken from C99. - - * src/sort.c: Include physmem.h. - (SORTALLOC, mergealloc, LINEALLOC): Remove. - (sortalloc): Default to zero at program startup. - (SORTALLOC_MIN, SORTALLOC_DEFAULT_MIN): New macros. - (usage, main): Add support for new -S SIZE option. - (specify_sort_size, default_sort_size): New functions. - (initlines): Do not let alloc exceed limit. - (findlines): Likewise. - (checkfp, mergefps, sort): Use sortalloc to size everything - else, instead of relying on precomputed sizes. - -2000-12-17 Jim Meyering - - * doc/texinfo.tex: Update from master repository. - * config.sub: Likewise. - * config.guess: Likewise. - -2000-12-11 Jim Meyering - - * Version 2.0.10. - -2000-12-07 Jim Meyering - - * src/od.c (address_base): Declare to be static. - -2000-12-06 Paul Eggert - - * src/od.c (address_base, address_pad_len): New var. - (output_address_fmt_string, address_fmt_buffer, address_pad): Remove. - (flag_pseudo_start): Now int, not long int. - (pseudo_offset): Now off_t, not long int. - (n_specs, n_specs_allocated): Now size_t, not unsigned int. - (format_address, format_address_none, format_address_std, - format_address_label): Now accepts an extra char argument (an extra - char to print if nonzero), and prints instead of returning a string. - All callers changed. - (bytes_per_block): Now size_t, not int. - (format_address_none): Do not even print the extra char argument. - This simplifies the callers. - (format_address_std, format_address_label): Print off_t ourself - instead of trying to use autoconfigured format. This is faster and - more portable. - (format_address_paren): New function. - (dump): Remove unnecessary cast. - (expand_address_fmt): Remove. - (main): Use size_t, off_t, etc. instead of builtin types where this is - advisable. Adjust to above changes. Remove unnecessary cast. - -2000-12-03 Jim Meyering - - * src/tail.c (tail_file): Initialize ignore, dev, and ino members, - when tailing forever and the open failed. Otherwise, we could get - uninitialized memory references of those fields in recheck. - * tests/tail-2/Makefile.am (TESTS): Add assert-2. - * tests/tail-2/assert-2: New file. - - * Version 2.0.9. - - Make od print valid addresses for offsets of 2^32 and larger, and - allow byte offset (-j) and byte count (-N) to be 2^32 and larger. - - * src/od.c (MAX_ADDRESS_LENGTH): Don't hard-code as a literal. - Rather, define in terms of the type, off_t. - (string_min): Declare to be of type size_t. - (flag_dump_strings): Declare to be of type int. - (print_s_char): Declare the n_bytes parameter and the local, `i', - to be of type off_t. - (print_char): Likewise. - (print_s_short): Likewise. - (print_short): Likewise. - (print_int): Likewise. - (print_long): Likewise. - (print_long_long): Likewise. - (print_float): Likewise. - (print_double): Likewise. - (print_long_double): Likewise. - (dump_hexl_mode_trailer): Likewise. - (print_named_ascii): Likewise. - (print_ascii): Likewise. - (write_block): Likewise. - (print_ascii): Declare local, `print_function' with a prototype. - Change a few `>' comparisons to the equivalent `<' form. - (parse_options): Declare `tmp' to be of type uintmax_t. - Use xstrtoumax, not xstrtoul. - Fail if the specified offset if larger than OFF_T_MAX. - (dump_strings): Declare local `i' to be of type size_t. - Remove the now-unnecessary cast-to-off_t. - (main) [IF_LINT]: Initialize desired_width to avoid a warning. - Declare `tmp' to be of type uintmax_t. - Use xstrtoumax, not xstrtoul. - Fail if minimum string length is larger than SIZE_MAX. - Fail if specified width is larger than ULONG_MAX. - - * src/od.c (format_address): Use off_t, not long unsigned_int as the - parameter type. - (format_address_none): Likewise. Mark parameter as unused. - (format_address_std): Likewise. - (format_address_label): Likewise. - (print_ascii): Mark format string parameter as unused. - (write_block): Use off_t, not long unsigned_int as offset type. - (expand_address_fmt): New function. - (main): Use it to expand each address format string template. - Reported by Mark Nudelman, via Andreas Jaeger. - - * src/sys2.h (OFF_T_MIN): Define here instead. - (OFF_T_MAX): Likewise. - (CHAR_BIT): Define. - - * src/tail.c (parse_options): Use xstrtoumax to parse the byte and line - offset. Give a better diagnostic when the requested offset is still - representable but larger than OFF_T_MAX. - (OFF_T_MIN): Remove definition. - (OFF_T_MAX): Likewise. - -2000-12-02 Jim Meyering - - * src/sort.c (checkfp): Rename local `buf' to avoid shadowing previous - declaration. - - * src/sort.c (NONZERO): Define and use it to make the code a tiny - bit more readable. - - * doc/textutils.texi (sort invocation): Clarify how -t works - when a sort key specifies a range of fields. From Karl O. Pinc. - -2000-11-26 Paul Eggert - - * src/od.c (skip): Use lseek instead of worrying about fseeko or fseek. - This should be portable, as we seek before doing any I/O. - (fseeko): Remove; no longer used. - -2000-11-30 Jim Meyering - - * src/sort.c: s/SIZE_T_MAX/SIZE_MAX/. - -2000-11-30 Paul Eggert - - * src/sys2.h: Include if HAVE_STDINT_H. - (SIZE_MAX): Renamed from SIZE_T_MAX, as C99 uses SIZE_MAX. - All uses changed. - -2000-11-30 Jim Meyering - - * src/sort.c: SIZE_MAX is not defined, so s/SIZE_MAX/SIZE_T_MAX/, and... - * src/sys2.h (SIZE_T_MAX): ... define. - -2000-11-29 Paul Eggert - - Port GNU "sort" to hosts where sizes don't fit in "int", - e.g. 64-bit Solaris (sparc). - - * src/sort.c ("human.h", "xstrtol.h"): Include. - (struct line): length member is now size_t, not int. - (struct lines): Likewise for used, alloc, limit members. - (struct buffer): Likewise for used, alloc, left, newline_free members. - (struct keyfield): Likewise for sword, schar, eword, echar members. - (sortalloc, mergealloc, linelength): Now size_t, not int. - - (initbuf, fillbuf, initlines, begfield, limfield, findlines, - numcompare, getmonth, keycompare, compare, checkfp, mergefps, - sortlines, sort): Accept, return, and use size_t for sizes, not int. - - (fillbuf, initlines, findlines, checkfp, sort): Check for overflow - when computing buffer sizes. - - (begfield, limfield): Do not index past end of array. - - (checkfp): Return a boolean, not a line number, as the line - number may not fit in int. All callers changed. Use - uintmax_t for line numbers, not int. - - (sort): Don't allocate tmp until we need it (and know the right size). - - (parse_field_count): New function. - - (main): Use it to check for overflow in field counts. - "outfile" is now a pointer to const. - -2000-11-27 Jim Meyering - - * src/checksum.h: Don't include system.h here. - * src/md5.c: Include config.h, stdio.h, sys/types.h. and system.h here - instead. - * src/sha1sum.c: Likewise. - -2000-11-18 Paul Eggert - - * src/pr.c (main): Do not assume EOF == -1. - Handle the case correctly when digits options immediately precede a - non-option. - -2000-11-18 Jim Meyering - - * doc/textutils.texi: Change GNU to @sc{gnu} in many places. - Update to use the Free Documentation Licence. - - * configure, config.h.in, Makefile.in, etc.: Regenerate using the - very latest version (in CVS) of autoconf. - -2000-11-17 Jim Meyering - - * GNUmakefile (.NOTPARALLEL): New target. Prevent unwanted parallelism. - Suggestion from Ulrich Drepper. - -2000-11-16 John David Anglin - - * tsort.c: Include sys/types.h before system.h. - -2000-11-16 Jim Meyering - - * src/join.c: Declare global `tab' to be of type *unsigned* char, - so join works with 8-bit delimiter characters. - Reported by Antonio Rendas. - * tests/join/Test.pm (8-bit-t): New test for the above fix. - -2000-11-13 Paul Eggert - - * src/sys2.h (ST_TIME_CMP_NS): Fix typo: ST_MTIM_NSEC should - be tested with #ifdef, not with #if. - -2000-11-11 Jim Meyering - - * doc/textutils.texi: More minor rewording and grammar correction. - From Brian Youmans. - -2000-11-06 Paul Eggert - - * src/od.c (skip): st_size is not defined for directories. - -2000-11-03 Jim Meyering - - * tests/sha1sum/sample-vec: New file, with tests derived from - http://csrc.nist.gov/cryptval/shs/sha1-vectors.zip - * tests/sha1sum/Makefile.am (TESTS): Add sample-vec. - -2000-10-30 Jim Meyering - - * configure, config.h.in, Makefile.in, etc.: Regenerate using the - very latest version (in CVS) of autoconf. - - * src/wc.c: Include "system.h" after wctype.h (not before) - to avoid a compilation error on Solaris 5.5.1 systems. - Reported by Vin Shelton. - -2000-10-23 Jim Meyering - - * Makefile.maint: Clean up version-related variables. - - * Version 2.0.8. - - * Makefile.am (EXTRA_DIST): Add .prev-version. - -2000-10-22 Jim Meyering - - * tests/Makefile.am (SUBDIRS): Add sha1sum. - * tests/sha1sum/basic-1: New file. - * configure.in (AC_OUTPUT): Add tests/sha1sum/Makefile. - - * src/Makefile.am (bin_PROGRAMS): Add sha1sum. - (md5sum_SOURCES): Define. - (sha1sum_SOURCES): Define. - (noinst_HEADERS): Add checksum.h. - - * src/md5sum.c: Factor out the differences between MD5 and SHA1, - and parameterize so this code may be used by both md5sum and the new - program, sha1sum. Loosely based on a patch from Scott Miller. - * src/checksum.h: New file. - * src/md5.c: New file that simply defines `algorithm'. - * src/sha1sum.c: Likewise. - - * man/Makefile.am (man_MANS): Add sha1sum.1. - * man/sha1sum.x: New file. - - Support 8-byte integers, assuming they're printable with e.g., %lld. - * src/od.c: Add support for printing data as unsigned - long long integers. - -2000-10-21 Jim Meyering - - The command, `yes ''|./cat -n' would stop printing after INT_MAX lines. - * src/cat.c (cat): Never let `newlines' exceed 3. - -2000-10-21 Jim Meyering - - Prevent a counter buffer overrun when numbering lines and when - processing 100 billion lines (or more) of input. - * src/cat.c (LINE_COUNTER_BUF_LEN): Define to allow numbering as - many as 10^18 - 1 lines (the old limit was 10^11 - 1, and could - be exceeded without too much trouble). Use this symbol rather - than hard-coding the constant everywhere. - (next_line_num): Rather than overrunning for input with more lines, - mark the line number by putting a `>' in the leftmost slot. - Patch by Jan Nieuwenhuizen. - - * src/sort.c (SORT_OUT_OF_ORDER): Define. - (main): Use it instead of hard-coding the `1'. - -2000-10-10 Jim Meyering - - * src/sort.c (main): Use EXIT_SUCCESS rather than 0. - Fail when checking (-c) with more than one file argument, - rather than simply ignoring the extra arguments. - -2000-09-07 Jim Meyering - - * src/cut.c: Remove obsolete comment block. - (usage): Note that when using -f, lines with no delimiters are - also printed. - * doc/textutils.texi (cut invocation): Likewise. - -2000-08-23 Jim Meyering - - * src/md5sum.c: Include unconditionally, to be consistent - with all the other programs in this directory. - * src/tsort.c: Likewise. - -2000-08-19 Jim Meyering - - * src/comm.c (writeline): Correct comments. From Bruno Haible. - -2000-08-11 Paul Eggert - - * doc/textutils.texi: - - Portable shell scripts should specify global options before - key fields. - - Move global LC_CTYPE remark to each sort option that depends - on LC_CTYPE. - - sort -g depends on LC_NUMERIC. - - Add @vindex where it's missing. - - "radix character" -> "decimal-point character", to match Standard C - terminology, which is easier for most people to follow. - - "comm" does not consider trailing newlines to be significant. - -2000-08-10 Paul Eggert - - * doc/textutils.texi: Recommend against the System V syntax - for tr ranges, and don't use it in examples. Use POSIX - classes rather than ranges, for portability. - * src/tr.c (usage): Don't describe System V syntax, as it - doesn't always work. - - * src/sort.c (usage): Describe -d and -i in a locale-independent way. - - * doc/Makefile.am (constants.texi): Use the C locale so that - [A-Z] works as expected. - -2000-08-07 Paul Eggert - - * src/cut.c (cut_fields): Invoke xalloc_die instead of printing - our own message. - (cut_fields): Check for I/O error as well as end-of-file - -2000-08-06 Bruno Haible - - * src/wc.c: Add support for multi-byte locales. - (iswprint, mbrtowc, wcwidth): Provide default definitions. - (total_bytes): New variable. - (print_bytes): New variable. - (longopts): Change abbreviation for --chars from 'c' to 'm'. - (usage): Update. - (write_counts): Add `bytes' argument. - (wc): New variables `bytes', `count_bytes', `count_chars', - `count_complicated'. The old code determines `bytes', not `chars'. - New case for MB_CUR_MAX > 1. A non-printable non-space character does - not increment the line position or start a word. Update `total_bytes'. - (main): Initialize `print_bytes' and `total_bytes' to 0. Accept 'm' - option. Pass `total_bytes' to write_counts. - * doc/textutils.texi (wc invocation): Update accordingly. - -2000-08-06 Bruno Haible - - * src/head.c (head): Call write_header here. - (head_file): ... not here. - - * src/cat.c (closeout_func): Remove variable. - (close_stdout_wrapper): Remove unused function. - (main): Remove assignment to closeout_func. - - * src/fold.c (fold_file): Remove ferror(stdout) check, already done - in close_stdout. - -2000-08-06 Paul Eggert - - * src/sort.c (usage): Warn more succinctly about the effects of - the locale on sort order. - -2000-08-06 Jim Meyering - - * Version 2.0g. - - * src/tail.c (pipe_lines): Declare local `cp' to be const. - -2000-08-04 Greg McGary - - * src/tail.c (pipe_lines): Add variable `nbytes' so we can free - `tmp' immediately after read loop. Don't process an empty file. - [This fixes a buffer-underrun error -- detected thanks to - bounded pointers -jmm] - -2000-08-05 Jim Meyering - - Fix buffer-overrun error. - * src/pr.c (init_header): Allocated buffer was sometimes too small. - Reported by Greg McGary (who found this bug using his - bounded-pointers-enabled gcc). - (init_header): Move declarations of several variables into the - inner scope where they are used. - * tests/pr/Test.pm (narrow-1): New test, for the above. - - * src/csplit.c (MAX): Remove definition (It's in sys2.h). - -2000-08-04 Jim Meyering - - * src/sort.c (main): Rename local `t' to `tmp_dir' to avoid shadowing - a previous local by that name. - (usage): Warn that GNU sort is now locale-aware, and suggest - people put LC_ALL=POSIX in their environment. - - * src/pr.c (store_columns): Remove conjunct that would dereference - an out-of-bounds pointer. Reported by Greg McGary (who found this - bug using his bounded-pointers-enabled gcc). - -2000-08-03 Jim Meyering - - * tests/Makefile.am.in ($(srcdir)/$x-tests): Use -I$(srcdir), not `-I.'. - (Makefile.am): Likewise. Reported by Greg McGary. - -2000-08-01 Jim Meyering - - * doc/textutils.texi (tr invocation): Note that ranges are not portable. - Update examples not to use ranges. - -2000-07-31 Jim Meyering - - * src/cut.c (cut_fields): Use `virtual memory exhausted', - not `Memory exhausted'. - -2000-07-30 Jim Meyering - - * src/help-version: Remove file. Move it to ... - * tests/help-version: ...here - * tests/Makefile.am (TESTS): Set to help-version. - (TESTS_ENVIRONMENT): Define. - (EXTRA_DIST): Add $(TESTS). - * src/Makefile.am (EXTRA_DIST): Remove help-version. - (TESTS): Remove definition. - (TESTS_ENVIRONMENT): Remove definition. - -2000-07-28 Paul Eggert - - sort's -T option can now appear multiple times. - Thanks to Charles Randall for suggesting this idea. - - * doc/textutils.texi, NEWS: Document this. - - * src/sort.c (temp_dir): Remove. - (temp_dirs, temp_dir_count, temp_dir_alloc): New vars. - (process_id): New var. - (usage): Describe new use of -T. - (add_temp_dir): New function. - (tempname): Use new temp_dirs array. - Do not discard information from the process-id or sequence - number, unless we have short file names. - (sighandle): Use process_id instead of getpid. - (main): Initialize process_id. - Add support for the new use of -T. - -2000-07-23 Jim Meyering - - * tests/head/Test.pm: Rename tests (and hence files) to have a short - enough prefix so that they're not truncated on 8+3 file systems. - Reported by Eli Zaretskii. - -2000-07-09 Jim Meyering - - * config.guess: Update from FSF. - * config.sub: Likewise. - -2000-07-02 Jim Meyering - - * Version 2.0f. - -2000-07-01 Jim Meyering - - * src/cut.c: Change type of global, field_1_bufsize, from int to size_t. - -2000-06-29 Jim Meyering - - * src/tr.c (find_bracketed_repeat): Add a cast to suppress a warning. - Reported by Gerhard Poul. - - * src/tail.c (enum): Remove comma from end of enumerator list. - From Gerhard Poul. - -2000-06-25 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Danish (da). - -2000-06-24 Jim Meyering - - * doc/textutils.texi: Lots of minor rewording and grammar correction. - From Brian Youmans. - - * tests/sum/basic-1: New file. - * tests/sum/Makefile.am: New file. - * configure.in (AC_OUTPUT): Add tests/md5sum/Makefile. - * tests/Makefile.am (SUBDIRS): Add sum. - -2000-06-22 Bruno Haible - - * src/sum.c (sysv_sum_file): Avoid overflowing 32-bit accumulator - on files whose bytes sum to 2^32 or larger. The smallest such file - contains 16,843,010 bytes, nearly all of which have the value 0xff. - -2000-06-22 Bruno Haible - - * src/cat.c (main): Correct a comment. - -2000-06-21 Jim Meyering - - * src/cut.c (getstr): Remove private (and out of date) version of - this function. - (cut_fields): Adjust caller to use the just-extended one in ../lib. - Reported by Paul Sauer. - -2000-06-20 Jim Meyering - - * src/uniq.c (main): Fix off-by-argc test, so +N-style options are - recognized once again. Reported by Geoff Keunning. - Fix typo in diagnostic: s/compare/skip/. - -2000-05-27 Jim Meyering - - * src/tail.c: Arrange to call close_stdout upon exit. - Don't close stdout explicitly. - (usage): Add missing backslash at end of line. - (write_header): Remove now-unused COMMENT parameter. - Update all callers. - -2000-05-24 Jim Meyering - - * src/head.c (head_file): Use STDIN_FILENO in place of `0'. - (main): Likewise. - -2000-05-20 Jim Meyering - - * src/cat.c: Arrange to call close_stdout upon exit. - Don't close stdout explicitly. Replace uses of global constant, - output_desc, with uses of STDOUT_FILENO. - - Arrange to call close_stdout upon exit. Don't close stdout explicitly. - * src/cksum.c: Likewise. - * src/comm.c: Likewise. - * src/csplit.c: Likewise. - * src/cut.c: Likewise. - * src/expand.c: Likewise. - * src/fmt.c: Likewise. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/join.c: Likewise. - * src/md5sum.c: Likewise. - * src/nl.c: Likewise. - * src/od.c: Likewise. - * src/paste.c: Likewise. - * src/pr.c: Likewise. - * src/ptx.c: Likewise. - * src/sort.c: Likewise. (but set exit status and file name, too) - * src/split.c: Likewise. - * src/sum.c: Likewise. - * src/tac.c: Likewise. - * src/tr.c: Likewise. - * src/tsort.c: Likewise. - * src/unexpand.c: Likewise. - * src/uniq.c: Likewise. - * src/wc.c:: Likewise. - -2000-05-13 Jim Meyering - - * src/help-version: Run each program successfully at least once. - -2000-05-12 Jim Meyering - - * src/head.c (string_to_integer): Restrict base to 10. - Reported by Joseph S. Myers. - * tests/head/Test.pm: Add a few tests for this. - - New option: --first-only - * src/unexpand.c (anonymous enum) [CONVERT_FIRST_ONLY_OPTION]: Define. - (long_options): Add `first-only'. - (main): Handle new option. - -2000-05-11 Jim Meyering - - * tests/unexpand/basic-1: New tests. - -2000-04-17 Bruno Haible - - * src/system.h [__BEOS__]: Ignore O_BINARY and O_TEXT. - -2000-04-16 Jim Meyering - - * src/tail.c: Prepare to remove option: --max-consecutive-size-changes. - Doesn't seem useful. - (usage): Remove description. - * doc/textutils.texi (tail invocation): Remove description. - -2000-04-12 Jim Meyering - - * src/tail.c (usage): Tweak --help output. Suggestions from Karl Berry. - - Move some macros into m4/. - * configure.in (_GNU_SOURCE): Don't define here. - (AC_SYS_LARGEFILE): Don't use here. - (AM_C_PROTOTYPES): Don't use here. - * acconfig.h: Remove now-unused file. - -2000-04-09 Jim Meyering - - * doc/textutils.texi: Include constants.texi. - (tail invocation): Use `@value's instead of referring to the - output of `tail --help' for defaults. - * doc/Makefile.am (constants.texi): New rule. - (EXTRA_DIST): Add constants.texi. - (MAINTAINERCLEANFILES): Add it here, too. - (textutils.dvi, textutils.info): Depend on constants.texi. - - * src/tail.c (usage): Clarify descriptions of the --max-* options. - From Karl Berry. - -2000-04-03 Jim Meyering - - * configure.in (AC_CHECK_HEADERS): Remove langinfo.h. Now it's in m4/. - (AC_CHECK_FUNCS): Remove nl_langinfo. Now it's in m4/. - -2000-03-17 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Slovenian (sl). - -2000-03-12 Jim Meyering - - Merge from fileutils. - * src/system.h "pathmax.h": Include. - : Include if appropriate. - : Likewise. - : Likewise. - : Likewise. - : Likewise. - (major, minor, makedev): Define if needed. - (struct utimbuf): Declare if missing. - (ST_BLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE): Define. - - * src/cksum.c (usage): Correct --help output. - Prompted by a report from Gregory Leblanc. - -2000-03-05 Paul Eggert - - * src/sort.c (struct buffer.newline_free): New member. - (initbuf, findlines): Set it. - (fillbuf): Do not double the size of a full buffer to append a newline - unless the buffer is known to be newline free. - -2000-03-05 Jim Meyering - - * Version 2.0e. - -2000-03-04 Jim Meyering - - Don't get failed assertion for `tail -f directory'. - * src/tail.c: Revert most of 1999-10-20 change. Instead, ... - (IS_TAILABLE_FILE_TYPE): Define to produce similar result. - (recheck): Use it here. - (tail_file): Use it here. - Reported by François Pinard. - - Once we encounter a file that is not of IS_TAILABLE_FILE_TYPE, - marke it as such and ignore it forever after. - * src/tail.c (struct File_spec): New member. - (recheck): Initialize new member. - (tail_file): Likewise. - (tail_forever): Skip the file if it's marked as ignorable. - -2000-03-03 Jim Meyering - - * src/sort.c (fillbuf): Move declaration of local, cc, into scope of - `while' loop where it's used. - -2000-03-02 Paul Eggert - - Big performance improvement when sorting many small files, - building on a suggestion by Charles Randall. - - * src/sort.c (fillbuf): Skip memmove if it would be a no-op, - as many memmove implementations are slow in that case. - Don't examine leftover bytes for eolchar, since they may be left - over from a previous file, and we want to read from this file. - - (sort): At end of file, if there is more input and buffer room, - concatenate the next input file. - -2000-02-29 Jim Meyering - - * src/join.c (make_blank): Add an explicit cast to `unsigned char *' - to placate HPUX's C compiler. Reported by Bob Proulx. - -2000-01-30 Jim Meyering - - * Version 2.0d. - - * Makefile.maint (my-distcheck): Depend on po-check, so I'll be warned - about any required changes at `make distcheck' time rather than at - `make alpha' time. - (writable-files): New target. - (my-distcheck): Depend on it. - (alpha): Likewise. - - * po/POTFILES.in: Add these: lib/makepath.c, lib/rpmatch.c, - and lib/same.c - -2000-01-29 Jim Meyering - - * configure.in: Remove lib-check for cposix now that we use - m4/isc-posix.m4. - (jm_LIB_CHECK): Use this even though the library checks aren't - required for this patchage (so all three lib/Makefile.in files - will be the same). - -2000-01-24 Mark Kettenis - - * src/tsort.c (exit_status): New variable. - (loop): New varibale. - (count_items, scan_zeroes): Change return type to int. - (detect_loop): Complete rewrite to correctly implement detection - of loops. Also change return type to int. - (recurse_tree): Stop if ACTION returns non-zero. This involves - changing the return type of this function and ACTION to int. - (walk_tree): Change return type of ACTION to int. - (tsort): Continue sort after a loop has been detected (and - broken). Set exit_status to 1 if a loop was detected. - (main): Use exit_status to determine exit code. - * tests/tsort/basic-1: Change expected output for cycle-1 and - cycle-2 tests. - -2000-01-23 Jim Meyering - - * configure.in (AM_FUNC_STRTOD): Move to m4/. - (AC_SUBST(POW_LIBM)): Likewise. - -2000-01-22 Jim Meyering - - * src/sort.c (keycompare): Use global, hard_LC_COLLATE in place of - local that is sometimes undeclared. - - * configure.in (ALL_LINGUAS): Add Brazilian Portuguese (pt_BR). - (AC_CHECK_HEADERS): Move these checks into m4/. - - * src/tr.c ("xstrtol.h"): Include. - (Filter): Rename from PFL. - (non_neg_strtol): Remove function. - (find_bracketed_repeat): Use xstrtoul instead of non_neg_strtol. - (squeeze_filter, set_initialize, main): Use size_t and ssize_t in - place of long and int in several decls. - (read_and_delete, read_and_xlate): Likewise, and remove assertion. - * tests/tr/Test.pm (o-rep-1, o-rep-2): New tests. - - * src/cut.c: Correct copying notice to use GPL, per author's request. - * src/paste.c: Likewise. - (AUTHORS): Add djm. - -1999-09-19 Bruno Haible - - * src/tr.c (PFI): Return `long', not `int'. - (PFL): Rename from PFI now that it returns long. - (squeeze_filter): Declare as `long': i, nr, out_len. - -2000-01-17 Paul Eggert - - Tweak sort performance. - - * src/sort.c (hard_LC_CTYPE): Remove. - (keylist): Renamed from keyhead. Now a pointer, not a - mostly-unused struct. All uses changed. - (findlines, keycompare, CMP_WITH_IGNORE, compare, checkfp, mergefps, - sort): Tune and use a more consistent style for reallocation. - (keycompare, main): Don't worry about LC_CTYPE; - it's buggy with multibyte chars anyway. - (compare): Invoke alloca (0) after each call to keycompare, - not just the ones that return nonzero. This avoids a memory - leak on architectures without builtin alloca that occurs - sometimes when a file contains all duplicate lines. - -2000-01-17 Paul Eggert - - * src/csplit.c (interrupt_handler, main): - Don't use SA_INTERRUPT to decide whether to call sigaction, as - POSIX.1 doesn't require SA_INTERRUPT and some systems - (e.g. Solaris 7) don't define it. Use SA_NOCLDSTOP instead; - it's been part of POSIX.1 since day 1 (in 1988). - * src/sort.c (sighandler, main): Likewise. - -2000-01-16 Jim Meyering - - * lib/Makefile.am: Merge with fileutils/lib/Makefile.am. - - * configure.in: Remove AM_FUNC_ERROR_AT_LINE, jm_FUNC_STRFTIME, - AC_FUNC_VPRINTF, and AC_FUNC_ALLOCA. Now they're in m4/. - -2000-01-15 Jim Meyering - - * configure.in (AC_REPLACE_FUNCS): Remove these: memcpy memset stpcpy - strpbrk strtol strtoul. Now that's in m4/. - - unexpand could infloop - * src/unexpand.c (TAB_STOP_SENTINEL): Define. - (unexpand): Use it instead of INT_MAX. - Declare column and pending to be `unsigned'. - Increment pending and column counters only if column is smaller - than TAB_STOP_SENTINEL. - * tests/Makefile.am (SUBDIRS): Add unexpand. - * tests/unexpand/basic-1: New tests for the above-fixed bug. - * configure.in (AC_OUTPUT): Add tests/unexpand/Makefile. - Reported by John Kodis. - -2000-01-12 Paul Eggert - - * src/sort.c (fillbuf): Avoid quadratic behavior with long lines. - Also, stop worrying about ancient memchr bug (misbehavior when - size is zero), since other code doesn't worry either. - -2000-01-11 Jim Meyering - - Sync lib/ directories of sh-utils, and textutils. - - * lib/Makefile.am (libfetish_a_SOURCES): Add getdate.y, posixtm.c, - basename.c, canon-host.c, readutmp.c, stripslash.c, xgetcwd.c, - xgethostname.c. - (noinst_HEADERS): Add getdate.h, group-member.h, posixtm.h, - pathmax.h, readutmp.h - - * lib/Makefile.am: s/tu/fetish/ - * src/Makefile.am: s/libtu/libfetish/ - -2000-01-10 Jim Meyering - - * Version 2.0c. - - * Makefile.maint (announcement): Include URLs for xdelta files. - (alpha): Use scp, not ncftp. - - * lib/Makefile.am (noinst_HEADERS): Add nanosleep.h. - -2000-01-08 Jim Meyering - - * Version 2.0b. - - More nits. - * src/cut.c (OUTPUT_DELIMITER_OPTION): Define this and use it - instead of `CHAR_MAX + n'. - * src/pr.c (PAGES_OPTION, COLUMNS_OPTION): Likewise. - -2000-01-07 Jim Meyering - - * tests/tsort/Makefile.am (TESTS_ENVIRONMENT): Add `pwd`/ prefix - to exported PATH value (though not strictly necessary, here). - * tests/md5sum/Makefile.am: Likewise. - - Nits. - * lib/memcasecmp.c: Use `#if' instead of `#ifdef' for `HAVE_CONFIG_H'. - Capitalize all macro parameters. - (memcasecmp): Ansideclify. - Don't cast away `const'ness of parameters. - * lib/strpbrk.c (strpbrk): Ansideclify. - Use `#if' instead of `#ifdef' for `HAVE_CONFIG_H'. - Suggestions from François Pinard. - -2000-01-06 Jim Meyering - - * tests/tail-2/assert: Tell the user just before sleeping for 7 seconds. - - * tests/tail-2/Makefile.am (TESTS): Remove fflush test. It didn't - test the losing behavior, and left a stray tail process to boot. - -2000-01-01 Jim Meyering - - * Version 2.0a. - - * lib/Makefile.am (lstat.c): Adapt rule to handle new parts of xstat.in. - -1999-12-12 Jim Meyering - - Move 120+ lines of stat.h-related macros from system.h (not shared) - to sys2.h, which is shared between fileutils, sh-utils, textutils. - * src/system.h: Move them from here... - * src/sys2.h: ... to here. - -1999-12-09 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Galician (gl). - -1999-12-06 Jim Meyering - - * tests/tail-2/fflush: New test for latest change. - * tests/tail-2/Makefile.am (TESTS): Add fflush. - -1999-10-26 Marc Boucher - - * src/tail.c (main): Flush stdout before switching to unbuffered mode - and calling tail_forever. Required only on Solaris 5.7 -- on other - systems, using setvbuf to switch to unbufferd mode does the flush. - -1999-11-22 Jim Meyering - - * lib/Makefile.am (DISTCLEANFILES): Put $(BUILT_SOURCES) here rather - than in $(MAINTAINERCLEANFILES). - - * src/tail.c (recheck): Handle a race condition (including - reuse) that would lead to a failed assertion. - Reported by Ken Pizzini. - (tail_forever): Record errno before using it in call to `error' - which might change it. - (tail_file): Likewise. - - New test for the above. - * tests/tail-2/assert: New file. - * tests/tail-2/Makefile.am: New file. - * tests/tail-2: New directory. - * tests/Makefile.am (SUBDIRS): Add tail-2. - * configure.in (AC_OUTPUT): Add tests/tail-2/Makefile. - -1999-11-05 Jim Meyering - - * src/system.h: Use HAVE_STRUCT_STAT_ST_BLKSIZE not HAVE_ST_BLKSIZE. - - * configure.in: Move some type/header/member tests into - m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) so they are shared by all of - fileutils, textutils, and sh-utils. - -1999-11-04 Paul Eggert - - * src/sort.c (SORTALLOC): New macro. - (sortalloc, mergealloc, LINEALLOC): Use it. - (sortalloc, mergealloc, linelength): Now const. - (sortalloc): Increase from 0.5 to 8 MB. - (mergealloc): Increase from 16 to 256 kB. - (LINEALLOC): Increase from 0.25 to 4 MB. - -1999-11-03 Paul Eggert - - * NEWS, doc/textutils.texi: - Do not consider newline to be part of a line when comparing lines - in `sort' and `comm'. POSIX.2 requires that we consider newline, - but this is a bug in the spec and the bug will likely be fixed. - * src/comm.c (compare_files): Likewise. - * src/sort.c (begfield, limfield, findlines, keycompare, compare): - Likewise. - * tests/sort/Test.pm: Update tests `use-nl' and `11d' to reflect - this change. - - * lib/linebuffer.c (readline): Do not leave room for an extra - byte after the newline; it's no longer needed. - * src/sort.c (sortalloc, mergealloc, fillbuf, checkfp, mergefps): - Likewise. - - * lib/memcoll.c (memcoll): The two arguments cannot be - adjacent any more, so remove the alloca/copy workaround for - that case. - -1999-11-03 Jim Meyering - - Fix so that `tail -fn 2 file' works again. - * src/tail.c (anonymous enum) [LONG_FOLLOW_OPTION]: Define. - (long_options): Use LONG_FOLLOW_OPTION here, instead of 'f'. - (main): Remove the `::' after the `f' in getopt_long string. - Add `case LONG_FOLLOW_OPTION' after `case 'f':'. - Based on a patch from Tim Waugh. - - * src/tail.c (anonymous enum) [RETRY_OPTION]: Define. - [MAX_UNCHANGED_STATS_OPTION]: Likewise. - [MAX_CONSECUTIVE_SIZE_CHANGES_OPTION]: Likewise. - [PID_OPTION]: Likewise. - (long_options): Use *_OPTION instead of CHAR_MAX + N. - (main): Likewise. - -1999-11-02 Jim Meyering - - * man/help2man: Import version 1.018. - * man/Makefile.maint ($(man_MANS)): Remove use of --name=... option. - * man/*.x: Include one-line summary in [NAME] section. - * man/Makefile.summ (cat-summary): Remove now-unused file. - * man/Makefile.am (EXTRA_DIST): Remove Makefile.summ. - * man/Makefile.maint: Include Makefile.summ with leading `-'. - This file is shared by fileutils and sh-utils, both of which still - have the file (albeit nearly empty now). - Suggestion for clean-up from Akim Demaille. - -1999-11-01 Jim Meyering - - * lib/Makefile.am (MAINTAINERCLEANFILES): Set to $(BUILT_SOURCES). - -1999-10-20 Jim Meyering - - * src/tail.c (recheck): Don't refuse to tail a non-regular, non-pipe. - (tail_file): Likewise. - -1999-10-07 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Japanese (ja). - -1999-10-04 Jim Meyering - - * depcomp: New file, for automake's new dependency support. - * missing: New version, from automake's user-dep-gen-branch. - -1999-09-28 Jim Meyering - - * src/system.h: Update from the system.h from fileutils. - - * lib/error.c (error_at_line): Use strerror portably here, too, - just as was done in error. - -1999-09-02 Jim Meyering - - * src/cut.c: Remove xstrdup declaration. - * src/sort.c: Likewise. - * src/tsort.c: Likewise. - -1999-08-22 Jim Meyering - - * src/tsort.c (detect_loop): There's no loop if k->top is NULL. - Niklas Edmundsson showed how to make tsort segfault. - - * tests/tsort/Makefile.am: Rewrite to use Fetish.pm-based framework. - * tests/tsort/basic-1: New file. - Add a few more tests. - * tests/tsort/Test.pm: Remove. - - * man/help2man: Escape backslashes so tr's manual comes out right. - Reported by Andreas Schwab. - - * src/tsort.c (usage): Correct address for bug reports. - (tsort): Remove trailing `\n' in error format. - - * src/md5sum.c (md5_check): Remove trailing `\n' in error format. - - * src/sys2.h (IF_LINT): Define new macro. - * src/od.c (dump): Use IF_LINT macro instead of #ifdef lint... - (main): Likewise. - * src/paste.c (paste_parallel): Likewise. - * src/pr.c (read_line): Likewise. - * src/sort.c (checkfp): Likewise. - (mergefps): Likewise. - - * src/cksum.c (cksum): Constify a char*. - * src/comm.c (writeline): Likewise. - - * src/uniq.c (check_file): Move declarations of local variables - into the scopes where they're used. - (min): Remove macro definition. - (different): Use MIN, not min. - (SWAP_LINES): New macro. - (check_file): Use it here. - - * src/uniq.c (check_file): Generate each line of output earlier, - when possible. It is possible when using none of these options: - --count, -repeated, --all-repeated, --unique. - Based on a patch from Ian Turner. - -1999-08-15 Jim Meyering - - * src/tail.c (ENOSYS): Define to a bogus value if not already defined. - -1999-08-13 Eli Zaretskii - - * src/tail.c (parse_options): Warn if --pid=PID is used and kill() - returns ENOSYS (e.g. when compiled with DJGPP). - -1999-08-13 Jim Meyering - - * src/tsort.c (usage): Use consistent bug-reporting address. - - * tests/tsort/Test.pm: New file. - * tests/tsort/Makefile.am: New file. - * tests/tsort: New directory. - * tests/Makefile.am (SUBDIRS): Add tsort. - * configure.in (AC_OUTPUT): Add tests/tsort/Makefile. - -1999-08-11 Paul Eggert - - * doc/textutils.texi: Document how to ignore newline during sort. - -1999-08-07 Jim Meyering - - * po/POTFILES.in: Add lots of lib/*.c files. Remove src/system.h. - -1999-08-06 Jim Meyering - - * Version 2.0. - - * src/sort.c: Include file name in `write error' diagnostics. - (write_bytes): Add output_file parameter and use it. Update callers. - (mergefps): Likewise. - (merge): Likewise. - (sort): Likewise. - Reported by John Summerfield. - -1999-08-05 Jim Meyering - - * src/tail.c (Follow_mode): Remove comma at end of enumerator list. - Reported by Kaveh Ghazi. - - * config.sub: Update from autoconf. - * config.guess: Update from autoconf. - -1999-08-04 Jim Meyering - - * Version 1.22q. - - * configure.in: Remove inadequate getline-testing code. md5sum would - segfault on HPUX because of the getline function in their C library. - Use the AM_FUNC_GETLINE test in m4/ instead. - -1999-08-03 Jim Meyering - - * src/tail.c (tail_forever): When following by name and calling recheck - because of exceeding max_n_consecutive_size_changes_between_opens, - `continue' so we don't fall through and (assuming the file finally grew) - get the erroneous `file truncated' message. This was hard to reproduce. - -1999-08-01 Jim Meyering - - * Version 1.22p. - - * configure.in (AM_C_PROTOTYPES): Move test to precede a few - header tests -- merely on principle. - -1999-08-01 Paul Eggert - - * configure.in (AC_SYS_LARGEFILE): Renamed from AC_LFS. - -1999-07-16 Paul Eggert - - * lib/quotearg.c (quotearg_buffer): - Don't quote spaces if C quoting style. - -1999-07-31 Jim Meyering - - * src/tail.c (tail_forever): Don't call kill if pid is 0. - Detect when `writer_is_dead' also when the writer is some other user. - From Karl Heuer. - - * src/tail.c (parse_options): Warn if --pid=PID is used without -f. - -1999-07-30 Jim Meyering - - * Version 1.22o. - - * src/tail.c: New option: --pid=PID. - Include signal.h for kill prototype. - (pid): New global. - (long_options): Add `pid'. - (usage): Describe it. - (tail_forever): Implement it. - (parse_options): Handle the new option and required arg. - Suggestion and pseudo-code from Karl Heuer. - -1999-07-27 Jim Meyering - - * lib/linebuffer.c: Include now that linebuffer.h uses - size_t. This is required on at least SunOS4. From Kaveh Ghazi. - -1999-07-26 Jim Meyering - - * src/sys2.h (PID_T_MAX): Define. - - * src/tail.c (struct File_spec) [n_stat_calls]: Remove unused member. - -1999-07-25 Jim Meyering - - * src/pr.c (usage): Remove `NEWS'-style paragraph (sorry to have - let that in, translators). - - * Version 1.22n. - -1999-06-01 Volker Borchert - - * tests/Makefile.am: Make envvar-check depend on check-recursive rather - than on `check' so that its tests are performed before any real tests. - -1999-07-20 Jim Meyering - - * configure.in (AC_REPLACE_FUNCS) Remove memmove, now that it's - AC_REPLACE...'d in m4/jm-macros.m4. - - * src/wc.c (posixly_correct): Declare global. - (write_counts): Use it to select printf formats. - (main): Set posixly_correct from the POSIXLY_CORRECT envvar. - From Peter Moulder. - -1999-07-15 Jim Meyering - - * tests/md5sum/Makefile.am: Revert the 1999-02-15 change. - * tests/md5sum/basic-1, newine-1: Add --text for each individual test. - Reported by Eli Zaretskii. - -1999-07-12 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Slovak (sk). - -1999-07-11 Jim Meyering - - * src/tail.c (recheck): Use assert instead of unnecessary close_fd. - Remove a couple of unnecessary FIXME comments. - -1999-07-10 Jim Meyering - - * doc/textutils.texi: Document new tail options. - - * src/tail.c (struct File_spec) [tailable]: Rename from `missing' and - document. Change all uses and locals like was_missing to was_tailable. - Invert expressions as appropriate. - (reopen_inaccessible_files): Rename from allow_missing. - (sleep_interval): Describe. - (--allow-missing): Deprecate. - (--retry): New option, equivalent to --allow-missing. - (usage): Document name vs. descriptor differences. - Refer to manual for descriptions of --max-unchanged-stats=N - and --max-consecutive-size-changes=N. - (valid_file_spec): New function. - (recheck): Assert valid_file_spec. - Remove dead else-if block (suggestion from Eli Zaretskii). - Adjust stmts that set f->tailable -- unlike for `missing', tailable - doesn't depend on errno == ENOENT. - (parse_options): Give a warning if --retry is used when not following - by name. - - * tests/join/Test.pm: New test case (but commented out) for - Paul's 1999-06-01 fix. - -1999-07-09 Jim Meyering - - * configure.in (ALL_LINGUAS): Add Greek (el). - -1999-07-04 Jim Meyering - - * tests/join/Test.pm: New test case for Paul's 1999-06-03 fix. - -1999-07-03 Eli Zaretskii - - * src/tail.c (struct File_spec): New member, errnum. - (recheck): Record the new value of errno in f->errnum. Don't - output an error message unless the new value of errno differs from - the old one. Output a message if previously-inaccessible file - becomes accessible. - (tail_forever): Always recheck files whose fd is negative. If the - file cannot be fstat'ed, record the errno value in f[i].errnum. - (tail_file): If the file cannot be open, record the errno value in - f->errnum. If it can be opened, initialize f->errnum to zero. If - it's a non-regular non-fifo file, initialize f->errnum to -1. - -1999-06-21 Jim Meyering - - * doc/textutils.texi: Use lower case characters in sc{} context. - Reported by Eli Zaretskii. - -1999-06-03 Paul Eggert - - * src/join.c (xfields): Only s separate fields, not s. - -1999-06-01 Paul Eggert - - * lib/linebuffer.c (readline): Leave room for an extra byte - after the newline; comm needs this for memcoll. - -1999-06-01 Paul Eggert - - Add LC_COLLATE support to `join'. - - * doc/textutils.texi: Describe join and LC_COLLATE. - - * src/join.c: Add support for LC_COLLATE locale. - Include hard-locale.h, linebuffer.h, memcoll.h. - (struct line): New member `buf', replacing `beg' and `lim'. - All uses changed. - (hard_LC_COLLATE): New var. - (main): Initialize it. - (get_line): Use readline to read the line, - instead of doing it by hand. - That way, we get a buffer that we can pass to memcoll. - (keycmp): Use memcoll to compare lines if hard_LC_COLLATE is nonzero. - -1999-05-27 Volker Borchert - - * tests/Makefile.am: Qualify .env-warn with $(srcdir)/ prefix. - -1999-05-25 Paul Eggert - - Add LC_COLLATE support to `comm', so that `comm' is compatible - with `sort' in nontrivial locales. - - * doc/textutils.texi: Document locale-specific mode for comm. - - * lib/Makefile.am (libtu_a_SOURCES): Add hard-locale.c, memcoll.c. - (noinst_HEADERS): Add hard-locale.h, memcoll.h. - - * src/comm.c: Include hard-locale.h, memcoll.h. - (hard_LC_COLLATE): New variable. - (compare_files): Use memcoll to compare if hard_LC_COLLATE. - (main): Initialize hard_LC_COLLATE from locale. - - * src/sort.c: Include hard-locale.h, memcoll.h. - (hard_LC_COLLATE, hard_LC_CTYPE, hard_LC_TIME): New variables, - replacing `need_locale'. - (memcoll): Move to lib/memcoll.c. - (keycompare): No need to alloc (0), since our caller now does it. - (compare): alloca (0) before returning. - (my_setlocale): Remove; hard_locale now dows this. - (main): Invoke setlocale, bindtextdomain, and textdomain before - invoking anything that might print an error. - Use hard_locale to determine which locales are hard. - - * lib/hard-locale.c, lib/hard-locale.h, lib/memcoll.c, lib/memcoll.h: - New files. - -1999-05-25 Paul Eggert - - * lib/linebuffer.c (readline): - Append trailing newline to line. - * lib/linebuffer.h - [struct linebuffer] (size): Declare to be of type size_t, not long. - [struct linebuffer] (length): Likewise. - * src/comm.c, (writeline): Lines now contain trailing newline. - * src/uniq.c (find_field, different): Use size_t, not int, for lengths. - (writeline): Lines now contain trailing newline. - (check_file): Use size_t, not int, for lengths. - * src/nl.c (proc_text, check_section, main): More of the same. - - * lib/linebuffer.h (struct linebuffer): Use size_t for sizes. - src/nl.c (header_del_len, body_del_len, footer_del_len, main): - Likewise. - src/uniq.c (find_field, different, check_file): Likewise. - - * lib/linebuffer.c (readline): Silently append trailing - newline if needed. Do not bother setting buffer length to 0 - at EOF, since it's not part of the spec and nobody relies on - it. Do not compute the difference between unrelated pointers. - -1999-05-25 Paul Eggert - - * src/tac.c (memrchr): Ifdef out this unused function. - -1999-05-25 Jim Meyering - - * doc/textutils.texi (Squeezing): Remove misleading square brackets - from SET1 in the one-word-per-line example. - -1999-05-22 Jim Meyering - - * lib/Makefile.am (libtu_a_SOURCES): Remove memchr.c. - From Ulrich Drepper. - - * Version 1.22m. - -1999-05-22 Paul Eggert - - * doc/textutils.texi: Document locale-specific changes to `sort', - as well as the new, POSIX-compliant definition of line comparison, - and -g's more careful treatment of NaNs, infinities and zeros. - - * src/sort.c (general_numcompare): Put exceptional cases - first, not last, to be consistent with -M. - -1999-05-21 Paul Eggert - - * src/sort.c (strtod): Declare if STDC_HEADERS is not defined. - (general_numcompare): Use strtod, not xstrtod. - Do not consider partial conversions to be errors. - Put -infinity at the start, and +infinity at the end; - follow +infinity with NaNs (sorted by bit pattern), - and finally by conversion errors. - -1999-05-21 Jim Meyering - - * tests/sort/Test.pm (11d): Reverse lines in expected output - to reflect latest change. - (use-nl): New test from Paul Eggert. - -1999-05-20 Paul Eggert - - * src/sort.c: Treat the trailing newline as part of the line, - as required by POSIX.2. - - (struct line, findlines, compare, checkfp, mergefps, sort): - A line now includes its trailing newline. - (findlines): Do not replace newline with NUL. - (memcoll, keycompare): Work even if the data to be compared are - adjacent strings; this is possible now that lines contain the - trailing newline. - (fillbuf): Always have an unused byte at the end of the buffer, - since memcoll and keycompare want to modify a byte after the last line. - (sortalloc, mergealloc): Increase by 1, for trailing byte. - -1999-05-20 Jim Meyering - - * tests/sort/Test.pm: Add test case from Paul Eggert. - -1999-05-20 Paul Eggert - - * src/sort.c (keycompare): Ignore any length difference if the - localized comparison says the strings are equal. - - * src/sort.c (memcoll, keycompare, compare): Handle NUL - characters properly when comparing with LC_COLLATE semantics. - (NLS_MEMCMP): Remove. - (memcoll): Renamed from strncoll. - Take separate lengths for each string. - This function is now invoked only when need_locale. - (keycompare): Don't copy strings when ignore and translate - are both NULL. - -1999-05-18 Paul Eggert - - * src/sort.c (MONTHTAB_CONST): Renamed from NLS_CONST; the use - is also changed. Define to const also if !HAVE_NL_LANGINFO. - - (usage): `,' -> `;' (English typo). - -1999-05-17 Eli Zaretskii - - * src/cat.c (main): When stdout is in binary mode, make sure all - input files are also read in binary mode. - -1999-05-16 Jim Meyering - - * Version 1.22l. - -1999-05-11 Paul Eggert - - * src/sort.c: Don't autodetect the locale of numbers and - months, as this conflicts with POSIX.2 and is tricky to boot. - - (FLOATING_COMMA, NLS_STRNCMP, NLS_MAX_GROUPS, - NLS_ONE_CHARACTER_STRING): Remove macros no longer used. - - (nls_grouping, nls_fraction_found, nls_month_found, nos_monthtab, - nls_months_collide, nls_keyhead, us_monthtab): Remove variables no - longer used. - - (struct nls_keyfield): Remove types no longer used. - - (strncoll_s2_readonly, nls_set_fraction, look_for_fraction, - nls_month_is_either_locale, nls_numeric_format): Remove functions no - longer used. - - (monthtab): Now has the role that us_monthtab had, but it's const only - if ENABLE_NLS is not defined. - - (C_DECIMAL_POINT): Renamed from FLOATING_POINT. All uses changed. - (MONTHS_PER_YEAR): Renamed from NLS_NUM_MONTHS. All uses changed. - (struct_month_cmp): Renamed from nls_sort_month_comp. All uses changed. - Use strcmp, not strcoll, since the user doesn't care about collating - here. - - (inittables): Read locale data into monthtab, rather than modifying a - separate month table and futzing with indirection. Do not worry about - colliding months, since we no longer autodetect month locale. - - (fraccompare): Don't set no-longer-used variable nls_fraction_found. - - (getmonth): Use strncmp to compare months, since user doesn't care - about collating here. Fix bug where code incorrectly assumed that - strlen (monthtab[lo].name) == strlen (monthtab[ix].name). - - (keycompare, main): Don't autodetect month locale. - - (compare): Don't use NLS_MEMCP in code that can't be executed if - need_locale is false, as NLS_MEMCP is equivalent to memcmp in that - case. - - (sort, insertkey, main): Don't autodetect numeric locale. - -1999-05-15 Jim Meyering - - * tests/join/Test.pm (trailing-sp): New test for this fix. - * src/join.c (xfields): Don't interpret a trailing blank as a - delimiter when e.g. -t: was specified. From Tim Smithers. - -1999-05-12 Jim Meyering - - * tests/Makefile.am (envvar-check): Renamed from check-local. - (check): Depend on envvar-check so the envvar check is performed - before all other tests. Reported by Volker Borchert. - * tests/.env-warn: Use `%%' place-holder that Makefile.am rule expects, - so CDPATH is mentioned in the message. Reported by Volker Borchert. - -1999-05-11 Jim Meyering - - * src/sort.c (usage): Split the --help message into two pieces so that - neither is longer than 2048. For Irix4's cc. Reported by Kaveh Ghazi. - -1999-05-09 Jim Meyering - - * lib/regex.c: Update from libc. - - * Version 1.22k. - - * Makefile.maint (alpha): Put the announcement in - /tmp/announce-$(distdir) - - * tests/sort/Test.pm (neg-nls): New test. - -1999-05-08 Jim Meyering - - * src/system.h (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, - and all the *_MIN and *_MAX symbols): Remove definitions. - * src/sys2.h: Put the definitions here instead (this file is shared - between all three *utils packages, while system.h is not). - -1999-05-06 Paul Eggert - - * src/sort.c (fraccompare, numcompare): Merge the NLS and - non-NLS versions into a single function. - - (decimal_point): Now char, since we no longer convert to unsigned - char. - (th_sep): Now int, since we use a value out of char range to denote - the absence of a thousands separator. - (IS_THOUSANDS_SEP): New macro. - (USE_NEW_FRAC_COMPARE): Remove. - (nls_set_fraction): Arg is now char, not unsigned char. - Set th_sep to CHAR_MAX + 1 if there is no thousands separator. - (numcompare): Don't convert to unsigned char unless necessary. - (main): Turn off decimal points and thousand separators if they - are multibyte characters, as we don't support that yet. - -1999-05-06 Paul Eggert - - * src/system.h (CHAR_MIN, CHAR_MAX): New macros. - (SCHAR_MIN, SCHAR_MAX): Don't assume that char is signed. - -1999-05-06 Paul Eggert - - * src/sort.c (numcompare): Handle comparison of two negative - numbers correctly in the ENABLE_NLS case. - -1999-05-04 Jim Meyering - - * src/pr.c (usage): Break the usage message into 3 pieces instead of - only 2. The strings had grown to be longer than 2048, which evokes - errors when compiling with Irix4's cc. Reported by Kaveh Ghazi. - - * src/tsort.c (search_item): Use `1' instead of `+1'. The latter - elicits a syntax error from SunOS4's cc. From Kaveh Ghazi. - -1999-05-03 Jim Meyering - - * src/ptx.c : Don't include. - [!STDC_HEADERS]: Remove definitions of ctype macros. - Convert e.g., isspace to ISSPACE to use definitions from sys2.h. - Reported by Kaveh Ghazi. - - * src/sys2.h (TOLOWER): Define. - (TOUPPER): Define. - * src/join.c (TOLOWER): Remove definition. - * src/md5sum.c (TOLOWER): Remove definition. - -1999-04-30 Jim Meyering - - * src/sort.c (usage): Document the differences between the - obsolescent, +POS1[-POS2] form, and the POSIX -k option. - -1999-04-24 Jim Meyering - - * configure.in: Use AC_CANONICAL_HOST. - - * lib/Makefile.am (libtu_a_SOURCES): Add xstrtoumax.c - (noinst_HEADERS): Remove xstrtoul.h. - - * src/csplit.c: Include new "xstrtol.h", not "xstrtoul.h". - (struct control) [repeat]: Declare as uintmax_t, not int. - (struct control) [lines_required]: Likewise. - (handle_line_error): Use human_readable to print lines_required. - (parse_repeat_count): Parse a uintmax_t. - (parse_patterns): Parse a uintmax_t. - - * src/tail.c: Include new "xstrtol.h", not "xstrtoul.h". - * src/od.c: Likewise. - - * src/head.c: Include new "xstrtol.h", not "xstrtoul.h". - Change all U_LONG_LONG to uintmax_t. - (head_lines): Move a couple dcls into an inner scope. - (string_to_integer): Rename from string_to_ull. - -1999-04-19 Jim Meyering - - * Makefile.maint (b_host): Remove /pub suffix. - -1999-04-18 Jim Meyering - - * Version 1.22j. - - * Makefile.maint (my-distcheck): Use AMTAR, not TAR. - - * src/sort.c (usage): s/DIRECT/DIRECTORY/g - Rename global: s/temp_file_prefix/temp_dir/. - (NAME_MAX_IN_DIR): Rename from PATH_MAX_IN_DIR. Use _POSIX_NAME_MAX, - not _POSIX_PATH_MAX. Guard with #if HAVE_PATHCONF rather than - #if HAVE_UNISTD_H. - (tempname): Wrap after 99999 only for length-impaired file systems. - -1999-04-17 Jim Meyering - - * src/tail.c (file_lines): Fix serious bug introduced with last changes. - From Andreas Schwab. - -1999-04-15 Jim Meyering - - * tests/Makefile.am (EXTRA_DIST): Rename .posix-warn to .env-warn. - (check-local): Warn about CDPATH in the same way - we warn about POSIXLY_CORRECT, since the cp/same-file test fails at - least when using bash with CDPATH set. Reported by Mark Hewitt. - - * src/pr.c Add comments. - (init_header): Tweak white space in Date/Time header. - * tests/pr/Test.pm: Updated all tests to reflect the big - 1999-02-13 change. From Roland Huebner. - -1999-04-12 Jim Meyering - - * src/cat.c (main): Declare out_dev to be of type dev_t, not `int'. - Declare out_ino to be of type ino_t, not `int'. - From John Bley. - - * src/od.c (MIN, MAX): Remove definitions. - * src/sys2.h (MIN, MAX): Define here instead. - Reported by John Bley. - -1999-04-11 Jim Meyering - - * Version 1.22i. - - * tests/pr/Test.pm (test_vector): Disable all tests while I wait for - an updated suite. - - Fix the problem whereby `yes > k & sleep 1; tail -2c k' would infloop. - * src/tail.c (COPY_TO_EOF): Define. - (dump_remainder): Add parameter, n_bytes, and rewrite to use it. - Update callers. - (file_lines): Rename parameter. - (tail_bytes): Remove obsolete comment. - - Fix the problem whereby `yes > k & sleep 1; tail -1 k' would infloop. - * src/tail.c (dump_remainder): Move this function to precede the - new use in file_lines. - (tail_lines): Don't call dump_remainder here. - (file_lines): Call dump_remainder here instead. - Reported by Lehti Rami. - - * lib/readtokens.c (readtoken, readtokens): Protoize. - -1999-04-10 Jim Meyering - - * src/tail.c (xwrite): Use STDOUT_FILENO instead of literal `1'. - -1999-04-04 Jim Meyering - - * src/cat.c: Standardize --help and --version processing. - * src/comm.c: Likewise. - * src/csplit.c: Likewise. - * src/cut.c: Likewise. - * src/expand.c: Likewise. - * src/fmt.c: Likewise. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/join.c: Likewise. - * src/md5sum.c: Likewise. - * src/nl.c: Likewise. - * src/od.c: Likewise. - * src/paste.c: Likewise. - * src/pr.c: Likewise. - * src/ptx.c: Likewise. - * src/split.c: Likewise. - * src/sum.c: Likewise. - * src/tac.c: Likewise. - * src/tail.c: Likewise. - * src/tr.c: Likewise. - * src/unexpand.c: Likewise. - * src/uniq.c: Likewise. - * src/wc.c: Likewise. - -1999-03-29 Jim Meyering - - * configure.in (GNU_PACKAGE): Remove related code -- now it's in - the catch-all for shared autoconf code, m4/jm-macros.m4. - (jm_CHECK_ALL_TYPES): Remove explicit AC_TYPE_* macros and use - this instead. - -1999-03-26 Jim Meyering - - * lib/Makefile.am (libfu_a_SOURCES): Add version-etc.c. - (noinst_HEADERS): Add version-etc.h. - -1999-03-25 Jim Meyering - - * src/tail.c (recheck): Factor out a block of duplicated code. - Set f->size to 0 upon encountering a new file so we read it from - the beginning rather than from the end of the first line or - block. Otherwise, after a log rotation, tail would omit the first - line or block of the new file. Reported by Ed Avis. - -1999-03-20 Jim Meyering - - * tests/Makefile.am (SUBDIRS): Temporarily remove pr. - -1999-03-13 Jim Meyering - - * src/tac.c (tac_mem): `#if-0'-out this unused function. - (tac_stdin_to_mem): Likewise. - - * doc/textutils.texi (cut invocation): Describe --output-delimiter. - -1999-03-12 Jim Meyering - - * src/sys2.h (SETVBUF): Define new macro. - * src/tail.c (dump_remainder): Don't fflush stdout here. - (main) [if forever]: Make stdout unbuffered, instead. - Akim Demaille pointed out that when running `echo x>a; tail -f a>>a' , - the file `a' didn't grow longer than two lines. Now it grows - without bound. - -1999-03-07 Jim Meyering - - * tests/md5sum/newline-1: Test for the actual feature. - With help from Eli Zaretskii. - - * src/pr.c (usage): Add missing \n\. - - The newline test would always fail on MSDOS/Windows systems -- - so move it to a separate file where we can test for that. - * tests/md5sum/basic-1: Remove newline test. - * tests/md5sum/newline-1: New file. - * tests/md5sum/Makefile.am (TESTS): Add newline-1. - Pointed out by Eli Zaretskii. - - 1999-02-13 Roland Huebner - * src/pr.c - (main): Redefine options -s, -w to be POSIX compliant; introduce - new options -J, -S, -W to disentangle -s and -w when used together - with the three column options; - (add_line_number): Make POSIX compliant; use default number - separator TAB with single column output. - (add_line_number): Make POSIX compliant; with multicolumn output - now prefer `text columns of equal width' rather than a consequent - use of `default n-separator TAB'. - (add_line_number): Change line number cut-off from lower-oder to - higher-oder digit to avoid loss of information; no consequent - handling exists in different utilities and other UNIXes. - (char_to_clump): Expand input text tabs to 8 spaces, if - input_tab_char doesn't equal TAB (adapted to other UNIXes). - (usage): Update POSIX compliant options -s, -w; add new options -J, - -S, -W. - (main): Update the source internal documentation. - Some smaller BUGFIXES (print_sep_string, init_header, skip_to_page, - reset_status, print_header). - - * tests/md5sum/basic-1 (backslash): Use .\foo instead of \.foo so we - don't tramp on root directory in MSDOS/Windows. - Suggestion from Eli Zaretskii. - - 1999-02-15 Eli Zaretskii - - * tests/md5sum/Makefile.am (TESTS_ENVIRONMENT): Run md5sum with the - --text option (for MSDOS). - -1999-03-06 Jim Meyering - - * src/cut.c (getstr): Change type of `delim' parameter from char to int. - (cut_fields): Cast to `unsigned char' before comparing. - (main): Cast to `unsigned char' before assigning. - From Arne Juul. - * tests/cut/Test.pm: Add a test to exercise the bug. - - * src/ptx.c (swallow_file_in_memory): Use a `%s' format in error call, - in case the argument string contains a `%'. - (main): Likewise. - * src/fmt.c (main): Likewise. - * src/sort.c (main): Likewise. - - 1999-02-13 Eli Zaretskii - - * src/sys2.h [__DJGPP__]: Include and . - - * src/ptx.c (swallow_file_in_memory): Slurp up the whole file at - once on MSDOS as well, but we have to relax the test for whether - reading it succeeded. - -1999-03-03 Jim Meyering - - * src/cat.c: Include long-options.h - [long_options]: Remove the "help" and "version" entries. - Remove declarations of show_help and show_version. - (main): Use parse_long_options, including author name(s). - Remove the show_version and show_help blocks. - * src/cksum.c: Likewise. - * src/comm.c: Likewise. - * src/csplit.c: Likewise. - * src/cut.c: Likewise. - * src/expand.c: Likewise. - * src/fmt.c: Likewise. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/nl.c: Likewise. - * src/od.c: Likewise. - * src/paste.c: Likewise. - * src/pr.c: Likewise. - * src/split.c: Likewise. - * src/sum.c: Likewise. - * src/tac.c: Likewise. - * src/tail.c: Likewise. - * src/tr.c: Likewise. - * src/unexpand.c: Likewise. - * src/uniq.c: Likewise. - * src/wc.c: Likewise. - - * src/ptx.c: Include long-options.h - [long_options]: Remove the "help" and "version" entries. - Remove declarations of show_help and show_version. - (main): Remove `const' attribute from dcl of argv parameter. - Call bindtextdomain and textdomain. - Use parse_long_options, including author name(s). - Remove the show_version and show_help blocks. - - * src/join.c (main): Include author name argument in call to - parse_long_options. - * src/md5sum.c (main): Likewise. - * src/sort.c (main): Likewise. - * src/tsort.c (main): Likewise. - -1999-02-07 Jim Meyering - - * Version 1.22h. - - * Makefile.maint (my-distcheck): Don't depend on dist, now that this - is hooked up to the distcheck rule. - * Makefile.am (distcheck-hook): New target and rule -- link to shared - rule, my-distcheck, in Makefile.maint. - -1999-01-31 Jim Meyering - - * doc/textutils.texi: Wrap the @top node in @ifnottex instead of - @ifinfo so `makeinfo --html ...' works. From Karl Berry. - -1999-01-30 Jim Meyering - - * acconfig.h: Remove lots of `#undef's, now that we use the - 3-argument forms of AC_DEFINE* macros. - - * configure.in: Require autoconf 2.13. - Use 3-argument form of AC_DEFINE*. - -1999-01-24 Jim Meyering - - * src/tac.c (DONT_UNLINK_WHILE_OPEN) [__MSDOS__ || _WIN32]: Define. - - * lib/quotearg.c (quotearg_n_options): Revert type of parameter `n' - (and hence that of the local `n1', too) to `int' at Paul's request. - -1999-01-18 Akim Demaille - - * doc/textutils.texi: Harmonization of @samp use for options. - -1999-01-17 Jim Meyering - - * Makefile.am (SUBDIRS): Add djgpp. - * configure.in (AC_OUTPUT): Add djgpp/Makefile. - * djgpp/: New directory. - - * man/Makefile.maint ($(man_MANS)): Don't remove the target (the - man page) until after we've created its replacement. - -1999-01-16 Eli Zaretskii - - * GNUmakefile: Add SHELL = /bin/sh. - * man/GNUmakefile: Likewise. - -1999-01-16 Jim Meyering - - * acconfig.h: Remove @BOTTOM@ section. - Instead, add the define and decl via m4/jm-macros.m4. - - * lib/argmatch.h (XARGMATCH): Define to return a value once again. - (XARGCASEMATCH): Likewise. - - * lib/argmatch.c (EXIT_FAILURE): Define. - (ARGMATCH_DIE): Provide default. - (__xargmatch_internal): New function. - s/rogram_name/program_name. - From Akim Demaille. - -1999-01-14 Jim Meyering - - * tests/md5sum/basic-1: Use `f', not `x' as temp. file name to avoid - warnings from perl5.004. - Reported by Volker Borchert. - - * lib/long-options.c (parse_long_options): Rename `usage' parameter - to avoid shadowing globally scoped function. - -1999-01-14 Akim Demaille - - * acconfig.h: Add a @BOTTOM@ section. - (ARGMATCH_DIE) [@BOTTOM@]: Define to usage(1). - Declare usage. - * src/*.c: Don't prototype usage as static. - -1999-01-10 Jim Meyering - - * Version 1.22g. - - All of the following new code is protected by - `#if DONT_UNLINK_WHILE_OPEN' - * src/tac.c (file_to_remove): New global. - (fp_to_close): New global. - (unlink_tempfile): New function. - (record_tempfile): New function. - (save_stdin): Call record_tempfile. - Use SET_BINARY. - (main): Use SET_BINARY and SET_BINARY2. - From Eli Zaretskii. - -1999-01-09 Jim Meyering - - * tests/uniq/Test.pm: Add tests from Jochen Hein. - * src/uniq.c: New option: --all-repeated (-D). - (output_all_repeated) [output_mode]: New enum value. - (usage): Describe it. - (writeline): Test for new mode. - (check_file): Likewise. - Based on patches from Jochen Hein and Florin Iucha. - (main): Diagnose `too many arguments'. - - * tests/head/Test.pm (null-1): Add test from Jochen Hein. - - * src/tail.c (parse_obsolescent_option): Interpret `number' as decimal. - (parse_options): Likewise. - Reported by Kamal Paul Nigam. - - * src/tail.c: New option: --max-unchanged-stats=N. - New option: --max-n-consecutive-size-changes=N. - -1999-01-03 Jim Meyering - - * src/md5sum.c (usage): Remove third program_name argument -- there - were only two `%s' in the format string. - -1999-01-02 Jim Meyering - - * src/tsort.c (tsort): Use a single call to error instead of two - to fprintf. - (main): Remove `%s: ' prefix on format string. - - * src/tail.c (parse_options): Use XARGMATCH in place of argmatch. - - * src/ptx.c (format_vals): New array. - (main): Use XARGMATCH in place of argmatch. - - * lib/argmatch.h (XARGMATCH): Don't return a value; instead, - modify a parameter. Add a `Die_stmt' parameter. - Add parentheses. - * lib/argmatch.c (__xargmatch_internal): Remove now-unused function. - (argmatch_to_argument): Add `const' attribute to first parameter. - -1999-01-01 Jim Meyering - - * src/tsort.c: Move inclusion of assert.h to follow that of stdio.h. - Some losing systems require this. - Use STREQ macro instead of strcmp in a few places. - - * po/POTFILES.in: Add tsort.c. - - * man/Makefile.maint ($(man_MANS)): `exit 1' if any of help2man, - chmod, or mv fails. Otherwise, the failure could go unnoticed. - - * man/Makefile.summ: Add entries for ptx and tsort. - - * src/tsort.c: Include readtokens.h. - (zeros): Rename global from `rr'. - (getstr): Remove function. - (tsort) Use readtoken instead of getstr. - - * lib/readtokens.c: New file. - * lib/readtokens.h: New file. - * lib/Makefile.am (libtu_a_SOURCES): Add readtokens.c. - (noinst_HEADERS): Add readtokens.h. - - * man/Makefile.am (man_MANS): Add ptx.1. - * man/ptx.x: New file. - - * src/tail.c (parse_options): Use XARGMATCH in place of argmatch. - - * man/Makefile.am (man_MANS): Add tsort.1. - * man/tsort.x: New (essentially empty) file. - - * src/tsort.c: Rename globals N and R so they don't shadow locals. - (tsort): Rename from `sort'. - - 1998-11-07 Mark Kettenis - * src/Makefile.am (bin_PROGRAMS): Add tsort. - * src/tsort.c: New program. - - * lib/Makefile.am (libtu_a_SOURCES): Add quotearg.c. - (noinst_HEADERS): Add quotearg.h. - - ============================ - All of the following are from: - 1998-04-17 Eli Zaretskii - - * src/system.h (SET_BINARY, SET_BINARY2, fileno, setmode): New - macros. - - * src/cat.c (usage) [O_BINARY]: Describe -B,--binary option. - (main) [O_BINARY]: binary_files, binary_output, file_open_mode: - new variables. Add --binary to long_options[]. Switch stdin and - stdout to binary mode unless file contents are not important - anyway. Open files in binary mode when required. - - * src/cksum.c (cksum) [O_BINARY]: Read redirected stdin in binary - mode. - - * src/expand.c (expand): Use binary I/O where appropriate. - - * src/head.c (head_bytes, head_lines) [O_BINARY]: Use binary I/O. - - * src/md5sum.c (OPENOPTS) [O_BINARY]: Use binary I/O when non-zero - argument. - (md5_file) [O_BINARY]: Switch redirected stdin to binary mode. - (main) [O_BINARY]: Use binary reads by default on those systems - which care about the difference. - - * src/od.c (skip, read_char, read_block) [O_BINARY]: Switch input - stream to binary mode. - - * src/sort.c (PATH_MAX_IN_DIR) [HAVE_UNISTD_H]: New macro, for max - file name characters in a given directory. - (tempname): Make sure the temp file name is unique even if long - file names aren't supported. - - * src/split.c (cwrite) [O_BINARY]: Write output in binary mode. - (main) [O_BINARY]: Read input in binary mode. - - * src/sum.c (bsd_sum_file, sysv_sum_file) [O_BINARY]: Read input - in binary mode. - - * src/tac.c (record_tempfile, unlink_tempfile) - [DONT_UNLINK_WHILE_OPEN]: New functions, for systems where a file - cannot be removed before it is closed. - (save_stdin) [DONT_UNLINK_WHILE_OPEN]: Record the temporary file, - to be removed before exit. - (tac_file, save_stdin, main): Use binary I/O when appropriate. - - * src/tail.c (tail_lines, tail_bytes) [O_BINARY]: Use binary I/O - when appropriate. - - * src/tr.c (main) [O_BINARY]: Use binary I/O when appropriate. - - * src/unexpand.c (unexpand): Use binary I/O where appropriate. - - * src/wc.c (wc): Use binary mode for input. - - * doc/textutil.texi: Add comments about peculiarities of Textutils - operation on MS-DOS/MS-Windows. - -1998-12-22 Jim Meyering - - * configure.in (ALL_LINGUAS): Add chinese (zh). - -1998-12-17 Jim Meyering - - New options for tail: - --follow=name, --follow=descriptor, --allow-missing - * src/tail.c (Follow_mode): New enum. - (n_live_files): New function. - (tail_forever): Avoid starvation with --follow=name and a - continually-growing unlinked or renamed file. - -1998-12-13 Jim Meyering - - * tests/uniq/Test.pm: New file. - * tests/uniq/Makefile.am: New file. - * tests/uniq: New directory. - * tests/Makefile.am (SUBDIRS): Add uniq. - * configure.in (AC_OUTPUT): Add tests/uniq/Makefile. - From Jochen Hein. - - * lib/Makefile.am (lstat.c): Add rule to generate this from xstat.in. - (stat.c): Likewise. - (EXTRA_DIST): Add xstat.in. - * lib/stat.c: Remove file. - * lib/lstat.c: Remove file. - * lib/xstat.in (xstat@): New file. - - * configure.in (ALL_LINGUAS): Add Russian (ru). - -1998-10-31 Jim Meyering - - * acconfig.h (stat): New #undef. - -1998-10-22 Jim Meyering - - * src/fold.c (usage): Add mention of --version and --help. - Reported by Matej Vela . - -1998-10-04 Jim Meyering - - * lib/fnmatch.h: New file. (unused) - * lib/fnmatch.c: New file. (unused) - * lib/Makefile.am (noinst_HEADERS): Add fnmatch.h. - -1998-10-03 Jim Meyering - - * man/Makefile.am: Switch to using help2man. - (EXTRA_DIST): Add Makefile.summ. - - * man/help2man: Invoke program with --manhelp option only if - --name=STRING not specified. Otherwise, this would fail with `yes'. - * man/Makefile.summ: New file. - * man/Makefile.maint: Include it. - * man/help2man: New file. - * man/GNUmakefile: New file. - * man/Makefile.maint: New file. - * man/*.x: New files. - * man/*.1: Remove files. - - * src/md5sum.c (split_3): Rename local variable, to `escaped_filename'. - (main): Output the leading backslash not just when there's a newline - in the file name, but also when there's a backslash. - Reported by Jim Dennis. - - * tests/md5sum/basic-1: Add tests with filenames containing newline - and backslash characters. (for the bug fixed above) - - * tests/Makefile.am (EXTRA_DIST): Add Fetish.pm. - * tests/Fetish.pm: New file. - - * tests/md5sum/basic-1: New file: rewrite of old tests to use Fetish.pm. - * tests/md5sum/Test.pm: Remove file. - * tests/md5sum/Makefile.am: Rewrite. - -1998-09-19 Jim Meyering - - * src/ptx.c (program_name): Declare *not* to be const. - -1998-08-29 Jim Meyering - - * src/cut.c: Don't assume ASCII. - * src/pr.c: Likewise. - * src/tail.c: Likewise. - -1998-08-15 Jim Meyering - - * src/pr.c (usage): Reformat. - - * src/ptx.c: Add braces to suppress warning about ambiguous `else'. - * lib/bumpalloc.h: Likewise. - -1998-08-13 François Pinard - - * src/ptx.c: New file. - * src/Makefile.am (bin_PROGRAMS): Add ptx. - * lib/bumpalloc.h, lib/diacrit.h, lib/diacrit.c: New files. - * lib/Makefile.am (libtu_a_SOURCES): Add diacrit.c. - (noinst_HEADERS): Add bumpalloc.h and diacrit.h. - -1998-08-09 Andreas Schwab - - * src/pr.c (long_options): Add long names for all options. - (usage): Update help string. - (main): Handle the special options --pages and --columns. - -1998-08-02 Jim Meyering - - * lib/linebuffer.c (readline): Return zero upon error as well as upon - end of file. From James Youngman. - Ansideclify. - -1998-08-01 Jim Meyering - - * src/sort.c (my_setlocale): Guard definition within #ifdef ENABLE_NLS. - From Manfred Hollstein. - -1998-07-30 Jim Meyering - - * tests/cut/Test.pm: Avoid broken pipe message for tests that fail - with usage errors. - - * src/sort.c (usage): Add angle brackets to make `Report bugs...' - message consistent with all the rest. - -1998-07-28 Andreas Schwab - - * tests/cut/Test.pm: Avoid broken pipe for 'y' and 'z' tests. - - * src/sort.c (NEGATION_SIGN): Renamed from NEGATIVE_SIGN to avoid - clash with . All uses changed. - -1998-07-26 Jim Meyering - - * intl/localealias.c (read_alias_file): Avoid mixing `char*' and - `unsigned char*' variables. Again for irix4. - Mostly from Kaveh Ghazi. - - * src/join.c: Convert some char* dcls to `unsigned char*' and remove - a cast -- to placate irix4's cc. - * src/fmt.c (check_punctuation): Add cast to placate irix4's cc. - Reported by Kaveh Ghazi. - - * src/md5sum.c (split_3): Add cast to placate irix4's cc. - From Kaveh Ghazi. - -1998-07-25 Jim Meyering - - * Version 1.22f. - - * tests/cut/Test.pm: Add tests for new --output-delimiter option, - as well as for NUL input delimiter (--delimiter=''). - * src/cut.c (cut_fields): Honor new --output-delimiter option. - (main): Fix handling of --delimiter='' (-d ''). Until now, it has - never worked as advertised. I guess no one tried it. - - * tests/sort/Test.pm: Add two tests relating to this. - * src/sort.c (main): Stat all non-`-' input file files (and fail if a - stat fails) when an output file is specified by `-o' but doesn't exist. - Reported by Will Edgington. - - * tests/sort/Test.pm: New tests of -o. - -1998-07-16 Jim Meyering - - * lib/Makefile.am (noinst_HEADERS): Add lchown.h. - * lib/lchown.h: New file, just to define ENOSYS on systems that lack it. - * lib/lchown.c: Include lchown.h. - -1998-07-04 Jim Meyering - - * configure.in (AM_WITH_REGEX): Remove. Now the replacement - macro, jm_WITH_REGEX, is bundled with the rest in jm_MACROS. - * acconfig.h (WITH_REGEX): Remove undef. - * src/csplit.c: Remove #ifdef around inclusion. - * src/nl.c: Likewise. - * src/tac.c: Likewise. - * src/csplit.c (extract_regexp): Remove #if !WITH_REGEX...#endif block. - * lib/Makefile.am (noinst_HEADERS): Remove rx.h. - * lib/rx.c: Remove file. - * lib/rx.h: Remove file. - -1998-06-29 Jim Meyering - - * src/wc.c: Update calls to human_readable -- now there's one fewer arg. - - * lib/Makefile.am (libtu_a_SOURCES): Add argmatch.c. - (noinst_HEADERS): Add argmatch.h. - -1998-06-28 Jim Meyering - - * src/sys2.h: Add macro definitions for GNU libc *_unlocked wrappers. - -1998-06-27 Jim Meyering - - * tests/pr/Test.pm: Add two tests for double spacing. - * src/pr.c (print_page): If cols_ready_to_print is zero, - break out of loop just before the double-space test. - Reported by Michael Stutz. - -1998-06-18 Jim Meyering - - * tests/Makefile.am.in (check): Depend on $(maint_gen) so - `make maintainer-clean; ./configure; make check' works. - -1998-05-25 Jim Meyering - - * configure.in (_GNU_SOURCE): AC_DEFINE it here. - * acconfig.h (_GNU_SOURCE): Remove definition from @TOP@ section. - [!_GNU_SOURCE]: Add #undef instead. - -1998-05-16 Jim Meyering - - * configure.in (jm_MACROS): New wrapper macro. - Remove uses of most jm_* macros. - - * src/tac.c (tac_seekable): Fix error in handling regex separators. - * tests/tac/Test.pm (opt-b, opt-s, opt_sb, opt_r): New tests. - (opt_br): New test -- exercises above-fixed bug. - - * lib/Makefile.am (EXTRA_DIST): Remove. Automake groks the `LIBOBJS=' - lines from the m4/*.m4 macros, so the hack of including some - custom-replaced C source file names here is no longer needed. - - * acconfig.h (chown): Add undef. - (D_INO_IN_DIRENT): Likewise. - (D_TYPE_IN_DIRENT): Likewise. - (ssize_t): Likewise. - -1998-05-09 Jim Meyering - - * src/tac.c (tac_seekable): Rename from tac_stream. - Change `FILE *in' parameter to `int input_fd'. Adjust callers. - -1998-05-03 Jim Meyering - - * po/: Update from gettext-0.10.35. - * intl/: Likewise. - * configure.in: Remove use of AC_LINK_FILES. - (AC_OUTPUT): Remove po/Makefile-generating sed command. - -1998-04-26 Jim Meyering - - * tests/tail/Test.pm: Disable test f-1, now that it fails. - - * src/sort.c (keycompare) (CMP_WITH_IGNORE): Don't return 0 from inside - the keyspec-iterating loop. With this change, test 22a passes. - Reported by Zvi Har'El. - (strncoll): Remove bogus assertion. - * tests/sort/Test.pm: Add tests for the above fix. - - * configure.in: Use jm_ASSERT. - * acconfig.h: Add NDEBUG. - - * src/cut.c: Don't define NDEBUG. - * src/csplit.c: Likewise. - * src/join.c: Likewise. - * src/sort.c: Likewise. - * src/tr.c: Likewise. - - * src/cut.c: Don't define _GNU_SOURCE (now it's in config.h). - * src/expand.c: Likewise. - * src/fold.c: Likewise. - * src/join.c: Likewise. - * src/sort.c: Likewise. - * src/tr.c: Likewise. - * src/unexpand.c: Likewise. - * src/uniq.c: Likewise. - - * src/tail.c (close_fd): New function -- converted from macro. - [struct File_spec] (n_stat_calls): New member. - [struct File_spec] (n_unchanged_stats): New member. - (max_n_unchanged_stats): New global. - Initialize new members. - (xwrite): New function -- converted from macro. - [struct File_spec] (pretty_name): Remove member. - (pretty_name): New function. - - * src/md5sum.c (md5_check): Declare local, `md5num' as _unsigned_ char*. - (hex_digits): Declare parameter `s' as _unsigned_ char*. - (split_3): Declare parameter `u' as _unsigned_ char**. - -1998-04-17 Jim Meyering - - * src/fmt.c (check_punctuation): Used unsigned char* pointers to avoid - new warning. - * src/join.c (xfields): Likewise. - -1998-04-12 Jim Meyering - - * src/cat.c: Use STREQ macro rather than strcmp. - * src/cksum.c: Likewise. - * src/comm.c: Likewise. - * src/csplit.c: Likewise. - * src/cut.c: Likewise. - * src/fmt.c: Likewise. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/join.c: Likewise. - * src/md5sum.c: Likewise. - * src/nl.c: Likewise. - * src/paste.c: Likewise. - * src/pr.c: Likewise. - * src/split.c: Likewise. - * src/sum.c: Likewise. - * src/tac.c: Likewise. - * src/uniq.c: Likewise. - * src/wc.c: Likewise. - -1998-04-11 Jim Meyering - - * lib/safe-read.h: New file. - * lib/safe-read.c: Include it. - * src/cat.c: Include it instead of merely declaring safe_read. - * src/csplit.c: Likewise. - * src/head.c: Likewise. - * src/split.c: Likewise. - * src/sum.c: Likewise. - * src/tac.c: Likewise. - * src/tail.c: Likewise. - * src/tr.c: Likewise. - * src/wc.c: Likewise. - - * lib/Makefile.am (noinst_HEADERS): Add safe-read.h. - - * src/wc.c [HAVE_INTTYPES_H]: Include inttypes.h. - Declare counters to be of type uintmax_t. - (write_counts): Use human_readable to format potentially-long-long - numbers. Suggestion from Rogier Wolff. - (wc): Declare per-file counters to be of type uintmax_t. - Declare bytes_read to be ssize_t. - * lib/Makefile.am (libtu_a_SOURCES): Add human.c. - (noinst_HEADERS): Add human.h. - - * lib/human.c: New file. - * lib/human.h: New file. - -1998-04-04 Jim Meyering - - * configure.in (jm_AC_HEADER_INTTYPES_H): Use it. - (jm_AC_TYPE_UINTMAX_T): Use it. - (jm_PREREQ): Use it. - - * Makefile.am (ACLOCAL_AMFLAGS): Define this, so automake/aclocal - know about the m4/ subdirectory. - * Makefile.maint (aclocal-files): Remove now-unnecessary (with - automake-1.2h and the above change) aclocal-related rules and includes. - -1998-04-03 Jim Meyering - - * lib/closeout.c: New file. - * lib/closeout.h: New file. - * lib/Makefile.am (libtu_a_SOURCES): Add closeout.c. - (noinst_HEADERS): Add closeout.h. - -1998-03-31 Jim Meyering - - * lib/xstrtol.c: Merge with the version from fileutils. - -1998-03-27 Jim Meyering - - * Makefile.am (AUTOMAKE_OPTIONS): Require 1.2h. - -1998-03-23 Jim Meyering - - * acconfig.h: Remove HAVE_INTTYPES_H, now that m4/inttypes_h.m4 - automatically handles it. - -1998-03-19 Jim Meyering - - * src/system.h (SCHAR_MIN): Define. - (SHRT_MIN): Define. - od.c needs these when compiling with NCR's R2.0c C compiler. - (TYPE_MAXIMUM): Cast result to `(t)' so this macro works with - `unsigned char'. - From Greg Wooledge. - -1998-03-15 Jim Meyering - - * src/tail.c (tail_file): Merge largely-duplicated blocks of code. - -1998-03-03 Paul Eggert - - * src/sort.c (xtmpfopen): Open temporary file exclusively, to - foil a common denial-of-service attack. - * src/tac.c (save_stdin): Likewise. - -1998-02-16 Jim Meyering - - * configure.in (jm_FUNC_LSTAT): Use it. - (jm_FUNC_STAT): Use it. - * lib/Makefile.am (EXTRA_DIST): Add lstat.c and stat.c. - -1998-02-06 Jim Meyering - - * configure.in: Don't use AM_MAINTAINER_MODE or - AC_PATH_PROG(PERL, perl). - (jm_PERL): Use this. - -1998-02-04 Jim Meyering - - * tests/Makefile.am.in (EXTRA_DIST): Remove mk-script.pl. - (mk_script): Set to ../mk-script. - (x-tests): Use `$(PERL) -w -- $(mk_script)', not ./mk-script. - Remove @MAINT@ cruft. - (Makefile.am): Likewise. - Remove @MAINT@ cruft. Now `missing' will explain the failure - when people don't have Perl yet modify a file whose rebuilding - would lead to the use of Perl. - - * tests/Makefile.am (EXTRA_DIST): Add mk-script. - * tests/*/mk-script.pl: Remove files. - - * GNUmakefile: New file. - * Makefile.am (EXTRA_DIST): Add GNUmakefile. - Don't include Makefile.maint from here. It's included from GNUmakefile. - -1998-01-30 Paul Eggert - - * configure.in (AC_LFS): Put before anything that can affect or use - CPPFLAGS, LDFLAGS, or LIBS. - -1998-01-25 Jim Meyering - - * Makefile.maint: New file. - * Makefile.am: Move rules common to textutils, fileutils, sh-utils - into Makefile.maint. - Include Makefile.maint. - (EXTRA_DIST): Add Makefile.maint. - - * src/cat.c (cat): Convert comma-expressions to pairs of - semicolon-terminated stmts. - Add braces around compound if/else stmts. - -1998-01-24 Jim Meyering - - * src/tail.c (parse_obsolescent_option): Do not interpret `-f -n 1 ...' - as obsolescent options. - Accept new option: --sleep-interval=SECONDS (-s). - (parse_options): Recognize it. - (usage): Describe it. - (tail_forever): Use it. - (dump_remainder): Use it. - * tests/tail/Test.pm (f-1): Add test for option-processing of `-f -n 1'. - - * tests/cut/: Rename directory to remove `-test' suffix. - * tests/join/: Likewise. - * tests/md5sum/: Likewise. - * tests/pr/: Likewise. - * tests/sort/: Likewise. - * tests/tr/: Likewise. - * configure.in (AC_OUTPUT): Reflect renamings in tests/. - * tests/Makefile.am (SUBDIRS): Reflect renamings in tests/. - - * src/system.h (TYPE_MINIMUM): Add extra outer cast to work around - bug in Cray C 5.0.3.0 when T == time_t. - -1998-01-18 Jim Meyering - - * src/sort.c (strncoll, strncoll_s2_readonly, look_for_fraction, - numcompare): Remove the `unsigned' from some `unsigned char*' - parameter types. Add casts via UCHAR where necessary to avoid - problems with unwanted sign extension. Based on a patch from - Kaveh Ghazi to appease Irix4's cc compiler. - -1998-01-17 Jim Meyering - - * src/split.c (next_file_name): Rewrite. This removes an artificial - limit (albeit already high, at INT_MAX :-) on the number of files - split could create. Reported by Ralf W. Stephan. - -1998-01-16 Jim Meyering - - * src/sort.c (mergefps): Add braces to avoid ambiguous `else' stmt. - (nls_set_fraction): Likewise. - - * src/sort.c: Guard inclusion of langinfo.h also with HAVE_LANGINFO_H, - for Irix-4.0.5. From Kaveh Ghazi. - * configure.in: Check for langinfo.h. - - * lib/getline.c: Make PARAMS-defining conditionals consistent. - * lib/linebuffer.h: Likewise. - * lib/long-options.h: Likewise. - * lib/memcasecmp.h: Likewise. - * lib/xstrtod.h: Likewise. - * lib/xstrtol.h: Likewise. - Suggestion from Kaveh Ghazi. - - * tests/head/Test.pm (fail-0): Disable test. It depends on - sizeof(long) being 32 bits. Reported by Kaveh Ghazi. - -1998-01-10 Jim Meyering - - * Version 1.22d. - - * src/system.h [HAVE_LIMITS_H]: Include limits.h - (TYPE_SIGNED): Define. - (TYPE_MINIMUM): Define. - (TYPE_MAXIMUM): Define. - (CHAR_BIT): Define. - (SCHAR_MAX): Define. - (UCHAR_MAX): Define. - (SHRT_MAX): Define. - (INT_MAX): Define. - (UINT_MAX): Define. - (LONG_MAX): Define. - (ULONG_MAX): Define. - * src/*.c: Remove definitions of those symbols. - - * src/csplit.c: Move inclusion of regex.h/rx.h to follow system.h - since it now includes limit.h which defines RE_DUP_MAX. - * src/nl.c: Likewise. - * src/tac.c: Likewise. - - * lib/xstrtol.c (bkm_scale): Renamed from BKM_SCALE. - Rewrite macro as function. Return a value. Update caller. - Cast __ZLONG_MAX `__unsigned long int' before casting to double to - avoid SunOS /bin/cc compiler bug. - -1998-01-08 Jim Meyering - - * src/tac-pipe.c: New file. But not yet used. - * src/Makefile.am (EXTRA_DIST): Add tac-pipe.c. - - * src/tac.c (tac_stream): Don't perform arithmetic on now-void* pointer - result of xrealloc (until recently it was char*). - - * configure.in (AC_CHECK_FUNCS): Add nl_langinfo. - * src/sort.c (inittables): Add && HAVE_NL_LANGINFO to the #if-test - guarding the nls month-checking code. - (nls_numeric_format): Remove unnecessary (and error-evoking w/SunOS' cc) - `unsigned' from dcls of text and lim. - (main): Cast lconvp->grouping to `unsigned char*' to appease SunOS's cc. - -1998-01-03 Jim Meyering - - * lib/Makefile.am (AUTOMAKE_OPTIONS): Define to ../src/ansi2knr. - - * configure.in: Convert the .o suffix on files in LIBOBJS to $U.o so - those files will be built via the ANSI2KNR-filtering rules if necessary. - -1997-12-25 Jim Meyering - - * configure.in: Remove AC_DEFINE of _GNU_SOURCE. - * acconfig.h (_GNU_SOURCE): Define if not already defined. - Put this code in @TOP@ section. - (_GNU_SOURCE): Remove #undef. - -1997-12-22 Jim Meyering - - * configure.in: AC_DEFINE _GNU_SOURCE. - * acconfig.h: Add _GNU_SOURCE. - -1997-12-21 Jim Meyering - - * configure.in (AC_CHECK_HEADERS): Add stdlib.h. - - * src/system.h: Merge in things from fileutils' version of this file. - * src/csplit.c: s/__P/PARAMS/. - * src/fmt.c: s/__P/PARAMS/. - * src/od.c: s/__P/PARAMS/. - * src/pr.c: s/__P/PARAMS/. - -1997-12-14 Jim Meyering - - * src/sys2.h: s/HAVE_DECLARATION_/HAVE_DECL_/g. - -1997-12-13 Jim Meyering - - * src/fmt.c (main): Add some braces. - Check return code from fclose of each input file. - Close stdout and check for errors. - - * src/csplit.c (close_output_file): Check ferror before calling fclose. - (main): Close stdout and check for errors. - -1997-11-15 Jim Meyering - - * acconfig.h: Add mktime. - * configure.in (jm_FUNC_MKTIME): Use it. - * lib/mktime.c: New file. - * lib/Makefile.am (EXTRA_DIST): Add mktime.c - - * intl/Makefile.in (distclean): Don't remove libintl.h here. - * Makefile.am (DISTCLEANFILES): Remove it here instead. - -1997-11-13 Jim Meyering - - * lib/strftime.c: Update from FSF. - * m4/strftime.m4: Check for POSIX.2's %f format spec. - -1997-11-12 Jim Meyering - - * src/system.h [!HAVE_MEMPCPY] (mempcpy): Define. - * configure.in (AC_CHECK_FUNCS): Add mempcpy. - -1997-11-09 Jim Meyering - - * configure.in (jm_FUNC_STRFTIME): Use it. - * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Check for localtime_r. - * m4/strftime.m4 (jm_STRFTIME_PREREQS): Check for localtime_r. - (jm_FUNC_GNU_STRFTIME): Use new macro. - (jm_FUNC_STRFTIME): New macro. Likewise. - Reported by Noel Cragg. - -1997-11-08 Jim Meyering - - * m4/lfs.m4 (AC_LFS): New file/macro. - * m4/Makefile.am (EXTRA_DIST): Add lfs.m4. - * configure.in (AC_LFS): Use it. - (AC_CHECK_FUNCS): Add fseeko. - * src/od.c (fseeko): Define a stub if ! HAVE_FSEEKO. - (skip): Use fseeko if available. Don't use lseek; it causes - the stdio stream to become out of sync with respect to the - underyling file descriptor. - From Paul Eggert. - -1997-10-16 Paul Eggert - - * configure.in (AC_CHECK_FUNCS): Add fseeko. - - * src/od.c (skip): Use fseeko. Don't use lseek; it causes - the stdio stream to become out of sync with respect to the - underyling file descriptor. - -1997-11-06 Jim Meyering - - * src/sort.c (getmonth): Remove HAVE_ALLOCA #ifdefs. - We always have alloca. - (keycompare): Don't use variable size arrays (it's a gcc-extension). - Rewrite code that increments new lengths when not `ignoring'. - -1997-11-02 Jim Meyering - - * acconfig.h: Add malloc and realloc. - - * src/wc.c (main): New option, --max-line-length (-L). - (wc, write_counts): Implement it. - From Bruno Haible. - -1997-10-26 Jim Meyering - - * lib/memcasecmp.c: Convert to upper case before comparing. - This makes join -i work with sort -f. - Reported by Arthur Pool. - -1997-10-25 Jim Meyering - - * lib/xmalloc.c (xalloc_fail): Renamed from fixup_null_alloc. - (xcalloc): #ifdef-out unused function. - (xrealloc): Remove code to work around deficient versions of realloc. - Now we have an autoconf-enabled replacement version. - (xmalloc): Remove code to work around deficient versions of malloc. - Now we have an autoconf-enabled replacement version. - - * lib/memcmp.c (rpl_memcmp): Rename from memcmp. - - * src/sort.c (NLS_STRNCMP) [!ENABLE_NLS]: s/strcmp/strncmp/. - - * lib/xmalloc.c (xalloc_fail_func): Initialize to 0, not NULL. - - * configure.in (jm_FUNC_MALLOC): Use it. - (jm_FUNC_REALLOC): Use it. - - * lib/Makefile.am (EXTRA_DIST): Add malloc.c. - * lib/malloc.c: New file. - * m4/malloc.m4: New file. - * m4/Makefile.am (EXTRA_DIST): Add malloc.m4. - - * lib/Makefile.am (noinst_HEADERS): Add xalloc.h. - (EXTRA_DIST): Add realloc.c. - (EXTRA_DIST): Add malloc.c. - - * src/system.h: Include xalloc.h. - Remove dcls of xmalloc, xcalloc and xrealloc. - - * lib/xalloc.h: New file. - - * lib/xmalloc.c: Include xalloc.h. - Change VOID to void. - (xalloc_exit_failure): Renamed extern. - (xalloc_msg_memory_exhausted): New extern. - (xalloc_fail_func): New extern. - (fixup_null_alloc): Use new variables. - -1997-10-24 Jim Meyering - - * src/unexpand.c: Remove old-style xmalloc and xrealloc decls. - (add_tabstop): Cast first arg of xrealloc to char*. - - * src/sort.c: Include xalloc.h. - (xmalloc): Remove function. - (xrealloc): Remove function. - (main): Set xalloc_fail_func to cleanup. - Set xalloc_exit_failure SORT_FAILURE. - - * src/paste.c: Remove old-style xmalloc and xrealloc decls. - (paste_parallel): Cast first arg of xrealloc to char*. - - * src/od.c: Remove old-style xmalloc and xrealloc decls. - (decode_format_string): Cast first arg of xrealloc to char*. - - * src/expand.c: Remove old-style xmalloc and xrealloc decls. - (add_tabstop): Cast first arg of xrealloc to char*. - - * lib/xalloc.h: New file. - - * src/cut.c (ADD_RANGE_PAIR): Cast first arg of xrealloc to char*. - (getstr): Cast xmalloc return value to char*. - - * src/csplit.c: Include xalloc.h. - (xmalloc): Remove function. - (xrealloc): Remove function. - (main): Set xalloc_fail_func to cleanup. - - * src/*.c: Remove old-style xmalloc and xrealloc decls. - * src/system.h: Add prototyped xcalloc, xmalloc and xrealloc decls. - Suggestion from Achim Blumensath. - -1997-10-23 Jim Meyering - - * Makefile.am (aclocal-files): Also depend on m4/Makefile.am. - - * src/system.h [!HAVE_DECLARATION_FREE]: Declare free. - [!HAVE_DECLARATION_MALLOC]: Declare malloc. - [!HAVE_DECLARATION_REALLOC]: Declare realloc. - [!HAVE_DECLARATION_STPCPY]: Declare stpcpy. - [!HAVE_DECLARATION_STRSTR]: Declare strstr. - * src/cat.c: Remove stpcpy dcl. - * src/csplit.c: Remove malloc and realloc dcls. - * src/sort.c: Remove free, malloc, and realloc dcls. - * src/tac.c: Remove malloc, and realloc dcls. - * src/tr.c: Remove stpcpy dcl. - On some systems, strstr and stpcpy are macros, so declaring them - unconditionally gets syntax errors. - Reported by Mark M. Kettenis. - - * configure.in: Use jm_CHECK_DECLS. - * m4/Makefile.am (EXTRA_DIST): Add decl.m4 and check-decl.m4. - -1997-10-22 Jim Meyering - - * m4/decl.m4: New file. - * m4/check-decl.m4: New file. New macro, jm_CHECK_DECLS. - -1997-10-16 Paul Eggert - - * src/od.c (LONG_MAX): Define if not defined. - -1997-10-16 Jim Meyering - - * src/sort.c (look_for_fraction): Patch from Ørn Hansen. - (getmonth): Compare the two month names only to the length of the - string in the month table. Patch from Ørn Hansen. - (NLS_STRNCMP): New macro. - (strncoll_s2_readonly): New function. - (inittables): Don't use temporary `comp' to hide type of - comparator function. - (nls_sort_month_comp): Declare parameters to be void* to match - comparator function type required for qsort. - (getmonth): Use NLS_STRNCMP rather than #ifdef. - Use do-while, rather than while-loop. - -1997-10-14 Jim Meyering - - * src/sort.c (_NL_ITEM) [!defined]: Define. - From from Ørn E. Hansen. - - * src/sort.c: Use STREQ in place of most uses of strcmp. - (NLS_STRCMP): Define. - (getmonth): Remove ifdef and use NLS_STRCMP instead. - Use HAVE_ALLOCA, not _HAVE_ALLOCA. - (zaptemp): Make parameter `const'. - - * tests/sort-test/Test.pm: Add tests to exercise new fraccompare. - - * src/sort.c (CHARS_IN_ABM): Remove definition - (inittables): Remove assumption that all abbreviated month names have - length 3. - (getmonth): Likewise. - (main): Add #if's for more efficient code when using the GNU C library. - From Ulrich Drepper. - - * src/sort.c (strncoll): Rename parameter to LEN. - (keycompare): Move assignment out of if-expression. - - * lib/xstrdup.c: New file. - * lib/Makefile.am (libtu_a_SOURCES): Add xstrdup.c - - * src/sort.c: Declare xstrdup. - (my_setlocale): New function. - (main): Guard against failure of strdup (use xstrdup) and setlocale. - - * src/system.h (STREQ): Define. - * src/od.c (STREQ): Remove definition. - - * src/sort.c (look_for_fraction): Eliminate arbitrary limit on - number of `groups'. Declare as void, not int. - Patch from Ørn E. Hansen. - (main): When determining whether we're in the C or POSIX locale, - don't rely on the form of the string returned by setlocale. - Suggestion from Ulrich Drepper. - -1997-10-12 Jim Meyering - - * src/sort.c: Apply big patch from Ørn E. Hansen. - Clean up, indent. - (NLS_MEMCMP): Define. - (keycompare): Use it instead of open-coded #ifdefs. - (compare): Likewise. - (NLS_MAP): Remove unused definitions. - Replace with uses of UCHAR. - (nls_locale_map): Remove dcl of unused file-scope array. - -1997-10-10 Jim Meyering - - * tests/sort-test/Test.pm: Add a test. - From William Lewis. - -1997-10-07 Jim Meyering - - * src/*.c: Update bug-reporting address. - * src/cat.c: Indent cpp directives to reflect nesting. - * src/cksum.c: Likewise. - * src/csplit.c: Likewise. - * src/fmt.c: Likewise. - * src/nl.c: Likewise. - * src/paste.c: Likewise. - -1997-09-27 Jim Meyering - - * m4/memcmp.m4: Integrate test to detect bug in memcmp from the - Next x86 OpenStep C library. Test program from William Lewis. - -1997-09-21 Jim Meyering - - * src/od.c [struct tspec] (hexl_mode_trailer): Rename from `trailer.' - (dump_hexl_mode_trailer): Rename from dump_string_trailer. - Use fputs and putchar instead of trivial or %-less printfs. - (decode_one_format): Parenthesize each field_width assignment in an - argument list to make the side effect a little more apparent. - (write_block): Use fputs and putchar instead of trivial or %-less - printfs. - (dump_strings): Cast string_min to off_t to avoid long-standing warning. - - * src/od.c: Implement new `z' (hexl-mode) modifier. - [struct tspec] (trailer): New field. - (field_width): Likewise. - (dump_string_trailer): New function. - (decode_one_format): Save each field_width in the tspec. - Patch from John Kodis. - -1997-09-14 Jim Meyering - - * src/od.c (main) [--traditional]: Don't give diagnostic about there - being more than three arguments if there are *no* arguments specified. - Reported by Jochen Hein. - -1997-09-13 Jim Meyering - - * tests/sort-test/Test.pm: Add tests 19a and 19b. - -1997-07-21 Jim Meyering - - * src/tail.c (parse_obsolescent_option): #ifdef-out portability warning. - -1997-07-19 Jim Meyering - - * src/sort.c (checkfp): Print the `disorder' message. Include both - the number and the contents of the first out-of-order line, in addition - to the file name. Change meaning of return value. - (check): Don't print disorder message here. - Adjust test of checkfp's return value. - Feature suggestion from Karl Heuer. - -1997-07-13 Jim Meyering - - * doc/Makefile.am (EXTRA_DIST): Remove explicit mention of texinfo.texi. - Now, automake includes it automatically. - - * src/head.c: Include xstrtoul.h. - Remove global variable, unit_size. - (atou): Remove now-unused function. - (parse_unit): Likewise. - (string_to_ull): New function. - (head): Take new parameter, count_lines. Use it instead of unit_size. - Update callers. - (head_file): Likewise. - (main): Use string_to_ull, not atou/parse_unit. - The problem was that overflow wasn't detected, so `head -c 4096m' - was treated just like `head -c 0'. - Reported by Jerome Abela. - - * tests/wc: New directory. - * tests/head: New directory. - * tests/Makefile.am (SUBDIRS): Add head and wc. - * configure.in (AC_OUTPUT): Add tests/head/Makefile and - tests/wc/Makefile. - -1997-07-05 Jim Meyering - - * src/tail.c (parse_obsolescent_option): If POSIXLY_CORRECT is set, give - a diagnostic and fail when there are two or more non-option arguments. - -1997-07-04 Jim Meyering - - * tests/tac/mk-script.pl: Redirect output of cmp to /dev/null. - - * configure.in (ALL_LINGUAS): Add Norwegian (no). - - * Makefile.am (aclocal-files): Look in source directory, not build dir. - From Andreas Schwab. - -Sun Jun 15 06:36:41 1997 Jim Meyering - - * src/pr.c (init_header) [T_BUF_FMT]: Output the 4-digit year (not the - 2-digit abbreviation) in each page header. Reported by Noah Friedman. - -Sat Jun 14 12:29:12 1997 Jim Meyering - - * src/cut.c (cut_fields): Detect when the input is empty and handle - that special case. Before `cut -f1 < /dev/null' would improperly - output a single newline. Reported by Phil Richards. - -Sun Apr 27 15:10:58 1997 Jim Meyering - - * man/Makefile.am (DISTFILES): Add $(man_MANS). - - * configure.in (ALL_LINGUAS): Add Czech (cs) and Swedish (sv). - -Thu Apr 3 21:14:02 1997 Jim Meyering - - * m4/Makefile.am (EXTRA_DIST): Update file list. - - * tests/cut-test/Test.pm: Add test from Phil Richards. - -Sat Mar 22 20:29:10 1997 Jim Meyering - - * missing: New file -- from the automake-1.1m distribution. - -Fri Mar 21 23:56:41 1997 Jim Meyering - - * Makefile.am (AUTOMAKE_OPTIONS): Require automake-1.1l. - (aclocal.m4): Use aclocal's new -I option. - -Thu Mar 13 21:46:04 1997 Jim Meyering - - * src/tr.c (main): Make sure c1 is not -1 before using it as an - array index. Patch from Greg McGary. Although this is truly a - bug, I believe it would not cause tr to misbehave on most systems. - I could not construct a test case with which this bug causes tr - to generate invalid output. - - * tests/pr-test/Test.pm: Add test that -o 0 works. - - * src/pr.c (main): Allow use of 0 (zero) as the margin offset - argument to the -o option. Patch from Gary Anderson. - -Fri Feb 28 22:32:51 1997 Jim Meyering - - * src/uniq.c (usage): Fix typo in --help output. From Andreas Schwab. - -Tue Feb 25 20:34:51 1997 Jim Meyering - - * lib/Makefile.am (noinst_HEADERS): Add obstack.h. - (libtu_a_SOURCES): Add obstack.c. - -Sun Feb 16 08:30:29 1997 Jim Meyering - - * tests/Makefile.am (SUBDIRS): Add tac. - * tests/tac: New directory. - * configure.in (AC_OUTPUT): Add tests/tac/Makefile. - - * tests/pr-test/{tt-0FF, tt-bl, tta3-0FF, ttb3-0FF, tt-FF, tt-t, - tta3-FF, ttb3-FF}: New files. Renamed (s/T/tt/) to avoid name clashes - on case-independent filesystems. - * tests/pr-test/Test.pm (Tests '7.*'): Reflect file-renaming. - - * src/tail.c (parse_obsolescent_option): Reverse order of args in - diagnostic. Remove `' quotes in diagnostic. - (parse_options): Remove `' quotes in diagnostic. - -Sat Feb 8 22:43:45 1997 Jim Meyering - - * src/tail.c (parse_obsolescent_option): Give warning diagnostic for - (but now accept) obsolescent usage with more than one file argument. - -Sun Feb 2 23:06:59 1997 Jim Meyering - - * src/join.c: Move alloca-related preprocessor code into system.h. - * src/od.c: Remove alloca-related preprocessor code. - * src/system.h: Add alloca-related preprocessor code. - -Sat Feb 1 07:21:43 1997 Jim Meyering - - * tests/pr-test/*: Rename files to avoid exceeding 14-character limit. - * tests/pr-test/Test.pm: Reflect renamings. - - * tests/pr-test/mk-script.pl (spec_to_list): Warn about all filenames - that exceed max-length before dying. - - * src/pr.c (init_parameters): For compatibility: use default - separator `TAB' with full length lines. From Roland Huebner. - -Fri Jan 31 19:53:54 1997 Jim Meyering - - * src/tac.c: Rename globals buffer and buffer_size to have G_ prefix - to avoid shadowing local variables. - - * lib/long-options.c (parse_long_options): Compare getopt_long return - value against -1, not EOF. Use NULL, not `(int *) 0' as last parameter - in getopt_long call. - - * src/pr.c (add_line_number): Rename from `number' to avoid shadowing - local variables. - - * src/*.c: Compare getopt_long return value against -1, not EOF. - Use NULL, not `(int *) 0' as last parameter in getopt_long call. - (usage): Bracket bug-reporting address with <> and append a period. - -Wed Jan 29 20:54:24 1997 Jim Meyering - - * tests/tr-test/Test.pm: Do each test twice: get input via REDIR - and PIPE. - - * tests/tail/Test.pm (test_vector): Do each (non-stdin-requiring) - test three times. - - * tests/pr-test/Test.pm: Remove common_option_prefix flag. - (test_vector): Prepend the common option here instead. - - * tests/md5sum-test/Test.pm: Remove input_via_stdin flag. - Do each test twice: get input via REDIR and PIPE. - - * tests/cut-test/Test.pm: Do each test three times. - - * tests/cut-test/mk-script.pl: Allow each test to be run any or all - of three different ways. Program input may be specified via a file - or files listed on the command line, via input redirection (if there's - only one file), or via a pipe. - -Tue Jan 28 20:54:06 1997 Jim Meyering - - * tests/cut-test/mk-script.pl: Remove `t' prefix on all generated - test file names. - Change suffixes from (.in, .exp, .out, .err) to (.I, .X, .O, .E). - Ensure that no test file (generated or maintainer-supplied) has a - name longer than 14 characters. - -Sun Jan 26 12:49:50 1997 Jim Meyering - - * Version 1.22. - - * src/tail.c (parse_options): Add quotes to make messages identical. - -Sat Jan 25 00:12:29 1997 Jim Meyering - - * src/tail.c (parse_obsolescent_option): Comment. - (parse_options): Remove unnecessary goto and label. - - * tests/sort-test/mk-script.pl: Interpret `input arg is a hash - reference' as meaning that the tested program will read no input. - Most of the tests for the date program use this feature. - Also for date, the generated script now reflects specification - (in Test.pm) of default and per-test environment settings. - - * src/csplit.c: Reflect changes to xstrtol and xstrtoul interfaces. - * src/fold.c: Likewise. - * src/head.c: Likewise. - * src/join.c: Likewise. - * src/nl.c: Likewise. - * src/od.c: Likewise. - * src/pr.c: Likewise. - * src/uniq.c: Likewise. - - * lib/xstrtoul.h (XSTRTOL_H): Undefine it. - - * lib/xstrtol.h [!_STRTOL_ERROR]: Define the type `enum strtol_error' - only if it hasn't already been defined. - (_STRTOL_ERROR): Undefine. - - * lib/xstrtol.c (__xstrtol): Change interpretation of - VALID_SUFFIXES == NULL vs VALID_SUFFIXES == "". Use the former - when any suffix is valid, the later when no suffix is allowed. - -Fri Jan 24 23:36:00 1997 Jim Meyering - - * lib/long-options.c (parse_long_options): Reset optind to zero - before just returning so that getopt internals get initialized from - the probably-new parameters when/if getopt is called later. - From Ulrich Drepper. - -Thu Jan 23 19:17:03 1997 Jim Meyering - - * src/tail.c (parse_obsolescent_option): Recognize and fail for - more malformed obsolescent options. Makes for better diagnostics. - -Wed Jan 22 21:34:50 1997 Jim Meyering - - * tests/Makefile.am (SUBDIRS): Add tail. - * tests/tail: New directory. - * configure.in (AC_OUTPUT): Add tests/tail/Makefile. - - * src/tail.c (parse_options): New function. - (parse_obsolescent_option): New function. - (main): Use the new functions instead of open-coding them. - This better fixes the bug in handling obsolescent `+Nc' options. - General cleanup. - -Tue Jan 21 22:49:00 1997 Jim Meyering - - * src/tail.c (main): Properly handle what the POSIX spec calls - the `obsolescent' usage (e.g., tail +2c). It didn't work. - Reported by Karl Heuer. - -Sun Jan 12 22:13:27 1997 Jim Meyering - - * tests/tr-test/Test.pm: Rename tests so that the associated files - have names that are distinct even on filesystems on which file - names are case insensitive. - Reported by Fred Fish. - * tests/cut-test/Test.pm: Likewise. - - * tests/tr-test/Makefile.am: Regenerated to reflect renamed tests. - * tests/cut-test/Makefile.am: Likewise. - -Wed Jan 8 16:38:24 1997 Jim Meyering - - * Version 1.21. - - * lib/getopt.c (_getopt_internal): Use `_', rather than the - (sometimes-)expansion `gettext'. - -Tue Jan 7 22:50:13 1997 Jim Meyering - - * lib/getopt.c: New (more POSIX compliant) version from GNU libc. - [_]: Define to gettext also if ENABLE_NLS is defined. - This is temporary. - -Thu Jan 2 21:17:50 1997 Jim Meyering - - * src/pr.c (init_fps): Initialize lines_stored field in three places. - This avoids uninitialized memory reads in close_file. - -Wed Jan 1 17:32:18 1997 Jim Meyering - - * configure.in (AC_ARG_PROGRAM): Remove explicit use. - It's implicit in AM_INIT_AUTOMAKE. From Wayne Stewart. - -Sun Dec 29 23:42:57 1996 Jim Meyering - - * src/pr.c (init_header): Plug a small memory leak by using stack - rather than heap for a 15-byte temporary buffer. - -Sat Dec 28 00:03:23 1996 Jim Meyering - - * src/pr.c (TAB_WIDTH): Parenthesize uses of parameters and renamed - from tab_width. - (POS_AFTER_TAB): Renamed from pos_after_tab. Define in terms of - TAB_WIDTH rather than duplicating the expression. - -Fri Dec 27 17:29:02 1996 Jim Meyering - - * tests/join-test/mk-script.pl: Fix a couple of thinkos and typos. - Now it works with pr's tests, too. - - * tests/pr-test/Makefile.am (explicit): Regenerate list of files, - this time with duplicates removed. - - * src/pr.c (usage): Break long string literal into two separate - printf statements to accommodate default maximum of 2048 characters - for Irix-4.0.5. Reported by Kaveh Ghazi. - - * Makefile.am (aclocal.m4): No longer depend on acinclude.m4. - - * tests/Makefile.am (SUBDIRS): Add pr-test. - - * configure.in: AC_REQUIRE version 2.12 of autoconf. - AC_OUTPUT: Add tests/pr-test/Makefile. - -Sun Dec 22 08:11:27 1996 Jim Meyering - - * acinclude.m4: Move macros to individual files in new directory, m4/. - See ChangeLog entries in sh-utils for the details. - - * configure.in: Increment version to 1.20a. - - * tests/md5sum-test/Makefile.am: Use same framework as other tests. - * tests/md5sum-test/Test.pm: New file. - -Sat Dec 21 20:32:58 1996 Jim Meyering - - * tests/Makefile.am (EXTRA_DIST): Add README and Makefile.am.in. - - * tests/Makefile.am.in: New file. - - * tests/sort-test/Makefile.am: Clone the Makefile.am from join-test. - Replace only the definition of $x and the auto-generated lists of - test files. - * tests/cut-test/Makefile.am: Likewise. - * tests/tr-test/Makefile.am: Likewise. - - * tests/join-test/Makefile.am: Add @MAINT@-protected rule for - verifying that Makefile.am is consistent with Test.pm. - -Fri Dec 20 00:08:36 1996 Jim Meyering - - * tests/join-test/Makefile.am (MAINTAINERCLEANFILES): Use $(in1) - and $(in2), not $(in). - - * tests/join-test/mk-script.pl: New option: --list. - Generate lists of files used/generated. - -Thu Dec 19 23:28:41 1996 Jim Meyering - - * tests/join-test/mk-script.pl: Rewrite to be more general -- so - it can be used for join, cut, sort, tr, and soon, pr test suites. - * tests/tr-test/mk-script.pl: Symlink through CVS repo to join's - mk-script.pl. - * tests/sort-test/mk-script.pl: Likewise. - * tests/cut-test/mk-script.pl: Likewise. - - * tests/tr-test/Test.pm: Adapted for new mk-script.pl. - * tests/join-test/Test.pm: Likewise. - -Tue Dec 17 16:48:51 1996 Jim Meyering - - * tests/join-test/Makefile.am (.pl): Make generated file read-only so - I don't accidentally modify it instead of the one with the .pl suffix. - - * acinclude.m4 (jm_SYS_PROC_UPTIME): Require AC_PROG_CC, rather than - now-obsolete AC_C_CROSS. - (jm_FUNC_MKTIME): When redefining, use rpl_ prefix, not gnu_ one - since there's nothing GNU-specific about the replacement. Contrast - with gnu_ prefix added to strftime. - (jm_FUNC_MEMCMP): New macro. - * configure.in: Use jm_FUNC_MEMCMP instead of AM_FUNC_MEMCMP. - * acconfig.h: Add memcmp. - * README: Remove warning about memcmp. The new macro handles it. - -Mon Dec 16 23:03:27 1996 Jim Meyering - - * tests/Makefile.am (pkgdata_DATA): Remove unnecessary assignment. - From Eric Backus. - (AUTOMAKE_OPTIONS): Likewise. - -Sat Dec 14 14:51:50 1996 Jim Meyering - - * acinclude.m4 (jm_SYS_PROC_UPTIME): Fix typo in cache variable - name for cross compiling. - Remove definitions of gettext-related macros. The gettext - installation procedure installs corresponding .m4 files so that - aclocal will use them. - -1996-12-12 Paul Eggert - - * system.h (ISDIGIT): Replace with smaller, faster edition - that yields nonzero only on ASCII digits. - (ISDIGIT_LOCALE): New macro, with same meaning that ISDIGIT - used to have. - - * tr.c (is_char_class_member): Use ISDIGIT_LOCALE instead of - ISDIGIT to test for characters in CC_DIGIT class. - - * sort.c (digits): Remove; subsumed by new ISDIGIT. - (inittables): Remove initialization of `digits'. - (fraccompare, numcompare, main): Use ISDIGIT (x) instead of digits[x]. - (fraccompare, numcompare): Avoid casts to unsigned char that are no - longer needed. - - * csplit.c (get_format_width, get_format_prec): Avoid - unnecessary comparison of digit to '\0'. - -Thu Dec 12 23:42:51 1996 Jim Meyering - - * src/sort.c (usage): Clarify description of -u option. - From Karl Berry. - -Wed Dec 11 19:32:18 1996 Jim Meyering - - * Version 1.20. - -Tue Dec 10 00:15:50 1996 Jim Meyering - - The file name, `build-script.pl' is longer than 14 characters. - Rename it. - * tests/cut-test/mk-script.pl: Rename from build-script.pl. - * tests/cut-test/Makefile.am: Reflect renaming. - * tests/tr-test/mk-script.pl: Rename from build-script.pl. - * tests/tr-test/Makefile.am: Reflect renaming. - * tests/sort-test/mk-script.pl: Rename from build-script.pl. - * tests/sort-test/Makefile.am: Reflect renaming. - * tests/join-test/mk-script.pl: Rename from build-script.pl. - * tests/join-test/Makefile.am: Reflect renaming. - Reported by Karl Heuer. - - * configure.in (VERSION): Bump to 1.19r. - (AC_ISC_POSIX): Remove kludgy macro. - Use this test instead: - (LIBS): Add -lcposix if it contains strerror. - Patch from Karl Heuer. - -Sun Dec 8 07:22:38 1996 Jim Meyering - - =========== Update for automake-1.1k. - * Makefile.am (AUTOMAKE_OPTIONS): Require 1.1k. - * configure.in (AM_CONFIG_HEADER): Use it. - (AC_OUTPUT): Remove stamp-h timestamping statement. - Now, AM_CONFIG_HEADER does it automatically. - * lib/Makefile.am (noinst_LIBRARIES): Rename to libtu.a as per - new automake requirement. - Rename tu_* variables to libtu_a_*. - -Wed Dec 4 21:03:18 1996 Jim Meyering - - * src/pr.c: Apply big patch from Roland Huebner. - - * src/tr.c (main) [!POSIXLY_CORRECT]: Allow the identity mappings: - [:upper:] to [:upper:] and [:lower:] to [:lower:]. - (main) [POSIXLY_CORRECT]: Give a more specific diagnostic for - the invalid identity mappings [:upper:] to [:upper:] and [:lower:] - to [:lower:]. - (class_ok): Update table to reflect that tr now allows these - identity mappings. Suggestion from Risto Kankkunen. - -Thu Nov 28 00:31:18 1996 Jim Meyering - - * configure.in (AM_GNU_GETTEXT): Renamed from ud_GNU_GETTEXT - for gettext-0.10.25. - -Tue Nov 26 23:05:14 1996 Jim Meyering - - * src/sort.c (fraccompare): Add explicit `int' in `register' dcls, - to avoid new warning from gcc. - -Sun Nov 24 21:02:15 1996 Jim Meyering - - * tests/sort-test/Makefile.am (t): Add names of those 5 tests. - - * tests/sort-test/Test.pm: Add 5 tests to exercize just-fixed code. - - * src/sort.c (set_ordering): Revert 1994-05-04 change to this function - so that blanks are not unconditionally ignored when computing start - and end positions for numeric keys with explicit character offsets. - Reported by Markus Demleitner. - -Sat Nov 23 16:07:08 1996 Jim Meyering - - * cat.c (usage): Alphabetize option descriptions the way sort -f would. - * fmt.c (usage): Likewise. - * join.c (usage): Likewise. - * md5sum.c (usage): Likewise. - * od.c (usage): Likewise. - * pr.c (usage): Likewise. - * sort.c (usage): Likewise. - * split.c (usage): Likewise. - * wc.c (usage): Likewise. - From Karl Berry. - -Fri Nov 22 20:20:37 1996 Jim Meyering - - * src/csplit.c (process_regexp): Update CURRENT_LINE only if - the new value would be larger. This avoids the infinite loop - otherwise provoked by situations like this: - printf "\na\n" | csplit - '/a/-1' '{*}' - From Jens Schmidt. - -Tue Nov 19 23:16:57 1996 Jim Meyering - - * configure.in (AM_SANITY_CHECK_CC): Remove it. Autoconf-2.11 - has this built-in. - -Sat Nov 2 08:50:01 1996 Jim Meyering - - * doc/Makefile.am (MAKEINFO): Set to makeinfo --no-split. - Otherwise, the generated info files have names longer than - the 14-byte max of some old systems. - Reported by Karl Heuer. - -Fri Nov 1 21:33:16 1996 Jim Meyering - - * lib/strtol.c: Update from GNU libc. - - * tests/sort-test/Test.pm: Add a test to exercize this fix. - - * src/sort.c [!ENABLE_ASSERTIONS]: Guard NDEBUG definition. - (checkfp): Fix off-by-one error that resulted in writing one byte - beyond the end of a malloc'd buffer. It caused `sort -c' to segfault - on Linux systems having a relatively recent libc. Before, running - the command, perl -e "print 'x' x 30, \"\n\";"|sort -c - would provoke the memory overrun (though not necessarily the failure). - Add an assertion. - Reported by Risto Kankkunen. - -Thu Oct 31 17:48:24 1996 Jim Meyering - - * src/sort.c (key_init): New function. - (main): Use key_init in the two places where it was open-coded. - This fixes a UMR of the general_numeric field. - - * src/join.c (decode_field_spec): Always give FIELD_INDEX a value. - This avoids a spurious UMR report from purify. - (prjoin): Add an assertion. - (add_field): Update assertion. - - * src/tr.c (es_free): New function. - (parse_str): Use it to plug a small memory leak. - -Wed Oct 23 22:02:24 1996 Jim Meyering - - * lib/md5.c: Update from GNU libc. - * lib/md5.h: Update from GNU libc. - -Mon Oct 21 16:48:12 1996 Jim Meyering - - * src/tr.c (validate): Remove TAB from diagnostic, for consistency. - -Sun Oct 20 13:44:07 1996 Jim Meyering - - * lib/Makefile.am (INCLUDES): Add -I../intl. Reported by Eric Backus. - - * Makefile.am (AUTOMAKE_OPTIONS): Set to `gnits' - (EXTRA_DIST): Remove. - - * configure.in: Remove README_ALPHA related code. Automake takes - care of it automatically now when in gnits mode. - - * lib/md5.c (md5_process_bytes): Cast void* pointer to char* before - doing arithmetic with it. - -Sat Oct 19 23:13:54 1996 Jim Meyering - - * lib/md5.c: Update from GNU libc. - * lib/md5.h: Update from GNU libc. - -Fri Oct 18 00:08:04 1996 Jim Meyering - - * configure.in (AC_OUTPUT): Add tests/join-test/Makefile. - - * tests/Makefile.am (SUBDIRS): Add join-test. - -Tue Oct 15 23:25:31 1996 Jim Meyering - - * src/tr.c (get_next): Rewrite to treat lower/upper mapping as a - special case. - (main): Write separate loops to initialize mapping for lower->upper - and upper->lower conversion. - Reported by Arne Henrik Juul. - -Sun Oct 13 12:52:42 1996 Jim Meyering - - * lib/xstrtol.c (__xstrtol): Return an error for invalid suffix. - Before, e.g., `split -b 1M' would be silently accepted and treated - like `split -b 1'. Reported by Franc,ois. - - * src/split.c (usage): Remove parameter, REASON. - (main): Update callers to use combination of error (0, 0, ... and - usage (EXIT_FAILURE). - (main): When a string operand cannot be converted to a number of - bytes or lines, include that string in the diagnostic. - -Sat Oct 12 00:05:11 1996 Jim Meyering - - * configure.in (AC_REPLACE_FUNCS): Add strpbrk and strtol. - - * lib/Makefile.am (EXTRA_DIST): Remove. - -Thu Oct 10 23:41:36 1996 Jim Meyering - - * lib/md5.c (md5_stream): Apply fix from Ralph Loader - via Ulrich Drepper. - -Wed Oct 9 07:26:40 1996 Jim Meyering - - * lib/Makefile.am (tu_DEPENDENCIES): Depend on $(tu_LIBADD). - -Tue Oct 8 21:32:17 1996 Jim Meyering - - * lib/error.c: Include error.h to align with libit -- - under protest, François :-). - -Sun Oct 6 08:02:28 1996 Jim Meyering - - * acinclude.m4 (AC_HEADER_SYS_TIME_H, AM_FUNC_MKTIME, - AM_FUNC_ERROR_AT_LINE, AM_FUNC_OBSTACK): Remove definitions. - They're included in automake-1.1f. - - * configure.in (AM_FUNC_ERROR_AT_LINE): Use it instead of - open-coding it. - -Sat Oct 5 12:40:22 1996 Jim Meyering - - * lib/memcpy.c [HAVE_CONFIG_H]: Include config.h. - From Karl Berry. - -Fri Oct 4 07:20:37 1996 Jim Meyering - - * configure.in (GNU_PACKAGE): New variable. - (PACKAGE_VERSION): Remove it. - - * acconfig.h (GNU_PACKAGE): New variable. - (PACKAGE_VERSION): Remove now-unused variable. - - * lib/long-options.c (parse_long_options): Separate package name - and version number to accommodate new --version output requirement. - * lib/long-options.h: Update prototype. - -Thu Oct 3 23:27:31 1996 Jim Meyering - - * src/md5sum.c (main): Remove dead code that used to print --version - output. - -Tue Oct 1 06:54:22 1996 Jim Meyering - - * configure.in: Use result of AM_FUNC_STRTOD to set POW_LIBM. - * src/Makefile.am (sort_LDADD): Use any library (-lm) that - gets substituted for @POW_LIBM@. - - * tests/md5sum-test/md5-rfc (md5sum): Use ../../src/md5sum. - -Mon Sep 30 23:35:46 1996 Jim Meyering - - * tests/md5sum-test/md5-rfc (md5sum): Set to $srcdir/md5sum. - - * acinclude.m4: Update definitions from gettext-0.24. - -Sun Sep 29 20:04:53 1996 Jim Meyering - - * tests/sort-test/build-script.pl: Die if close fails. - * tests/tr-test/build-script.pl: Likewise. - - * configure.in (AC_OUTPUT): Add tests/cut-test/Makefile. - * tests/Makefile.am (SUBDIRS): Add cut-test. - * tests/cut-test: New directory. - -Fri Sep 27 22:22:09 1996 Jim Meyering - - * configure.in (ALL_LINGUAS): Add spanish (es). - -Thu Sep 26 21:02:54 1996 Jim Meyering - - * src/md5sum.c (usage): Remove references in --help output to - the now-deprecated --string option. Support for it will be - removed soon. Using this option can provoke a memory access - violation on some systems because of (unavoidable in an efficient - implementation) alignment assumptions made by functions in md5.c. - md5sum.c could leave the option in and accommodate the alignment - restriction, but this option was intended solely for testing, and - the tests are now all file-oriented, so it's not necessary. - - * tests/md5sum-test/md5-rfc: Rewrite to avoid use of --string option. - -Wed Sep 25 21:43:10 1996 Jim Meyering - - * tests/sort-test/Makefile.am (t): Factor out .in suffix. - Include new test: t16a. - * tests/tr-test/Makefile.am (t): Likewise. - - * src/Makefile.am (EXTRA_DIST): Remove md5-test.rfc. - -Mon Sep 23 10:00:50 1996 Jim Meyering - - * tests/md5sum-test/Makefile.am (EXTRA_DIST): Distribute $(TESTS). - -Sun Sep 22 09:24:22 1996 Jim Meyering - - * src/sort.c (keycompare): Declare translate to be unsigned char *. - Otherwise, sign extension caused misordering when using e.g. -f. - Reported by Erick Branderhorst. - * tests/sort-test/Test.pm: Add Erick's test for that fix. - - * tests/Makefile.am (SUBDIRS): Add md5sum-test. - -Sat Sep 21 13:34:59 1996 Jim Meyering - - * src/Makefile.am (check): Remove tests for md5sum. - * tests/md5sum-test: New directory. Put them here instead. - * configure.in (AC_OUTPUT): Add tests/md5sum-test/Makefile. - -Thu Sep 19 08:54:05 1996 Jim Meyering - - * tests/: Rename from checks. - * Makefile.am (SUBDIRS): Change `checks' to `tests'. - * configure.in (AC_OUTPUT): Likewise. - - * configure.in ($PACKAGE, $VERSION): Don't AC_DEFINE_UNQUOTED these. - AM_INIT_AUTOMAKE now does it (as of automake-1.1e). - -Sun Sep 15 23:08:48 1996 Jim Meyering - - * Makefile.am (EXTRA_DIST): Remove acinclude.m4. - -Thu Sep 12 17:05:23 1996 Jim Meyering - - * lib/Makefile.am (EXTRA_DIST): Add getline.c. - (tu_SOURCES): Remove getline.c - From Kaveh Ghazi. - -Sun Sep 8 13:55:18 1996 Jim Meyering - - * checks/sort-test/build-script.pl: Prefix $in with \$srcdir/ - so make check works with VPATH build. From Uli Drepper. - -Sat Sep 7 12:25:42 1996 Jim Meyering - - * src/system.h: Add comments justifying IS* versions of ctype.h macros. - - * src/fmt.c (check_punctuation): Use ISPUNCT instead of ispunct. - (get_line): Use ISSPACE instead of isspace. From Bruno Haible. - -Mon Sep 2 10:34:46 1996 Jim Meyering - - * src/*.c (usage): Tell where to report bugs. - -Sun Aug 25 22:50:47 1996 Jim Meyering - - * checks/sort-test/Makefile.am (EXTRA_DIST): Add $x-tests. - ($x-tests): Guard dependencies with @MAINT@. - * checks/tr-test/Makefile.am: Likewise. - -Sat Aug 24 14:25:41 1996 Jim Meyering - - * src/cat.c (cat): Cast first arg to stpcpy to char* to avoid warnings. - -Wed Aug 21 22:28:26 1996 Jim Meyering - - * configure.in (ALL_LINGUAS): Add polish (pl). - -Sun Aug 18 09:34:42 1996 Jim Meyering - - * configure.in (AC_OUTPUT): Add checks/sort-test/Makefile. - * checks/Makefile.am (SUBDIRS): Add sort-test. - -Sat Aug 17 18:57:17 1996 Jim Meyering - - * Makefile.am (EXTRA_DIST): Add acinclude.m4. - -Tue Aug 13 21:47:23 1996 Jim Meyering - - * src/Makefile.am (EXTRA_DIST): Remove ansi2knr.1 and ansi2knr.c. - Automake includes them automatically. - - * configure.in (AM_INIT_AUTOMAKE): Use it. - (AM_PROG_INSTALL): Remove. AM_INIT_AUTOMAKE does this. - (AC_PROG_MAKE_SET): Likewise. - -Sun Aug 11 20:49:21 1996 Jim Meyering - - * configure.in: Rename a few macros for automake-1.1c. - (AC_REPLACE_GNU_GETOPT): Remove. - (AC_PATH_PROG): Find perl -- needed only for checks if you - change or remove things with e.g. make maintainerclean. - - - * lib/Makefile.am (tu_LIBADD): Remove @REGEXOBJ@. New AM_WITH_REGEX - adds .o files to @LIBOBJ@. - (tu_SOURCES): Add getopt.c and getopt1.c. - (EXTRA_DIST): Remove getopt.c and getopt1.c. - - * acinclude.m4: New file -- derived from aclocal.m4. - * aclocal.m4: This file is now generated by the aclocal program - (which comes with the automake package.) - -Sun Aug 4 10:50:46 1996 Jim Meyering - - * checks/: New directory. - * checks/Makefile.am: New file. - * configure.in (AC_OUTPUT): Add new directories: checks, - checks/tr-test. - * Makefile.am (SUBDIRS): Likewise. - -Sat Jul 27 17:22:14 1996 Jim Meyering - - * src/system.h (bindtextdomain) [!ENABLE_NLS]: Undefine to avoid - redefinition warnings on solaris. - (textdomain) [!ENABLE_NLS]: Likewise. - -Thu Jul 25 23:06:35 1996 Jim Meyering - - * src/unexpand.c (unexpand): Move EOF check to follow code that - processes and generates output for pending spaces. Before - `printf ' ' |unexpand -t 1,2' generated no output. - - * src/md5sum.c (md5_check): Remove parameter, BINARY. - Rename local TYPE_FLAG to BINARY, so md5_file uses the binary mode - from the input stream rather than the one from the command line. - (main): Fail with a diagnostic if --binary or --text is specified - when verifying checksums. - Reported by Eli Zaretskii . - -Sun Jul 21 11:58:48 1996 Jim Meyering - - * configure.in: Add check for error_at_line so systems with - GNU libc don't compile and link with distributed error.c. - * lib/Makefile.am (tu_SOURCES): Remove error.c. - (EXTRA_DIST): Add error.c. - - * configure.in (AC_REPLACE_FUNCS): Replace getline.c. - Add related check for the getdelim function. - From Ulrich Drepper -- as done in gettext. - -Sat Jul 20 15:59:36 1996 Jim Meyering - - * configure.in (PACKAGE_VERSION): Use space instead of hyphen to - separate PACKAGE and VERSION. - - * aclocal.m4 (AM_SANITY_CHECK_CC): New macro. Derived from - macros from Bruno Haible and from Cygnus. - * configure.in (AM_SANITY_CHECK_CC): Use it. - -Wed Jul 17 00:30:28 1996 Jim Meyering - - * install-sh: Get version with MIT copyright. - -Tue Jul 16 00:09:37 1996 Jim Meyering - - * aclocal.m4 (fp_C_PROTOTYPES): Improved version from - François Pinard. - Update all other macros to reference $fp_cv_prog_cc_stdc, rather - than $ac_cv_prog_cc_stdc. - - * src/od.c (OFF_T_MAX): Remove definition. - (main): Compare against LONG_MAX rather than OFF_T_MAX. - -Mon Jul 15 23:42:57 1996 Jim Meyering - - * Many files: Update FSF address. - -Sun Jul 14 16:53:50 1996 Jim Meyering - - * src/unexpand.c (unexpand): Fix bug that contributed to endless loop - when invoking `echo ' ' |unexpand -t 1,2': use print_tab_index, not - tab_index in inner flush_pend: while loop. From Keith Owens - . - - * src/unexpand.c [HAVE_LIMITS_H]: Include limits.h for INT_MAX. - [!INT_MAX]: Define it. - (main): Append INT_MAX to command-line-specified tab list to - ensure termination in unexpand's inner loop. - Derived from a patch from Keith Owens. - -Thu Jul 11 22:04:36 1996 Jim Meyering - - * Version 1.19. - - * configure.in (VERSION): Bump to 1.19. - -Wed Jul 10 22:57:29 1996 Jim Meyering - - * aclocal.m4 (fp_PROG_CC_STDC): Include sys/stat.h in test program - so that DYNIX/ptx V4.1.3 doesn't use `-Xc -D__EXTENSIONS__' -- with - those options on that system, sys/stat.h gets compile errors. - With help from Marcus Daniels. - - * getopt.c: Update from gettext-0.10.23. - * getopt1.c: Likewise. - * getopt.h: Likewise. - -Tue Jul 9 18:07:23 1996 Jim Meyering - - * src/fmt.c (MAXCOST): Use `(unsigned long)1' rather than `(COST)1' - so the left operand of the << isn't signed. - From Kjetil Torgrim Homme. - - * po/Makefile.in.in (install-data): Don't install NLS files when - they're not requested. From Ulrich Drepper. Reported by - Kjetil Torgrim Homme . - -Fri Jul 5 21:55:58 1996 Jim Meyering - - * po/Makefile.in.in ($(PACKAGE).pot): Merge from gettext-0.10.23. - * ABOUT-NLS: Likewise. - * intl/*: Likewise. - * aclocal.m4: Likewise. - -Thu Jul 4 07:24:54 1996 Jim Meyering - - * src/uniq.c (usage): Remove space before newline in usage message. - - * src/md5sum.c (MIN_DIGEST_LINE_LENGTH): New macro. - [NEWLINE_REPLACEMENT_STRING*]: Remove macros. - (main): Output a leading backslash for a line describing a file - whose name contains a newline. Then translate each NEWLINE byte - in the file name to the string, "\\n", and each backslash to "\\\\". - File names that don't contain NEWLINE aren't translated. - (split_3): Rewrite to handle file names with embedded newlines. - Miles Bader and Jim Blandy suggested this new encoding scheme. - - * src/md5sum.c (md5_file): Replace obsolete comment with a description - of the function. - (md5_check): Don't use "s"-adding trick to form the plural of - `checksum.' That doesn't work well with translation. - Suggestions from Ulrich Drepper. - (split_3): Add missing semicolon so it compiles. From Jim Blandy. - -Wed Jul 3 23:21:09 1996 Jim Meyering - - * src/md5sum.c (split_3): Correct test for 35-byte line to accommodate - fact that leading blanks may be stripped. - -Tue Jul 2 21:51:40 1996 Jim Meyering - - * configure.in (ALL_LINGUAS): Add dutch (nl). - -Mon Jul 1 23:50:19 1996 Jim Meyering - - * src/md5sum.c [NEWLINE_REPLACEMENT_STRING]: Define. - (split_3): Translate NL bytes not to NUL, but to - NEWLINE_REPLACEMENT_STRING. - Suggested by Ulrich Drepper. - (main): Translate back to NL-containing filename. - -Sun Jun 30 22:42:17 1996 Jim Meyering - - * src/md5sum.c (split_3): Take an additional parameter, S_LEN. - Adapt caller. - Map translated NEWLINE-containing filename back into the original - NEWLINE-containing name. - (md5_check): Translate NEWLINE bytes to NUL bytes in filename. - -Sat Jun 29 18:59:07 1996 Jim Meyering - - * configure.in (PACKAGE_VERSION): Add `GNU ' prefix so it - appears in the output of --version. Reported by RMS. - -Wed Jun 26 21:35:10 1996 Jim Meyering - - * src/Makefile.am (LDADD): Remove sort-specific hack to link - with -lm. - * aclocal.m4 (AM_FUNC_STRTOD): New macro. - * configure.in (AM_FUNC_STRTOD): Use it. - (AC_REPLACE_FUNCS): Remove strtod. - Suggested by Tom Tromey. - - * po/Makefile.in.in (install-data): Add `else true;' to avoid - letting failing if-condition cause make failure. - From Fred Fish (fnf@ninemoons.com). - -Tue Jun 25 21:55:18 1996 Jim Meyering - - * Version 1.18a. - -Tue Jun 18 20:43:20 1996 Jim Meyering - - * aclocal.m4: Update from gettext-0.10.20. - * ABOUT-NLS: Likewise. - * intl/*: Likewise. - -Thu Jun 13 22:31:39 1996 Jim Meyering - - * configure.in (VERSION): Bump to 1.18a. - - * po/Makefile.in.in ($(PACKAGE).pot): Reapply change of May 30. - Depend on POTFILES only when using maintainer mode. - - * intl/*: Update from gettext-0.10.18. - -Tue Jun 11 23:32:10 1996 Jim Meyering - - * Version 1.18. - - * po/Makefile.in.in: Update from gettext-0.10.17. - * intl/*: Likewise. - * ABOUT-NLS: Likewise. - -Mon Jun 10 18:22:29 1996 Jim Meyering - - * Makefile.am (cvs-dist): Use -c option in cvs tag command. - -Fri Jun 7 22:06:46 1996 Jim Meyering - - * configure.in (VERSION): Set to 1.18. - - * src/Makefile.am (sort_LDADD): Set this to -lm to get pow when using - the strtod supplied with this package. Otherwise, linking failed on - Solaris-2.4 systems. Reported by Wayne Stewart . - -Thu Jun 6 21:57:08 1996 Jim Meyering - - * po/Makefile.in.in: Update from gettext-0.10.16. - * intl/*: Likewise. - * ABOUT-NLS: Likewise. - * aclocal.m4 (AC_REPLACE_GNU_GETOPT): Move definition to precede - gettext-related ones. - Update from gettext-0.10.16. - -Fri May 31 22:04:51 1996 Jim Meyering - - * Version 1.17. - - * Makefile.am (EXTRA_DIST): Set to texinfo.tex so that file is - distributed. - -Thu May 30 00:07:48 1996 Jim Meyering - - * Version 1.16. - - * tail.c (main): Interpret the old-style +VALUE and -VALUE options - like -c VALUE and -c +VALUE (resp) when VALUE has one of the [bkm] - suffix multipliers. This makes the code consistent with --help - output. Reported by Karl Heuer. - - * sort.c (limfield): #ifdef-out a block of code that makes - GNU sort incompatible with Unix sort when a key-end spec refers - to the N'th character in a field that has fewer than N characters. - The POSIX spec doesn't appear to specify behavior for this case. - From Karl Heuer. - - * po/Makefile.in.in (stamp-cat-id): Avoid using temp filename - longer than 14 characters. - (mostlyclean): Likewise. - From Karl Heuer. - - * po/Makefile.in.in ($(PACKAGE).pot): Depend on POTFILES only - when using maintainer mode. Reported by Karl Heuer. - - * po/Makefile.in.in (.po.mo): Reenable dependency and rule. - It is required when using native NLS, e.g. on Solaris. - From Marcus Daniels. - - * od.c (decode_one_format): Use %lu (not %d) printf format - corresponding to unsigned long, SIZE. - - * Version 1.15. - - * intl/Makefile.in (installcheck): New target. - * po/Makefile.in.in (installcheck): New target. - - * od.c (decode_one_format): Take another parameter. - Give a specific diagnostic for invalid format spec here rather - than an overly general one from caller's caller. - (decode_format_string): Update caller. - (main): Don't give diagnostic here when decode_format_string fails. - Remove assertions that could fail on some Crays because they don't - have a two-byte type. - Johan Danielsson (joda@pdc.kth.se) reported the failed assertions. - -Mon May 27 17:43:31 1996 Jim Meyering - - * cat.c (main): Use STDIN_FILENO and STDOUT_FILENO instead of - less portable fileno (stdin) and fileno (stdout). - * sort.c (main): Use STDIN_FILENO instead of less portable - fileno (stdin). - -Mon May 20 21:50:23 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * Makefile.am (distcheck): Remove target and rule -- automake-0.33 - adds it automatically. - -Sun May 19 13:15:49 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * configure.in (LINGUAS): Add ko. - * Makefile.am (distcheck): Remove @MAINT@ prefix from first command. - -Thu May 16 22:18:41 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * Makefile.am (distcheck): New target. From Gord Matzigkeit. - -Fri May 10 20:46:13 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * po/Makefile.in.in (all-yes): Always depend on CATALOGS. Otherwise - they won't be built and install could fail. From Ulrich Drepper. - (.po.mo): Disable dependency and rule when not in maintainer mode. - - * aclocal.m4 (ud_WITH_NLS): Make DATADIRNAME and CATOBJEXT depend - on whether we're using GNU gettext. From Ulrich Drepper. - -Wed May 8 21:10:43 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * intl/Makefile.in (distdir): Renamed from dist. For compatibility - with automake-0.32. - * po/Makefile.in.in (distdir): Likewise. - - * po/Makefile.in.in (all-yes): Depend on GMOFILES. - Depend on CATALOGS and GMOFILES files only in maintainer mode. - -Tue May 7 22:10:20 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * configure.in: Require autoconf-2.10. - - * aclocal.m4 (jm_MAINTAINER_MODE): New macro. - * configure.in (jm_MAINTAINER_MODE): Use it. - -Sat May 4 20:40:01 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * configure.in (LINGUAS): Add de. - * po/de.po: New file. - - * memcasecmp.c [IN_CTYPE_DOMAIN]: Rename from ISASCII. - * regex.c [IN_CTYPE_DOMAIN]: Likewise. - * system.h [IN_CTYPE_DOMAIN]: Likewise. - -Sun Apr 28 17:10:03 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * fmt.c (copy_rest): Don't copy past end of prefix. Output - trailing spaces if the prefix had any. Before, fmt would - improperly output NUL bytes. The command - perl -e 'print "| S";' |fmt -p' | '|tr '\0' @ - output `|@S'. Reported by François Pinard. - - * sort.c (main): Give a better diagnostic for `sort -0'. - Reported by Karl Berry. - - * configure.in: Make fp_C_PROTOTYPES precede AC_C_INLINE. - Otherwise, some systems lose because the value AC_C_INLINE choses - with plain `cc' is different from that chosen when using the ANSI-mode - C compiler. From Kaveh Ghazi. - -Tue Apr 23 22:05:35 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * aclocal.m4 (AC_REPLACE_GNU_GETOPT): New macro. - * configure.in: Use it. - * lib/Makefile.am (tu_SOURCES): Remove getopt.c and getopt1.c. - (EXTRA_DIST): Add getopt.c and getopt1.c - - * src/*.c, src/*.h: Update Copyright years to include 1996. - -Sun Apr 21 08:04:51 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * getline.c: New version from gettext-0.10.12. - * getline.h: Likewise. - * configure.in (AC_CHECK_FUNCS): Add getdelim. - Suggested by Ulrich Drepper. - - * md5sum.c (md5_check): Remove spurious newline at end of error - format string. - - * od.c (decode_one_format): Use printf's L modifier for long doubles, - not `l'. From Eric Backus. - - * Makefile.am (LDADD): Put @INTLLIBS@ before package library. - - * od.c: Include . - [!BITSPERBYTE]: Define. - [OFF_T_MAX]: Use BITSPERBYTE, not 8, and cast the result to off_t. - * configure.in (AC_CHECK_HEADERS): Add values.h. - -Fri Apr 19 23:48:53 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * Makefile.am (cvs-dist): New rule. Based on the one from - Tom Tromey's automake. - -Thu Apr 18 22:13:14 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * tail.c (main): Make code clearer: use new variable `n_files' in - place of `argc - optind'. Use `file' instead of `argv + optind'. - -Sat Apr 13 13:08:29 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * lib/Makefile.am (noinst_HEADERS): Include memcasecmp.h, - not memcasecmp.c. - - * memcasecmp.c: Unprotoize. - [ISASCII]: Define. - [ISUPPER]: Define. - - * join.c (decode_field_spec): Rename local variable `valid' - to invalid (and reverse sense) to avoid conflict with the - macro definition in /usr/include/locale.h on SunOS 4.1.3. - -Tue Apr 9 22:43:57 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * uniq.c: Add new option --ignore-case (-i). - Include memcasecmp.h. - (different): Compare with memcasecmp if ignoring case. - (main): Handle 'i'. - - * join.c (memcasecmp): Remove static definition of function. - Include memcasecmp.h instead. - - * memcasecmp.c: New file. - * memcasecmp.h: New file. - * lib/Makefile.am (tu_SOURCES): Add memcasecmp.c. - (noinst_HEADERS): Add memcasecmp.h. - -Thu Apr 4 17:05:33 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * tr.c: The following commands all failed unnecessarily. - tr -cs '[:upper:]' '[X*]' - tr -dcs '[:lower:]' n-rs-z - tr -ds '[:xdigit:]' [:alnum:]' - tr -dcs '[:alnum:]' [:digit:]' - tr -dc '[:upper:]' - Reported by Ross Ridge (ross@worf.mks.com). - (validate): Add missing conjunct (translating) in test for - `translating and complementing character classes' error. Before, - valid uses of tr could fail. E.g. `tr -dcs '[:cntrl:]' '[:alnum:]''. - (homogeneous_spec_list): New function. - (validate): Use it to relax the old (overly restrictive) restriction - that prohibited use of complemented character classes when translating. - Now, that is allowed as long as the translation maps many to one. - (get_spec_stats): Rename and redefine global has_char_class from - has_upper_or_lower. - -Wed Apr 3 07:08:57 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * aclocal.m4: Update NLS macros from gettext-0.10.11. - - * src/Makefile.am (INCLUDES): Add -I$(srcdir) to get system.h - when srcdir != builddir. From Kaveh Ghazi. - -Wed Mar 27 23:33:36 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * cksum.c (cksum): Use format "%lu %ld" (instead of "%10lu %8ld") - to be POSIX compliant. From Stephen Gildea . - -Sun Mar 24 08:47:40 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * join.c (main): Use EXIT_FAILURE, not 2, as exit code in error call. - * od.c (skip, main): Likewise. - * tr.c (main): Likewise. - - * cat.c cksum.c comm.c csplit.c cut.c expand.c fmt.c fold.c head.c - join.c md5sum.c nl.c od.c paste.c pr.c split.c sum.c tac.c tail.c - tr.c unexpand.c uniq.c wc.c: Exit with status EXIT_SUCCESS or - EXIT_FAILURE, rather than 0 or 1. - -Sat Mar 23 23:14:40 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * system.h [EXIT_FAILURE]: Undefine and define to 1 also if it - is defined to zero. Suggested by Paul Eggert. - - * sort.c [SORT_FAILURE]: New macro. - Be careful to exit with 1 only when -c is used and the - input is not properly sorted. In all other cases, use - SORT_FAILURE as required by POSIX. - (main): Change some `error (1, ...' to use SORT_FAILURE. - Upon successful termination, exit with EXIT_SUCCESS instead of `0'. - Replace all uses of `2' (as exit code) with SORT_FAILURE. - -Thu Mar 21 22:47:50 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * csplit.c: Include assert.h, but disable assertions. - (process_line_count): Replace if-abort with a slightly relaxed - assertion. Before, `echo |csplit - 1 1' would abort. - Reported by Samuli.Karkkainen@hut.fi. - (parse_patterns): Disallow uses like `csplit FILE 0' with zero - line number, `csplit FILE 2 1' with decreasing line numbers, and - warn about uses like `csplit FILE 3 3' that have equal line numbers. - - * sort.c (main): Declare to be of type int, not void. - From Peter Seebach . - * cat.c cksum.c comm.c csplit.c cut.c expand.c fold.c head.c join.c - nl.c paste.c pr.c split.c sum.c tac.c tail.c tr.c unexpand.c uniq.c - wc.c (main): Likewise. - -Sat Mar 16 16:30:07 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * configure.in (PACKAGE_VERSION): New macro. - * acconfig.h (PACKAGE_VERSION): Add it. - * src/Makefile.am: Remove rules for generating version.c. - Remove references to version.o, version.h, and stamp-v. - * version.c: Remove file. - * version.h: Remove file. - * cat.c cksum.c comm.c csplit.c cut.c expand.c fmt.c fold.c - head.c join.c md5sum.c nl.c od.c paste.c pr.c sort.c split.c - sum.c tac.c tail.c tr.c unexpand.c uniq.c wc.c: Don't include - version.h. - (main): Use PACKAGE_VERSION instead of version_string. - -Mon Mar 11 16:07:08 CST 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * sort.c (write_bytes): Renamed from xfwrite. - Remove SIZE parameter. It was always 1. Update all callers. - Rename NELEM parameter to N_BYTES and change its type to size_t. - -Sat Mar 9 13:30:12 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * cat.c cksum.c comm.c csplit.c cut.c expand.c fmt.c - fold.c head.c join.c md5sum.c nl.c od.c paste.c pr.c sort.c - split.c sum.c tac.c tail.c tr.c unexpand.c uniq.c wc.c (main): - Initialize for internationalized message support: call setlocale, - bindtextdomain, and textdomain. - * system.h: Add definitions and includes for NLS. - * Makefile.am (SUBDIRS): Add intl and po. - * src/Makefile.am (datadir): Define. - (localedir): Define. - (DEFS): Add LOCALEDIR definition. - (LDADD): Add @INTLLIBS@. - * aclocal.m4: Add NLS-related macro definitions from - gettext distribution. - * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_LC_MESSAGES, - HAVE_STPCPY): New macros. - Add PACKAGE and VERSION. - * configure.in (PACKAGE): Define with AC_DEFINE_UNQUOTED. - (VERSION): Likewise. - (ALL_LINGUAS): Define. - (AC_CHECK_HEADERS): Add float.h. - (ud_GNU_GETTEXT): Use it. - Link an nls file. - (AC_OUTPUT): Reflect addition of two new directories, intl and po. - Create po/Makefile. - From François Pinard. - - * tr.c (star_digits_closebracket): Declare formal param, IDX, - and local I to be of type size_t (rather than int) to avoid - warnings from gcc -Wall. - -Wed Feb 28 20:32:48 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * src/Makefile.am: Adapt for automake-0.30. - (noinst_HEADERS): Rename from HEADERS. - (INCLUDES): Remove -I.. and -I$(srcdir). automake-0.30 adds these - to DEFS automatically. - * lib/Makefile.am (noinst_HEADERS): Rename from HEADERS. - -Wed Feb 21 18:56:27 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * join.c (xfields) [without -t]: Ignore leading blanks. - From David Dyck (dcd@tc.fluke.COM). - -Sun Feb 18 12:07:27 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * join.c [TOLOWER]: Define. - (usage): Briefly describe new --ignore-case (-i) option. - (memcasecmp): New function. - (main): Set IGNORE_CASE for -i. - (keycmp): Compare with memcasecmp if IGNORE_CASE is set. - Suggestion and an initial patch from Alberto Accomazzi - . - -Sat Feb 17 18:54:40 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * sort.c: Add -z option. Change all occurrences of '\n' to `eolchar'. - (usage): Describe it. - (main): Set eolchar to 0 for -z. - From Mark W. Eichin . - -Fri Feb 16 21:44:14 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * join.c (main): Mark two strings for translation. - * md5sum.c (md5_check): Mark a string for translation. - From François Pinard. - -Mon Feb 12 21:12:28 1996 Jim Meyering (meyering@na-net.ornl.gov) - - Update for automake-0.29. - * Makefile.am (CONFIG_HEADER): Don't define. Automake now does it. - * src/Makefile.am: Likewise. - * lib/Makefile.am: Likewise. - * doc/Makefile.am (info_TEXINFOS): Renamed from TEXINFOS. - * man/Makefile.am (man_MANS): Renamed from MANS. - - * fmt.c [TRUE]: Undefine before defining to avoid warning on NeXT. - [FALSE]: Likewise. - From Derek Clegg (dclegg@next.com). - -Sat Feb 3 16:20:40 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * Version 1.14. - -Wed Jan 31 23:26:13 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * tail.c (dump_remainder): Flush stdout when tailing-forever on - multiple files. From Carlos Canau . - -Fri Jan 5 18:30:28 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * aclocal.m4: For SVR4 systems, use -Xc -D_POSIX_C_SOURCE in CFLAGS, - not just -Xc. From François Pinard. - - * doc/Makefile.am (DIST_OTHER): Don't set to mdate-sh. mdate-sh is - distributed automatically. From Tom Tromey. - -Thu Jan 4 20:32:52 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * nl.c: Include rx.h after limit.h (not before) to avoid warning - about the redeclaration of RE_DUP_MAX in limit.h. rx.h protects - its definition. From Kaveh Ghazi. - - * src/Makefile.am (DIST_OTHER): Include md5-test.rfc so make check - works again. Reported by François Pinard and Kaveh Ghazi. - - * rx.c [SYNTAX]: Rename from SYNTAX_TABLE. - [SYNTAX_TABLE]: Remove extern dcl of re_syntax_table. - (RE_SEARCH_2_FN): Cast string1 and string2 to avoid pointer type - mismatch errors from e.g. SunOS's /bin/cc. - Reported by Kaveh Ghazi. - -Wed Jan 3 23:34:39 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * configure.in (VERSION): Set variable directly rather than from - a separate file. - * Makefile.am (DIST_OTHER): Remove VERSION. - * src/Makefile.am (version.c): Depend on Makefile, not ../VERSION. - (stamp-v): New target; depend on Makefile. - (DISTCLEANFILES): Add stamp-v, version.c. - -Tue Jan 2 00:08:08 1996 Jim Meyering (meyering@na-net.ornl.gov) - - * sort.c (keycompare): Rewrite cases handling ignored characters - so that they really are ignored. Reported by Carl Johnson - . - -Fri Dec 22 21:34:55 1995 Andreas Schwab - - * configure.in: Touch stamp-h only if config.h is remade. - - * csplit.c (extract_regexp) [!WITH_REGEX]: Intialize - syntax_parens field. - -Mon Dec 18 21:42:44 1995 Jim Meyering (meyering@comco.com) - - Use automake to generate Makefile.in files. - * Makefile.am: New file. - * doc/Makefile.am: New file. - * lib/Makefile.am: New file. - * man/Makefile.am: New file. - * src/Makefile.am: New file. - -Thu Dec 14 21:13:22 1995 Jim Meyering (meyering@comco.com) - - * fmt.c (main): Use xstrtol instead of atoi. - - * fold.c (main): Use xstrtol instead of atoi. - (fold_file): Make a couple locals `int', not size_t, and cast - fwrite's third parameter to size_t. - - * nl.c (main): Use xstrtol instead of atoi. - Rename misleading --first-page=N option to --starting-line-number=N. - (usage): Update. - - * uniq.c (main): Use xstrtol instead of atoi. - -Fri Dec 8 20:48:00 1995 Jim Meyering (meyering@comco.com) - - * aclocal.m4 (fp_C_PROTOTYPES): Set ANSI2KNR to ./ansi2knr. - -Thu Dec 7 19:55:03 1995 Jim Meyering (meyering@comco.com) - - * aclocal.m4 (ud_WITH_REGEX): New macro. - * configure.in: Use it. - * rx.c, rx.h: New files. - * lib/Makefile.in (REGEX): Set to @REGEXOBJ@, not regex.o. - (SOURCES, DISTFILES): Add rx.c, rx.h. - * acconfig.h (WITH_REGEX): Add it. - * csplit.c [!WITH_REGEX]: Include rx.h. - * nl.c [!WITH_REGEX]: Likewise. - * tac.c [!WITH_REGEX]: Likewise. - From Ulrich Drepper and François Pinard. - -Tue Dec 5 17:49:53 1995 Jim Meyering (meyering@comco.com) - - * sort.c (main): Diagnose invalid arguments to -k, then fail. - - * sort.c (numcompare): Properly handle all cases in which signs differ. - From Karl Heuer. - - * Makefile.in (mandir): @mandir@ is just $(prefix)/man. - Append `/man1'. Reported by Karl Heuer. - - * sum.c (bsd_sum_file): Remove misleading comment. From Karl Heuer. - - * src/Makefile.in [.c._o]: Don't create $<-tmp. From Kaveh Ghazi. - -Fri Dec 1 01:02:36 1995 Jim Meyering (meyering@comco.com) - - * lib/Makefile.in (default): New target. - - * sort.c (numcompare): Properly order `-' and valid integers; - treat `-' as if it were zero. Reported by Ross Alexander - . - - * Makefile.in (DISTFILES): Remove unused mkdep-Makefile. - (.PHONY): Depend on default. - -Wed Nov 29 21:50:53 1995 Jim Meyering (meyering@comco.com) - - * aclocal.m4 (jm_PROG_C_MKDEP): Remove, for now. - (jm_AUTODEPS): Likewise. - (jm_WITH_GNU_MAKE): Likewise. - * configure.in (jm_AUTODEPS): Remove. - - * sort.c (begfield): Replace loop with equivalent if-else. - (limfield): Fix bug that made field specs like -k1.5 return a - pointer into LINE beyond the first field. - Don't try to trim trailing blanks here; it's not - possible because we don't know where the field begins. - Replace loop with equivalent if-else. - (trim_trailing_blanks): New function. - (findlines): Call it. - (keycompare): Likewise. - (main): Don't decrement T2 corresponding to `x' in field - specs like -ku.v,w.x. - -Sun Nov 26 15:50:23 1995 Jim Meyering (meyering@comco.com) - - * csplit.c [!UINT_MAX]: Define. - [!INT_MAX]: Define. - Include xstrtoul.h. - (string_to_number): Remove function. - (check_for_offset): Use xstrtoul instead of string_to_number. - (parse_repeat_count): Likewise. - (parse_patterns): Likewise. - (main): Likewise. - -Wed Nov 22 23:12:47 1995 Jim Meyering (meyering@comco.com) - - * Makefile.in (all et. al.): If make was invoked with -k and a - sub-make fails, fail after the loop rather than exiting right away. - Otherwise, make's -k option could be ineffective. - -Sat Nov 18 12:04:30 1995 Jim Meyering (meyering@comco.com) - - * src/Makefile.in (version.c): Depend on ../VERSION, not Makefile. - - Update for autoconf-2.5: - * src/Makefile.in (libdir): Set to @libdir@. - (bindir): Set to @bindir@. - * doc/Makefile.in (infodir): Set to @infodir@. - * man/Makefile.in (exec_prefix): Remove it. - (mandir): Set to @mandir@. - (bindir): Remove it. - -Thu Nov 16 21:25:45 1995 Jim Meyering (meyering@comco.com) - - * Makefile.in (default): New default target. Depend on `all' to - work around bug in AIX-3.2.5's /bin/make. Reported by Andreas Luik - . - -Wed Nov 15 23:48:31 1995 Jim Meyering (meyering@comco.com) - - * mkdep-Makefile (.deps/empty.P): Depend on BUILT-HEADERS. - - * aclocal.m4 (jm_PROG_C_MKDEP): Rename from jm_PROG_MKDEP. - * src/Makefile.in (C_MKDEP): Rename from MKDEP. - * lib/Makefile.in (C_MKDEP): Likewise. - * mkdep-Makefile (C_MKDEP): Likewise. - Add comments. - - * csplit.c [__P]: Don't define it here. - * pr.c [__P]: Don't define it here. - * fmt.c [__P]: Don't define it here. - * system.h [__P]: Define it here. - - * aclocal.m4 (jm_AUTODEPS): Rename from jm_WITH_AUTODEPS. - Revamp, with suggestions from Franc,ois Pinard. - (jm_WITH_GNU_MAKE): New macro. - (jm_PROG_MKDEP): New macro. - * configure.in (jm_PROG_MKDEP): Use it. - * src/Makefile.in (MKDEP): Set it. - * lib/Makefile.in (MKDEP): Likewise. - * mkdep-Makefile: Use MKDEP, not DEP_CC. - (DEP_CFLAGS): Remove it. - -Tue Nov 14 23:10:54 1995 Jim Meyering (meyering@comco.com) - - * sort.c: Add support for sorting numbers in scientific notation. - Include xstrtod.h. - (struct keyfield): Add field: general_numeric. - (usage): Describe -g option. - (general_numcompare): New function. - (keycompare): Use new comparison function when general_numeric - flag is set. - (set_ordering): Honor `g' flag. - (main): Initialize and use new field. - From Marcus Daniels . - - * configure.in (AC_REPLACE_FUNCS): Add strtod. - * lib/Makefile.in (SOURCES): Add xstrtod.c. - (OBJECTS): Add xstrtod.o. - (DISTFILES): Add xstrtod.h. - - * csplit.c (cleanup): Don't exit. - (interrupt_handler): Rewrite to reset default signal handler - then repost caught signal. - (xmalloc, xrealloc, read_input, write_to_file, handle_line_error, - process_line_count, process_regexp, create_output_file, - close_output_file): Call cleanup_fatal, not cleanup. - Add const attribute to lots of parameters. - (cleanup_fatal): Renamed from cleanup. Call cleanup, then exit. - Update callers. - - * tac.c (cleanup): Don't exit. - (cleanup_fatal): New function. Call cleanup, then exit. - (sighandler): New function. - (cleanup_fatal): Renamed from cleanup. Call cleanup, then exit. - Update callers. - (tac_stdin): Set up sighandler as signal handler, not `cleanup'. - -Sat Nov 11 15:46:02 1995 Jim Meyering (meyering@comco.com) - - * od.c (skip): Cast fseek's offset argument to `long'. - Erik Bennett reported that this is - necessary on BSDI systems. And if offset doesn't fit in a long, - then try using lseek instead. - - * sort.c (xmalloc): Declare static. - (xrealloc): Likewise. - - * tac.c (cleanup): Add signal number parameter. - Update callers. - - * cat.c (main): Don't die when dev/ino of input and output are - the same and the file descriptors correspond to stdin and stdout. - This is necessary on at least Digital UNIX (aka OSF1) 3.2C. - Otherwise, running `cat << X > $$' would fail with `cat: -: input - file is output file'. From Jarkko Hietaniemi . - - * Makefile.in (DISTFILES): Add @README_ALPHA@. - (config.status) Depend on VERSION. - * configure.in: Set README_ALPHA if the version number ends in [a-z]. - -Fri Nov 10 21:13:42 1995 Jim Meyering (meyering@comco.com) - - * fold.c (usage): Clarify meaning of --spaces. From Karl Berry. - - src/Makefile.in (.c._c): Don't redirect directly to $@. - (._c._o, .c._o): Remove temporary src file. - -Tue Nov 7 23:55:24 1995 Jim Meyering (meyering@comco.com) - - * VERSION: New file. - * configure.in (VERSION): New variable. - (PACKAGE): New variable. - - * Makefile.in (DISTFILES): Add VERSION. - (distdir): Use @PACKAGE@-@VERSION@, not distname. - Remove all references to distname. - * src/Makefile.in (version.c): Generate it. - (SOURCES): Remove now-generated version.c. - (distclean): Delete version.c. - * doc/Makefile.in (version.texi): Use @PACKAGE@-@VERSION@, - not version.c - - * */Makefile.in (distdir): Use @PACKAGE@-@VERSION@, not distname. - Remove all references to distname. - - * split.c: New option: --verbose. - (main): Recognize it. - (usage): Document it. - From Marty Leisner . - -Sun Nov 5 06:59:27 1995 Jim Meyering (meyering@comco.com) - - * src/Makefile.in: Reflect protoization of csplit.c, fmt.c, pr.c, - and unexpand.c. - - * pr.c: Protoize. - (store_columns): Remove spurious 2nd argument in call to read_line. - [__P]: Define. Use it in prototyped forward decls. - - * csplit.c: Move prototypes after struct declarations. - Remove prototypes for xmalloc, xrealloc. - Protect prototypes with __P. - (new_control_record): Cast arg 1 to realloc. - - * fmt.c [__P]: Test PROTOTYPES, not __STDC__. - Protoize. - -Sat Nov 4 23:51:30 1995 Jim Meyering (meyering@comco.com) - - * csplit.c (close_output_file): Set output_stream to NULL so we - don't recurse endlessly between this function and cleanup. - - * unexpand.c: Reorder functions to obviate forward dcls. Remove - forward dcls. Protoize. Add `const' attribute to some parameters. - -Mon Oct 30 23:15:56 1995 Jim Meyering (meyering@comco.com) - - * wc.c: Reorder functions to obviate forward dcls. Remove - forward dcls. Protoize. Add `const' attribute to some parameters. - * uniq.c: Likewise. - * split.c: Likewise. - - * split.c (isdigits, convint): Remove these. - (main): Use xstrtol instead. - -Sun Oct 29 14:04:36 1995 Jim Meyering (meyering@comco.com) - - * paste.c (main): Move function body to end of file. - Remove forward dcls and protoize. - * sum.c (main): Likewise. - * nl.c: Protoize. Reorder functions to obviate forward dcls. - Remove forward dcls. - * tac.c: Likewise. - * src/Makefile.in (OBJECTS): Reflect that all of the above - now use prototypes. - - * sum.c (bsd_sum_file): Give file name parameter const attribute. - (sysv_sum_file): Likewise. - - * tac.c (xwrite): Give output buffer parameter const attribute. - (output): Likewise for both parameters. - (tac): Likewise for file name parameter. - (tac_file): Likewise. - -Sat Oct 28 16:02:39 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (md5_check): Use the same message format when there is - a single file and it gets a read error or checksum mismatch as when - there are more. Write that warning to standard error, not standard - output. Suggestions from Greg Troxel (gdt@b-sgi.bbn.com). - -Thu Oct 26 00:11:35 1995 Jim Meyering (meyering@comco.com) - - * sort.c (xtmpfopen): New function to set proper permissions on - temporary files. Use it instead of xfopen. Reported by Erik Corry - (erik@kroete2.freinet.de). - -Mon Oct 23 23:17:04 1995 Jim Meyering (meyering@comco.com) - - * aclocal.m4 (jm_WITH_AUTODEPS): New directive. - * configure.in: Use it. - - * lib/Makefile.in (INCLUDE, COMPILE): New variables. - (.c.o): Rewrite to be more like src/Makefile.in. - - * src/Makefile.in (distclean): Remove .deps. - Include @top_srcdir@/mkdep-Makefile. - - * mkdep.Makefile: New file. - * Makefile.in (DISTFILES): Add mkdep-Makefile. - * doc/Makefile.in (mostlyclean): Also remove *.info. - -Thu Oct 19 17:38:28 1995 Jim Meyering (meyering@comco.com) - - * od.c: Indent cpp directives. - - * tr.c (BEGIN_STATE): Use INT_MAX - 1 so as not to interfere - with large repeat counts. - (struct E_string): New struct. - (find_closing_delim): Take E_string arg rather than char* and length. - (find_bracketed_repeat): Likewise. - (star_digits_closebracket): New function. - (append_char_class): No longer give diagnostic. - (append_equiv_class): Likewise. - (build_spec_list): Give them here instead, allowing string1 like - [:*][:upper:] that got errors before. - Take E_string arg rather than char*. - Convert switch stmts into if-then so as to use ES_MATCH. - -Tue Oct 17 22:48:00 1995 Jim Meyering (meyering@comco.com) - - * cat.c: Protoize. Reorder functions to obviate forward dcls. - Remove forward dcls. - * expand.c: Likewise. - * fold.c: Likewise. - * head.c: Likewise. - * od.c: Likewise. - * sort.c: Likewise. - * tail.c: Likewise. - - * src/Makefile.in (OBJECTS): Reflect that all of the above - now use prototypes. - - * head.c: Add `const' attribute to dcls of lots of formals. - - * sort.c: Add `const' attribute to dcls of lots of formals. - Move struct dcls to precede dcls of file-scope variables. - (monthtab, keyhead): Separate variable dcls from type dcls. - -Fri Oct 13 20:38:39 1995 Jim Meyering (meyering@comco.com) - - * join.c (add_field_list): Allow SPACE and TAB as well as `,' as - list item separators, per POSIX spec. - (prjoin): Rewrite loop that iterates over field specs. - Handle case in which file spec is 0. - -Sun Oct 8 22:41:15 1995 Jim Meyering (meyering@comco.com) - - * strpbrk.c: New file. - * lib/Makefile.in (SOURCES): Add strpbrk.c. - Remove bcopy.c. - -Sat Oct 7 22:27:01 1995 Jim Meyering (meyering@comco.com) - - * join.c (add_field): No longer return a value. - (decode_field_spec): New function. - (add_field_list): Rewrite to be more strict. - Before, `,1.2' was accepted as valid. - (main): Use xstrtol instead atoi. - Combine nearly identical -a and -v cases. - Close input files. - -Fri Oct 6 23:10:01 1995 Jim Meyering (meyering@comco.com) - - * join.c (main): Report `too few/many non-option arguments' - then print --help output rather than just the latter. - Properly interpret obsolescent usage like `join -o 2.1 2.1 2.2'. - (usage): Describe POSIX -1, -2 options and deprecate -j* ones - - * join.c (usage): Move to precede all other functions. - - * join.c: Protoize. - -Tue Oct 3 22:44:05 1995 Jim Meyering (meyering@comco.com) - - * csplit.c, sort.c, tac.c: Test SA_INTERRUPT, not _POSIX_VERSION, - to determine whether `sigaction' functions are available. - Reported by Paul Nevai . - Fix suggested by Karl Berry. - - * md5sum.c (main): Declare counter, N_STRINGS, to be an integral - type, not `char'. - - * cut.c: Convert many declarations using `int' to use `unsigned int' - to avoid warnings from `gcc -Wall' about comparing signed and - unsigned types. - (set_fields): Use memset (not open coded loop) to initialize array. - -Thu Sep 28 23:16:05 1995 Jim Meyering (meyering@comco.com) - - * Version 1.13. - - * Makefile.in (DISTFILES): Remove README.alpha for major release. - - * od.c (decode_one_format): Remove spurious semicolon. - From John Kodis. - -Tue Sep 26 23:05:01 1995 Jim Meyering (meyering@comco.com) - - * man/Makefile.in (install-data, uninstall): Use sed not basename. - The GNU Coding Standard suggests that only a select set of - relatively standard utilities be used in Makefiles. basename is - not among them. Suggested by Ulrich Drepper. - -Sun Sep 24 08:36:47 1995 Jim Meyering (meyering@comco.com) - - * cksum.c: Protoize. - * cut.c: Protoize. - - * src/Makefile.in (OBJECTS): Reflect that cksum.c and cut.c use - prototypes. - (cksum): Depend on cksum$O. - (cut): Depend on cut$O. - -Sat Sep 23 15:43:46 1995 Jim Meyering (meyering@comco.com) - - * Version 1.12.2. - - * Makefile.in (DISTFILES): Add README.alpha. - - * lib/Makfile.in (GETOPT, MEMCHR, REGEX): New variables. - (OBJECTS): Use them instead of hard-coding object file names. - Suggested by Ulrich Drepper. - - * md5sum.c (md5_check): Distinguish between open/read failure - and checksum mismatch. - -Mon Sep 18 23:15:05 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c: Protoize. - * src/Makefile.in (OBJECTS): Change md5sum.o to md5sum$O. - (join.o, md5sum$O, sort.o) Depend on ../lib/long-options.h. - (md5sum): Depend on md5sum$O. - - * md5sum.c (main, usage): Remove -h, -s, -v short options. - Rename --verbose to --warn, --quiet to --status. - (main): Handle --help and --version using parse_long_options. - (md5_check): Check ferror. - - * sort.c (tempname): Replace `16' with a more readable expansion. - Make sure that counter never exceeds 99999. - (checkfp): Rearrange loop to avoid duplicate test. - Move a couple dcls from function scope into inner block. - -Tue Aug 8 21:49:27 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (main): Fail if either --verbose or --quiet is specified - when not verifying checksums. - - * md5sum.c (md5_check): Fail if no valid line is found. - Don't use the word `fail' unless there were failures -- - instead, say `all N tests passed.' - - * md5sum.c (main) [handling --string option]: Don't output - nonstandard `b' binary flag. From Greg Troxel (gdt@bbn.com). - * md5-test.rfc: Remove now-inconsistant `b' marker. - (usage): Clarify help message. With suggestions from Greg Troxel. - -Mon Aug 7 23:27:54 1995 Jim Meyering (meyering@comco.com) - - * sort.c (mergefps) [lint]: Initialize SAVEALLOC to avoid spurious - compiler warning. From Ulrich Drepper. - - * pr.c (read_line) [lint]: Initialize CHARS to avoid spurious - compiler warning. From Ulrich Drepper. - - * Makefile.in (DISTFILES): Don't distribute unneeded COPYING.LIB. - From Franc,ois. - -Mon Aug 7 00:02:59 1995 Jim Meyering (meyering@comco.com) - - * system.h (_): Define macro -- as empty for now. - * src/*.c: Annotate localizable strings with _(...). From Franc,ois. - -Sat Aug 5 23:51:25 1995 Jim Meyering (meyering@comco.com) - - * Version 1.12.1. - - * configure.in: Add fp_C_PROTOTYPES. - -Fri Aug 4 23:21:46 1995 Jim Meyering (meyering@comco.com) - - * src/Makefile.in (DISTFILES): Include ansi2knr.c and ansi2knr.1. - Add suffixes, dependencies, and rules to convert ANSI source to K&R - when required. Mark tr.o and comm.o as the only such files (for now). - - * tr.c: Protoize. - * comm.c: Protoize. - - * Makefile.in (DISTFILES): Add aclocal.m4 and acconfig.h. - (configure): Depend on aclocal.m4. - (stamp.h.in): Depend on aclocal.m4 and acconfig.h. - -Sun Jul 30 00:01:58 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (md5_check): Use getline instead of fgets. - - * lib/Makefile.in (SOURCES): Add getline.c. - (OBJECTS): Add getline.o. - (DISTFILES): Add getline.h. - (getline.o): Depend on getline.h. - - * md5.c [memcpy]: Define to bcopy if needed. - (md5_buffer): Explicitely cast SWAP expressions to unsigned - to avoid warning. - - * lib/Makefile.in (strtoul.o): Depend on strtol.c. - - * sort.c (check): Print `disorder on...' message on standard error, - not stdout. This is a minor concession to POSIX which says - `no output shall be produced...'. - - * sort.c (main): Fix -k so it works. -k 2,3 was being treated - like -k 2. Reported by Marcus Daniels . - -Wed Jul 26 22:54:48 1995 Jim Meyering (meyering@comco.com) - - * man/Makefile.in (install, uninstall): Strip off `.1', not just `1' - before applying $(transform) to manual name. From Karl Berry. - - * md5sum.c (have_read_stdin): New global variable. - (md5_file, md5_check): Set it. - (main): Use it. - - * md5sum.c [OPENOPTS]: Depend explicitly on BINARY. - (md5_file): Take a new parameter, MD5_RESULT, and no longer - generate output. - (md5_check): Invoke md5_file instead of calling fopen directly. - When giving a diagnostic for a line with invalid format, also report - the line number. - (main): Generate output after a successful md5_file call. - [in many places]: Upon detection of an error, rather than exiting - immediately, issue a diagnostic, note that an error occurred and - exit later. - -Mon Jul 24 21:48:26 1995 Jim Meyering (meyering@comco.com) - - * tail.c (tail_bytes) [from_start]: For regular files, seek - relative to the initial input file pointer position, not - necessarily from the beginning of the file. - [!from_start]: Don't back up past the initial position of the - input file pointer. - (tail_lines): Call file_lines only if FD refers to a regular file - with its file pointer positioned at beginning of file. Otherwise, - call pipe_lines. This is a kludge. Once there's a decent test - suite, fix this properly. - Before, (echo 1; echo 2) > k; sh -c 'read x; tail' < k - would output both lines of the input file even though the first had - already been read. Reported by John Roll (john@panic.harvard.edu). - - * md5sum.c [_LIBC || STDC_HEADERS] (TOLOWER): Define to tolower. - - * csplit.c (main): When too few arguments are given, don't just - issue the usage message; also report why. - -Sat Jul 22 00:16:01 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (md5_check): New function -- extracted from main. - -Fri Jul 21 01:21:49 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (md5_file): New function -- extracted from main. - (main): Call the new function instead of doing all that in an - if-stmt. Always use "%s" format rather than raw filename as - format argument in printf-style functions like error. Otherwise, - filenames containing `%' are likely to lose. - Remove all mention of `old format'. - (split_3): No longer parse the `new format.' There is only one - valid format now: the compatible one. - - * lib/Makefile.in (SOURCES): Add md5.c. - (OBJECTS): Add md5.o. - (DISTFILES): Add md5.h. - (md5.o): Depend on md5.h. - - * system.h [!EXIT_FAILURE, !EXIT_SUCCESS]: Define them. - * lib/md5.c (md5_stream): Check for read failure and return - indication of success rather than second argument. - * lib/md5.h (md5_stream): Update prototype. - [__P]: Define macro. - * md5sum.c: Use EXIT_FAILURE and EXIT_SUCCESS. - (main): Report an error if md5_stream fails. Otherwise, running - `md5sum dir-on-mounted-filesystem' always reported the checksum - for an empty file. Now it gets the `is a directory' error. - Greg McGary (gkm@magilla.cichlid.com) reported that the released - version got stuck in an infinite loop with such arguments. - - * lib/md5.c: New file. - * lib/md5.h: New file. - * md5sum.c: Rewritten to use library interface. - From Ulrich Drepper. - -Sun Jul 16 18:42:34 1995 Jim Meyering (meyering@comco.com) - - * configure.in: Add AC_C_INLINE: md5sum.c uses inline keyword. - -Tue Jul 11 21:56:02 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c Add #else block after #ifdef VMS. - (main): Rename local variable. - Detect and report failed fclose calls on stdout and checkfile_stream. - - * tr.c (unqote): Comment out unreachable break stmts. - (append_range): Declare FIRST and LAST parameters to be unsigned int, - not size_t. - (find_closing_delim): Clean up interface, separating boolean success - indicator and index. - (find_bracketed_repeat): Likewise. - (build_spec_list): Adapt to use new interfaces. - Declare CLOSING_DELIM_IDX and CLOSING_BRACKET_IDX to be of - type size_t, not int. - (main): Declare NR and CHARS_READ to be of type long, not int. - - * sort.c (main): Comment out unreachable break stmt. - - * tail.c (tail): Explicitly cast to long the N_UNITS argumennt in - call to tail_lines. Otherwise, NetBSD lost because N_UNITS (of type - off_t, a 64-bit type on NetBSD) wasn't converted to the target type, - long. Reported by Dan Hagerty (hag@gnu.ai.it.edu). - - * comm.c: Reorder functions so main is last, so no forward dcls - are needed. - -Sun Jul 9 11:41:15 1995 Jim Meyering (meyering@comco.com) - - * sort.c (main): When using obsolescent +pos -pos syntax, allow - omission of field spec only when character offset is specified. - Otherwise, -. +. would be accepted. - -Sat Jul 8 13:48:06 1995 Jim Meyering (meyering@comco.com) - - * sort.c (main): Allow field spec, M, to be omitted in +M.N or -M.N - position specification. For compatibility with existing practice - (what vendors?), omitting M is now equivalent to specifying `0' for M, - but only when using the +pos -pos syntax, not with the -k option. - From Rick Sladkey (jrs@world.std.com). - -Thu Jul 6 23:44:20 1995 Jim Meyering (meyering@comco.com) - - * od.c (dump): Correct loop-termination criterion. - Before, running `printf 1234| ./od --width=4 --read-bytes=4' - printed output for 8 bytes -- the last four were garbage. - This happened only when the dump limit, N, was specified (with - --read-bytes=N) and N was a multiple of bytes_per_block - (usually 16, but 4 in this example). From Andreas Schwab. - -Sun Jul 2 22:12:40 1995 Jim Meyering (meyering@comco.com) - - * lib/Makefile.in (check): Depend on libtu.a. - - * md5sum.c (split_3): Rewrite to parse Plumb/Lankester format as well. - (main): Print each sum line in (de facto) standard Plumb/Lankester - format. - New option: --quiet. - Check option no longer takes an argument. - When checking, exit status reflects success. - -Sat Jun 24 16:18:01 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c [__GNUC__]: Don't conditionalize use of "inline". - Autoconf (via config.h) defines it away for compilers that don't - grok it. - - * cat.c, comm.c, join.c, sort.c, uniq.c: Undefine min/max before - defining to avoid redefinition warning on some systems. - - * csplit.c (read_input): Rename paramater MAX to MAX_N_BYTES. - This avoids potential conflict with max macro from some system's - header files when using bad pre-ANSI compilers. - - * uniq.c (usage): Fix typo in text of --help output. - From Steve McConnel - - * md5sum.c [uint32]: When testing for 32-bit arithmetic type, - also check `unsigned long', as a concession to systems with - int's smaller than 32 bits. - - * configure.in (AC_REPLACE_FUNCS): Remove memcmp (again!) since - AC_FUNC_MEMCMP already handles it. This avoids warnings from - ranlib on nextstep systems. From Kaveh Ghazi. - - * csplit.c (interrupt_handler): Declare to have a single integer - parameter. Otherwise, some compilers fail with a type mismatch - error in sa_handler assignment. - - * fmt.c [word]: Redefine. Otherwise, systems (Unicos for one) with - headers that typedef `word' get syntax errors because of the - variable by the same name. - - * join.c [join]: Redefine to avoid conflict with prototype in some - system header file. Also for Unicos. - - * md5sum.c (main): Remove spurious colon in getopt spec string. - From Ken Pizzini . - -Tue Jun 20 06:59:16 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c (md5_file): Initialize two elements of LEN portably, - rather than with ANSI aggregate initialization. Reported by - Edzer Pebesma . - -Sun Jun 18 09:15:57 1995 Jim Meyering (meyering@comco.com) - - * Version 1.12. - - * md5sum.c (process_buffer): Copy values from struct into - individual local variables before performing computation on them, - then copy results back into returned struct. Solely for better - optimization by compilers that can't keep struct members in - registers. From Ulrich Drepper. - -Thu Jun 15 22:09:14 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c: Remove unnecessary uses of `defined' in #if* tests. - Don't use #elif. Some older compilers don't grok it. - (split_3): New function to parse out sum, flag, and filename - when reading check file. - (hex_digits): Remove length parameter since string parameter is - now nul-terminated. - (main): Don't allocate separate arrays for filename and sum - when checking. Get pointers into line buffer with split_3 instead - of using sscanf. - (main): Treat `no file args' just like `-' when not checking - or using strings. - (hex_digits): Unprotoize. - - * md5sum.c (main): Don't use a separate loop to convert to lower - case. Suggested by Ulrich Drepper. - (CLOSE): New macro. - (md5_file): Use it. - From Ulrich Drepper. - - * md5sum.c: Don't include values.h. - [__P]: Undefine it. - - * md5sum.c: [UNIX || unix]: Also test __UNIX__, __unix__, - and _POSIX_VERSION. Reported by Arne H. Juul. - -Tue Jun 13 21:20:10 1995 Jim Meyering (meyering@comco.com) - - * tr.c [NDEBUG]: Define it to disable assertions. Some systems - have a broken header. - (is_char_class_member): Set a variable in each branch of switch - stmt and return that value after the switch (rather than returning - directly from every branch). - (unquote): More int->size_t changes. - (build_spec_list): More int->size_t changes. - Be very careful about comparison now that variables are unsigned: - Use i + 2 < len rather than i < len - 2. The latter didn't work - for len < 2. Caught early thanks to a thorough regression test - suite. - -Mon Jun 12 23:07:59 1995 Jim Meyering (meyering@comco.com) - - * sort.c (xfclose): Don't try to flush stdin, only stdout. - Otherwise, at least Ultrix-4.3's fflush would return EOF. - Reported by Jim Blandy (jimb@cyclic.com). - - * tr.c (non_neg_strtol): Don't compare signed and unsigned. - [struct Spec_list] (indefinite_repeat_element): New member. - Use size_t rather than int or unsigned long where reasonable. - (get_spec_status): Make interface cleaner. - (get_s1_spec_status): New function. - (get_s2_spec_status): New function. - (validate): Use new functions instead of get_spec_status. - -Sun Jun 11 00:39:50 1995 Jim Meyering (meyering@comco.com) - - * md5sum.c: New file. From Ulrich Drepper. - * md5-test.rfc: New file. - * Makefile.in (PROGS): Add md5sum. - (check): Run a recursive make in each subdirectory. - * man/Makefile.in (MANFILES): Add md5sum.1. - * src/Makefile.in (SOURCES): Add md5sum.c. - (OBJECTS): Add md5sum.o. - (PROGS): Add md5sum. - (check): Add basic checks for md5sum. - (md5sum): Add dependency and link rule. - (DISTFILES): Add md5-test.rfc. - - * tr.c (look_up_char_class, append_char_class, append_equiv_class): - Use const attribute when appropriate. - -Sun May 28 14:48:58 1995 Jim Meyering (meyering@comco.com) - - * join.c: Overhauled to make -a1 and -a2 options work. - Passed all tests in a fairly thorough test suite. - Reported by Michael Hasselberg (mikelh@zonta.ping.de). - -Sat May 27 00:35:47 1995 Jim Meyering (meyering@comco.com) - - * tail.c (main): Remove dcl of and statements that set now-unused - variable. - - * system.h [!STDC_HEADERS && HAVE_MEMORY_H]: Include memory.h. - Without this, SunOS doesn't get type for memchr. - Reported by Kaveh Ghazi. - -Thu May 25 00:06:50 1995 Jim Meyering (meyering@comco.com) - - * tail.c (tail_lines): Change one more `long' to `off_t'. - Otherwise, tail didn't work on NetBSD. From Arne H. Juul. - - * csplit.c [struct control]: Change type of `repeat' to unsigned - long to avoid conversion warning. - -Sun May 21 07:50:00 1995 Jim Meyering (meyering@comco.com) - - * Makefile.in (.PHONY): TAGS is not a phony target. From Franc,ois. - - * xstrtol.c (__strtol): Remove prototype altogether. - Move inclusion of xstrtol.h back so that it follows system headers. - - * Version 1.11.2. - -Sat May 20 06:44:14 1995 Jim Meyering (meyering@comco.com) - - * join.c (ADD_FIELD): Declare in K&R style, not ANSI. - From Kaveh Ghazi. - - * xstrtol.c: Define NDEBUG for systems with losing assert.h. - (__strtol): Add __unsigned to prototype and use __P. - Move inclusion of xstrtol.h to precede prototype. - From Kaveh Ghazi. - - * memmove.c: Include config.h for definition of const. - From Kaveh Ghazi. - - * All Makefile.in (install-exec, install-exec): New targets. - From Karl Berry. - - * tr.c (look_up_char_class): Take a string length argument -- required - because the argument is a string that is *not* NUL-terminated. - Use strncmp, not strcmp and add string lengths comparison. - (append_char_class): Update caller. Before this change, - tr '[:upper:]' '[:lower:]' read one uninitialized byte. - From Andreas Schwab. - - * split.c (next_file_name): Move dcls of file-scope variables into - this function. Don't rely on arithmetic being two's complement. - - * paste.c [CLOSED, ENDLIST]: Don't cast constants to FILE pointers. - Instead, declare two FILE structs and use their addresses. - - * csplit.c (record_line_starts): Remove set-but-not-used, - file-scope variable. - -Sat May 13 08:57:20 1995 Jim Meyering (meyering@comco.com) - - * all source files (usage): Include one- or two-line synopsis - in --help output. From Karl Berry. - - * lib/Makefile.in [.c.o]: Remove -I. since safe-l?stat.h are no - longer used. - -Wed May 10 22:26:35 1995 Jim Meyering (meyering@comco.com) - - * Version 1.11.1 - -Sun May 7 13:35:49 1995 Jim Meyering (meyering@comco.com) - - * all Makefile.in (maintainer-clean): Renamed from realclean - per GNU Standards. - -Thu May 4 23:15:58 1995 Jim Meyering (meyering@comco.com) - - * sort.c (main): Use stat, not safe_stat. The latter was unnecessary. - Don't include safe-stat.h. - - * lib/Makefile.in (DISTFILES): Remove safe-xstat.hin. - Remove all associated rules. safe-l?stat.h are no longer used. - - * sort.c Don't hard-code /tmp. - [DEFAULT_TMPDIR]: Use this instead. - * tac.c (save_stdin): Likewise. - - * sort.c (set_ordering): Properly parse arguments like `+x.yn'. - Reported by John Salmon (johns@mullet.anu.edu.au). - Patch from Mike Haertel. - -Wed Apr 26 23:48:13 1995 Jim Meyering (meyering@comco.com) - - * sort.c (tempname): AND-off high bits of pid so that its decimal - string representation is no longer than five digits. - From Hans Verkuil (hans@wyst.hobby.nl). - -Thu Apr 20 23:09:33 1995 Jim Meyering (meyering@comco.com) - - * expand.c (add_tabstop): Give correct size when reallocating - tab_list buffer. From Geoff Odhner (geoff@franklin.com). - Reproduce with expand --t=`perl -e "print join (',', (1..300));"`. - -Tue Apr 18 22:57:43 1995 Jim Meyering (meyering@comco.com) - - * configure.in (AC_OUTPUT): Use echo, not date, to avoid creating - unnecessary conflicts for people using version control software - like RCS and CVS. - (AC_ARG_PROGRAM): Use it. - -Thu Apr 13 23:22:57 1995 Jim Meyering (meyering@comco.com) - - * head.c: Remove block of redundant comments describing options. - (usage): Remove reference to -l option. It's not valid. - - * od.c (write_block): Declare index I as unsigned int, not int. - (get_lcm): Likewise. - (dump_strings): Likewise. - (main): Likewise. - (dump): Cast BYTES_PER_BLOCK to off_t in MIN expression. - (dump_strings): Declare bufsize to be of type size_t, not int. - - * split.c (next_file_name): Don't reuse X as an index. - Declare new variable I instead. - -Sat Mar 25 15:07:23 1995 Jim Meyering (meyering@comco.com) - - * csplit.c: Declare as `unsigned int' all variables that were - just `unsigned'. - (make_filename): Change type of arg to unsigned int. - (split_file): Change type of indices to unsigned int. - -Thu Mar 16 22:05:05 1995 Jim Meyering (meyering@comco.com) - - * od.c (main): Detect and fail when argument to -N is too large - to fit in an off_t. - -Sun Mar 12 12:02:39 1995 Jim Meyering (meyering@comco.com) - - * configure.in (AC_REPLACE_FUNCS): Add memcmp.c. - Remove check for sizeof long. - - * linebuffer.h: Undefine __P before defining it. - * long-options.h: Likewise. - * xstrtol.h: Likewise. - - * memcpy.c: New file. - * lib/Makefile.in (SOURCES): Add memcpy.c. - -Fri Mar 10 21:14:11 1995 Jim Meyering (meyering@comco.com) - - * src/*.c: Update Copyright dates. - -Sat Feb 11 07:31:08 1995 Jim Meyering (meyering@comco.com) - - * system.h: Remove index/rindex and bcmp/bcopy/bzero references. - Separate errno declaration from STDC_HEADERS. - - * wc.c (wc): For efficiency, handle separately the cases in which - words need not be counted. Suggested by Karl Heuer. - - * wc.c (wc): Don't overcount the number of bytes when reading - from a regular file on stdin with file pointer not at BOF. - From Karl Heuer . Before, the command - `(dd ibs=99k skip=1; wc -c) < /etc/group' made wc wrongly output - the size of the file. Now it outputs `0'. - -Sat Jan 28 07:07:23 1995 Jim Meyering (meyering@comco.com) - - * cat.c (cat): Use memmove rather than bcopy. - * csplit.c (load_buffer): Use memcpy rather than bcopy. - (extract_regexp): Use strrchr, not rindex. - * fmt.c (isopen, isclose, isperiod): Use strchr, not index. - (flush_paragraph): Use memmove instead of bcopy. - * fold.c (fold_file): Use memmove instead of bcopy. - * od.c (decode_format_string): Use memmove instead of bcopy. - [EQUAL_BLOCKS]: Use memcmp, not bcmp. - (parse_old_offset): Use strchr, not index. - (dump): Use memset, not bzero. - * sort.c (checkfp, mergefps): Use memcpy instead of bcopy. - (fillbuf): Use memmove instead of bcopy. - * split.c (main): Use memset, not bzero. - (line_bytes_split): Use memmove instead of bcopy. - * tac.c (tac): Use memmove instead of bcopy. - (output): Use memcpy instead of bcopy. - * tail.c (pipe_lines, pipe_bytes): Use memcpy instead of bcopy. - * tr.c (substr): Use memcpy instead of bcopy. - (card_of_complement, set_initialize): Use memset, not bzero. - - * tr.c (substr): Don't allocate a byte for trailing NUL in result - since the result needn't be NUL-terminated. Don't NUL terminate it. - - * configure.in (AC_REPLACE_FUNCS): Check for memmove and memcpy, - not bcopy. - (AC_CHECK_FUNCS): Add strchr and strrchr. - - * lib/Makefile.in (SOURCES): Add memmove.c and memcpy.c. - * memmove.c: New file. - * memcpy.c: New file. - -Tue Jan 24 22:18:19 1995 Jim Meyering (meyering@comco.com) - - * fmt.c (copy_rest): Replace `||' with `&&'. Before, a paragraph - not followed by a newline would be followed by data copied from - uninitialized storage. Repeat by `printf abc|fmt|od -ac'. - Reported by Franc,ois Pinard. - - * od.c: Rename macros with FP_ prefix. Use FLOAT_ instead. - AIX-2.2.1 declares a typedef, FP_DOUBLE, that conflicted. - Be careful to use off_t instead of explicit `unsigned long'. - Otherwise, systems like 4.4BSD lose on calls to fseek that - expect off_t (which is long long on that system). - (parse_old_offset): Use xstrtoul - (main): Likewise. - - * src/Makefile.in (od.o, tail.o): Depend on ../lib/strtol.h. - -Mon Dec 19 22:13:55 1994 Jim Meyering (meyering@comco.com) - - * tail.c (numerous functions): Give char* filename arguments the - const attribute. - - * lib/Makefile.in (SOURCES): Remove xwrite.c. It was no longer used. - Add xstrtol.c and xstrtoul.c. - (OBJECTS): Likewise for .o files. - (DISTFILES): Add error.h and xstrtol.h and xstrtoul.h. - - * lib/Makefile.in (DISTFILES): Remove safe-xstat.cin. - (distclean): Remove references to safe-l?stat.c. - Remove all related rules and dependencies. - - * src/Makefile.in: $(OBJECTS): Depend on ../lib/error.h. - -Thu Dec 15 23:14:04 1994 Jim Meyering (meyering@comco.com) - - * tail.c (tail_file): Fix call to error with %s in format, but - no corresponding argument. - - * src/*.c: Include "error.h" instead of simply declaring - `void error ();'. - * od.c (main): Use %lu, not %d for unsigned long. - (my_strtoul, uint_fatal_error): Remove functions. Use xstrtoul - and STRTOL_FATAL_ERROR instead. - -Sun Dec 11 17:24:09 1994 Jim Meyering (meyering@comco.com) - - * sort.c (main): Fix interpretation of field offsets when specified - via -k option. They were being interpreted as zero-indexed. POSIX - says they are 1-based indices. From Rik Faith . - (keycompare): Don't ignore characters at the end of words when - otherwise they would compare equal. From Rik Faith. - - * tail.c (): Change the type of n_units/n_lines/n_bytes - to off_t because n_bytes is used as the option to fseek and off_t may - be long long (e.g. on BSD4.4). The only place where a 32-bit limit is - imposed is in the string-to-integer converstion of xstrtol. - (main): Use xstrtol instead of manual string to integer conversion. - - * csplit.c (get_format_width, get_format_prec): Use ISDIGIT instead of - comparisons against '0' and '9'. - - * tr.c [!ULONGMAX]: Define it. - [!LONGMAX]: Define in terms of ULONGMAX instead of as a 32-bit constant. - - * full-write.c: Declare (or not) errno based on definedness or - errno, not STDC_HEADERS. - * safe-read.c: Likewise. - * xwrite.c: Likewise. - -Thu Nov 17 06:37:33 1994 Jim Meyering (meyering@comco.com) - - * tail.c (dump_remainder): Flush standard output just before - sleeping so that `tail -f' will output partial lines sooner. - This applies only when following the end of a single file. - From Leonard N. Zubkoff . - - * tail.c (file_lines, pipe_lines, pipe_bytes, start_bytes, - start_lines, dump_remainder): Use STDOUT_FILENO instead of `1' in - XWRITE calls. - * tac.c (output): Use STDOUT_FILENO instead of `1' in xwrite call. - * system.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO): Define if - not already defined. - -Wed Nov 16 07:01:38 1994 Jim Meyering (meyering@comco.com) - - * tr.c: Include instead of "getopt.h". - - * sort.c (tempname): Merge two very similar sprintf stmts into one. - - * tail.c: Use BUFSIZ instead of BUFSIZE. - - * cut.c: Declare DELIM to be `int' rather than unsigned char. - - * fmt.c: Use index, not strchr -- per GNU Standards. - Reported by Kaveh Ghazi. - Always include . - (main): Include program name in --version output. - -Sun Nov 06 00:17:21 1994 Jim Meyering (meyering@comco.com) - - * Version 1.11. - -Sat Nov 05 15:14:44 1994 Jim Meyering (meyering@comco.com) - - * memcmp.c, srtoul.c: Use up-to-date versions. - Reported by Franc,ois Pinard. - - * src/Makefile.in (DEFS): Remove -Dlint... again. - - * src/Makefile.in (PROGS): Add fmt! - Reported by Andreas Stolcke (stolcke@ICSI.Berkeley.EDU). - -Fri Nov 04 17:26:16 1994 Jim Meyering (meyering@comco.com) - - * Version 1.10. - -Thu Nov 03 23:23:08 1994 Jim Meyering (meyering@comco.com) - - * linebuffer.h: Use __P instead of _P since the latter conflicts - with a definition in some . From Kaveh Ghazi. - -Wed Nov 02 17:36:34 1994 Jim Meyering (meyering@comco.com) - - * tr.c: Add const attribute where appropriate. - - * tail.c (BUFSIZ): Use definition from . - -Tue Nov 01 23:54:09 1994 Jim Meyering (meyering@comco.com) - - * tail.c (XWRITE): Allow n_bytes == 0 but call fwrite only if - n_bytes is positive. Turn off assertions. `tail /dev/null' was - getting a failed assertion. Reported by Doug McLaren - (dougmc@comco.com). - - * cut.c (cut_bytes): Print at least a newline for every line of input. - (cut_fields): Print a newline even for lines whose only selected - field is empty. But print nothing when using -s without -f1. - And print nothing for empty input. Reported by - Richard_Sharman@software.mitel.com. - -Tue Nov 01 06:05:23 1994 Jim Meyering (meyering@comco.com) - - * fmt.c: Change #ifdef __STDC__ to #if defined (__STDC__) && __STDC__. - * linebuffer.h: Likewise. - -Mon Oct 31 06:53:32 1994 Jim Meyering (meyering@comco.com) - - * configure.in (AC_REPLACE_FUNCS): Remove memcmp since AC_FUNC_MEMCMP - already handles it. From Kaveh Ghazi. - - * {lib,src}/Makefile.in (DEFS): Don't use -Dlint. Some systems - get failures when it's defined. From Kaveh Ghazi. - - * cat.c (cat): Conditionalize test for errno == ENOSYS. It's not - defined on some Next and Alliant systems. From Kaveh Ghazi. - - * sort.c join.c (main): Include version.h and call parse_long_options - with the proper number of arguments. Reported by Franc,ois Pinard. - -Sun Oct 30 01:30:41 1994 Jim Meyering (meyering@comco.com) - - * (configure.in): Add AC_OFF_T and rearrange by type along the - same lines as autoscan. - - * fmt.c, fmt.1: New files. - Both from Ross Paterson (rap@doc.ic.ac.uk). - - * Makefile.in (PROGS): Add fmt. - * src/Makefile.in (SOURCES, OBJECTS): Add fmt.c and fmt.o respectively. - (fmt): Add a link rule. - * man/Makefile.in (MANFILES): Add fmt.1. - -Sat Oct 08 10:44:30 1994 Jim Meyering (meyering@comco.com) - - * Makefile.in (All of them): Update from the ones in sh-utils. - From now on, rules and definitions that are comon to the fileutils, - textutils, and sh-utils will get ChangeLog entries only in the - sh-utils. - -Tue Oct 04 20:42:46 1994 Jim Meyering (meyering@comco.com) - - * od.c (my_strtoul): Set errno to zero before calling strtoul. - Otherwise, od can fail complaining about a valid integer argument. - From Andreas Schwab. - -Sun Oct 02 17:57:09 1994 Jim Meyering (meyering@comco.com) - - * tr.c (main): Give an error and fail when squeezing repeats - and no non-options are given. Reported by Tony Robinson - (ajr@eng.cam.ac.uk). - - * sort.c (main): Temporarily copy each input file that might be - another name for the output file. When in doubt (e.g. a pipe), - copy. This allows the dangerous (historical -- in cnews) idiom - `cat file | sort -o file' to work properly. Don't rely on this - behavior in new shell scripts. From Paul Eggert (eggert@twinsun.com). - -Mon Sep 26 18:01:47 1994 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) - - * lib/xwrite.c safe-read.c memchr.c linebuffer.c full-write.c: - Remove CONFIG_BROKETS ifdef. - * src/Makefile.in lib/Makefile.in: Don't define it. - -Sat Sep 24 21:26:27 1994 Jim Meyering (meyering@comco.com) - - * full-write.c (full_write): Declare argument LEN to be size_t. - -Mon Sep 12 13:35:27 1994 Jim Meyering (meyering@comco.com) - - * tail.c (tail_file): [For multiple files only]: Report truncation - of monitored file and reset current file size. From Franc,ois Pinard. - -Sat Aug 27 16:57:20 1994 Jim Meyering (meyering@comco.com) - - * system.h [BROKEN_STAT_MACROS]: Remove unnecessary #ifdef's. - From Franc,ois Pinard. - -Tue Jul 26 11:33:53 1994 Jim Meyering (meyering@comco.com) - - * system.h: Remove `|| defined(_POSIX_VERSION)' from test that - decides whether to include . From Francois Pinard. - -Wed Jul 13 12:33:34 1994 Jim Meyering (meyering@comco.com) - - * tr.c (substr): Fix off-by-one allocation error. - -Wed Jun 22 01:02:50 1994 Jim Meyering (meyering@comco.com) - - * tac.c (tac_file): Use O_RDONLY instead of zero in call to open. - (tac): Fix typo that had `1' as arg #2 of error after failed read. - Use errno instead. From Michael I Bushnell . - -Thu May 26 08:46:32 1994 Jim Meyering (meyering@comco.com) - - * configure.in [INSTALL]: Revert change of March 25. autoconf - has been fixed. - -Mon Apr 11 17:25:43 1994 Jim Meyering (meyering@comco.com) - - * join.c (prline): Remove unused function. Indent. - -Fri May 6 05:44:24 1994 Jim Meyering (meyering@comco.com) - - * tail.c (tail_forever): Don't print headers when asked not to. - From Karsten Thygesen . - - * wc.c (wc): Optimize for the case when only bytes are being counted - and the input is not a regular file. From Jeff Moore . - -Sun Apr 24 10:54:08 1994 Jim Meyering (meyering@comco.com) - - * configure.in [AC_SIZEOF_TYPE]: Update for autoconf-1.9. - * memchr.c: Test SIZEOF_LONG instead of LONG_64_BITS. - -Mon Apr 11 17:55:52 1994 Jim Meyering (meyering@comco.com) - - * csplit.c (struct control): Add new field, repeat_forever. - Remove now-unneeded definition of INT_MAX. - (process_regexp): Test repeat_forever instead of comparing `repeat' - to INT_MAX. - (split_file): Don't even reference `repeat' count if repeat_forever - is set. - (new_control_record): Initialize repeat_forever field. - (parse_repeat_count): Set it instead of setting repeat count to - INT_MAX. - (process_line_count): Abort for internal error instead of calling - handle_line_error. - - * long-options.c (parse_long_options): Take a new argument indicating - the utility name (e.g. "join", not "gjoin") for version output. - Print both the utility and the package names, e.g. `join - GNU - textutils-1.9.1' instead of just the package name. - - * join.c (main): Call parse_long_options with program name arg. - * sort.c (main): Ditto. - - * All source except sort.c and join.c (main): Change --version output - to include utility name as well as package name and version info. - -Wed Mar 30 08:53:21 1994 Jim Meyering (meyering@comco.com) - - * configure.in: Use AC_SET_MAKE. - * Makefile.in: Edit MAKE assignments into @SET_MAKE@. - -Mon Mar 28 09:55:05 1994 Jim Meyering (meyering@comco.com) - - * tr.c (main): In addition to the --help usage pointer, give an - explicit error message for too many arguments. - -Fri Mar 25 18:11:19 1994 Jim Meyering (meyering@comco.com) - - * configure.in: Use AC_VERBOSE, AC_CHECKING, and AC_WARN instead - of explicit echo commands. - [INSTALL]: When AC_PROG_INSTALL resorts to setting this to - `./install.sh', make it `../install.sh' instead since that - script will be invoked only from subdirectories. - [AC_SIZEOF_TYPE]: Use this instead of deprecated AC_LONG_64_BITS. - - * cat.c (cat): The command `:|cat -s' failed on Irix5 because - ioctl (d, FIONREAD,... now returns ENOSYS for pipes -- under Irix4 - it returned EINVAL. Detect this. - (main) [lint]: Initialize variables to suppress `used before - initialized' warnings. - - * csplit.c: Change long option name from --suffix to --suffix-format. - - * od.c (skip): Correct a comment. - (main): Don't output anything to stdout if the sole input file - doesn't exist. Reported by Bauke Jan Douma . - - * od.c (dump) [lint]: Initialize a variable to suppress `used before - initialized' warning. - (main) [lint]: Ditto. - * paste.c (paste_parallel) [lint]: Ditto. - -Fri Jan 28 11:02:21 1994 Jim Meyering (meyering@comco.com) - - * configure.in: Don't set LDFLAGS since linking now uses both - LDFLAGS and CFLAGS. - -Wed Jan 18 16:14:00 1994 Jim Meyering (meyering@comco.com) - - * unexpand.c (unexpand): Don't segfault when given a name of a - nonexistent file. - * expand.c (expand): Ditto. - Both from Bauke Jan Douma . - -Thu Jan 13 17:27:38 1994 Jim Meyering (meyering@comco.com) - - * src/Makefile.in: Change all link commands to use both $(CFLAGS) - and $(LDFLAGS). - - * csplit.c (load_buffer): Rather than incrementing buffer size, - double it each time we fail to find a newline. Otherwise, csplit - would run out of memory when processing files with very long lines. - -Mon Jan 10 01:20:38 1994 Jim Meyering (meyering@comco.com) - - * man/Makefile.in (manprefix): Use binprefix as the default. - -Sat Jan 08 22:22:45 1994 Jim Meyering (meyering@comco.com) - - * cat.c: Use full_write and safe_read instead of write and read resp. - * csplit.c: Ditto. - * head.c: Ditto. - * split.c: Ditto. - * tac.c: Ditto. - - * sum.c: Use safe_read instead of read. - * tr.c: Ditto. - * wc.c: Ditto. - - * tail.c: Replace calls to xwrite with calls to fwrite. - Use fopen/fclose instead of open/close. - (write_header): Use a single call to printf instead of four to xwrite. - Use safe_read instead of read. - * head.c: Ditto. - -Tue Dec 28 15:49:32 1993 Jim Meyering (meyering@comco.com) - - * install.sh: New file. - Makefile.in [DISTFILES]: Add it. - -Wed Dec 22 18:52:44 1993 Jim Meyering (meyering@comco.com) - - * memcmp.c: Use the latest version from the GNU C library. - - * cut.c [ADD_RANGE_PAIR]: New macro. - (set_fields): Collect the list of all selected ranges before - allocating and initializing the boolean lookup table. - (cut_bytes, cut_fields): Complete rewrite. Avoid copying - into buffer whenever possible. Properly handle input without - trailing newline. - (getstr): New function. Copied from getline.c, but with minor changes. - - * sort.c (main): Properly handle -Tdir. - Before, `sort -T/var/tmp' gave `sort: unrecognized option `-v''. - Reported by Kristoffer Rose (kris@diku.dk). - - * cut.c (main): Give separate errors for `-s without -f' - and `-d without -f'. - (main): Now -d '' means `use the NUL byte as the delimiter'. - Before, it got an error. - -Mon Dec 20 23:29:30 1993 Jim Meyering (meyering@comco.com) - - * configure.in [test for 8-bit clean memcmp]: Add a test to detect - losing memcmp from SunOS4.1.x. From Robert H. de Vries - . - -Sat Dec 18 01:12:24 1993 Jim Meyering (meyering@comco.com) - - * configure.in (AC_OUTPUT): Put `touch stamp-config' in second arg - so it goes in config.status. This eliminates unnecessary second run - of configure. - -Thu Dec 02 23:53:03 1993 Jim Meyering (meyering@comco.com) - - * configure.in (AC_HAVE_FUNCS): Add isascii. - * system.h [!defined (isascii) || defined (STDC_HEADERS)]: This failed - on AIX PS/2 1.3 systems because isascii is a function and it is used - in definitions (with the necessary side effect of assigning to a - global variable) of the is* macros. Also test HAVE_ISASCII and - redefine ISASCII(c) instead of isascii. - Reported by Minh Tran-Le (tranle@intellicorp.com). - -Fri Nov 19 22:41:48 1993 Jim Meyering (meyering@comco.com) - - * configure.in: Don't run the test for 8-bit clean memcmp if we - already know we'll be using our replacement. - -Fri Nov 12 00:44:49 1993 Jim Meyering (meyering@comco.com) - - * Version 1.9.1. - - * tac.c (usage): Fix typo in long usage. - * sort.c (usage): Likewise. - From Philippe.Schnoebelen@imag.fr. - - * cut.c [FATAL_ERROR]: New macro. - (main): Call both error and usage (2) through FATAL_ERROR in - many places. Before, only `error (2...' was called. - (invalid_list): Removed. This function is subsumed by FATAL_ERROR. - - * cut.c (cut_fields): Properly handle input lacking a terminating - newline. Before, the command `printf "a\tb" |cut -f 1' generated - no output. - -Tue Nov 09 17:26:25 1993 Jim Meyering (meyering@comco.com) - - od.c (usage): Change --backward-compatible to --traditional in - the long usage message. - -Sun Nov 07 00:50:05 1993 Jim Meyering (meyering@comco.com) - - * Version 1.9. - -Sat Nov 06 22:51:31 1993 Jim Meyering (meyering@comco.com) - - * cut.c (cut_fields): Revert July 27 change. Instead, strip off - trailing delimiter unless given a range of fields like `3-' that - extends to end of line. - (set_fields): Moved local `eol_range_start' to file-scope. - Reported by Arne H. Juul (arnej@solan.unit.no). - -Tue Nov 02 00:53:41 1993 Jim Meyering (meyering@comco.com) - - * fold.c (fold_file): Don't get stuck in an endless loop when - width is smaller than 8 and there are TABs in the input. - -Sat Oct 30 15:31:28 1993 Jim Meyering (meyering@comco.com) - - * join.c: Remove now-unused dcls of show_help and show_version. - -Fri Oct 29 13:58:50 1993 Jim Meyering (meyering@comco.com) - - * csplit.c [INT_MAX]: Make sure it's defined. - [not HAVE_LIMITS_H]: Don't include limits.h. - From Kaveh R. Ghazi (ghazi@noc.rutgers.edu). - -Wed Oct 27 01:13:52 1993 Jim Meyering (meyering@comco.com) - - * Version 1.8.1. - -Mon Oct 25 20:16:33 1993 Jim Meyering (meyering@comco.com) - - * sort.c: Accept but ignore -y0 for compatibility with Solaris 2. - From Chuck Hedrick (hedrick@klinzhai.rutgers.edu). - - * sort.c (main): Handle --help and --version options. - * Makefile.in (sort.o): Depend on long-options.h. - -Sun Oct 24 00:31:02 1993 Jim Meyering (meyering@comco.com) - - * csplit.c, cut.c, expand.c, fold.c, head.c, nl.c, od.c, paste.c, - split.c, tac.c, tail.c, unexpand.c, uniq.c: Use the preferred - `--longopt=arg' syntax in --help message rather than `--longopt arg'. - From Francois Pinard. - - * tail.c: Don't include . It hasn't been necessary - since the Dec 12, 1992 change. - - * join.c (main): Accept `-v 1' again. Adding the --version - long option had broken it, although -v1 still worked. Call - parse_long_options instead of adding "help" and "version" - to join's longopt strct. - * Makefile.in [SOURCES, OBJECTS, DISTFILES]: Add long-options.c - and long-options.h. - * (join): Depend on and link with long-options.o. - * (join.o): Depend on long-options.h. - - * od.c: Change --compatible (-C) to --backward-compatible (-B). - - * csplit.c: Change --abandon-null-files to --elide-empty-files. - -Sat Oct 23 01:00:12 1993 Jim Meyering (meyering@comco.com) - - * tr.c (get_next, string2_extend): Add default: label to switch stmt. - - * cat.c, cksum.c, comm.c, csplit.c, cut.c, expand.c, fold.c, head.c, - join.c, nl.c, od.c, paste.c, pr.c, split.c, sum.c, tac.c, tail.c, - tr.c, unexpand.c, uniq.c, wc.c (usage): Add long --help. - Exit successfully for --help, non-zero for usage error. - From Francois Pinard. - - * configure.in: Add AC_STAT_MACROS_BROKEN. - * system.h [AC_STAT_MACROS_BROKEN]: Test it. - -Fri Oct 22 23:26:17 1993 Jim Meyering (meyering@comco.com) - - * linebuffer.c, memchr.c [HAVE_CONFIG_H, CONFIG_BROKETS]: Include - or "config.h". - * cat.c, cksum.c, comm.c, csplit.c, cut.c, expand.c, fold.c, head.c, - join.c, nl.c, od.c, paste.c, pr.c, sort.c, split.c, sum.c, tac.c, - tail.c, tr.c, unexpand.c, uniq.c, version.c, wc.c: Ditto. - - * configure.in: Use AC_CONFIG_HEADER. - * Makefile.in [DIST]: Add config.h.in. - - * Makefile.in: Convert so make may be run from subdirectories. - Add dependencies on config.h. - * src/Makefile.in: Ditto. - * lib/Makefile.in: Ditto. - * man/Makefile.in: Ditto. - -Wed Oct 20 20:05:48 1993 Jim Meyering (meyering@comco.com) - - * memchr.c (memchr): Do the 32-bit assignment only if !LONG_64_BITS. - In the 64-bit assignment, be careful to cast the shift operand to - long. - Abort if sizeof (unsigned long) > 8. - -Tue Oct 19 22:37:58 1993 Jim Meyering (meyering@comco.com) - - * csplit.c: Allow repeat counts to be specified via `{*}'. - New option --suffix=format. Supercedes --digits option. - New option --abandon-null-files. - From Ronald F. Guilmette (rfg@netcom.com). - - * csplit.1: Updated. - From Ronald F. Guilmette. - - * csplit.c: Remove register keyword (replace with `int' in two cases). - - * csplit.c: [MAX]: Macro renamed from max and moved to top of file. - (bytes_to_octal_digits): New static array. - (get_format_flags): Combine '+' and ' ' cases of switch stmt. - Return count if for loop terminates. - (get_format_width): Use `bytes_to_octal_digits' instead of just 11. - (get_format_prec): Make sure is_negative is defined before used. - (get_format_conv_type): Give a different error message if there - is no conversion specifier. - Test ISPRINT (ch) instead of `ch < '~' && ch > ' ''. - (max_out): Use `%%' rather than `%' in format string. - -Sat Oct 16 10:45:17 1993 Jim Meyering (meyering@comco.com) - - * pr.c (main): When argc == 1, don't try to xmalloc (0). - -Tue Oct 12 00:53:26 1993 Jim Meyering (meyering@comco.com) - - * xwrite.c [HAVE_CONFIG_H, CONFIG_BROKETS]: Include - or "config.h". - -Sat Oct 09 23:37:43 1993 Jim Meyering (meyering@comco.com) - - * configure.in: Remove AC_UNISTD_H; add unistd.h to AC_HAVE_HEADERS. - -Thu Sep 9 21:52:10 1993 Jim Meyering (meyering@comco.com) - - * src/*.c: Print version on standard output, not stderr. - - * configure.in: Add AC_LONG_64_BITS. - * memchr.c: Use #ifdef LONG_64_BITS instead of - `if (sizeof(longword) > 4)'. - -Tue Jul 27 22:19:39 1993 Jim Meyering (meyering@comco.com) - - * cat.c (cat): Don't fail just because ioctl (d, FIONREAD,... can't - always handle devices. Ignore errno == EINVAL and errno == ENODEV. - `cat -v /dev/null' was failing on many systems. - - * cut.c (cut_fields): Don't strip off trailing delimiter e.g. - `echo 'a:b:c:' | cut -d: -f3-' should print `c:', not just `c'. - From William Dowling . - -Thu May 27 01:37:51 1993 Jim Meyering (meyering@comco.com) - - * Version 1.8. - - * memchr.c: De-ansify the fixed version from glibc. - It is supposed to work on systems with 64-bit long ints. - -Mon May 24 00:32:43 1993 Jim Meyering (meyering@comco.com) - - * Version 1.7. - -Sat May 22 02:13:12 1993 Jim Meyering (meyering@comco.com) - - * Version 1.6. - -Fri May 21 22:57:53 1993 Jim Meyering (meyering@comco.com) - - * pr.c (cols_ready_to_print): New function. It replaces a global - variable by the same name and computes on the fly the value that - was supposed to be maintained through that variable. This should - put to rest the `pr -2a' bug. - (main): Don't let getopt_long reorder arguments so we can - distinguish between `pr -1 -2' and `pr -12'. Rework handling of - -n and +n options. - - * fold.c: Declare xmalloc. - -Wed May 19 19:12:18 1993 Karl Berry (karl@owl.hq.ileaf.com) - - * sort.c (main): fflush before exit, so a closed stdout doesn't lose. - -Tue May 18 23:49:26 1993 Jim Meyering (meyering@comco.com) - - * mkinstalldirs: New file. - * Makefile.in (installdirs): Use it to create installation directories. - -Fri May 14 23:45:52 1993 Jim Meyering (meyering@comco.com) - - * all source: With --version, print version and exit immediately. - -Thu May 13 01:03:16 1993 Jim Meyering (meyering@comco.com) - - * Makefile.in (installdirs): New rules for creating installation - directories. (install): depend on it. - - * tail.c (main): Remove --compatible since `+1f' may be used - to get the BSD `-0f' behavior portably. - - * fold.c (main): Turn -N arguments, where N is a digit, into -wN. - From Ian Lance Taylor (ian@cygnus.com). - -Mon May 10 22:33:44 1993 Jim Meyering (meyering@comco.com) - - * tail.c (main): New option -C, --compatible to make `tail -0f' - work like `tail +1f' for compatibility with BSD tail. - -Thu May 6 23:28:56 1993 Jim Meyering (meyering@comco.com) - - * pr.c (print_page): Decrement cols_ready_to_print even when - lines_to_print == 0. The command `echo |pr -2ta' *still* didn't - terminate. Add parentheses for clarity. - -Mon May 3 23:57:47 1993 Jim Meyering (meyering@comco.com) - - * Version 1.5. - - * od.c (main): Remove set-but-not-used variable, `usage_error'. - - * split.c (main): Call usage with an argument. - -Sun May 2 16:05:04 1993 Jim Meyering (meyering@comco.com) - - * configure.in: Reverse if-else branches in AC_TEST_PROGRAM test - for 8-bit clean memcmp. - - * cat.c (usage, main): Remove unused argument. - - * csplit.c (remove_line): Remove set-but-not-used variable, `line_got.' - (check_for_offset): Remove unused argument `argnum.' - - * configure.in: Add AC_SIZE_T. - -Sat May 1 09:03:19 1993 Jim Meyering (meyering@comco.com) - - * uniq.c (main): Interpret non-option arguments with a leading `+' - only if we haven't seen `--'. - - * tr.c (main): Change variable name to avoid shadowed dcl. - * wc.c (write_counts): Ditto. - - * sum.1: Make documentation agree with the code. - - * od.c: Depend only on HAVE_LONG_DOUBLE for long double support. - -Fri Apr 30 20:16:03 1993 Jim Meyering (meyering@comco.com) - - * configure.in [AC_HAVE_HEADERS]: Add limits.h. - - * configure.in [CFLAGS, LDFLAGS]: Assign reasonable defaults. - - * od.c (parse_old_offset): Don't use prototype in function - definition. Remove unnecessary conjunct from test for hexadecimal - prefix. - - * od.c: Depend on __GNUC__ || HAVE_LONG_DOUBLE rather than __STDC__ - for long double support; there are compilers (Stardent Vistra svr4) - without long double but still define __STDC__. - -Thu Apr 29 02:01:27 1993 Jim Meyering (meyering@comco.com) - - * src/*.c and man/*.c except for sort: Add --help and --version - options. - - * pr.c: Convert to use getopt_long. - - * lib/memcmp.c: Use version from glibc. - [WORDS_BIGENDIAN]: Test this instead of the using glibc's - __BYTE_ORDER macro. - * configure.in: Use AC_WORDS_BIGENDIAN to set it. - - * od.c (parse_old_offset): Allow `0X' as well as `0x' prefix to - indicate hex. - - * Makefile.in (dist): Depend on Makefile so that changes to - Makefile.in (like adding new files to DISTRIB) are reflected - in the new distribution. - -Fri Apr 23 21:53:47 1993 Jim Meyering (meyering@comco.com) - - * {lib,src}/Makefile.in [.c.o]: Make CPPFLAGS and CFLAGS follow - other options so users can use them to override DEFS. - * src/Makefile.in [.c.o]: Add -I$(srcdir) for version.h. - - * Makefile.in [CFLAGS, LDFLAGS]: Don't set to -g explicitely; - configure's AC_SUBST will set these. - - * Makefile.in [Makefile]: Add dependencies and a rule to remake it. - [targets that cd then run make in subdirectories]: Don't depend - on `cd ..'; use a subshell instead. - - * Makefile.in [info, install-info, dvi, check, installcheck]: - New targets but no rules; comply with standards. - - * configure.in [CFLAGS]: Default to -g -O if CC is gcc and the user - hasn't specified CFLAGS. - [LDFLAGS]: Substitute into Makefile. - -Tue Mar 30 21:36:11 1993 Jim Meyering (meyering@comco.com) - - * od.c: New option --compatible, -C. - (parse_old_offset): New function. - * od.1: Document new option. - -Mon Mar 29 21:27:56 1993 Jim Meyering (meyering@comco.com) - - * cut.c, expand.c, join.c, nl.c: Always call error with errno - (not zero) after failed fclose or non-zero ferror. - -Sun Mar 28 16:59:31 1993 Mike Haertel (mike@cs.uoregon.edu) - - * configure.in: Add check for working memcmp; use GNU's if - the system's doesn't grok the 8th bit. - * memcmp.c: Fix it so it groks the 8th bit. - TODO: We really need to provide a fast memcmp, since most - machines will have a broken memcmp. Probably should get - the one from glibc. - * sort.c (mergefps): Maintain keybeg and keylim when copying - the current line to `saved'. - (numcompare): Skip white space here since -n no longer implies -b. - (getmonth): Skip white space here since -M no longer implies -b. - (compare): Completely overhauled to make the 8th bit work right, - also to properly handle the global reverse option. - (set_ordering): -n no longer implies -b, according to Posix. - For consistency, -M also no longer implies -b. - (main): Correct treatment of -r and global keys. - (findlines): Clear keybeg and keylim if no keys are used. - (sort): Avoid overwriting tempfiles[] array bounds. - -Sun Mar 21 22:29:29 1993 Jim Meyering (meyering@comco.com) - - * pr.c (close_file): Reverse May 13, '92 change, but add the condition - that cols_ready_to_print not be decremented when printing across. - The command `echo |pr -2ta' didn't terminate. - (print_page): Rewrite conditional (that had side effects in second - conjunct) using nested if statements to make it clear that we do - indeed want those semantics. - -Tue Jan 19 13:35:24 1993 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) - - * Version 1.4. - - * system.h: Try BBSIZE if BSIZE isn't defined. - From Tony Robinson . - -Sat Dec 12 12:37:00 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) - - * tail.c (tail_forever): Use an array of file descriptors - instead of forking processes. - (dump_remainder): Return number of bytes read. - (tail_file): Fill in the new array. - From Ian Lance Taylor. - -Fri Dec 11 17:18:16 1992 David J. MacKenzie (djm@kropotkin.gnu.ai.mit.edu) - - * system.h: Only define index, bcmp, etc. if not already defined. - -Tue Dec 8 10:31:14 1992 Jim Meyering (meyering@idefix.comco.com) - - * tr.c (is_char_class_member): Remove unreached return after abort. - -Sun Dec 6 22:34:52 1992 Jim Meyering (meyering@idefix.comco.com) - - * csplit, cut.c, expand.c, fold.c, head.c, join.c, od.c, pr.c, - sort.c, split.c, tail.c, tr.c, unexpand.c, uniq.c: Remove inclusion - of and definitions of is* ctype macros to system.h. - Change a few more uses of is* ctype macros to (protected) upper - case versions. - - * system.h: Add isascii-protected ctype IS* macros. - -Wed Dec 2 12:28:10 1992 Jim Meyering (meyering@idefix.comco.com) - - * all files using getopt.h: Convert static declarations of - struct option to use new macros from getopt.h: no_argument, - required_argument, and optional_argument. - -Tue Dec 01 10:57:24 1992 Jim Meyering (meyering@idefix.comco.com) - - * od.c, pr.c, sort.c: Make uses of ctype.h macros consistent. - - * tr.c (main): Close stdin and stdout and check return status. - -Tue Nov 24 09:26:08 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * system.h, csplit.c: Use HAVE_FCNTL_H and HAVE_STRING_H - instead of USG. - -Tue Nov 24 08:42:30 1992 Jim Meyering (meyering@idefix.comco.com) - - * tr.c: Define new macros ISPRINT, ISALNUM, ISXDIGIT, ... that - use isascii if it is defined. - (is_char_class_member, make_printable_char, make_printable_str, - non_neg_strtol): Use new macros instead of lower case ones - from . - - * od.c (print_ascii, dump_strings): Use ISDIGIT and ISPRINT - macros like pr.c. Suggested by David J. MacKenzie. - - * od.c (print_ascii, dump_strings): Check for isascii before isprint. - (dump_strings): Free malloc'd buffer before returning. - (skip): Return non-zero if an error occurred, zero otherwise. - Exit only if asked to skip beyond end of combined input. - (check_and_close): New function. - (skip, read_block, read_char): Call check_and_close when done - processing the file associated with in_stream. - (skip, read_block, read_char): Set have_read_stdin. - (main): Close stdin (if it was ever read) and check for errors - just before exiting. - (write_block, dump_strings, dump): Don't test return value from - functions that operate on streams. Rely on later ferror tests. - -Sat Nov 21 12:41:49 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * sort.c (main, usage): Add -T option. - -Thu Nov 19 14:33:40 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * tail.c (tail_forever, sigusr1, kill_kids): New functions to - do -f on multiple files. - (main): Call tail_forever. - From Ian Lance Taylor. - -Tue Nov 10 14:29:11 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * cut.c (cut_fields): Add cast. - - * od.c (decode_one_format): Remove '#' from pre_fmt_string; - many systems don't support it. - Conditionalize long double support on __STDC__, not __GNUC__. - From Ian Lance Taylor. - -Mon Nov 9 00:24:41 1992 Jim Meyering (meyering@idefix.comco.com) - - * sort.c (numcompare, keycompare): Add parentheses suggested - by gcc -Wall. Put braces around individual monthtab initializers. - - * cksum.c: Declare error. Make checksum table `const.' - - * pr.c: Remove comment and dcl of unused variable, `print_a_number'. - - * split.c (main): Add `default: abort();' to enumeration switch. - - * All files: Make all functions and extern variables static. - Make all longopts arrays const as well as static. - Make a couple statically initialized aggregates `const.' - -Sun Nov 8 19:46:59 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * od.c (main): Make old-style format options accumulate. - From Jim Meyering. - -Sat Nov 7 00:26:14 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * tr.c (look_up_char_class): Add cast. - - * nl.c (build_type_arg), csplit.c (extract_regexp), tac.c (main): - Add `const' to variable receiving value from re_compile_pattern. - - * wc.c (wc): If doing only -c, use st_size for regular files. - - * fold.c (fold_file): Was folding 1 column too early. - From Eric Backus . - - * memset.c: New file. - -Fri Nov 6 20:14:51 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * cksum.c: New file. - -Tue Oct 13 16:24:06 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * tac.c (tac_stdin): Handle SIGPIPE. - * sort.c (main): Handle SIGTERM. - - * od.c: New file. - - * system.h [USG || STDC_HEADERS]: Define bcmp. - -Sat Oct 3 20:41:24 1992 David J. MacKenzie (djm@goldman.gnu.ai.mit.edu) - - * sort.c (main): Handle SIGPIPE. From trq@dionysos.thphys.ox.ac.uk. - -Tue Sep 29 01:10:05 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) - - * paste.c (main): Don't write on a string constant. - -Mon Aug 24 00:02:45 1992 Jim Meyering (meyering@churchy.gnu.ai.mit.edu) - - * tr.c: Minor cleanup. Replaced some assert(0) with abort(). - -Tue Jul 7 02:14:19 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) - - * cmp.c, cmp.1: Move to diff distribution. - -Fri Jul 3 16:37:59 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) - - * system.h: Change FOO_MISSING to HAVE_FOO. - -Wed May 13 20:05:41 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) - - * pr.c (COLUMN): Add structure member to remember filename. - (main, init_fps, open_file, close_file): Use it. - - (close_file): Don't decrement cols_ready_to_print when closing - a file. From cdl@mpl.UCSD.EDU (Carl Lowenstein). - -Mon May 11 19:17:33 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) - - * cmp.c: --show-chars -> --print-chars. - - * pr.c: Rename some variables. - -Sat May 9 18:39:47 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * system.h: Define DEV_BSIZE if not defined. - -Wed Apr 22 02:15:09 1992 David J. MacKenzie (djm@churchy.gnu.ai.mit.edu) - - * system.h, tac.c: SIGTYPE -> RETSIGTYPE. - -Fri Apr 17 10:42:23 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * sort.c (main): Don't stop processing args when we hit "-"; - treat it like a regular filename. - From ian@airs.com (Ian Lance Taylor). - - * pr.c (print_page): Fix off by one line count when ^L is in input. - From Andreas Schwab (schwab@ls5.informatik.uni-dortmund.de). - -Mon Apr 6 20:52:29 1992 Jim Meyering (meyering@churchy.gnu.ai.mit.edu) - - * tr.c (validate): Change error message so it doesn't mention - actual name of --truncate-set1 option. From David MacKenzie. - -Sun Apr 5 14:22:42 1992 Jim Meyering (meyering@hal.gnu.ai.mit.edu) - - * tr.c (string2_extend, validate): Give an error message when - translating without --truncate-set1, with empty string2, and - with non-empty string1. "tr 1 ''" produced a failed assertion. - -Mon Mar 30 02:20:56 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * system.h: Change how ST_BLKSIZE is calculated to allow for - non-POSIX systems that don't define BSIZE in sys/param.h. - -Sat Mar 28 11:18:01 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * sum.c (main, bsd_sum_file): Don't print filename if BSD - algorithm is used and only one file was given. - -Wed Mar 25 11:34:41 1992 Jim Meyering (meyering@wombat.gnu.ai.mit.edu) - - * tr.c (get_spec_stats): Fix assertion to allow ranges like a-a - with starting character equal to ending character. This is - contrary to the POSIX spec, but what is already implemented - in find_closing_delim. - -Mon Mar 16 00:15:11 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * Version 1.3. - - * sort.c (numcompare, checkfp): Add parens to placate gcc2. - - * sort.c (mergefps): For -u, output the first, not last, of - the lines that compare equal. From Mike Haertel. - -Tue Mar 10 10:51:38 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) - - * tr.c: Remove initial capitals and periods from error messages. - -Sun Mar 8 22:03:45 1992 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) - - * sum.c (main): Add -r option for SYSV compat. - -Thu Feb 27 22:26:25 1992 David J. MacKenzie (djm@wookumz.gnu.ai.mit.edu) - - * sort.c (compare): If -s given, leave lines in their original order. - (main): Recognize -s. - (usage): Document -s. - From Mike Haertel. - -Tue Feb 18 20:29:45 1992 Randall Smith (randy at geech.gnu.ai.mit.edu) - - * sort.c (sort): Check for complete parsing of buffer into - lines before nixing temp files. - -Mon Feb 17 10:35:58 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * sum.c (sysv_sum_file): Use %lu instead of %u to print a - long. Not that it matters for GNU . . . - - * tr.c (unquote, make_printable_str): Use \007 instead of ANSI \a. - (append_normal_char, append_range, append_char_class, - append_repeated_char, append_equiv_class, spec_init): - Initialize `next' field of new `struct List_element'. - From rommel@informatik.tu-muenchen.de (Kai-Uwe Rommel). - -Sat Feb 8 17:16:49 1992 David J. MacKenzie (djm at apple-gunkies.gnu.ai.mit.edu) - - * join.c (get_line): Renamed from getline to avoid GNU libc conflict. - -Sun Feb 2 21:22:01 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * Version 1.2. - - * nl.c: Support multiple files and "-" for stdin. - (main): Check for read and write errors. - (nl_file): New function. - -Wed Jan 29 10:09:10 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * tr.c (main): -t option was called -b in getopt spec. - (validate): Don't warn that set1 is longer than set2. - - * tr.c: Rename --sysv-string2-truncate to --truncate-string1. - -Fri Jan 17 16:29:05 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * nl.c: New program from bin-src. - - * nl.c (main): Use a struct linebuffer for line_buf. - (process_file): Use readline instead of fgets, to preserve NULs. - (check_section): Use memcmp instead of strncmp. - (proc_text): Print line_buf with fwrite instead of printf. - - * nl.c (main): Usage message if too many args given. Check - for error in closing input file. Lengths of section delimiter - strings were 1 too large. Take separator_str into account in - length of print_no_line_fmt. - (build_print_fmt): Allocate space for print_fmt, in case - separator_str is long. - (proc_text): A blank line is one that contains nothing, not - even nonprinting characters. - -Fri Jan 17 01:04:22 1992 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * All programs: Document `--' instead of `+' to introduce - long-named options, in usage messages. - - * sum.c (bsd_sum_file): Renamed from sum_file. - (sysv_sum_file): New function. - (main): Recognize an option to select between the algorithms. - -Sun Jan 5 17:41:18 1992 Jim Meyering (meyering at churchy.gnu.ai.mit.edu) - - * pr.c (close_file, print_page): Fixed bug that had the command - yes |head |pr -t printing "yyyyyyyyyy". - * (print_page): Fixed bug that had pr -3 -a printing two too few - trailer lines per page. - * (main): Added restriction that -a and -m are incompatible. - Although the POSIX spec doesn't explicitly say they shouldn't - be used together, it says -a modifies the -column option and - that -column shouldn't be used with -m. - -Thu Jan 2 15:23:59 1992 David J. MacKenzie (djm at albert.gnu.ai.mit.edu) - - * nl.c: Include regex.h after, not before, sys/types.h. - -Thu Jan 2 12:18:10 1992 Tom Lord (lord at geech.gnu.ai.mit.edu) - - * sort.c (fillbuf) return bytes buffered instead of bytes read. - -Fri Dec 27 22:53:36 1991 Jim Kingdon (kingdon at geech.gnu.ai.mit.edu) - - * sort.c (LINEALLOC): New #define. - (struct lines): New field ``limit''. - (initlines): Set it from new arg ``limit''. - (sort, mergefps, checkfp): Pass new arg to initlines(). - (findlines): Don't realloc past lines->limit. - -Tue Dec 24 01:24:03 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * tac.c, sort.c, csplit.c, system.h: Change POSIX ifdefs to - HAVE_UNISTD_H and _POSIX_VERSION. - - * xwrite.c: Change POSIX ifdef to HAVE_UNISTD_H. - -Sat 14 Dec 1991 11:46:42 Jim Meyering (meyering at wombat) - - * tr.c: Fixed an inaccurate comment on posix_pedantic. - -Thu 12 Dec 1991 21:15:20 Jim Meyering (meyering at hal) - - * tr.c: Changed underscores to hyphens in long option name - "sysv_string2_truncate". - -Wed Dec 11 13:33:34 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * tac.c (main): Set obscure_syntax to tell re_search to - allocate memory for the group registers. - -Fri Dec 6 18:26:27 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * tac.c, sort.c, csplit.c [POSIX]: Use sigaction instead of - signal, which POSIX doesn't have. - * sort.c: Replace inthandler and huphandler with sighandler. - * csplit.c (main): Only handle signals if they were not being - ignored. - - * tr.c: POSIX_ME_HARDER -> POSIXLY_CORRECT. - -Wed Dec 4 00:47:47 1991 Jim Meyering (meyering at wombat) - - * tr.c (unquote): Reformat code so it doesn't go beyond column 80. - * tr.c (squeeze_filter): Comment a little on why it's better - to step through the input by two. - * tr.c (set_initialize): Write a comment describing the function. - * tr.c: Eliminated the variable `portability_warnings' and replaced - references to it by references to `!posix_pedantic'. One of the - uses of portability_warnings had been wrong. - -Tue Dec 3 14:03:35 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * tr.c: New program. - -Sun Dec 1 15:07:35 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * linebuffer.[ch] (freebuffer): New function (used by cron). - -Thu Oct 17 22:30:22 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * system.h, configure, Makefile.in: Don't include memory.h if - STDC_HEADERS, removing need for MEMORY_H_MISSING. - -Thu 17 Oct 1991 16:53:07 Jim Meyering (meyering at wombat) - - * pr.c (print_page): REALLY fixed `extra newline at EOF' problem. - Somehow, part of my patch didn't make it last time. - -Sat Oct 12 12:04:47 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu) - - * tail.c (pipe_lines, pipe_bytes): Initialize `first->next'. - - * cmp.c (cmp): Print EOF message to stderr, not stdout, for - POSIX 1003.2.11.2. - - * sort.c (xfwrite): fwrite never returns < 0, so check if - number written is number we asked to write. - (fillbuf, main): fread never returns < 0, so check ferror instead. - From Rainer Orth. - -Tue Oct 8 18:07:08 1991 Jim Meyering (meyering at churchy) - - * pr.c (print_page): Really fixed `extra newline at EOF' problem. - * (store_columns): Fixed bug that caused `pr -b -2' to coredump - on files of certain lengths. - -Fri Oct 4 22:30:25 1991 Jim Meyering (meyering at churchy) - - * pr.c (print_page): Fixed to not add single spurious newline - at EOF when using -t. - -Wed Oct 2 01:02:05 1991 David J. MacKenzie (djm at apple-gunkies) - - * pr.c (print_page): Don't pad the page if -t given. - - * csplit.c (load_buffer), sort.c (mergefps): Use bcopy, not memcpy. - -Thu Sep 26 12:35:00 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu) - - * Version 1.1. - - * configure, system.h: Include memory.h if it works. - - * split.c: Allow `b' unit as well as `k' and `m'. - - * head.c, tail.c: Replace -b +blocks option with specifying - units (b, k, or m) after the number. - (parse_unit): New function. - - * fold.c (main): Check that -w arg is a number. - - * cut.c: +delimiter takes an arg. - -Mon Sep 16 14:52:38 1991 David J. MacKenzie (djm at churchy.gnu.ai.mit.edu) - - * pr.c (close_file): Don't close an already closed file. - -Thu Sep 12 00:14:43 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * memchr.c: New file. - * configure: Check if it's needed. - - * csplit.c, gcsplit.1: New program. - - * pr.c (cleanup): Only free buffers if they were allocated. - - * sort.c [!USG && !STDC_HEADERS]: Declare memchr. - -Wed Sep 11 20:54:16 1991 Jim Meyering (meyering at churchy) - - * pr.c: The following 3 bugs appeared (at least) when printing - a single file with the options `-3 -f'. - * (print_white_space): Single spaces were being replaced - with tabs. - * (print_page): Some lines were getting too much white space - at the beginning because spaces_not_printed wasn't being reset - to 0. - * (read_line): The single space between a truncated column - on its left and the column on its right was omitted. Fixed - so that previous value of input_position is restored before - returning FALSE. - -Sat Sep 7 03:22:18 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * configure: Only remove /etc from PATH when it's not part of - a larger name. - -Wed Sep 4 17:09:24 1991 David J. MacKenzie (djm at apple-gunkies) - - * linebuffer.c (readline): Fix incorrect recalculation of `end'. - - * head.c, tail.c: Replace `mode' variables and bitmasks with - separate variables for each option. - -Mon Sep 2 04:00:37 1991 David J. MacKenzie (djm at apple-gunkies) - - * wc.c: New program. - -Sun Sep 1 01:18:38 1991 David J. MacKenzie (djm at apple-gunkies) - - * fold.c (fold_file): Read in an int, not a char, for EOF - comparison. - - * configure: Check whether st_blksize is missing. - - * tac.c (save_stdin): Put copy of pipe input in TMPDIR if - defined, instead of /tmp. - -Thu Aug 29 14:48:15 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * xwrite.c [POSIX]: unistd.h might require sys/types.h. - -Wed Aug 28 11:57:39 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * paste.c (main): Consider -d "" to be like -d "\0", - for POSIX (if I read it right). - - * sort.c, join.c: New programs. - - * cut.c (set_field): Allow blanks as well as commas to - separate numbers in ranges. - -Sun Aug 25 19:57:40 1991 Jim Meyering (meyering at apple-gunkies) - - * pr.c: Failure to open an input file is no longer a fatal error. - A message is printed for each failed open. When printing - in parallel, each failed open results in one fewer output column. - Added POSIX -r option to suppress the message. - * pr.c: Added variables: failed_opens, ignore_failed_opens. - These changes were based in part on work by David MacKenzie. - -Sat Aug 24 15:27:39 1991 Jim Meyering (meyering at pogo) - - * pr.c: Complain if user gives both -m and -[0-9]+ options. - -Wed Aug 21 22:04:57 1991 David J. MacKenzie (djm at apple-gunkies) - - * Version 1.0. - -Mon Aug 19 00:16:51 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * expand.c: Rename some variables. - (expand): Don't access value off end of array. - * unexpand.c: Rename some variables. - (unexpand): Don't access value off end of array. - Instead of copying tabs verbatim and flushing pending spaces - when one is reached, count them as the proper number of - pending spaces. Instead of changing tabs to single spaces if - the tabstop list is exhausted, print the rest of the line - unchanged (for POSIX). - -Sat Aug 17 01:49:41 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * cut.c (cut_file), paste.c (paste_parallel, paste_serial): - Clear EOF and error conditions on stdin so it can be reused. - - * expand.c, unexpand.c (parse_tabstops): Allow blanks as well - as commas to separate tabstops, for POSIX. - * expand.c (expand), unexpand.c (unexpand): Don't line-buffer - the output; send it directly to stdout. - * unexpand.c (main): Make -t stupidly imply -a for POSIX. - (unexpand): If a tab stop list was given and we move past its end, - copy the rest of the line verbatim. - - * split.c (convint): New function to allow 'm' and 'k' after - byte counts. - (main): Use it. Change -c option to -b for POSIX. - -Fri Aug 9 02:47:02 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * pr.c: Protect isdigit with isascii, if required. - -Tue Aug 6 21:42:25 1991 David J. MacKenzie (djm at wheat-chex) - - Most of the following is from Paul Eggert: - * cat.c (main): If stdin is read, check close at end. - * cmp.c (main): Check for stdin being closed. - Check for close errors on stdin and stdout. - (cmp): Return a value instead of exiting. - * cut.c (cut_file): New function, from code in main. - Check for read errors. - (main): Check for close errors. - * expand.c, unexpand.c (main): Check for close errors. - (next_file): Go to next file if one can't be opened. - Check for close errors. - * head.c (main), tail.c (main): If stdin was read, check for - close errors. - * head.c (head_file), tail.c (tail_file): Check for close errors. - * paste.c (main, paste_parallel, paste_serial), tac.c (main): - Check for close errors. Close stdin if it was read. - * split.c (main): Check for close errors. - - * configure, Makefile.in's: Support +srcdir option. - Make config.status. Fix up clean targets. - -Wed Jul 31 01:32:59 1991 David J. MacKenzie (djm at hal) - - * linebuffer.h (struct linebuffer): Add a field to indicate - the number of valid chars in the line. - * linebuffer.c (initbuffer, readline): Fill it in. - * uniq.c, comm.c: Use it. - - * pr.c (main): Check stdin and stdout fclose for errors. - (init_parameters): If there's no room for header and footer, - omit them rather than dying (for POSIX). - (init_header): Take a file descriptor as additional arg. - (init_fps): Change callers. Note when stdin is read. - (open_file): For filename "-" use stdin. - (close_file): Don't close stdin. Check close for errors. - (print_char, char_to_clump): Use isprint instead of explicit - comparisons. - - * memcmp.c: New file (needed for comm). - * bcopy.c: New file (needed for fold). - * system.h: Don't define bcopy as memcpy. - * configure: Check for bcopy and memcmp. - - * uniq.c (main): Use "-" instead of NULL to mean stdin or - stdout. - (check_file): Use "-" instead of NULL to mean stdin or stdout. - Check readline return instead of for NUL character to - detect eof. - Check fclose for errors. - (find_field): Use linebuffer length, not NULs, to detect end - of line. - (different): New function, replaces compare. Uses memcmp - instead of strncmp. - (writeline): Use fwrite instead of fputs so NULs are preserved. - - * comm.c (compare_files): Return an error indication. - Don't take a filename of NULL to mean stdin. - Use memcmp instead of strcmp to allow for NULs. - Check fclose for errors. - (writeline): Use fwrite instead of fputs so NULs are preserved. - - * sum.c (sum_file): Take an arg indicating whether to print - the filename, and don't take NULL meaning stdin. Set a flag - when we read stdin. Check fclose return for errors. - (main): If stdin was read, check fclose return for errors. - Use filename of "-" if no args given. - -Thu Jul 25 15:17:10 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * fold.c: Rewritten from scratch for POSIX. - -Wed Jul 24 01:55:41 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * split.c (line_bytes_split): Use xmalloc instead of alloca. - * system.h: Don't declare alloca. - - * tac.c, tail.c: Use SEEK_ instead of L_ for lseek. - * system.h: Define SEEK_ macros if not defined. - - * pr.c: Rename variable `truncate' to avoid library function conflict. - -Tue Jul 23 13:21:48 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * linebuffer.c, linebuffer.h: New files. - * comm.c, uniq.c (initbuffer, readline): Functions - removed (use versions in linebuffer.c). - -Mon Jul 22 13:23:53 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu) - - * sum.c (sumfile): Always print 5 digits for second number, too. - Interpret "-" to mean stdin. - -Sat Jul 20 14:24:40 1991 David J. MacKenzie (djm at bleen) - - * uniq.c: Use isblank instead of isspace, to support POSIX.2. - * comm.c, pr.c, uniq.c (concat, fatal, error, - pfatal_with_name, xmalloc, xrealloc): Functions removed. - -Sat Jul 13 02:04:53 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * nl.c: Add long-named options. Doc fixes. - -Sat Jul 6 02:19:09 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * expand.c, unexpand.c [STDC_HEADERS]: Include stdlib.h. - - * xwrite.c [POSIX]: Include unistd.h. - [STDC_HEADERS]: Don't declare errno. - -Sun Jun 30 23:35:16 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * uniq.c: Add long-named options. Remove marginally useful -z - option (zero padded repeat counts). - -Thu Jun 27 16:31:45 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * tail.c (tail_file), tac.c (save_stdin, tac_file), split.c - (cwrite), head.c (head_file), cat.c (main): Check close return - value for delayed error report due to NFS. - -Tue Jun 11 00:12:15 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * cat.c: Replace "uchar" with "unsigned char", to avoid - problems with various systems' typedefs. - -Thu Jun 6 12:54:26 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu) - - * cat.c (cat): Interpret ENOTTY return from FIONREAD ioctl to mean - operation is unsupported, for HP-UX 7.0. - -Sun Apr 14 21:49:17 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) - - * sum.c: Always print five digits for first number. - -Fri Mar 15 16:16:54 1991 David J. MacKenzie (djm at geech.ai.mit.edu) - - * cat.c, cmp.c: Don't use fileno(); not needed. - -Thu Jan 10 02:16:55 1991 David J. MacKenzie (djm at albert.ai.mit.edu) - - * tac.c, tail.c: Change _POSIX_SOURCE to POSIX. - -Thu Dec 27 00:06:45 1990 David J. MacKenzie (djm at egypt) - - * cut.c (cut_file_bytes, cut_file_fields): Make inbufp and - outbufp global. - (enlarge_line): Adjust inbufp and outbufp. - -Sun Sep 9 16:54:19 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cat.c: Declare free returning void, not int, so it - doesn't bomb on Xenix. - -Mon Sep 3 22:23:57 1990 David J. MacKenzie (djm at coke) - - * tac.c: Print error messages before calling cleanup, not after. - -Tue Aug 28 18:05:24 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * tac.c (cleanup): Return SIGTYPE, not int. - -Tue Aug 7 12:51:18 1990 David J. MacKenzie (djm at apple-gunkies) - - * cut.c (main, usage): Add -b and -n options for POSIX. - (set_fields): Don't allow SPC or TAB as number separators. - - * paste.c (paste_parallel): If open of any file fails, quit - (for POSIX). - -Mon Aug 6 22:14:13 1990 David J. MacKenzie (djm at apple-gunkies) - - * pr.c: Add POSIX -F option (same as -f). - - * uniq.c (check_file): Allow '-' to mean stdin or stdout. - -Mon Aug 6 14:43:30 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * head.c, tail.c: Change `chars' to `bytes' globally. - (main, usage): Use POSIX.2 draft 10 option syntax. - -Sun Aug 5 11:51:12 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * cat.c (main): Don't delay error messages, so they appear - where expected. - (main, simple_cat, cat): Make errors in input files nonfatal. - -Sat Aug 4 10:11:30 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * cat.c: Remove -c option added for POSIX draft 9, since POSIX - draft 10 removed it. - - * tac.c (tac_stdin): Use fstat instead of lseek to determine - whether stdin is seekable, because lseek silently fails on - some special files, like tty's. - tail.c (tail_chars, tail_lines): Use fstat instead of lseek; - don't turn off -f for non-regular files (assume the user knows - what he's doing; it might work for fifo's and sockets). - - * paste.c (main): If no files given, use stdin. - Don't let collapse_escapes write on string constant (delim default). - (paste_parallel): Don't close stdin. - - * cut.c (main): Use standard input for filename of "-". - - * comm.c (compare_files): Allow '-' to mean stdin. - -Fri Aug 3 13:38:28 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * cut.c (enlarge_line): Take an arg giving the required amount - of space. Change callers. - (main): Don't allow -t'' without -f. - Make `delim' unsigned to fix sign extension problem in comparison. - -Tue Jul 17 12:36:11 EDT 1990 Jay Fenlason (hack@ai.mit.edu) - - * pr.c Deleted excess whitespace from ends of lines. - Modified to work with current version of getopt, which - returns 1 instead of 0 for non-options. - Reversed the meaning of the -f option, to be compatible - with real pr. - -Sun Jul 8 00:39:31 1990 David J. MacKenzie (djm at apple-gunkies) - - * cmp.c (main, usage): Rename -L option to -c and don't have - it imply -l. - (printc): Take an arg to specify number of chars to pad to, - for column alignment. - (cmp): Respect flag_print_chars in default output format. - Align columns for cmp -cl. - -Sat Jul 7 17:23:30 1990 David J. MacKenzie (djm at apple-gunkies) - - * cmp.c: For +show-chars, have getopt return 'L' so - `flag_print_chars' gets set. - -Fri Jun 29 01:04:19 1990 David J. MacKenzie (djm at apple-gunkies) - - * tac.c (main): Initialize fastmap and translate fields of - regex before compiling it. - -Fri Jun 22 00:38:20 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * tac.c: Change +regexp to +regex for consistency with GNU find. - -Wed Jun 20 01:46:09 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cat.c (cat): If FIONREAD is available, only use it if it is - supported by the filesystem that the file is on. - -Sun Jun 3 20:26:19 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cat.c (main): Add a variable to control whether the check - for input file == output file is made, because no values of - st_dev and st_ino should be assumed to be available for this - purpose. Only do the check for regular files. - - * tac.c: Use bcopy instead of memcpy. - -Thu May 31 00:55:36 1990 David J. MacKenzie (djm at apple-gunkies) - - * head.c: Use longs instead of ints for file offsets, for 16 - bit machines. - -Tue May 22 00:56:51 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cmp.c: Change some ints to longs for 16 bit machines. - (bcmp_cnt): Make char-pointer counting slightly simpler. - -Sat May 12 01:16:42 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cat.c (main): Allow input file to be output file for devices - (ttys, etc.). Check whether input file is output file when - reading standard input. Print any error messages for standard - input. - - * cmp.c (bcmp_cnt): Handle int comparisons correctly on 16 bit - machines as well as 32 bit ones. - * cmp.c, tail.c: Use longs instead of ints for file offsets. - -Fri May 11 02:11:03 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cmp.c: Fix some exit statuses for POSIX. - -Tue May 8 03:41:42 1990 David J. MacKenzie (djm at abyss) - - * tac.c: Use regular expressions as the record boundaries. - Give better error messages. - Reformat code and make it more readable. - (main): Use getopt_long to parse options. - (tac_stdin): Do not make a temporary file if standard input - is a file. - (tac_file): New function. - (tac): Take an open file desc as an arg. - (output): Rewrite to use its own efficient buffering. - (xmalloc, xrealloc, xwrite): New functions. - -Sun Apr 8 20:33:20 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * head.c, tail.c: Use `error' instead of `fatal_perror' and - `nonfatal_perror'. Remove some unnecessary info from messages. - -Wed Mar 21 09:30:18 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * comm.c (main): Pass the list of files to compare_files as a - char ** instead of a char *. - (compare_files): Make arg a char **. - - * uniq.c: Declare some functions as void. - Change global vars `countmode' and `mode' from ints to enums. - (main): Use getopt to parse options and support POSIX options. - Don't use integer_arg to parse numbers, since `-#' can't be - parsed that way using getopt. - (find_field): Use isspace for finding fields boundaries. - -Tue Mar 20 14:28:25 1990 David J. MacKenzie (djm at pogo.ai.mit.edu) - - * comm.c (main): Call usage if given bad option or wrong - number of args. Exit with 0 status normally. - (usage): New function. - Declare some other functions as void. - -Wed Mar 14 10:48:40 1990 David J. MacKenzie (djm at rice-chex) - - * cmp.c (main, cmp, usage): Replace -q +quick option with -L - +show-chars option to add ASCII representation of bytes to -l format. - -Tue Mar 13 00:50:14 1990 David J. MacKenzie (djm at rice-chex) - - * cmp.c (cmp): Change EOF message for POSIX compatibility. - For -l format, clear bits > FF. - -Mon Mar 5 17:21:00 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * tail.c: Move global `errors' into main instead of having - nonfatal_perror set it. - (tail, tail_chars, tail_file, tail_lines, pipe_chars, pipe_lines): - Return an error status. - (file_lines, start_chars, start_lines): Reverse the meaning of - the return value. - (tail_lines, tail_chars): Account for that reversal. - -Mon Mar 5 00:34:36 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * head.c: Move global `errors' into main and have the various - functions return an error status instead of setting it in - nonfatal_perror. - -Sat Mar 3 11:27:27 1990 Torbj|rn Granlund (tege at echnaton) - - * cmp.c (cmp): Call function bcmp_cnt for flag == 0 (i.e. no - options specified), to compare the two blocks and count - newlines simultaneously. - * cmp.c New function: bcmp_cnt. - - * cmp.c (main): Test if output is redirected to /dev/null, and - assume `-s' if this is so. - -Tue Feb 20 17:09:19 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cat.c: Change `argbad' from a char to a short, so it will - work on machines with unsigned chars. - -Sat Feb 10 02:16:40 1990 David J. MacKenzie (djm at albert.ai.mit.edu) - - * cmp.c (cmp): Rename `r' to `first_diff', and `x' to `smaller'. - Remove unnecessary variable `c1'. If -l was given, increase - `char_number' by the number of bytes read, after producing output, - rather than by the offset of the first differing bytes, before - producing output. - Replace if-else-if constructions with case statements for clarity. - (bcmp2): Rename `n' to `nread'. - -Wed Dec 20 01:32:06 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) - - * nl.c (proc_text): Use re_search instead of re_match. - -Tue Dec 19 01:26:34 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) - - * nl.c: Indent. Un-nest statements. Use GNU regexp functions - instead of System V ones. Move function declarations together. - (quit): Remove useless function. - (program_name): New variable for error messages. - (main): Use perror in error message. - (xmalloc): New function to replace myalloc. - (myalloc): Function removed. - Global: use program_name and xmalloc. - -Sun Dec 17 00:36:36 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) - - * uniq.c: Declare some functions. - (main): Initialize infile and outfile. Call usage if given - invalid args. Normally exit with 0 status instead of garbage. - (usage): New function to print usage message and exit. - (check_file): Remove unused variable. - (readline): Compare against EOF, not < 0. - (xmalloc, xrealloc): Return char *, not int. - Ok to return 0 if 0 bytes requested. - (lb1, lb2): Remove unused global vars. - (concat): Remove unused function. - -Sat Dec 16 15:15:50 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu) - - * comm.c: Remove unused global variables lb1, lb2. - (main): Remove unneeded variable. - (compare_files): Remove unused arg. - (readline): un-nest assignment. Test against EOF instead of < 0. - (error): Print to stderr, not stdout. - (xmalloc, xrealloc): Return char * instead of int. - Returning 0 is ok if 0 bytes requested (ANSI C). - - - ----- - - Copyright (C) 1998-2017 Free Software Foundation, Inc. - - Copying and distribution of this file, with or without - modification, are permitted provided the copyright notice - and this notice are preserved. -- cgit v1.2.3-70-g09d2