Blame ChangeLog-2008

Packit Service fdd496
2008-01-30  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Update Back-Cover text to reflect new GNU wording.
Packit Service fdd496
Packit Service fdd496
2008-01-24  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/side.c [!HAVE_MBRTOWC]: Supply defns for mbstate_t and mbrtowc.
Packit Service fdd496
	Problem reported by Bruno Haible.
Packit Service fdd496
Packit Service fdd496
2008-01-23  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/side.c (print_half_line): Don't convert to unsigned char
Packit Service fdd496
	unnecessarily.
Packit Service fdd496
Packit Service fdd496
	Don't mishandle multibyte characters in side-by-side format.
Packit Service fdd496
	Problem reported by Erik Karlsson in
Packit Service fdd496
	<http://lists.gnu.org/archive/html/bug-gnu-utils/2008-01/msg00030.html>.
Packit Service fdd496
	* bootstrap.conf (gnulib_modules): Add wcwidth.
Packit Service fdd496
	* src/side.c: Include <wchar.h>.
Packit Service fdd496
	(print_half_line): Compute number of bytes and print widths of
Packit Service fdd496
	multibyte characters.  Inspired by an alternative solution from
Packit Service fdd496
	Bruno Haible in
Packit Service fdd496
	<http://lists.gnu.org/archive/html/bug-gnu-utils/2008-01/msg00032.html>.
Packit Service fdd496
Packit Service fdd496
2007-12-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* NEWS: New diff option --suppress-blank-empty (no longer -u default).
Packit Service fdd496
	* doc/diff.texi (Detailed Unified): Trailing spaces are no longer
Packit Service fdd496
	omitted.
Packit Service fdd496
	(Trailing Blanks): New section.
Packit Service fdd496
	(diff Options) Mention new option.
Packit Service fdd496
	* src/diff.h (suppress_blank_entry): New decl.
Packit Service fdd496
	* src/context.c (pr_unidiff_hunk): Support --suppress-blank-empty.
Packit Service fdd496
	* src/util.c (print_1_line): Likewise.
Packit Service fdd496
	* src/diff.c (longopts, main, option_help_msgid): Likewise.
Packit Service fdd496
	(SUPPRESS_BLANK_EMPTY_OPTION): New constant.
Packit Service fdd496
Packit Service fdd496
	* configure.ac: Invoke gl_USE_SYSTEM_EXTENSIONS after gl_EARLY,
Packit Service fdd496
	since gnulib now requires this order.
Packit Service fdd496
Packit Service fdd496
	* bootstrap: Import from gnulib.
Packit Service fdd496
Packit Service fdd496
2007-08-17  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	Break out diffseq.h into a separate file, so that gettext can use
Packit Service fdd496
	this code.  Idea and code from Bruno Haible.
Packit Service fdd496
	* bootstrap.conf (gnulib_modules): Add diffseq.
Packit Service fdd496
	* src/analyze.c (xvec, yvec, fdiag, bdiag, too_expensive, SNAKE_LIMIT):
Packit Service fdd496
	(struct partition, diag, compareseq): Remove; now in diffseq.h.
Packit Service fdd496
	(ELEMENT, EQUAL, OFFSET, EXTRA_CONTEXT_FIELDS, NOTE_DELETE, NOTE_INSERT):
Packit Service fdd496
	(USE_HEURISTIC): New macros.
Packit Service fdd496
	Include "diffseq.h".
Packit Service fdd496
	(diff_2_files): Rewrite to use new diffseq.h interface.
Packit Service fdd496
Packit Service fdd496
	* bootstrap: Import from gnulib.
Packit Service fdd496
Packit Service fdd496
2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (compare_files): Use last_component rather than base_name,
Packit Service fdd496
	adjusting to gnulib API change.  This avoids a memory leak.
Packit Service fdd496
	* src/sdiff.c (expand_name): Likewise.
Packit Service fdd496
	* src/util.c (dir_file_pathname): Likewise.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (Copying This Manual): Adjust to new fdl.texi layout.
Packit Service fdd496
Packit Service fdd496
2007-07-19  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (White Space): Note that newline always ends a line,
Packit Service fdd496
	so -w doesn't ignore newline-related changes.  Problem reported by
Packit Service fdd496
	David Kastrup.
Packit Service fdd496
Packit Service fdd496
	* COPYING: New file.
Packit Service fdd496
	* AUTHORS: Update from GPLv2 to GPLv3.
Packit Service fdd496
	* Makefile.am: Likewise.
Packit Service fdd496
	* NEWS: Likewise.
Packit Service fdd496
	* README: Likewise.
Packit Service fdd496
	* README-hacking: Likewise.
Packit Service fdd496
	* bootstrap: Likewise.
Packit Service fdd496
	* bootstrap.conf: Likewise.
Packit Service fdd496
	* configure.ac: Likewise.
Packit Service fdd496
	* exgettext: Likewise.
Packit Service fdd496
	* doc/Makefile.am: Likewise.
Packit Service fdd496
	* lib/Makefile.am: Likewise.
Packit Service fdd496
	* lib/cmpbuf.c: Likewise.
Packit Service fdd496
	* lib/cmpbuf.h: Likewise.
Packit Service fdd496
	* lib/prepargs.c: Likewise.
Packit Service fdd496
	* m4/vararrays.m4: Likewise.
Packit Service fdd496
	* man/Makefile.am: Likewise.
Packit Service fdd496
	* ms/Makefile.am: Likewise.
Packit Service fdd496
	* ms/README: Likewise.
Packit Service fdd496
	* ms/config.bat: Likewise.
Packit Service fdd496
	* ms/config.sed: Likewise.
Packit Service fdd496
	* ms/config.site: Likewise.
Packit Service fdd496
	* po/POTFILES.in: Likewise.
Packit Service fdd496
	* src/Makefile.am: Likewise.
Packit Service fdd496
	* src/analyze.c: Likewise.
Packit Service fdd496
	* src/cmp.c: Likewise.
Packit Service fdd496
	* src/context.c: Likewise.
Packit Service fdd496
	* src/diff.c: Likewise.
Packit Service fdd496
	* src/diff.h: Likewise.
Packit Service fdd496
	* src/diff3.c: Likewise.
Packit Service fdd496
	* src/dir.c: Likewise.
Packit Service fdd496
	* src/ed.c: Likewise.
Packit Service fdd496
	* src/io.c: Likewise.
Packit Service fdd496
	* src/normal.c: Likewise.
Packit Service fdd496
	* src/sdiff.c: Likewise.
Packit Service fdd496
	* src/system.h: Likewise.
Packit Service fdd496
	* src/util.c: Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/ifdef.c: Fix typo: "GNU DIFF General Public License" should be
Packit Service fdd496
	"GNU General Public License".  Reported by Erich Guenther.
Packit Service fdd496
	* src/side.c: Likewise.
Packit Service fdd496
Packit Service fdd496
2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* bootstrap.conf (gnulib_modules): Add inttypes.
Packit Service fdd496
	* src/context.c (print_context_label): Don't assume that time_t
Packit Service fdd496
	fits in long int, since it doesn't in FreeBSD/arm.  Problem
Packit Service fdd496
	reported by Xin Li in
Packit Service fdd496
	<http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
Packit Service fdd496
Packit Service fdd496
2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* NEWS:  Mention new sdiff aliases 1 and 2 for l and r.
Packit Service fdd496
	* doc/diff.texi (Merge Commands): Likewise.
Packit Service fdd496
	* src/sdiff.c (give_help): Give help for them.
Packit Service fdd496
	(edit): Support them.
Packit Service fdd496
Packit Service fdd496
2007-04-11  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (Detailed diff3 Normal): "range is a singleton" ->
Packit Service fdd496
	"there is only one line", for clarity.  Suggested by Jerry Peek.
Packit Service fdd496
Packit Service fdd496
2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* TODO: Mention possible sdiff improvement.
Packit Service fdd496
Packit Service fdd496
	* bootstrap: Sync from gnulib.
Packit Service fdd496
	* src/cmp.c: Don't include exit.h; no longer needed.
Packit Service fdd496
	* src/diff.c: Likewise.
Packit Service fdd496
	* src/sdiff.c: Likewise.
Packit Service fdd496
	* src/dir.c: Don't include strcase.h; no longer needed.
Packit Service fdd496
	* README-alpha: Remove, replacing with:
Packit Service fdd496
	* README-hacking: New file, taken from coreutils with some changes.
Packit Service fdd496
	The rename is required by the change to 'bootstrap'.
Packit Service fdd496
Packit Service fdd496
2006-11-15  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c (build_reverse_script): Fix typo in comment.
Packit Service fdd496
	Problem and fix reported by Daniel Hipschman.
Packit Service fdd496
Packit Service fdd496
2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	Don't assume SIGPIPE exists, and that sigblock and sigsetmask
Packit Service fdd496
	exist if sigprocmask does not.  Problem reported by Paul Edwards
Packit Service fdd496
	for MVS 3.8.
Packit Service fdd496
	* configure.ac (sigblock): Check whether this function is
Packit Service fdd496
	available, if sigprocmask is not.
Packit Service fdd496
	* src/sdiff.c (sigs): Omit SIGPIPE if it's not defined.
Packit Service fdd496
	Put SIGINT last; all uses changed.
Packit Service fdd496
	(handler_index_of_SIGPIPE): Omit if SIGPIPE is not defined.
Packit Service fdd496
	(sigblock, sigsetmask) [!HAVE_SIGBLOCK]: New macros.
Packit Service fdd496
	(sigprocmask): Don't dump core if O is null.
Packit Service fdd496
Packit Service fdd496
2006-11-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (sigprocmask) [! HAVE_SIGPROCMASK]: Cast 2nd arg to
Packit Service fdd496
	sigset_t *, since it might be a literal 0.  Problem reported by
Packit Service fdd496
	Paul Edwards for MVS 3.8.
Packit Service fdd496
Packit Service fdd496
2006-09-05  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* NEWS: diff -u no longer outputs trailing white space unless the
Packit Service fdd496
	input data has it.  Suggested by Jim Meyering.
Packit Service fdd496
	* doc/diff.texi (Detailed Unified): Document this.
Packit Service fdd496
	* src/context.c (pr_unidiff_hunk): Implement this.
Packit Service fdd496
Packit Service fdd496
	Modernize bootstrap procedure to match current gnulib.
Packit Service fdd496
	* bootstrap: Sync with coreutils bootstrap, except check that
Packit Service fdd496
	the directory build-aux exists before trying to copy to it.
Packit Service fdd496
	* bootstrap.conf: New file.
Packit Service fdd496
	(gnulib_modules): Add config-h, dup2, extensions, fcntl, fdl,
Packit Service fdd496
	stat-macros, unistd.
Packit Service fdd496
	* configure.ac: Invoke gl_EARLY and gl_INIT rather than
Packit Service fdd496
	GNULIB_AUTOCONF_SNIPPET.
Packit Service fdd496
	(AC_CONFIG_HEADER): Rename config.h to lib/config.h.
Packit Service fdd496
	(AC_CHECK_HEADERS_ONCE): Don't check for fcntl.h, locale.h,
Packit Service fdd496
	sys/file.h, unistd.h.  We now use the fcntl and unistd modules,
Packit Service fdd496
	and locale.h can be assumed for any C89 compiler.
Packit Service fdd496
	(DIFFUTILS_PREREQUISITES): Remove.  No longer needed now that
Packit Service fdd496
	we use the stdint module.
Packit Service fdd496
	(AC_CHECK_FUNCS_ONCE): Remove dup2, which is no longer needed
Packit Service fdd496
	now that we use the dup2 module.
Packit Service fdd496
	(AM_GNU_GETTEXT): Use need-formatstring-macros, and ...
Packit Service fdd496
	(AM_GNU_GETTEXT_VERSION): specify version 0.15 instead of 0.14.5,
Packit Service fdd496
	to be consistent with coreutils.
Packit Service fdd496
	* lib/Makefile.am (noinst_LIBRARIES):
Packit Service fdd496
	(lib_SOURCES, libdiffutils_a_LIBADD):
Packit Service fdd496
	(libdiffutils_a_DEPENDENCIES, BUILT_SOURCES, EXTRA_DIST):
Packit Service fdd496
	(MOSTLYCLEANFILES): Remove; now computed automatically.
Packit Service fdd496
	(noinst_HEADERS, libdiffutils_a_SOURCES): Just append
Packit Service fdd496
	our special files now.
Packit Service fdd496
	* lib/cmpbuf.c: Include config.h unconditionally, since we
Packit Service fdd496
	no longer define HAVE_CONFIG_H.
Packit Service fdd496
	* lib/prepargs.c: Likewise.
Packit Service fdd496
	* src/Makefile.am (LDADD): Use $(LIBINTL), not @LIBINTL@.
Packit Service fdd496
	(diff_LDADD): Use $(LIB_CLOCK_GETTIME), not @LIB_CLOCK_GETTIME@.
Packit Service fdd496
	* src/dir.c (dir_read): Use _D_EXACT_NAMLEN, not NAMELEN.
Packit Service fdd496
	* src/system.h (volatile): Remove, since we assume C89 or better.
Packit Service fdd496
	Include stat-macros.h.
Packit Service fdd496
	(S_IRWXU, S_IRWXG, S_IRWXO, S_IRUSR, S_IWUSR):
Packit Service fdd496
	Remove, since we now use stat-macros.h.
Packit Service fdd496
	(SEEK_SET, SEEK_CUR): Remove, since we assume C89 or better.
Packit Service fdd496
	Include unistd.h unconditionally, since we use unistd.
Packit Service fdd496
	Likewise for fcntl.h.
Packit Service fdd496
	(dup2): Remove, since we now use dup2.
Packit Service fdd496
	(O_RDONLY, O_RWDR, O_BINARY): Remove, since we now use
Packit Service fdd496
	fcntl.
Packit Service fdd496
	Include dirent.h unconditionally.
Packit Service fdd496
	(NAMLEN): Remove, replacing with....
Packit Service fdd496
	(_D_EXACT_NAMLEN): New macro.
Packit Service fdd496
	Include inttypes.h unconditionally.
Packit Service fdd496
	(PTRDIFF_MAX, SIZE_MAX, UINTMAX_MAX, strtoumax): Remove, since
Packit Service fdd496
	we now use inttypes.
Packit Service fdd496
	Include locale.h unconditionally.
Packit Service fdd496
	(setlocale): Remove, since we now assume locale.h.
Packit Service fdd496
Packit Service fdd496
2006-09-04  Jim Meyering  <jim@meyering.net>
Packit Service fdd496
Packit Service fdd496
	* src/context.c (print_context_function): Do not print
Packit Service fdd496
	trailing white space in a context header.
Packit Service fdd496
Packit Service fdd496
2006-05-09  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (cmp): The previous fix wasn't quite right either, as
Packit Service fdd496
	it mishandled 'cmp A B >/dev/null' when A is shorter than B and
Packit Service fdd496
	differs before A's end-of-file, by outputting a bogus EOF message.
Packit Service fdd496
	Also, it was inefficient if A and B were large.
Packit Service fdd496
Packit Service fdd496
2006-05-07  Jim Meyering  <jim@meyering.net>  (tiny change)
Packit Service fdd496
Packit Service fdd496
	Fix bug introduced in 2006-03-09 change:
Packit Service fdd496
	cmp always exits successfully, when stdout is redirected to /dev/null.
Packit Service fdd496
	* src/cmp.c (cmp): When there's a difference, arrange to return nonzero
Packit Service fdd496
	also when comparison_type is the new (from 2006-03-09) type_no_stdout.
Packit Service fdd496
Packit Service fdd496
2006-05-07  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/context.c (pr_context_hunk, pr_unidiff_hunk):
Packit Service fdd496
	Prefer fputs or fputc to fprintf, since it's a tad more efficient
Packit Service fdd496
	with unlocked-IO on glibc.  Long ago we avoided fputs to
Packit Service fdd496
	work around an ancient SunOS bug, but that's no longer relevant.
Packit Service fdd496
	* src/diff3.c (output_diff3, dotlines, undotlines):
Packit Service fdd496
	(output_diff3_edscript, output_diff3_merge): Likewise.
Packit Service fdd496
	This also avoids a gcc -Wformat-security warning reported
Packit Service fdd496
	by Jim Meyering.
Packit Service fdd496
	* src/ed.c (print_ed_hunk, print_forward_ed_hunk, print_rcs_hunk):
Packit Service fdd496
	Likewise.
Packit Service fdd496
	* src/normal.c (print_normal_hunk): Likewise.
Packit Service fdd496
Packit Service fdd496
2006-05-06  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/io.c (find_identical_ends): Fix huge performance bug that I
Packit Service fdd496
	introduced in the 2001-11-25 change: the code to remove the
Packit Service fdd496
	identical suffix also looked at the trailing sentinel, which meant
Packit Service fdd496
	the common suffix length was always incorrectly calculated to be
Packit Service fdd496
	zero.  Problem and fix reported by Daniel Hipschman.  Instead of
Packit Service fdd496
	his fix, revert to the pre-2001 code.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Switch from GFDL 1.1 to 1.2.
Packit Service fdd496
Packit Service fdd496
2006-03-13  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/system.h (PARAMS, PROTOTYPES): Remove; no longer needed.
Packit Service fdd496
	(IF_LINT): New macro, to pacify GCC.
Packit Service fdd496
	* src/analyze.c (diag, compareseq): Use IF_LINT.
Packit Service fdd496
	* src/cmp.c (cmp): Likewise.
Packit Service fdd496
	* src/diff3.c (process_diff): Likewise.  Also, prefer NULL to 0.
Packit Service fdd496
	* src/ifdef.c (do_printf_spec, scan_char_literal): Likewise.
Packit Service fdd496
	* src/sdiff.c (edit): Likewise.
Packit Service fdd496
Packit Service fdd496
2006-03-09  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (type_no_stdout): New constant.
Packit Service fdd496
	(main): Use it to avoid bug when the "EOF on foo" message is
Packit Service fdd496
	generated and stdout is /dev/null.
Packit Service fdd496
	Problem reported by Vincent Lefevre (Debian bug 356083).
Packit Service fdd496
Packit Service fdd496
2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* README-alpha: Describe CVS access better, using the README-alpha
Packit Service fdd496
	from GNU tar.
Packit Service fdd496
	* AUTHORS: Simplify list by removing legalisms.
Packit Service fdd496
	* THANKS: Add Larry Wall, who contributed to manual.  Update email
Packit Service fdd496
	addresses.
Packit Service fdd496
	* Makefile.am (SUBDIRS): Remove m4.  Put lib first, then other
Packit Service fdd496
	source files, so documentation can rely on programs being built.
Packit Service fdd496
	* bootstrap: Import changes from Bison bootstrap.  Add gettext,
Packit Service fdd496
	gettime, sh-quote, stat-time, verify, version-etc-fsf modules.
Packit Service fdd496
	Remove posixver module.  Retrieve doc/fdl.texi from gnulib.
Packit Service fdd496
	Handle gettext.m4 like glibc21.m4.  Don't remove po/en.po.
Packit Service fdd496
	* configure.ac (AC_PREREQ): Bump to 2.59.
Packit Service fdd496
	(AC_INIT): Bump version to 2.8.7-cvs.
Packit Service fdd496
	(AC_CONFIG_AUX_DIR): Change from config to build-aux.
Packit Service fdd496
	Prefer AC_CHECK_HEADERS_ONCE to AC_CHECK_HEADERS
Packit Service fdd496
	and AC_CHECK_FUNCS_ONCE to AC_CHECK_FUNCS.
Packit Service fdd496
	Remove jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T,
Packit Service fdd496
	AC_STRUCT_ST_MTIM_NSEC.
Packit Service fdd496
	(DIFFUTILS_PREREQUISITES): New macro.  Call it.
Packit Service fdd496
	(REGEX_MALLOC): Remove; no longer needed.
Packit Service fdd496
	(AM_GNU_GETTEXT_VERSION): Now 0.14.15.
Packit Service fdd496
	(AM_GNU_GETTEXT): Call.
Packit Service fdd496
	(LIB_CLOCK_GETTIME): Remove; bootstrap now does that.
Packit Service fdd496
	(AC_FUNC_SETMODE_DOS): Remove.
Packit Service fdd496
	(AC_CONFIG_FILES): Remove m4/Makefile.
Packit Service fdd496
	* doc/diff.texi: Use @- at end of lines that should end in white space,
Packit Service fdd496
	so that Emacs doesn't remove the white space.
Packit Service fdd496
	(diff Options): "diff -NUM" is a pure extension to POSIX, so support
Packit Service fdd496
	it unconditionally.
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Remove quotesys.h.
Packit Service fdd496
	(lib_SOURCES): Remove quotesys.c.
Packit Service fdd496
	(DISTCLEANFILES): Remove.
Packit Service fdd496
	(EXTRA_DIST): Remove setmode.h, waitpid.c.
Packit Service fdd496
	* lib/cmpbuf.c (block_read): Reword to avoid gcc -W warning.
Packit Service fdd496
	* lib/setmode.c, lib/setmode.h: Remove.
Packit Service fdd496
	* m4/setmode.m4, m4/gnu-source.m4, m4/Makefile.am.in: Remove.
Packit Service fdd496
	* m4/jm-glibc-io.m4: Remove.
Packit Service fdd496
	* src/cmp.c: Don't include <setmode.h>.
Packit Service fdd496
	(specify_ignore_initial): Reword to avoid gcc -W warnings.
Packit Service fdd496
	(main): Use freopen instead of setmode, since freopen is in POSIX.
Packit Service fdd496
	* src/context.c: Revert most 2004-09-01 changes.  Then:
Packit Service fdd496
	(TIMESPEC_NS): Remove.  All uses replaced by
Packit Service fdd496
	get_stat_mtime_ns.
Packit Service fdd496
	Include stat-time.h, strftime.h.
Packit Service fdd496
	(nstrtime): Remove decl.
Packit Service fdd496
	* src/diff.c: Revert most 2004-09-01 changes.  Then:
Packit Service fdd496
	Don't include <posixver.h>, <quotesys.h>, <setmode.h>.
Packit Service fdd496
	Include <sh-quote.h>, <stat-time.h>, <timespec.h>.
Packit Service fdd496
	All uses of quotesys replaced by sh-quote.
Packit Service fdd496
	(main, compare_files):
Packit Service fdd496
	Use freopen instead of setmode, since freopen is in POSIX.
Packit Service fdd496
	(main): Don't complain about "diff -NUM'.
Packit Service fdd496
	(main, set_mtime_to_now):
Packit Service fdd496
	Adjust to stat-time.h macros when accessing nanoseconds.
Packit Service fdd496
	* src/diff3.c: Include sh-quote.h rather than quotesys.  All uses
Packit Service fdd496
	changed.
Packit Service fdd496
	* src/dir.c (dir_read): excluded_filename renamed to
Packit Service fdd496
	excluded_file_name.
Packit Service fdd496
	* src/io.c: Don't include <setmode.h>.
Packit Service fdd496
	(sip, read_files): Remove binary file stuff, leaving a FIXME behind.
Packit Service fdd496
	A DOS expert needs to look at this.
Packit Service fdd496
	* src/diff.c: Include sh-quote.h rather than quotesys.h.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
	* src/system.h: Include verify.h.
Packit Service fdd496
	(verify): Remove.  All uses changed to verify.h version.
Packit Service fdd496
	Include <intprops.h>.
Packit Service fdd496
	(TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.  Now uses
Packit Service fdd496
	intprops.h versions.
Packit Service fdd496
	(O_BINARY): New defns, taken from coreutils.
Packit Service fdd496
	* src/util.c: Include sh-quote.h rather than quotesys.h.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
2004-09-01  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (recursive, new_file, unidirectional_new_file):
Packit Service fdd496
	(report_identical_files):
Packit Service fdd496
	Move into struct diffopt.  All uses changed.
Packit Service fdd496
	(exclude_options, compare_files, specify_style, check_stdout):
Packit Service fdd496
	New arg OPT.  All uses changed.
Packit Service fdd496
	(GDIFF_MAIN): Remove.  All uses removed.
Packit Service fdd496
	(function_regexp_list, ignore_regexp_list): No longer static; now
Packit Service fdd496
	locals in 'main'.
Packit Service fdd496
	(main): Set opt.function_regexp, opt.ignore_regexp if using regexps;
Packit Service fdd496
	all other code now tests these pointers rather than inspecting fastmap
Packit Service fdd496
	internals.
Packit Service fdd496
	New local OPT to hold former statics; initialize it.
Packit Service fdd496
	(init_regexp_list): New function, used by main.
Packit Service fdd496
	(summarize_regexp_list): Now returns struct re_pattern_buffer *, and
Packit Service fdd496
	assumes reglist->regexps is not NULL.  All uses changed.
Packit Service fdd496
Packit Service fdd496
	* src/context.c (find_function_last_search): Move into struct diffopt.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
	(pr_context_label, pr_context_header,
Packit Service fdd496
	print_context_script, find_function, find_hunk, mark_ignorable,
Packit Service fdd496
	pr_context_hunk, pr_unidiff_hunk): New arg OPT.  All uses changed.
Packit Service fdd496
	(print_context_number_range,
Packit Service fdd496
	print_unidiff_number_range): New arg OUT.  All uses changed.
Packit Service fdd496
Packit Service fdd496
2004-07-19  Stepan Kasal  <kasal@ucw.cz>
Packit Service fdd496
Packit Service fdd496
	* src/ed.c (print_ed_hunk): Optimize the case where an insert's
Packit Service fdd496
	last line is a single-dot line.
Packit Service fdd496
Packit Service fdd496
2004-06-30  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* lib/setmode.c:
Packit Service fdd496
	Don't include <stdbool.h>, since setmode.h now does this.
Packit Service fdd496
	Include setmode.h first, to catch interface errors.
Packit Service fdd496
	Assume HAVE_SETMODE_DOS is defined.
Packit Service fdd496
Packit Service fdd496
	* lib/setmode.h: Include stdbool.h.
Packit Service fdd496
Packit Service fdd496
2004-04-26  Paul Eggert  <eggert@cs.ucla.edu>
Packit Service fdd496
Packit Service fdd496
	* bootstrap: Don't remove po/en.po.
Packit Service fdd496
Packit Service fdd496
2004-04-13  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.7.
Packit Service fdd496
	* configure.ac (AM_GNU_GETTEXT_VERSION): Add.
Packit Service fdd496
	(XGETTEXT): Restore from pre-2004-04-12 version.  This fixes
Packit Service fdd496
	a bug that lost many msgids in doc/diffutils.pot.
Packit Service fdd496
	* bootstrap: New file.
Packit Service fdd496
	* exgettext: Don't generate a temporary file, as this runs afoul
Packit Service fdd496
	of "make distcheck" which operates with read-only directories.
Packit Service fdd496
	* Makefile.am (EXTRA_DIST): Add bootstrap.
Packit Service fdd496
	Remove config/config.rpath as it is deduced automatically these days.
Packit Service fdd496
Packit Service fdd496
2004-04-12  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.6.
Packit Service fdd496
Packit Service fdd496
	* NEWS: Add news for 2.8.4, 2.8.6.
Packit Service fdd496
Packit Service fdd496
	* README: Move copyright notice to end.  Defer to "configure
Packit Service fdd496
	--help" for special "configure" options.  Suggest latest libiconv.
Packit Service fdd496
	Update version numbers of Autoconf etc. to current.
Packit Service fdd496
Packit Service fdd496
	* configure.ac: Quote various arguments better.
Packit Service fdd496
	(AC_CONFIG_MACRO_DIR): Add call, specifying "m4".
Packit Service fdd496
	(AC_CONFIG_HEADER): Replaces AM_CONFIG_HEADER.
Packit Service fdd496
	(gl_USE_SYSTEM_EXTENSIONS): Replaces AC_GNU_SOURCE.
Packit Service fdd496
	(AC_ISC_POSIX): Remove; nobody ports to ancient ISC any more.
Packit Service fdd496
	(AC_PROG_CPP, AC_PROG_INSTALL, AC_C_INLINE,
Packit Service fdd496
	AC_HEADER_STDBOOL, AC_HEADER_STDC, AM_GNU_GETTEXT, XGETTEXT,
Packit Service fdd496
	AC_HEADER_STAT, AC_FUNC_VPRINTF, jm_FUNC_GLIBC_UNLOCKED_IO,
Packit Service fdd496
	jm_FUNC_GNU_STRFTIME, jm_FUNC_MALLOC, jm_FUNC_REALLOC,
Packit Service fdd496
	jm_PREREQ_C_STACK, jm_PREREQ_ERROR, jm_PREREQ_HARD_LOCALE,
Packit Service fdd496
	jm_PREREQ_QUOTEARG, jm_PREREQ_REGEX, AC_FUNC_FNMATCH_GNU, jm_AC_DOS):
Packit Service fdd496
	Remove; not needed here, as our files don't use them directly
Packit Service fdd496
	or we rely on gnulib modules.
Packit Service fdd496
	(AC_C_CONST): Remove; we assume C89 now.
Packit Service fdd496
	(AC_CHECK_HEADERS): Remove libintl.h, limits.h, stdlib.h, string.h,
Packit Service fdd496
	time.h.
Packit Service fdd496
	(AC_CHECK_TYPE): Remove ptrdiff_t, ssize_t.
Packit Service fdd496
	(AC_CHECK_FUNCS): Remove diraccess, strchr, strerror, tmpnam).
Packit Service fdd496
	(AC_REPLACE_FUNCS): Remove memchr, mkstemp, strcasecmp.
Packit Service fdd496
	(GNULIB_AUTOCONF_SNIPPET): Add call.  This replaces much of
Packit Service fdd496
	the above.
Packit Service fdd496
	(AC_CONFIG_FILES): Remove lib/posix/Makefile.
Packit Service fdd496
	(AC_CONFIG_COMMANDS): Remove.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (dircategory): Change to "Text creation and
Packit Service fdd496
	manipulation" from "GNU packages".
Packit Service fdd496
	(Translations): New node.
Packit Service fdd496
	(Overview): Improve quality of algorithm citations.
Packit Service fdd496
	(Binary): -q doesn't exactly cause diff to assume files are binary.
Packit Service fdd496
	(Normal): Place after Side by Side, since it's less important.
Packit Service fdd496
	(Detailed Context, Detailed Unified, Detailed ed,
Packit Service fdd496
	Detailed if-then-else, diff3 Hunks, Detailed diff3 Normal):
Packit Service fdd496
	Place at end of menu.
Packit Service fdd496
	(Detailed Unified): Mention that fractional timestamps are
Packit Service fdd496
	omitted on hosts that don't support them.
Packit Service fdd496
	Mention what happens when hunks contain just one line.
Packit Service fdd496
	(Line Group Formats, Reject Names): Fix duplicate-word typos.
Packit Service fdd496
	(Comparing Directories): Trailing white space and empty lines are
Packit Service fdd496
	ignored in the -X file.
Packit Service fdd496
	(diff Options): Add --strip-trailing-cr.
Packit Service fdd496
	(Projects): gnu -> gvc@gnu.org.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (SUBDIRS): Remove.
Packit Service fdd496
	(EXTRA_DIST, noinst_HEADERS): Remove most entries.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Now just lib_SOURCES.
Packit Service fdd496
	(lib_SOURCES): New macro.
Packit Service fdd496
	(DISTCLEANFILES, MOSTLYCLEANFILES): Set to empty now.
Packit Service fdd496
	(gnulib.mk): Include: this does most of the work eliminated
Packit Service fdd496
	by the above changes.
Packit Service fdd496
Packit Service fdd496
	* lib/inttostr.c (inttostr): Protect i < 0 by compile-time
Packit Service fdd496
	test intended to suppress compiler warnings.
Packit Service fdd496
	* lib/inttostr.h: Include limits.h unilaterally.
Packit Service fdd496
	(CHAR_BIT): Remove.
Packit Service fdd496
	(PARAMS): Remove; all uses changed.
Packit Service fdd496
	* lib/setmode.c (__attribute__): New macro.
Packit Service fdd496
	(set_binary_mode): Define only if HAVE_SETMODE_DOS.
Packit Service fdd496
	Otherwise define a dummy static char, as C89 requires
Packit Service fdd496
	that we define something.
Packit Service fdd496
	* lib/setmode.h (set_binary_mode): Return true, not 1.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c, src/context.c, src/diff.c, src/io.c, src/util.c:
Packit Service fdd496
	Do not include regex.h, as diff.h does this now.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Sort includes.  Include <exit.h>, <unlocked-io.h>.
Packit Service fdd496
	(specify_comparison_type): Don't report an error if the comparison
Packit Service fdd496
	type has already been specified the same way as this one.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (usage): Mention exit status.
Packit Service fdd496
	* src/diff.c (option_help_msgid): Likewise.
Packit Service fdd496
	* src/diff3.c (usage): Likewise.
Packit Service fdd496
	* src/sdiff.c (usage): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (main): Adjust to latest gnulib c_stack_action
Packit Service fdd496
	calling conventions.
Packit Service fdd496
	* src/diff.c (main): Likewise.
Packit Service fdd496
	* src/diff3.c (main): Likewise.
Packit Service fdd496
	* src/sdiff.c (main): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (main): Adjust to latest version_etc calling conventions.
Packit Service fdd496
	* src/diff.c (main): Likewise.
Packit Service fdd496
	* src/diff3.c (main): Likewise.
Packit Service fdd496
	* src/sdiff.c (main): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c: Include <exit.h>.
Packit Service fdd496
	(binary): Define to true if not declared.
Packit Service fdd496
	(longopts): Set tabsize flag to 1.
Packit Service fdd496
	(main): Don't output nanoseconds if platform lacks them.
Packit Service fdd496
	Don't treat files as binary if !binary.
Packit Service fdd496
	(set_mtime_to_now): Use 0, not NULL.
Packit Service fdd496
	(compare_files): Mark files as nonexistent if it looks like
Packit Service fdd496
	'patch' created inaccessible regular empty files to denote
Packit Service fdd496
	nonexistent backups.  Don't compare such files.
Packit Service fdd496
	Clear st_* members of status of	nonexistent file.
Packit Service fdd496
	Remove now-unnecessary tests.
Packit Service fdd496
Packit Service fdd496
	* src/diff.h: Include regex.h, unlocked-io.h.
Packit Service fdd496
	(struct file_data.changed): Now char *, not bool *, to save
Packit Service fdd496
	space on hosts where bool takes more space than char.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c: Include unlocked-io.h.
Packit Service fdd496
	(strip_trailing_cr): New var.
Packit Service fdd496
	(STRIP_TRAILING_CR_OPTION): New enum.
Packit Service fdd496
	(longopts, main, option_help_msgid, read_diff):
Packit Service fdd496
	Add --strip-trailing-cr support.
Packit Service fdd496
	(read_diff): Exit with status 126 (not 127) if errno != ENOENT
Packit Service fdd496
	after failed execvp in child.  Report this in parent.
Packit Service fdd496
Packit Service fdd496
	* src/dir.c: Include <strcase.h>.
Packit Service fdd496
	(failed_locale_specific_sorting): Renamed from failed_strcoll.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
	(compare_names): Don't invoke strcasecmp first thing when
Packit Service fdd496
	ignore_file_name_case; if locale_specific_sorting, we should
Packit Service fdd496
	just use that.
Packit Service fdd496
Packit Service fdd496
	* src/ifdef.c (next_line): Remove; replace with...
Packit Service fdd496
	(next_line0, next_line1): New vars.
Packit Service fdd496
	(print_ifdef_script, print_ifdef_hunk):
Packit Service fdd496
	Use them to fix line-number computation bug.
Packit Service fdd496
Packit Service fdd496
	* src/io.c (find_and_hash_each_line): Don't convert char *
Packit Service fdd496
	to unsigned char *; just leave pointers as char *.  This
Packit Service fdd496
	lessens the number of potentially-dangerous casts.
Packit Service fdd496
	* src/util.c (lines_differ): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c: Include <unlocked-io.h>, <exit.h>.
Packit Service fdd496
	(check_child_status): Renamed from ck_editor_status, and
Packit Service fdd496
	accept a new arg MAX_OK_STATUS.  All callers changed.
Packit Service fdd496
	Handle status 126/127 as per POSIX.
Packit Service fdd496
	(edit): Likewise.
Packit Service fdd496
	(main): Likewise.  Fix getopt typo: -E wasn't supported.
Packit Service fdd496
Packit Service fdd496
	* src/system.h (S_IRWXU, S_IRWXG, S_IRWXO): Define if not defined.
Packit Service fdd496
	(S_IXUSR, S_IXGRP, S_IXOTH): Remove.
Packit Service fdd496
	Include <time.h> unconditionally, since we can assume C89 now.
Packit Service fdd496
	Likewise for <stdlib.h>, <string.h>.
Packit Service fdd496
	(getenv, EXIT_SUCCESS, EXIT_FAILURE, SSIZE_MAX, strchr, strrchr,
Packit Service fdd496
	memcmp, memcpy): Remove decl; no longer needed.
Packit Service fdd496
	(strcasecoll, strcasecmp): Define if not built in.
Packit Service fdd496
	(CTYPE_DOMAIN, ISPRINT, ISSPACE, TOLOWER, _tolower, errno): Remove;
Packit Service fdd496
	we now assume C89 or better.  All uses changed.
Packit Service fdd496
	Include <stdbool.h> unconditionally now, since gnulib supports it
Packit Service fdd496
	if the C compiler doesn't.  All boolean uses of 0 and 1 now
Packit Service fdd496
	changed to false and true.
Packit Service fdd496
	(lin_is_printable_as_long_int): Renamed from lin_is_printable_as_long.
Packit Service fdd496
Packit Service fdd496
	* src/util.c (begin_output): Fix bug: 0 wasn't cast to char * arg,
Packit Service fdd496
	which led to undefined behavior on 64-bit hosts.
Packit Service fdd496
	Use more-standard test for exit status 126 versus 127.
Packit Service fdd496
	(finish_output): Likewise.
Packit Service fdd496
	(analyze_hunk): Do not cast bool to int.
Packit Service fdd496
Packit Service fdd496
2004-03-15  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (main): Don't consider two files with the same name to
Packit Service fdd496
	be the same, if their initial skip values differ.  This fixes a
Packit Service fdd496
	bug reported by Hideki Iwamoto in
Packit Service fdd496
	<http://mail.gnu.org/archive/html/bug-gnu-utils/2004-03/msg00024.html>.
Packit Service fdd496
Packit Service fdd496
2004-03-11  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c (diag): Return void, not lin, since the return
Packit Service fdd496
	value wasn't needed.  All callers changed.
Packit Service fdd496
	(diag, diff_2_files):
Packit Service fdd496
	Use 'true' and 'false' instead of '1' and '0', when appropriate.
Packit Service fdd496
	(compareseq): Use lin const * local variables instead of lin *.
Packit Service fdd496
	Don't bother checking diag's return value.
Packit Service fdd496
	(shift_boundaries, build_reverse_script, build_script, diff_2_files):
Packit Service fdd496
	Use char arrays, not bool arrays, since
Packit Service fdd496
	sizeof (bool) might be greater than 1.
Packit Service fdd496
Packit Service fdd496
2004-02-09  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* m4/setmode.m4 (AC_FUNC_SETMODE_DOS): AC_LIBOBJ(setmode) if
Packit Service fdd496
	we would return true.
Packit Service fdd496
Packit Service fdd496
2002-10-14  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (diff3.$(OBJEXT), diff.$(OBJEXT),
Packit Service fdd496
	sdiff.$(OBJEXT)): Rename from (misspelled) diff3.$(OBJECT),
Packit Service fdd496
	diff.$(OBJECT), sdiff.$(OBJECT).  Patch by Paul D. Smith in
Packit Service fdd496
	<http://mail.gnu.org/pipermail/bug-gnu-utils/2002-October/003251.html>.
Packit Service fdd496
	Bug reported by Chris Bainbridge.
Packit Service fdd496
Packit Service fdd496
2002-10-13  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (MOSTLYCLEANFILES): Add paths.ht.
Packit Service fdd496
	(paths.h): Send output to paths.ht first, and then rename to
Packit Service fdd496
	paths.h at the end.  This avoids problems if the disk is full.
Packit Service fdd496
	It also works around what appears to be a bug with GNU make -j
Packit Service fdd496
	(3.79.1); see <http://bugs.gentoo.org/show_bug.cgi?id=8934>.
Packit Service fdd496
Packit Service fdd496
2002-06-27  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.4.
Packit Service fdd496
Packit Service fdd496
	* config/config.sub: Sync with latest version maintained in other
Packit Service fdd496
	packages.
Packit Service fdd496
Packit Service fdd496
	* lib/file-type.h: Protect against double inclusion.  Detect
Packit Service fdd496
	whether <sys/stat.h> has been included.  Fix from Jim Meyering.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c (briefly_report): Don't say "Binary files differ",
Packit Service fdd496
	since one of the files may not be a binary file.
Packit Service fdd496
	Bug reported by Dan Jacobson.
Packit Service fdd496
Packit Service fdd496
2002-06-22  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.c (segv_handler, c_stack_action) [! defined
Packit Service fdd496
	SA_SIGINFO]: Do not assume SA_SIGINFO behavior.
Packit Service fdd496
	Bug reported by Jim Meyering on NetBSD 1.5.2.
Packit Service fdd496
Packit Service fdd496
2002-06-16  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.3.
Packit Service fdd496
Packit Service fdd496
	* config/depcomp, config/missing, README: Update to automake 1.6.2.
Packit Service fdd496
Packit Service fdd496
	* po/LINGUAS: Add en_US.
Packit Service fdd496
	* po/en_US.po: New file.
Packit Service fdd496
	* po/POTFILES.in: Remove lib/freesoft.c.
Packit Service fdd496
	Add lib/file-type.c, lib/version-etc.c, lib/xmalloc.c.
Packit Service fdd496
Packit Service fdd496
2002-06-15  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (Special Files): Document behavior of symlink
Packit Service fdd496
	loops.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Remove freesoft.h.
Packit Service fdd496
	Add version-etc.h.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Remove freesoft.c.  Add version-etc.c.
Packit Service fdd496
	* lib/freesoft.c, lib/freesoft.h: Remove.
Packit Service fdd496
	* lib/version-etc.h (PARAMS): Remove; we now assume C89 at least.
Packit Service fdd496
Packit Service fdd496
	* lib/version-etc.h (version_etc): Remove package and version args.
Packit Service fdd496
	(version_etc_copyright): Remove.
Packit Service fdd496
	* lib/version-etc.c: Likewise.
Packit Service fdd496
	Do not include unlocked-io.h; no longer needed.
Packit Service fdd496
	Include gettext.h rather than libinto.h.
Packit Service fdd496
	(_): Define unconditionally.
Packit Service fdd496
	(version_etc): Adjust wording to match current GNU coding standards.
Packit Service fdd496
	Translate "(C)" if possible.
Packit Service fdd496
Packit Service fdd496
	* lib/version-etc.c, lib/version-etc.h: New files, taken from
Packit Service fdd496
	fileutils.
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (cmp_SOURCES, diff3_SOURCES, sdiff_SOURCES,
Packit Service fdd496
	diff_SOURCES): Remove version.c.
Packit Service fdd496
	(MAINTAINERCLEANFILES, $(srcdir)/version.c): Remove.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Include version-etc.h, not freesoft.h.
Packit Service fdd496
	(copyright_notice): Remove.
Packit Service fdd496
	(main): Use version_etc to print version.
Packit Service fdd496
	* src/diff.c, src/diff3.c, src/sdiff.c: Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (version_string): Remove decl.
Packit Service fdd496
	* src/diff.h, src/diff3.c, src/sdiff.c: Likewise.
Packit Service fdd496
Packit Service fdd496
2002-06-11  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/fnmatch.c, lib/fnmatch_loop.c (WIDE_CHAR_SUPPORT):
Packit Service fdd496
	New macro.  Use it uniformly instead of
Packit Service fdd496
	(defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
Packit Service fdd496
	It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
Packit Service fdd496
	reported by Vin Shelton.
Packit Service fdd496
	* m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.2.
Packit Service fdd496
Packit Service fdd496
	* ABOUT-NLS, config/config.guess, config/config.sub,
Packit Service fdd496
	config/depcomp, config/texinfo.tex, lib/posix/regex.h,
Packit Service fdd496
	m4/c-bs-a.m4, m4/gettext.m4, m4/gnu-source.m4, m4/lib-link.m4,
Packit Service fdd496
	m4/malloc.m4:
Packit Service fdd496
	Update to recent version (maintained in other packages).
Packit Service fdd496
	* m4/prereq.m4 (jm_PREREQ_EXCLUSIVE): AC_FUNC_FNMATCH_GNU
Packit Service fdd496
	no longer takes a lib.
Packit Service fdd496
Packit Service fdd496
	* README: Incorporate contents from INSTALLME.
Packit Service fdd496
	* INSTALLME: Remove.
Packit Service fdd496
	* Makefile.am (EXTRA_DIST): Remove INSTALLME.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_GNU_SOURCE): Move up, so that it affects
Packit Service fdd496
	later compilations properly.
Packit Service fdd496
	(DEFAULT_DIFF_PROGRAM, AC_TYPE_SIGNAL): Remove.
Packit Service fdd496
	(jm_AC_TYPE_INTMAX_T): Add.
Packit Service fdd496
	(AC_FUNC_FNMATCH_GNU): Use this, instead of AC_FUNC_FNMATCH.
Packit Service fdd496
	(AC_CONFIG_LINKS): regex.hin renamed from regex_.h.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Reword "@option{-f} and @option{--foo}" to
Packit Service fdd496
	"@option{-f} or @option{--foo}".
Packit Service fdd496
	Use @acronym instead of @sc where appropriate.
Packit Service fdd496
	(Specified Lines): Renamed from Specified Folding.
Packit Service fdd496
	(Comparison, Blank Lines):
Packit Service fdd496
	Clarify wordings for Blank Lines and Specified Lines nodes.
Packit Service fdd496
	(Binary): Mention --verbose and --print-bytes.
Packit Service fdd496
	(Tabs, sdiff Option Summary, diff Options):
Packit Service fdd496
	New option --tabsize=COLUMNS.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (EXTRA_DIST): Add fnmatch_loop.c.
Packit Service fdd496
	(noinst_HEADERS): fnmatch_.h renamed from fnmatch.hin.
Packit Service fdd496
	regex_.h renamed from regex.hin.
Packit Service fdd496
	Add file-type.h.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Add file-type.c.
Packit Service fdd496
	(DISTCLEANFILES): Remove fnmatch.hno, regex.hno.
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.c (__attribute__): New macro.
Packit Service fdd496
	(EOVERFLOW): Define if not defined.
Packit Service fdd496
	(stack_t): Define to struct sigaltstack if not defined or declared.
Packit Service fdd496
	Include <sys/resource.h>, <ucontext.h> if available.
Packit Service fdd496
	Include <stdio.h> if DEBUG.
Packit Service fdd496
	Do not include <inttypes.h> or <stdint.h>.
Packit Service fdd496
	(c_stack_die): Remove info and context args.  All uses changed.
Packit Service fdd496
	(segv_action): Likewise.
Packit Service fdd496
	(alternate_signal_stack): Change uintmax_t to long, to ease porting.
Packit Service fdd496
	(get_stack_location, min_address_from_argv, max_address_from_argv,
Packit Service fdd496
	null_action): New functions.
Packit Service fdd496
	(stack_base, stack_size): New vars.
Packit Service fdd496
	(segv_handler): context arg may not be used.
Packit Service fdd496
	Use global stack_base, stack_size if
Packit Service fdd496
	! HAVE_XSI_STACK_OVERFLOW_HEURISTIC.
Packit Service fdd496
	Add debug code.
Packit Service fdd496
	Invoke die (rather than segv_action) to exit.
Packit Service fdd496
	(c_stack_action): Accept new argv arg, and simpler handler arg.
Packit Service fdd496
	All uses changed.  Move code into new functions above.
Packit Service fdd496
	Allow null action.
Packit Service fdd496
	[! (defined SA_ONSTACK && defined _SC_PAGESIZE)]: Assume all segvs
Packit Service fdd496
	are stack overflows.
Packit Service fdd496
	(main) [DEBUG]: Describe what output should be like.
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.h (siginfo_t, c_stack_die): Remove decl.
Packit Service fdd496
Packit Service fdd496
	* lib/file-type.c, lib/file-type.h: New files.  These contain code
Packit Service fdd496
	that was in src/diff.c, but is now librarified and spiffed up a
Packit Service fdd496
	bit.  Jim Meyering suggested this.
Packit Service fdd496
Packit Service fdd496
	* lib/fnmatch.c (alloca, __builtin_expect): Define for non-GCC hosts.
Packit Service fdd496
	<strings.h>: Include only if HAVE_STRINGS_H.
Packit Service fdd496
	<stddef.h>: Include if we include stdlib.h.
Packit Service fdd496
	Do not comment out all code if ! HAVE_FNMATCH_GNU.
Packit Service fdd496
	(getenv): Do not declare if HAVE_DECL_GETENV.
Packit Service fdd496
	(__strchrnul, __wcschrnul): Remove; not used.
Packit Service fdd496
	(MEMPCPY): Use mempcpy if not _LIBC; use memcpy if neither _LIBC
Packit Service fdd496
	nor HAVE_MEMPCPY.
Packit Service fdd496
	(FOLD) [HANDLE_MULTIBYTE]: Do not pass wide char to ISUPPER.
Packit Service fdd496
	(STRLEN, STRCAT, MEMPCPY) [HANDLE_MULTIBYTE && !defined _LIBC]:
Packit Service fdd496
	Use wcslen rather than __wcslen, and likewise for wcscat, wmempcpy.
Packit Service fdd496
	(MEMPCPY) [HANDLE_MULTIBYTE]: Use wmempcpy if not _LIBC; use wmemcpy
Packit Service fdd496
	if neither _LIBC nor HAVE_WMEMPCPY.
Packit Service fdd496
	* lib/fnmatch_.h (__const): Do not define to empty, as this breaks
Packit Service fdd496
	Sun cc.  The code doesn't work with K&R anyway.
Packit Service fdd496
	* lib/fnmatch_loop.c (struct patternlist.str): Size 1, not 0,
Packit Service fdd496
	as C89 requires this.
Packit Service fdd496
	(NEW_PATTERN): Use offsetof, not sizeof, since str now has size 1.
Packit Service fdd496
	* lib/fnmatch_.h: Import from glibc fnmatch.h.
Packit Service fdd496
	* lib/fnmatch.c, lib/fnmatch_loop.c: Import from glibc.
Packit Service fdd496
Packit Service fdd496
	* lib/posixver.c: Include posixver.h.
Packit Service fdd496
Packit Service fdd496
	* lib/regex_.h: Renamed from lib/regex.hin.
Packit Service fdd496
Packit Service fdd496
	* m4/c-stack.m4 (jm_PREREQ_C_STACK): Do not AC_REQUIRE
Packit Service fdd496
	jm_AC_TYPE_UINTMAX_T and do not use uintmax_t.
Packit Service fdd496
	Check for sys/resource.h, uccontext.h.
Packit Service fdd496
	Check for decls and existence of getcontext, sigaltstack.
Packit Service fdd496
	Check for stack_t.
Packit Service fdd496
Packit Service fdd496
	* m4/codeset.m4, m4/glibc21.m4, m4/lcmessage.m4: Remove.
Packit Service fdd496
Packit Service fdd496
	* m4/fnmatch.m4: Update to latest Autoconf CVS for AC_FUNC_FNMATCH_GNU.
Packit Service fdd496
	* m4/gnu-source.m4: Likewise, for AC_GNU_SOURCE (renamed from
Packit Service fdd496
	AC__GNU_SOURCE).
Packit Service fdd496
Packit Service fdd496
	* m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Renamed from AC_MBSTATE_T.
Packit Service fdd496
	All uses changed.  Upgrade to recent Autoconf CVS.
Packit Service fdd496
Packit Service fdd496
	* m4/stdbool.m4 (AC_HEADER_STDBOOL): Do not cast pointer to
Packit Service fdd496
	bool in integer constant expression; C99 does not allow it.
Packit Service fdd496
	Reported by Bruno Haible.
Packit Service fdd496
Packit Service fdd496
	* po/LINGUAS: Add hu, pt_BR.
Packit Service fdd496
	* po/hu.po, po/pt_BR.po: New files.
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (noinst_HEADERS): Remove diff.h.
Packit Service fdd496
	(DEFS): Remove.
Packit Service fdd496
	(diff_sources): Add diff.h.
Packit Service fdd496
	(MOSTLYCLEANFILES): New macro.
Packit Service fdd496
	(cmp.$(OBJEXT) diff3.$(OBJECT) diff.$(OBJECT) sdiff.$(OBJECT)): Depend
Packit Service fdd496
	on paths.h.
Packit Service fdd496
	(paths.h): New rule.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c, src/cmp.c, src/diff.c, src/diff3.c, src/io.c,
Packit Service fdd496
	src/sdiff.c: Include <file-type.h>.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Include paths.h.
Packit Service fdd496
	(copyright_notice): Renamed from copyright_string.
Packit Service fdd496
	Now a msgid, so that copyright symbol can be translated.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
	* src/diff.c, src/diff3.c, src/sdiff.c: Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c: Include posixver.h.
Packit Service fdd496
	(TABSIZE_OPTION): New constant.
Packit Service fdd496
	(main): Allow widths up to SIZE_MAX.
Packit Service fdd496
	(filetype): Move to lib/file-type.c and rename to file_type.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (longopts, main, usage): New option --tabsize=COLUMNS.
Packit Service fdd496
	* src/io.c (find_and_hash_each_line): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/diff.h (TAB_WIDTH): Remove.
Packit Service fdd496
	(tabsize): New decl.
Packit Service fdd496
	(sdiff_half_width, sdiff_column2_offset): Now size_t rather than
Packit Service fdd496
	unsigned int.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c (skipwhite, readnum): New functions.
Packit Service fdd496
	(process_diff_control): Use them.
Packit Service fdd496
	(SKIPWHITE, READNUM): Remove.
Packit Service fdd496
	(read_diff): Don't worry about errno == ENOEXEC.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (catchsig, signal_handler, initial_action): Signal
Packit Service fdd496
	handlers return void, not RETSIGTYPE, since we no longer support
Packit Service fdd496
	K&R.
Packit Service fdd496
	(TABSIZE_OPTION): New constant.
Packit Service fdd496
	(longopts, usage, main): New option --tabsize=COLUMNS.
Packit Service fdd496
	(cleanup): New arg signo.  All uses changed.
Packit Service fdd496
	(ck_editor_status, main, edit): Don't worry about ENOEXEC.
Packit Service fdd496
Packit Service fdd496
	* src/side.c (tab_from_to, print_half_line, print_1sdiff_line):
Packit Service fdd496
	New option --tabsize=COLUMNS.
Packit Service fdd496
Packit Service fdd496
	* src/system.h (S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISREG,
Packit Service fdd496
	S_ISSOCK): Remove; now in lib/file-type.h.
Packit Service fdd496
Packit Service fdd496
	* src/util.c (finish_output): Check for ENOEXEC.
Packit Service fdd496
	(lines_differ, output_1_line): New option --tabsize=COLUMNS.
Packit Service fdd496
	(analyze_hunk): If -b or -w is also specified, -B now considers
Packit Service fdd496
	lines to be empty if they contain only white space.
Packit Service fdd496
Packit Service fdd496
2002-04-05  Paul Eggert  <eggert@sic.twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.1.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_HEADER_STDBOOL): Add.
Packit Service fdd496
	(AC_CHECK_HEADERS): Remove stdbool.h.
Packit Service fdd496
	* m4/stdbool.m4: New file.
Packit Service fdd496
	* m4/prereq.m4 (jm_PREREQ_EXCLUDE):
Packit Service fdd496
	Use AC_HEADER_STDBOOL rather than AC_CHECK_HEADERS(stdbool.h).
Packit Service fdd496
	(jm_PREREQ_HASH): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/system.h (SSIZE_MAX): Define if limits.h doesn't.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c (diff_2_files): Assign PTRDIFF_MAX - 1 to a
Packit Service fdd496
	size_t variable, just in case there's a problem with ptrdiff_t
Packit Service fdd496
	versus size_t.
Packit Service fdd496
Packit Service fdd496
	* lib/cmpbuf.c (errno): Remove decl; K&R C is no longer supported.
Packit Service fdd496
	Include limits.h.
Packit Service fdd496
	(SIZE_MAX, SSIZE_MAX): Define if standard headers don't.
Packit Service fdd496
	(MIN): New macro.
Packit Service fdd496
	(block_read): Do not attempt to read more than SSIZE_MAX bytes, as the
Packit Service fdd496
	resulting behavior is implementation-defined.  Work around bug in
Packit Service fdd496
	Tru64 5.1, which can't read more than INT_MAX bytes at a time.
Packit Service fdd496
	* src/cmp.c (cmp): Use block_read instead of read, to work
Packit Service fdd496
	around Tru64 5.1 bug.
Packit Service fdd496
	* src/diff3.c (read_diff): Likewise.
Packit Service fdd496
	* src/diff3.c: Include cmpbuf.h.
Packit Service fdd496
Packit Service fdd496
	* THANKS: Add Ulrich Drepper.
Packit Service fdd496
Packit Service fdd496
	* INSTALLME: Mention GNU texinfo.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi:
Packit Service fdd496
	Use new @copying directive.
Packit Service fdd496
	Put @contents first, not last, since Texinfo now suggests this.
Packit Service fdd496
	Fix bug in -w documentation noted by Karl Berry.
Packit Service fdd496
	Mention links for speedup.
Packit Service fdd496
	New node "Speedups" for future speedups.
Packit Service fdd496
	Just say "Index", not "Concept Index".
Packit Service fdd496
Packit Service fdd496
2002-03-26  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am:
Packit Service fdd496
	(INCLUDES): Remove this obsolete macro,	replacing it with:
Packit Service fdd496
	(AM_CPPFLAGS): New macro.
Packit Service fdd496
Packit Service fdd496
2002-03-26  Albert Chin-A-Young  <china@thewrittenword.com>
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (datadir): Remove, as it conflicts with --datadir.
Packit Service fdd496
Packit Service fdd496
2002-03-26  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (dircategory GNU packages): Fix typo: a "* " was
Packit Service fdd496
	missing before the menu entry.  Bug diagnosed by Adam Heath.
Packit Service fdd496
	Also, put this dircategory after the Individual utilities dircategory,
Packit Service fdd496
	to work around a compatibility problem with Debian install-info.
Packit Service fdd496
Packit Service fdd496
2002-03-24  Eli Zaretskii  <eliz@is.elta.co.il>
Packit Service fdd496
Packit Service fdd496
	* src/io.c (sip): Do not mishandle buffered count when reverting
Packit Service fdd496
	to text mode.
Packit Service fdd496
Packit Service fdd496
2002-03-23  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.8.
Packit Service fdd496
	* configure.ac (AC_PREREQ): 2.53.
Packit Service fdd496
	* INSTALLME: Upgrade to gettext 0.11.1 and help2man 1.27.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Upgrade the description of `patch' to GNU patch
Packit Service fdd496
	2.5.4, and revamp the documentation accordingly.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (main): Fix typo that prevented diff -y from working.
Packit Service fdd496
	Bug reported by Mitsuru Chinen.
Packit Service fdd496
Packit Service fdd496
2002-03-15  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.c (c_stack_die) [!HAVE_SIGINFO_T]: Don't use info.
Packit Service fdd496
	Bug reported by Eli Zaretskii.
Packit Service fdd496
Packit Service fdd496
2002-03-15  Eli Zaretskii  <eliz@is.elta.co.il>
Packit Service fdd496
Packit Service fdd496
	* ms/config.sed: Tweak editing of install-info-am target.
Packit Service fdd496
Packit Service fdd496
2002-03-12  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.7.10.
Packit Service fdd496
Packit Service fdd496
	* NEWS: cmp -l -s and cmp -s -l are not allowed.
Packit Service fdd496
	Deprecate diff -h, -H, -L, -P, --inhibit-hunk-merge.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (jm_PREREQ_HARD_LOCALE): Add.
Packit Service fdd496
	(AM_INIT_AUTOMAKE): Do not distribute shar file.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (Overview): byte != character.
Packit Service fdd496
	(Detailed Context, Detailed Unified, Alternate Names, diff Options):
Packit Service fdd496
	Do not document diff -L.
Packit Service fdd496
	(Comparing Directories, Making Patches, diff Options):
Packit Service fdd496
	Do not document diff -P.
Packit Service fdd496
	(diff Performance, sdiff Option Summary, diff Options, sdiff Options):
Packit Service fdd496
	Do not document diff -H.
Packit Service fdd496
	(diff Performance, diff Options): Do not document --horizon-lines.
Packit Service fdd496
	(cmp Options): Prefer -b to -c.
Packit Service fdd496
	(cmp Options, diff Options, diff3 Options, patch Options,
Packit Service fdd496
	sdiff Options): Put short options next to the similar long options.
Packit Service fdd496
	Document --help, and use the same wording for --verbose.
Packit Service fdd496
	(diff3 Options): Fix typo in description of -E, which used wrongly used
Packit Service fdd496
	"-e" instead of "-E".
Packit Service fdd496
Packit Service fdd496
	* lib/hard-locale.c (alloca): Remove.
Packit Service fdd496
	Include stdlib.h if available, for malloc.
Packit Service fdd496
	(hard_locale): Use malloc, not alloca, so that we need not worry about
Packit Service fdd496
	alloca issues.  Test for storage allocation failure.
Packit Service fdd496
Packit Service fdd496
	* m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HARD_LOCALE.
Packit Service fdd496
	(jm_PREREQ_HARD_LOCALE): New macro.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (specify_comparison_type): New function.
Packit Service fdd496
	(check_stdout): "indices and codes" -> "byte numbers and values"
Packit Service fdd496
	(main): Detect clashing options.
Packit Service fdd496
	(cmp): Use "byte" rather than "char" if a translation for "byte"
Packit Service fdd496
	is available, even when in the POSIX locale.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (option_help_msgid): Do not document -L, -P,
Packit Service fdd496
	--horizon-lines, --inhibit-hunk-merge, -H.
Packit Service fdd496
	* src/diff.h: -L -> --label
Packit Service fdd496
Packit Service fdd496
2002-03-11  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT): Version 2.7.9.
Packit Service fdd496
Packit Service fdd496
	* INSTALLME: Update to autoconf 2.53, automake 1.6, help2man
Packit Service fdd496
	1.25 with patch.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_INIT):
Packit Service fdd496
	Change package name from diff to diffutils.
Packit Service fdd496
	(AM_INIT_AUTOMAKE): Use new form, with option gnits,
Packit Service fdd496
	rather than old from that duplicated AC_INIT.
Packit Service fdd496
	(AM_MISSING_PROG): Add help2man.
Packit Service fdd496
	(REGEX_MALLOC): Define.
Packit Service fdd496
	(AC_CONFIG_FILES): Add man/Makefile.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (AUTOMAKE_OPTIONS): Remove.
Packit Service fdd496
	* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove.
Packit Service fdd496
	* lib/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
Packit Service fdd496
	* ms/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
Packit Service fdd496
	* src/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.c: Include <errno.h>
Packit Service fdd496
	(ENOTSUP): Define if errno.h doesn't.
Packit Service fdd496
	(SA_NODEFER, SA_ONSTACK, SA_RESETHAND, SA_SIGINFO, SIGSTKSZ,
Packit Service fdd496
	_SC_PAGESIZE, ALTERNATE_STACK_SIZE, stack_t, sigaltstack):
Packit Service fdd496
	Remove; we now assume them all when
Packit Service fdd496
	HAVE_XSI_STACK_OVERFLOW_HEURISTIC, so we don't need
Packit Service fdd496
	substitutes.
Packit Service fdd496
	(<ucontext.h>): Include only if HAVE_XSI_STACK_OVERFLOW_HEURISTIC.
Packit Service fdd496
	(alternate_signal_stack): Now of size SIGSTKSZ.
Packit Service fdd496
	(segv_handler): Simplify, under the assumption that
Packit Service fdd496
	HAVE_XSI_STACK_OVERFLOW_HEURISTIC is nonzero.
Packit Service fdd496
	(c_stack_action): Likewise.
Packit Service fdd496
	(exit_failure) [DEBUG]: Initialize to 0, not 1.
Packit Service fdd496
	(recurse, main) [DEBUG]: Remove main args.
Packit Service fdd496
Packit Service fdd496
	* m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Change
Packit Service fdd496
	wording of message.  Do not check for stdbool.h or ucontext.h,
Packit Service fdd496
	or for ucontext_t or sigaction or sigaltstack.
Packit Service fdd496
Packit Service fdd496
	* po/LINGUAS: Add zh_TW.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (SUBDIRS): Add man.
Packit Service fdd496
	* man/Makefile.am: New file.
Packit Service fdd496
	* src/cmp.c (usage): Reword for help2man.
Packit Service fdd496
	* src/diff.c (option_help_msgid): Likewise.
Packit Service fdd496
	* src/diff3.c (option_help_msgid, usage): Likewise.
Packit Service fdd496
	* src/sdiff3.c (option_help_msgid, usage): Likewise.
Packit Service fdd496
	Reword for help2man.
Packit Service fdd496
Packit Service fdd496
	* THANKS: Add email address for Tower.
Packit Service fdd496
Packit Service fdd496
	* config/config.guess, config/config.sub, config/depcomp,
Packit Service fdd496
	config/install-sh, config/mdate-sh, config/missing,
Packit Service fdd496
	config/mkinstalldirs, config/texinfo.tex: Update
Packit Service fdd496
	to recent version (maintained in other packages).
Packit Service fdd496
Packit Service fdd496
2002-03-04  Bruno Haible <haible@ilog.fr>
Packit Service fdd496
Packit Service fdd496
	* m4/gettext.m4 (AM_GNU_GETTEXT): Set LIBINTL and LTLIBINTL to empty if
Packit Service fdd496
	no preinstalled GNU gettext was found.
Packit Service fdd496
Packit Service fdd496
2002-03-02  Eli Zaretskii  <eliz@is.elta.co.il>
Packit Service fdd496
Packit Service fdd496
	* ms/config.sed: Tweak editing of install-info-am and
Packit Service fdd496
	uninstall-info-am targets, to include 8+3-butchered names of Info
Packit Service fdd496
	files.
Packit Service fdd496
Packit Service fdd496
2002-02-28  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT, AM_INIT_AUTOMAKE): Version 2.7.8.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Add vr index.
Packit Service fdd496
	Update copyright to 2002.
Packit Service fdd496
	(Standards conformance): New chapter.
Packit Service fdd496
	(Binary): Differing binary files are trouble unless the user asked for
Packit Service fdd496
	brief output.
Packit Service fdd496
	(Detailed Context): Prefer ISO timestamp format in discussion.
Packit Service fdd496
	(Detailed Unified, Pagination): Likewise.
Packit Service fdd496
	(Less Context): Likewise.  Also use short option.
Packit Service fdd496
	(Alternate Names): Separate option from arg.
Packit Service fdd496
	(Making Patches): Mention -U 2.
Packit Service fdd496
	(diff Options): Deprecate -LINES, as POSIX 1003.1-2001 does not
Packit Service fdd496
	allow it.
Packit Service fdd496
Packit Service fdd496
	* INSTALLME: Update advice for Solaris installation problems.
Packit Service fdd496
	We no longer use a test version of gettext.
Packit Service fdd496
	Autoconf test version updated from 2.52f to 2.52h.
Packit Service fdd496
	POSIX 1003.1-2001 patch for Automake.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC__GNU_SOURCE): Add this,
Packit Service fdd496
	replacing AH_VERBATIM of _GNU_SOURCE.
Packit Service fdd496
	(tempname): Use AC_LIBOBJS, not LIBOBJS=, as now required by autoconf.
Packit Service fdd496
	(jm_PREREQ_C_STACK): Add.
Packit Service fdd496
	(AC_CONFIG_FILES): Remove intl/Makefile.
Packit Service fdd496
	(AM_GNU_GETTEXT): Add external arg, from gettext 0.11.
Packit Service fdd496
Packit Service fdd496
	* lib/c-stack.c, lib/c-stack.h, lib/exitfail.c, lib/exitfail.h,
Packit Service fdd496
	lib/posixver.c, lib/posixver.h, m4/c-stack.m4, m4/gnu-source.m4,
Packit Service fdd496
	po/cs.po, po/ja.po: New files.
Packit Service fdd496
Packit Service fdd496
	* intl/ChangeLog, intl/Makefile.in, intl/VERSION,
Packit Service fdd496
	intl/bindtextdom.c, intl/config.charset, intl/dcgettext.c,
Packit Service fdd496
	intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c,
Packit Service fdd496
	intl/dngettext.c, intl/explodename.c, intl/finddomain.c,
Packit Service fdd496
	intl/gettext.c, intl/gettextP.h, intl/gmo.h, intl/hash-string.h,
Packit Service fdd496
	intl/intl-compat.c, intl/l10nflist.c, intl/libgnuintl.h,
Packit Service fdd496
	intl/loadinfo.h, intl/loadmsgcat.c, intl/localcharset.c,
Packit Service fdd496
	intl/locale.alias, intl/localealias.c, intl/localename.c,
Packit Service fdd496
	intl/ngettext.c, intl/os2compat.c, intl/os2compat.h, intl/osdep.c,
Packit Service fdd496
	intl/plural-eval.c, intl/plural-exp.c, intl/plural-exp.h,
Packit Service fdd496
	intl/plural.c, intl/plural.y, intl/ref-add.sin, intl/ref-del.sin,
Packit Service fdd496
	intl/textdomain.c, m4/isc-posix.m4, m4/libtool.m4: Remove.
Packit Service fdd496
Packit Service fdd496
	* ABOUT-NLS: Update to Gettext 0.11.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (SUBDIRS): Remove intl.
Packit Service fdd496
Packit Service fdd496
	* config/config.guess, config/config.rpath, config/config.sub,
Packit Service fdd496
	config/texinfo.tex, config/depcomp, config/texinfo.tex,
Packit Service fdd496
	lib/tempname.c: Update to latest version from other packages.
Packit Service fdd496
Packit Service fdd496
	* lib/xalloc.h (xalloc_exit_failure): Remove; subsumed by exit_failure.
Packit Service fdd496
	* lib/xmalloc.c: Include exitfail.h.
Packit Service fdd496
	(xalloc_exit_failure): Remove; subsumed by exit_failure.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Add c-stack.h, exitfail.h.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Add c-stack.c, exitfail.c, quotesys.c.
Packit Service fdd496
	(INCLUDES): Remove.
Packit Service fdd496
Packit Service fdd496
	* lib/cmpbuf.h (buffer_lcm): New arg LCM_MAX.
Packit Service fdd496
	* lib/cmpbuf.c: Include errno.h.
Packit Service fdd496
	(errno): Declare if !STDC_HEADERS.
Packit Service fdd496
	Include signal.h.
Packit Service fdd496
	(SA_RESTART): Define if not already defined.
Packit Service fdd496
	Include <inttypes.h>.
Packit Service fdd496
	(PTRDIFF_MAX): Define if not already defined.
Packit Service fdd496
	(TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Likewise.
Packit Service fdd496
	(block_read): Accommodate ancient AIX hosts that set errno to EINTR
Packit Service fdd496
	after uncaught SIGCONT.
Packit Service fdd496
	(buffer_lcm): Return a reasonable size if the multiple is too large.
Packit Service fdd496
	New arg LCM_MAX.  All callers changed.
Packit Service fdd496
Packit Service fdd496
	* lib/hard-locale.c: Include "hard-locale.h".
Packit Service fdd496
	(hard_locale): Ignore ENABLE_NLS, since we want to operate on
Packit Service fdd496
	locales other than LC_MESSAGES.
Packit Service fdd496
Packit Service fdd496
	* m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_POSIXVER.
Packit Service fdd496
	(jm_PREREQ_POSIXVER): New macro.
Packit Service fdd496
Packit Service fdd496
	* m4/setmode.m4 (AC_FUNC_SETMODE_DOS):
Packit Service fdd496
	Check for fcntl.h and unistd.h unconditionally.
Packit Service fdd496
	Suggested by Bruno Haible.
Packit Service fdd496
Packit Service fdd496
	* po/LINGUAS: Add cs, ja.
Packit Service fdd496
	* po/POTFILES.in: Add lib/c-stack.c, src/dir.c.
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (datadir): @DATADIRNAME@ -> share.
Packit Service fdd496
	(INCLUDES): Remove intl.
Packit Service fdd496
	(LDADD): Change INTLLIBS to LIBINTL.
Packit Service fdd496
	No longer need to link libdiffutils.a twice.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c (diff_2_files):
Packit Service fdd496
	Avoid arithmetic overflow in buffer size calculation.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Include c-stack.h, exitfail.h.
Packit Service fdd496
	(hard_locale_LC_MESSAGES): Depend on ENABLE_NLS.
Packit Service fdd496
	(try_help, check_stdout, main, cmp): 2 -> EXIT_TROUBLE.
Packit Service fdd496
	(main): Check for stack overflow.
Packit Service fdd496
	0 -> EXIT_SUCCESS.
Packit Service fdd496
	1 -> EXIT_FAILURE.
Packit Service fdd496
	(cmp): Likewise.
Packit Service fdd496
	Accommodate ancient AIX hosts that set errno to
Packit Service fdd496
	EINTR after uncaught SIGCONT.
Packit Service fdd496
Packit Service fdd496
	* src/context.c (pr_context_hunk):
Packit Service fdd496
	Do not dump core if an enormous context causes an
Packit Service fdd496
	arithmetic overflow.
Packit Service fdd496
	(pr_unidiff_hunk): Likewise.
Packit Service fdd496
	(find_hunk): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/diff.h: unsigned -> unsigned int.
Packit Service fdd496
	* src/diff.c: Include c-stack.h, exitfail.h.
Packit Service fdd496
	Do not include signal.h.
Packit Service fdd496
	(specify_style, specify_value): Bring these routines back, as POSIX
Packit Service fdd496
	requires that the order of options not matter.
Packit Service fdd496
	(shortopts): New constant.
Packit Service fdd496
	(group_format_option, line_format_option): New constants.
Packit Service fdd496
	(main): 0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 -> EXIT_TROUBLE.
Packit Service fdd496
	Ensure that order of options does not matter.
Packit Service fdd496
	Check for stack overflow.
Packit Service fdd496
	If contexts overflow, substitute LIN_MAX, as that's good enough.
Packit Service fdd496
	If multiple contexts are specified, use their maximum.
Packit Service fdd496
	-c is equivalent to -C 3 now, instead of having an implicit context;
Packit Service fdd496
	likewise for -u and -U 3.
Packit Service fdd496
	Use specify_style and specify_value.
Packit Service fdd496
	(SIGCHLD): Do not define; now done in a header.
Packit Service fdd496
	Use new style timestamp format for -u / -U.
Packit Service fdd496
	Reject numeric-string options if operating in POSIX 1003.1-2001 mode.
Packit Service fdd496
	Avoid overflow problems with tab width.
Packit Service fdd496
	Simplify from-file and to-file code.
Packit Service fdd496
	(usage): Do not mention obsolete options.
Packit Service fdd496
	(filetype): Do not mention whether a file is executable.
Packit Service fdd496
	Add typed memory objects.
Packit Service fdd496
	(compare_files): 0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 ->
Packit Service fdd496
	EXIT_TROUBLE.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c: Include c-stack.h, exitfail.h.
Packit Service fdd496
	(ALLOCATE): Remove.  All uses changed to xmalloc, or to xmalloc plus
Packit Service fdd496
	an overflow check.
Packit Service fdd496
	(myread): Remove.
Packit Service fdd496
	(main): Check for stack overflow.
Packit Service fdd496
	0 -> EXIT_SUCCESS, 1 -> EXIT_FAIULRE, 2 -> EXIT_TROUBLE.
Packit Service fdd496
	(try_help): Likewise.
Packit Service fdd496
	(process_diff): Check for integer overflow, to avoid core dumps.
Packit Service fdd496
	2 -> EXIT_TROUBLE.
Packit Service fdd496
	(read_diff): Exit with status 126 if the file is not executable,
Packit Service fdd496
	for compatibility with POSIX 1003.1-2001.
Packit Service fdd496
	Accommodate ancient AIX hosts that set errno to EINTR after uncaught
Packit Service fdd496
	SIGCONT.
Packit Service fdd496
	Check for integer overflow to avoid core dumps.
Packit Service fdd496
	(fatal, perror_with_exit): 2 -> EXIT_TROUBLE.
Packit Service fdd496
Packit Service fdd496
	* src/dir.c (dir_read):
Packit Service fdd496
	Ignore st_size of directories: POSIX says it's garbage.
Packit Service fdd496
	Check for integer overflow to avoid core dumps.
Packit Service fdd496
	(diff_dirs): 0 -> EXIT_SUCCESS, 2 -> EXIT_TROUBLE.
Packit Service fdd496
Packit Service fdd496
	* src/ifdef.c: Include <xalloc.h>.
Packit Service fdd496
	(format_group, print_ifdef_lines): Avoid core dumps with bad formats.
Packit Service fdd496
	(do_printf_spec): Avoid alloca.
Packit Service fdd496
Packit Service fdd496
	* src/io.c (sip):
Packit Service fdd496
	Avoid integer overflow and core dumps if buffer alignments are
Packit Service fdd496
	preposterously incompatible.
Packit Service fdd496
	(slurp): Do not dump core if the file is growing as we read it.
Packit Service fdd496
	If a regular file grows, keep reading until we catch up with its EOF.
Packit Service fdd496
	(find_and_hash_each_line): Check for integer overflow to avoid cores.
Packit Service fdd496
	(GUESS_LINES): Remove.
Packit Service fdd496
	(guess_lines): New function.  Avoid integer overflow.
Packit Service fdd496
	(find_identical_ends): Use it.
Packit Service fdd496
	Avoid integer overflow and possible core dumps.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c: Include c-stack.h, exitfail.h.  Do not include signal.h.
Packit Service fdd496
	0 -> EXIT_SUCCESS, 1 -> EXIT_FAILURE, 2 -> EXIT_TROUBLE.
Packit Service fdd496
	(ck_editor_status): New function.
Packit Service fdd496
	(main): Check for stack overflow.
Packit Service fdd496
	Adopt POSIX convention for subsidiary programs not found.
Packit Service fdd496
	(diffarg): Check for integer overflow to avoid core dumps.
Packit Service fdd496
	(trapsigs): Remove SA_INTERRUPT special case; now done by header.
Packit Service fdd496
	(SIGCHLD): Likewise.
Packit Service fdd496
	(edit): Adopt POSIX convention for subsidiary programs not found.
Packit Service fdd496
Packit Service fdd496
	* src/side.c: unsigned -> unsigned int.
Packit Service fdd496
Packit Service fdd496
	* src/system.h: Don't use alloca or include <alloca.h>.
Packit Service fdd496
	unsigned -> unsigned int
Packit Service fdd496
	(EXIT_SUCCESS, EXIT_FAILURE, EXIT_TROUBLE): Define if not defined.
Packit Service fdd496
	Include signal.h.
Packit Service fdd496
	(SA_RESTART): Define if not defined.
Packit Service fdd496
	(SIGCHLD): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/util.c: 2 -> EXIT_TROUBLE.
Packit Service fdd496
	Adopt POSIX convention for ENOEXEC and exit status 126.
Packit Service fdd496
	unsigned -> unsigned int
Packit Service fdd496
Packit Service fdd496
2002-01-24  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AC_INIT, AM_INIT_AUTOMAKE): Version 2.7.7.
Packit Service fdd496
Packit Service fdd496
	* intl/plural.c: Regenerate with Bison 1.31.
Packit Service fdd496
Packit Service fdd496
	* ABOUT-NLS, intl/*: Update to Gettext 0.11-pre5++.
Packit Service fdd496
	* INSTALL: Update to Autoconf 2.52f.
Packit Service fdd496
Packit Service fdd496
	* INSTALLME: New file.
Packit Service fdd496
	* Makefile.am (EXTRA_DIST): Add config/config.rpath, INSTALLME.
Packit Service fdd496
	(DISTCLEANFILES): Remove.
Packit Service fdd496
	* NEWS: Reformat for imminent 2.8 release.
Packit Service fdd496
	* README: Mention INSTALLME.
Packit Service fdd496
	* README-alpha: Move most of contents to INSTALLME.
Packit Service fdd496
	* THANKS: Add Bruno Haible, Jim Meyering, and Eli Zaretskii.
Packit Service fdd496
Packit Service fdd496
	* config: New subdirectory, containing the following files from .:
Packit Service fdd496
	config.guess, config.sub, depcomp, missing, install-sh, mkinstalldirs.
Packit Service fdd496
	Move the following files here from doc: texinfo.tex, mdate-sh.
Packit Service fdd496
	* config/config.guess, config/config.sub, config/texinfo.tex:
Packit Service fdd496
	Update to latest version from FSF.
Packit Service fdd496
	* config/config.rpath: New file, from Gettext 0.11-pre5++.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_INIT): Use new 3-arg form.
Packit Service fdd496
	(AC_CONFIG_SRCDIR): Specify src/diff.c here, not in AC_INIT.
Packit Service fdd496
	(ALL_LINGUAS): Remove: now in po/LINGUAS as per Gettext 0.11.
Packit Service fdd496
	(AC_CONFIG_AUX_DIR): New macro invocation.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Add gettext.h.
Packit Service fdd496
	* lib/gettext.h: New file, from Gettext 0.11-pre5++.
Packit Service fdd496
	* lib/prepargs.c: Include <string.h>.  Reported by Bruno Haible.
Packit Service fdd496
Packit Service fdd496
	* m4/codeset.m4, m4/gettext.m4, glibc21.m4, iconv.m4, isc-posix.m4,
Packit Service fdd496
	lcmessage.m4, progtest.m4: Upgrade to Gettext 0.11-pre5++.
Packit Service fdd496
	* m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: New files, from
Packit Service fdd496
	Gettext 0.11-pre5++.
Packit Service fdd496
Packit Service fdd496
	* po/LINGUAS: New file.
Packit Service fdd496
	* po/Makefile.in.in: Upgrade to Gettext 0.11-pre5++.
Packit Service fdd496
	* po/Makevars, po/Rules-quot, po/boldquot.sed: New files,
Packit Service fdd496
	from Gettext 0.11-pre5++.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (copyright_string): Update to 2002.
Packit Service fdd496
	* src/diff.c (copyright_string): Likewise.
Packit Service fdd496
	* src/diff3.c (copyright_string): Likewise.
Packit Service fdd496
	* src/sdiff.c (copyright_string): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (specify_ignore_initial): Renamed from
Packit Service fdd496
	parse_ignore_initial, with different signature, to take the
Packit Service fdd496
	maximum of multiple options rather than the last one.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (bytes, specify_ignore_initial, cmp): Use UINTMAX_MAX
Packit Service fdd496
	instead of (uintmax_t) -1, to avoid warnings on some compilers.
Packit Service fdd496
	* src/io.c (file_block_read): Likewise, for SIZE_MAX.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (usage): Reformat messages to ease translation.
Packit Service fdd496
	* src/diff3.c (usage): Likewise.
Packit Service fdd496
	* src/sdiff.c (usage): Likewise.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (main): Two files with the same name are identical
Packit Service fdd496
	only if the same offset is specified.
Packit Service fdd496
	(block_compare_and_count): Avoid cast to unsigned char.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c (main): Remove unused variable.
Packit Service fdd496
Packit Service fdd496
	* src/dir.c: Include <setjmp.h>
Packit Service fdd496
	(struct dirdata): New member nnames.
Packit Service fdd496
	(locale_specific_sorting, failed_strcoll): New vars.
Packit Service fdd496
	(dir_read): Renamed from dir_sort.  Don't sort the dir.
Packit Service fdd496
	Set new nnames member of struct dirdata.  All callers changed.
Packit Service fdd496
	(compare_names): Don't check for errno after strcasecmp.
Packit Service fdd496
	Use strcoll only if locale_specific_sorting is nonzero.
Packit Service fdd496
	If strcoll fails, longjmp out rather than returning a value
Packit Service fdd496
	that might result in an invalid comparison function that might
Packit Service fdd496
	make qsort dump core.
Packit Service fdd496
	(diff_dirs): Sort the directory ourselves.  Use setjmp to recover
Packit Service fdd496
	from strcoll failure, falling back on native byte comparison.
Packit Service fdd496
	Make local variables volatile if they need to preserve their value
Packit Service fdd496
	after setjmp/longjmp.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (handler_index_of_SIGINT, handler_index_of_SIGPIPE):
Packit Service fdd496
	New macros.
Packit Service fdd496
	(main): Do not confuse signal numbers with their indices.
Packit Service fdd496
	Bug reported by Bruno Haible.
Packit Service fdd496
	(edit): Cat lin to long before printing with %ld, since lin might
Packit Service fdd496
	be narrow than long.
Packit Service fdd496
Packit Service fdd496
	* src/system.h (UINTMAX_MAX): New macro.
Packit Service fdd496
	Include gettext.h, not libgettext.h.
Packit Service fdd496
	(N_): Do not wrap arg in parentheses.  Fix from Bruno Haible.
Packit Service fdd496
Packit Service fdd496
	* src/util.c (finish_output): Ensure that werrno is initialized.
Packit Service fdd496
	(lines_differ): Have an explicit do-nothing case for
Packit Service fdd496
	IGNORE_NO_WHITE_SPACE, to pacify gcc -Wall.
Packit Service fdd496
Packit Service fdd496
2001-12-29  Eli Zaretskii  <eliz@is.elta.co.il>
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (interact): After extracting rlen from the editor
Packit Service fdd496
	command, test for a terminating null character, not for a newline.
Packit Service fdd496
Packit Service fdd496
	* ms/config.bat: Allow longer source directory names without
Packit Service fdd496
	overflowing the line length limits.  Create the cache in the
Packit Service fdd496
	build directory, not in the source directory
Packit Service fdd496
	* ms/config.sed: Fix AC_CONFIG_LINKS for when symlinks are
Packit Service fdd496
	unavailable.
Packit Service fdd496
Packit Service fdd496
2001-12-23  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.6.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (ALL_LINGUAS): Add tr.
Packit Service fdd496
Packit Service fdd496
	* src/util.c (begin_output):
Packit Service fdd496
	Have child exit with status 127 rather than reporting
Packit Service fdd496
	failure on its own.  Set errno to 0 before invoking popen.
Packit Service fdd496
	(finish_output): Report errno on pclose failure.
Packit Service fdd496
	Distinguish between subsidiary program not found, and failure.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (not_found, execdiff): Remove.
Packit Service fdd496
	(DIFF_PROGRAM_OPTION): New constant.
Packit Service fdd496
	(longopts, option_help_msgid, main): Add --diff-program=PROGRAM.
Packit Service fdd496
	(check_stdout): New function.
Packit Service fdd496
	(main): Remove DIFF_PROGRAM.  Check stdout after printing version.
Packit Service fdd496
	Use check_stdout after printing help.  Use execvp/perror_fatail rather
Packit Service fdd496
	than execdiff.  Set errno to 0 before invoking popen.
Packit Service fdd496
	Check for pclose failure properly.
Packit Service fdd496
	(main, edit): If child exec fails, exit with 127 rather than trying to
Packit Service fdd496
	print diagnostic.
Packit Service fdd496
	Distinguish between subsidiary program failing and not being found.
Packit Service fdd496
	(edit): Handle signals the same way, regardless of whether we're using
Packit Service fdd496
	system or fork+exec.  Check for system returning -1.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c (DIFF_PROGRAM_OPTION, HELP_OPTION): New constants.
Packit Service fdd496
	(longopts, main): Use them.
Packit Service fdd496
	(longopts, main, option_help_msgid): New option --diff-option=PROGRAM.
Packit Service fdd496
	(main): Remove DIFF_PROGRAM support.
Packit Service fdd496
	Check stdout after printing version.
Packit Service fdd496
	(check_stdout): Report errno info if fclose fails.
Packit Service fdd496
	(read_diff): Have child exit with status 127 when program is not found,
Packit Service fdd496
	rather than trying to have the child report failure.  Check for
Packit Service fdd496
	pclose returning -1.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (DEFAULT_WIDTH): Remove.
Packit Service fdd496
	(main): Use 130 instead of DEFAULT_WIDTH, since it's not really
Packit Service fdd496
	builder-settable.  Do not prepend DIFF_OPTIONS.
Packit Service fdd496
	(check-stdout): If fclose (stdout) fails, print errno info.
Packit Service fdd496
	(option_help_msgid): Default context is 3, not 2.
Packit Service fdd496
	(usage): Work even if ptrdiff_t is wider than int.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (diff Options): Remove DIFF_OPTIONS.
Packit Service fdd496
	(Invoking diff3, Invoking sdiff): Remove DIFF_PROGRAM.
Packit Service fdd496
	(diff3 Options, sdiff Options): Add --diff-program.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (valid_suffixes):
Packit Service fdd496
	Add '0', to support suffixes like "MB" and "MiB".
Packit Service fdd496
	(check_stdout): Don't assume that the translations of "write failed"
Packit Service fdd496
	and of "standard output" lack '%'.
Packit Service fdd496
	(main): Check stdout after printing version.
Packit Service fdd496
Packit Service fdd496
	* lib/setmode.c: [HAVE_FCNTL_H && HAVE_SETMODE_DOS]: Include <fcntl.h>.
Packit Service fdd496
	[!HAVE_SETMODE_DOS]: Do not include <unistd.h>.
Packit Service fdd496
	(set_binary_mode): Return mode (not 1) if fd is a tty.
Packit Service fdd496
	Do not assume that O_TEXT is zero.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi (cmp Options):
Packit Service fdd496
	In byte counts, a plain suffix (without any integer)
Packit Service fdd496
	is assumed to modify the integer 1.  Index terms like "kibibyte".
Packit Service fdd496
	Document plain "k".
Packit Service fdd496
Packit Service fdd496
	(Reporting Bugs): Mention bug-report archive and test version
Packit Service fdd496
	location.  Ask for "diff --version" in bug reports.
Packit Service fdd496
Packit Service fdd496
2001-12-13  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (DEFAULT_WIDTH): Remove; couldn't be changed without
Packit Service fdd496
	also changing option_help_msgid.  All uses replaced with 130.
Packit Service fdd496
Packit Service fdd496
	* lib/setmode.c: Include fcntl.h and unistd.h only if
Packit Service fdd496
	HAVE_SETMODE_DOS.
Packit Service fdd496
	(setmode): Assume a file is binary unless the mode is O_TEXT.
Packit Service fdd496
	* ms/README: Fix minor typos.
Packit Service fdd496
Packit Service fdd496
2001-12-13  Eli Zaretskii  <eliz@is.elta.co.il>
Packit Service fdd496
Packit Service fdd496
	* ms/README: New file.
Packit Service fdd496
Packit Service fdd496
	* lib/setmode.c (set_binary_mode) [HAVE_SETMODE_DOS]: Don't assume
Packit Service fdd496
	O_TEXT has a zero value.  If FD is a terminal device, do nothing
Packit Service fdd496
	and return MODE, thus pretending that it was already in the
Packit Service fdd496
	requested MODE.
Packit Service fdd496
	[HAVE_FCNTL_H]: Include fcntl.h (needed for O_BINARY).
Packit Service fdd496
Packit Service fdd496
	* ms/config.sed: Remove the split prevention of config.status.
Packit Service fdd496
	Fix Sed commands for converting absolute file names into
Packit Service fdd496
	top_srcdir-relative ones.
Packit Service fdd496
Packit Service fdd496
	* ms/config.bat: Fix typos.
Packit Service fdd496
Packit Service fdd496
2001-12-12  Neal H Walfield  <neal@cs.uml.edu>
Packit Service fdd496
Packit Service fdd496
	* diff.c (option_help_msgid): Correct the default context width
Packit Service fdd496
	from 2 to 3.
Packit Service fdd496
Packit Service fdd496
2001-12-11  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* m4/Makefile.am.in: Remove jm-glibc-io.m4
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.5.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (PR_PROGRAM): Use AC_DEFINE_UNQUOTED, so that
Packit Service fdd496
	$PR_PROGRAM is expanded by sh.
Packit Service fdd496
	(ptrdiff_t, ssize_t): Use AC_CHECK_TYPE with a default of int,
Packit Service fdd496
	not AC_CHECK_TYPES.
Packit Service fdd496
	(jm_AC_DOS, AC_FUNC_SETMODE_DOS): New macros.
Packit Service fdd496
	(AC_CONFIG_FILES): Add ms/Makefile.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Add --no-ignore-file-name-case.
Packit Service fdd496
	File name case sensitivity now affects file name exclusion.
Packit Service fdd496
	Fix typos.
Packit Service fdd496
Packit Service fdd496
	* src/util.c: Include dirname.h.
Packit Service fdd496
	(dir_file_pathname): Use base_name rather than file_name_lastdirchar.
Packit Service fdd496
Packit Service fdd496
	* src/system.h (S_IXUSR, S_IXGRP, S_IXOTH): New macros.
Packit Service fdd496
	Include <libgettext.h> rather than rolling it ourselves.
Packit Service fdd496
	(file_name_lastdirchar, HAVE_SETMODE, set_binary_mode): Remove.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c: Include <dirname.h>.
Packit Service fdd496
	(expand_name): Use base_name rather than file_name_lastdirchar, for
Packit Service fdd496
	portability to DOS.
Packit Service fdd496
	(main): Initialize xalloc_exit_failure before possibly invoking
Packit Service fdd496
	any memory allocator.
Packit Service fdd496
Packit Service fdd496
	* src/io.c: Include setmode.h.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c (main):
Packit Service fdd496
	Initialize xalloc_exit_failure before possibly invoking any memory
Packit Service fdd496
	allocator.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c: Include dirname.h, setmode.h.
Packit Service fdd496
Packit Service fdd496
	(main): Later values and/or styles now silently override earlier.
Packit Service fdd496
	(specify_value, specify_style): Likewise.  All callers changed.
Packit Service fdd496
	Remove.
Packit Service fdd496
	(binary, main, option_help_msgid, compare_files):
Packit Service fdd496
	HAVE_SETMODE -> HAVE_SETMODE_DOS.
Packit Service fdd496
	(NO_IGNORE_FILE_NAME_CASE_OPTION): New constant.
Packit Service fdd496
	(longopts, main, option_help_msgid): Support it.
Packit Service fdd496
	(exclude_options): New function.
Packit Service fdd496
	(main): Use it. Initialize xalloc_exit_failure before potentially
Packit Service fdd496
	allocating memory.
Packit Service fdd496
Packit Service fdd496
	(filetype): Distinguish executable files from others, as POSIX
Packit Service fdd496
	suggests.
Packit Service fdd496
Packit Service fdd496
	(compare_files): Use base_name instead of file_name_lastdirchar.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Include <hard-locale.h>, <setmode.h>.
Packit Service fdd496
	(hard_locale_LC_MESSAGES): New macro.
Packit Service fdd496
	(sprintc): Remove int width arg; it's now the caller's responsibility
Packit Service fdd496
	to pad.  All callers changed.
Packit Service fdd496
	(stat_buf): New static var; was formerly a local var in 'main'.
Packit Service fdd496
	(valid_suffixes): Add 'K', for 'KiB'.
Packit Service fdd496
	(option_help_msgid): Don't confuse bytes with characters.
Packit Service fdd496
	(main): Set xalloc_exit_failure before invoking anything that might
Packit Service fdd496
	allocate memory.  Fix bug: -n was incorrectly ignored when optimizing
Packit Service fdd496
	the case of regular files with different lengths.
Packit Service fdd496
	(cmp): Use an index column wide enough to store this comparison's
Packit Service fdd496
	indexes.  In locales other than the POSIX locale, say "byte"
Packit Service fdd496
	rather than "char".
Packit Service fdd496
Packit Service fdd496
	* ms/config.bat: pc -> ms
Packit Service fdd496
Packit Service fdd496
	* ms/Makefile.am, m4/setmode.m4, lib/setmode.c, lib/setmode.h:
Packit Service fdd496
	New file.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Add dirname.h, setmode.h.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Add basename.c, setmode.c.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (SUBDIRS): Add ms.
Packit Service fdd496
Packit Service fdd496
2001-12-10  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* m4/fnmatch.m4: Test for FNM_CASEFOLD.
Packit Service fdd496
Packit Service fdd496
2001-12-03  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/posix/regex.h: Fix copyright notice.
Packit Service fdd496
Packit Service fdd496
2001-12-03  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.4.
Packit Service fdd496
Packit Service fdd496
	* diff.texi (direntry, Overview, Comparison, Binary, Invoking cmp):
Packit Service fdd496
	Use "byte" rather than "character" when talking about cmp, since
Packit Service fdd496
	it compares bytes, not character.
Packit Service fdd496
	(Invoking cmp): New trailing operands FROM-SKIP and TO-SKIP.
Packit Service fdd496
	-i or --ignore-initial now accepts FROM-SKIP:TO-SKIP.
Packit Service fdd496
	New option -n or --bytes.
Packit Service fdd496
	Count operands now may be in octal or hex, and may be followed by a
Packit Service fdd496
	size multiplier.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (DEFAULT_DIFF_PROGRAM):
Packit Service fdd496
	Define to "diff", not "$bindir/diff" (which didn't work anyway).
Packit Service fdd496
	(AC_CHECK_MEMBERS): Add struct stat.st_blksize, struct stat.st_rdev.
Packit Service fdd496
	(AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_RDEV): Remove; obsolescent.
Packit Service fdd496
	(AC_FUNC_FORK): Use this, instead of obsolescent AC_FUNC_VFORK.
Packit Service fdd496
	(AC_CONFIG_FILES, AC_CONFIG_COMMANDS): Add.
Packit Service fdd496
	(AC_OUTPUT): Remove args; they were obsolescent.
Packit Service fdd496
Packit Service fdd496
	* util.c (setup_output, begin_output, finish_output):
Packit Service fdd496
	HAVE_FORK -> HAVE_WORKING_FORK || HAVE_WORKING_VFORK.
Packit Service fdd496
	* sdiff.c (diffpid, cleanup, main, edit): Likewise.
Packit Service fdd496
	* diff3.c (read_diff): Likewise.
Packit Service fdd496
Packit Service fdd496
	* system.h (STAT_BLOCKSIZE):
Packit Service fdd496
	Use HAVE_STRUCT_STAT_ST_BLKSIZE, not HAVE_ST_BLKSIZE.
Packit Service fdd496
	(vfork): New macro.
Packit Service fdd496
	(HAVE_FORK): Remove.
Packit Service fdd496
	(set_binary_mode): New macro.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (main): HAVE_VFORK -> HAVE_WORKING_VFORK.
Packit Service fdd496
	(edit): Reopen the temporary file after the editor has run, in case
Packit Service fdd496
	the editor operates by unlinking the old file and linking a new one.
Packit Service fdd496
	(P_tmpdir): Rename from PVT_tmpdir; this fixes a typo.
Packit Service fdd496
	All uses changed.
Packit Service fdd496
Packit Service fdd496
	* io.c (sip, read_files):
Packit Service fdd496
	Remove tests for HAVE_SETMODE; use set_binary_mode
Packit Service fdd496
	instead of setmode.
Packit Service fdd496
	(sip): Fix typo in backward lseek when reverting to text mode.
Packit Service fdd496
Packit Service fdd496
	* config.site, config.sed, config.bat: New file.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (EXTRA_DIST): Add xstrtol.c.
Packit Service fdd496
	(noinst_HEADERS): Add xstrtol.h.
Packit Service fdd496
	(libdiffutils_a_SOURCES): Add xstrtoumax.c.
Packit Service fdd496
Packit Service fdd496
	* cmp.c: <xstrtol.h>: Include.
Packit Service fdd496
	(ignore_initial): Now an array with 2 elements.  All uses changed.
Packit Service fdd496
	(bytes): New var.
Packit Service fdd496
	(HELP_OPTION): New constant.
Packit Service fdd496
	(long_options, main): Use it.
Packit Service fdd496
	(long_options, option_help_msgid, main, cmp):
Packit Service fdd496
	Add support for -n or --bytes.
Packit Service fdd496
	(parse_ignore_initial): New function.
Packit Service fdd496
	(option_help_msgid, main): Add -i M:N.
Packit Service fdd496
	(usage, main): Add two optional trailing operands, a la BSD.
Packit Service fdd496
	(main): setmode -> set_binary_mode.
Packit Service fdd496
	(cmp): Report byte number of what we've seen, not of the entire file.
Packit Service fdd496
	This is to be consistent with the line number, which is always relative
Packit Service fdd496
	with what we've seen.
Packit Service fdd496
Packit Service fdd496
2001-12-02  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* diff.c (main, compare_files): setmode -> set_binary_mode.
Packit Service fdd496
Packit Service fdd496
	* xstrtol.c (__xstrtol): Don't accept 'Ki'; require 'KiB'.
Packit Service fdd496
Packit Service fdd496
	* xstrtol.c (__xstrtol): Add support for IEC 60027-2.
Packit Service fdd496
Packit Service fdd496
2001-11-25  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 2.7.3.
Packit Service fdd496
Packit Service fdd496
	* README-alpha: New file.
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (INCLUDES): Add -I../lib, for regex.h.
Packit Service fdd496
Packit Service fdd496
	* configure.ac:
Packit Service fdd496
	Don't set LIB_CLOCK_GETTIME to 'none required'; set it to
Packit Service fdd496
	the empty string instead.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (EXTRA_DIST): Add strtoimax.c, strtol.c.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am (SUBDIRS): Put intl before lib, so that libintl.h exists.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am (noinst_HEADERS): Add unlocked-io.h.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (__EXTENSIONS__): New define, for the unlocked macros.
Packit Service fdd496
Packit Service fdd496
	* README: Add copyright notice.
Packit Service fdd496
	Remove stuff that doesn't apply any more.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: offsets -> indices for cmp
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c (option_help_msgid): offsets -> indices
Packit Service fdd496
Packit Service fdd496
	* src/diff.c (option_help_msgid):
Packit Service fdd496
	Don't mention --binary on POSIX hosts.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (STRIP_TRAILING_CR_OPTION): New constant.
Packit Service fdd496
	(longopts, option_help_msgid, main): Add -E, --ignore-tab-expansion,
Packit Service fdd496
	--strip-trailing-cr.
Packit Service fdd496
Packit Service fdd496
	* doc/diff.texi: Change direcategory from Utilities to GNU Packages.
Packit Service fdd496
	Add individual utilities.
Packit Service fdd496
	Switch to Free Documentation License.
Packit Service fdd496
	@code -> @command
Packit Service fdd496
	@samp -> @option
Packit Service fdd496
	GNU -> @sc{gnu}
Packit Service fdd496
	Expand tabs to spaces, except when in an example that actually
Packit Service fdd496
	uses tabs.
Packit Service fdd496
	Prefer @node with just one arg.
Packit Service fdd496
	Document -E or --ignore-tab-expansion, --strip-trailing-cr,
Packit Service fdd496
	--ignore-file-name-case.
Packit Service fdd496
	Regular expressions are now grep style, not Emacs style.
Packit Service fdd496
	cmp's -c or --print-chars option is now -b or --print-bytes.
Packit Service fdd496
	Time stamps now depend on LC_TIME.
Packit Service fdd496
	-p now implies ^[[:alpha:]$_].
Packit Service fdd496
	Flags now include ' and 0.
Packit Service fdd496
	cmp -i is an alias for --ignore-initial
Packit Service fdd496
	Document --from-file, --to-file.
Packit Service fdd496
	Document DIFF_OPTIONS.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_CHECK_FUNCS): Add gettimeofday, clock_gettime.
Packit Service fdd496
	(LIB_CLOCK_GETTIME): New subst.
Packit Service fdd496
Packit Service fdd496
	* src/system.h: Assume C89 or better.
Packit Service fdd496
	(_GNU_SOURCE): Remove; config.h now defines it.
Packit Service fdd496
	(alloca): Declare like coreutils does it.
Packit Service fdd496
	(verify, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, O_RDWR,
Packit Service fdd496
	S_IRUSR, S_IWUSR): New macros.
Packit Service fdd496
	(STAT_BLOCKSIZE): Parenthesize definiens.
Packit Service fdd496
	<inttypes.h>: Include if HAVE_INTTYPES_H.
Packit Service fdd496
	(CHAR_MAX, INT_MAX): Remove.
Packit Service fdd496
	(PTRDIFF_MAX, SIZE_MAX): New macros.
Packit Service fdd496
	(strtoumax): New decl.
Packit Service fdd496
	Include stddef.h.
Packit Service fdd496
	(bzero): Remove.
Packit Service fdd496
	(bindtextdomain, textdomain, N_): New macros.
Packit Service fdd496
	(ISPRINT, ISSPACE): Remove ifndef wrappers.
Packit Service fdd496
	(ISUPPER, ISDIGIT): Remove.
Packit Service fdd496
	(TOLOWER): New macro.
Packit Service fdd496
	(MIN): Renamed from min; all callers changed.
Packit Service fdd496
	(MAX): Likewise, from max.
Packit Service fdd496
	(lin): New type.
Packit Service fdd496
	(LIN_MAX): New macro.
Packit Service fdd496
	(file_name_cmp): Renamed from filename_cmp.  All callers changed.
Packit Service fdd496
	(file_name_lastdirchar): Renamed from file_name_lastdirchar.
Packit Service fdd496
	All callers changed.
Packit Service fdd496
	(could_be_mvfs_stat_bug, could_be_nfs_stat_bug,
Packit Service fdd496
	dev_may_have_duplicate_ino): Remove.
Packit Service fdd496
	(HAVE_SETMODE, NULL_DEVICE): New macros.
Packit Service fdd496
	(same_file): Do not check attributes.
Packit Service fdd496
	(same_file_attributes): New macro.
Packit Service fdd496
Packit Service fdd496
	* src/util.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	int -> size_t for sizes.
Packit Service fdd496
	Use angle-brackets when including quotesys.h.
Packit Service fdd496
	Include error.h, regex.h, xalloc.h.
Packit Service fdd496
	(message5): sizeof -> offsetof
Packit Service fdd496
	(begin_output): Invoke pr without -f.
Packit Service fdd496
	(lines_differ): Renamed from line_cmp, and return bool not 3-way int.
Packit Service fdd496
	All callers changed.
Packit Service fdd496
	Add support for IGNORE_TAB_EXPANSION.
Packit Service fdd496
	(change_letter): Now an array rather than a function.  All
Packit Service fdd496
	callers changed.
Packit Service fdd496
	(translate_range): Translate line numbers to long, not lin,
Packit Service fdd496
	for convenience with printf.
Packit Service fdd496
	(analyze_hunk): Return enum changes instead of a count of
Packit Service fdd496
	inserts and deletes.  All callers changed.
Packit Service fdd496
	(zalloc): New function.
Packit Service fdd496
Packit Service fdd496
	* src/side.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	Use angle-brackets when including getopt.h, quotesys.h.
Packit Service fdd496
	Include error.h, freesoft.h, stdio.h, xalloc.h.
Packit Service fdd496
	(copyright_string): Use only most recent year.
Packit Service fdd496
	(authorship_msgid, option_help_msgid): Wrap in N_().
Packit Service fdd496
Packit Service fdd496
	(tmpname): Now volatile.
Packit Service fdd496
	(tmpmade): Remove.
Packit Service fdd496
	(tmp): New var.
Packit Service fdd496
	(private_tempnam, exists, letters): Remove.
Packit Service fdd496
	(temporary_file): New function.
Packit Service fdd496
	(edit): Use it.
Packit Service fdd496
	(interact): Use strtoumax, not atoi.
Packit Service fdd496
Packit Service fdd496
	* src/normal.c: Assume C89 or better.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
Packit Service fdd496
	* src/io.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	int -> size_t for sizes.
Packit Service fdd496
	Use angle-brackets when including cmpbuf.h.
Packit Service fdd496
	Include regex.h, xalloc.h.
Packit Service fdd496
	(word): Remove; now done in system.h.
Packit Service fdd496
	(hash_value): New type; use it instead of 'unsigned' for hash values.
Packit Service fdd496
	(file_block_read): New function.
Packit Service fdd496
	(sip, slurp): Use it.  Now static.
Packit Service fdd496
	(sip): Ensure block size is a multiple of word size.  Clear eof flag.
Packit Service fdd496
	(slurp): Use xalloc_die to report memory exhaustion.
Packit Service fdd496
	(find_and_hash_each_line): Use TOLOWER instead of _tolower.
Packit Service fdd496
	Add support for IGNORE_TAB_EXPANSION.
Packit Service fdd496
	(prepare_text_end): Strip trailing CR if requested.
Packit Service fdd496
	(find_identical_ends): Prepare the text only once,
Packit Service fdd496
	if they're duplicates.
Packit Service fdd496
	Let the compiler take advantage more of the fact that the buffers are
Packit Service fdd496
	word-aligned.
Packit Service fdd496
	(primes): Remove.
Packit Service fdd496
	(prime_offset): New var.
Packit Service fdd496
	(read_var): Use prime_offset instead of primes.
Packit Service fdd496
	Use zalloc instead of xmalloc + bzero.
Packit Service fdd496
Packit Service fdd496
	* src/ifdef.c: Assume C89 or better.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	(format_group): Use strtoumax to parse line numbers.
Packit Service fdd496
	(format_group, print_ifdef_lines): Use do_printf_spec to
Packit Service fdd496
	handle printf specs.
Packit Service fdd496
	(groups_letter_value): Don't use _tolower; it's locale-dependent.
Packit Service fdd496
	(do_printf_spec): Renamed from scan_printf_spec; now does the printing.
Packit Service fdd496
Packit Service fdd496
	* src/ed.c: Assume C89 or better.
Packit Service fdd496
	int -> lin for line numbers (or 'long' when that's more convenient).
Packit Service fdd496
	(print_ed_hunk): Fix bug when handling double-dot inserts.
Packit Service fdd496
Packit Service fdd496
	* src/dir.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	Include error.h, exclude.h, xalloc.h.
Packit Service fdd496
Packit Service fdd496
	(dir_sort): Return 0 on error, 1 on success.  All callers changed.
Packit Service fdd496
	compare_names -> compare_names_for_qsort.
Packit Service fdd496
Packit Service fdd496
	(compare_names): Try strcasecmp if ignore_file_name_case.  Then try
Packit Service fdd496
	strcoll.  Use file_name_cmp only as a last resort.  Warn about
Packit Service fdd496
	strcasecmp or strcoll failure.
Packit Service fdd496
	(compare_names_for_qsort): New function.
Packit Service fdd496
Packit Service fdd496
	(diff_dirs): Use compare_names rather than filename_cmp.
Packit Service fdd496
Packit Service fdd496
	* src/diff3.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	Use angle-brackets when including getopt.h, quotesys.h.
Packit Service fdd496
	Include error.h, freesoft.h, inttostr.h, xalloc.h.
Packit Service fdd496
	(copyright_string): Use only most recent year.
Packit Service fdd496
	(authorship_msgid, option_help_msgid): Wrap in N_().
Packit Service fdd496
Packit Service fdd496
	Rename the following variables for consistency with user-visible
Packit Service fdd496
	option spellings.  All uses changed.
Packit Service fdd496
	(text): Renamed from always_text.
Packit Service fdd496
	(initial_tab): Renamed from tab_align_flag.
Packit Service fdd496
Packit Service fdd496
	(horizon_lines): Remove.  Remove all uses.
Packit Service fdd496
Packit Service fdd496
	(main): Invoke bindtextdomain and textdomain after setlocale.
Packit Service fdd496
	Rename "DIFF" to "DIFF_PROGRAM".
Packit Service fdd496
Packit Service fdd496
	Try to compare file0 to file1, because this is where changes are
Packit Service fdd496
	expected to come from.  Diffing between these pairs of files is more
Packit Service fdd496
	likely to avoid phantom changes from file0 to file1.
Packit Service fdd496
	However, use file2 as the common file if this is a 3-way diff,
Packit Service fdd496
	for backward compatibility.  Suggested by Karl Tomlinson.
Packit Service fdd496
Packit Service fdd496
	(create_diff3_block): Use xcalloc instead of malloc + bzero.
Packit Service fdd496
Packit Service fdd496
	(INT_STRLEN_BOUND): Remove; now in system.h.
Packit Service fdd496
Packit Service fdd496
	(read_diff): Always use --horizon-lines=100 rather than trying
Packit Service fdd496
	to guess it.
Packit Service fdd496
	Do not pass --inhibit-hunk-merge.
Packit Service fdd496
	Minimum chunk size is 1, not 8KiB.
Packit Service fdd496
	Use xalloc_die to report memory exhaustion.
Packit Service fdd496
	(undotlines): Use long for start, not int.
Packit Service fdd496
Packit Service fdd496
	* src/diff.h: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	Don't include regex.h.
Packit Service fdd496
	(enum changes): New enum.
Packit Service fdd496
	(enum line_class): Remove; subsumed by enum changes.
Packit Service fdd496
	(enum output_style): New constant OUTPUT_UNSPECIFIED.
Packit Service fdd496
Packit Service fdd496
	(ignore_space_change_flag, ignore_all_space_flag): Remove.
Packit Service fdd496
	(ignore_white_space): New decl, subsuming the above two.  All
Packit Service fdd496
	uses changed.
Packit Service fdd496
Packit Service fdd496
	Rename the following decls for consistency with user-visible
Packit Service fdd496
	option spellings.  All uses changed.
Packit Service fdd496
	(text): Renamed from always_text_flag.
Packit Service fdd496
	(ignore_blank_lines): Renamed from ignore_blank_lines_flag.
Packit Service fdd496
	(ignore_case): Renamed from ignore_case_flag.
Packit Service fdd496
	(brief): Renamed from no_details_flag.
Packit Service fdd496
	(initial_tab): Renamed from tab_align_flag.
Packit Service fdd496
	(expand_tabs): Renamed from tab_expand_flag.
Packit Service fdd496
	(starting_file): Renamed from dir_start_file.
Packit Service fdd496
	(paginate): Renamed from paginate_flag.
Packit Service fdd496
	(sdiff_merge_assist): Renamed from sdiff_help_sdiff.
Packit Service fdd496
	(left_column): Renamed from sdiff_left_only.
Packit Service fdd496
	(suppress_common_lines): Renamed from sdiff_skip_common_lines.
Packit Service fdd496
	(speed_large_files): Renamed from heuristic.
Packit Service fdd496
	(minimal): Renamed from no_discards.
Packit Service fdd496
Packit Service fdd496
	(inhibit_hunk_merge): Remove.
Packit Service fdd496
Packit Service fdd496
	(strip_trailing_cr, excluded, time_format): New decls.
Packit Service fdd496
Packit Service fdd496
	(files_can_be_treated_as_binary): Renamed from ignore_some_changes.
Packit Service fdd496
Packit Service fdd496
	(group_format, line_format): Now char const *[], not char *[].
Packit Service fdd496
Packit Service fdd496
	(struct file_data): Buffer is now word*, not char*, as it's always
Packit Service fdd496
	aligned and this can help the compiler.  buffered_chars -> buffered
Packit Service fdd496
	(since it's a byte count, not a char count).  All uses changed.
Packit Service fdd496
	New member `eof'.
Packit Service fdd496
Packit Service fdd496
	(FILE_BUFFER): New macro.
Packit Service fdd496
Packit Service fdd496
	(excluded_filename, error, free_software_msgid): Remove decls; now in
Packit Service fdd496
	other .h files.
Packit Service fdd496
Packit Service fdd496
	(sip, slurp): Remove decls.
Packit Service fdd496
	(file_block_read): New decl.
Packit Service fdd496
	(change_letter): Now an array, not a function.
Packit Service fdd496
	(lines_differ): Renamed from line_cmp.
Packit Service fdd496
	(analyze_hunk): Now returns enum changes rather than two change counts.
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am (diff_LDADD): New symbol.
Packit Service fdd496
Packit Service fdd496
	* src/diff.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	long -> off_t for line numbers.
Packit Service fdd496
	Use angle-brackets when including getopt.h, fnmatch.h, quotesys.h.
Packit Service fdd496
	Include error.h, exclude.h, freesoft.h, hard-locale.h, prepargs.h,
Packit Service fdd496
	regex.h, signal.h, xalloc.h.
Packit Service fdd496
	(copyright_string): Use only most recent year.
Packit Service fdd496
	(authorship_msgid, option_help_msgid): Wrap in N_().
Packit Service fdd496
Packit Service fdd496
	Rename the following variables for consistency with user-visible
Packit Service fdd496
	option spellings.  All uses changed.
Packit Service fdd496
	(binary): Renamed from binary_flag.
Packit Service fdd496
	(new_file): Renamed from entire_new_file_flag.
Packit Service fdd496
	(unidirectional_new_file): Renamed from unidirectional_new_file_flag.
Packit Service fdd496
	(report_identical_files): Renamed from print_file_same_flag.
Packit Service fdd496
Packit Service fdd496
	(numeric_arg): Remove.
Packit Service fdd496
Packit Service fdd496
	(exclude, exclude_alloc, exclude_count, excluded_filename, add_exclude,
Packit Service fdd496
	add_exclude_file):
Packit Service fdd496
	Remove; now done by exclude.h.
Packit Service fdd496
Packit Service fdd496
	(BINARY_OPTION, FROM_FILE_OPTION, HELP_OPTION, HORIZON_LINES_OPTION,
Packit Service fdd496
	IGNORE_FILE_NAME_CASE_OPTION, INHIBIT_HUNK_MERGE_OPTION,
Packit Service fdd496
	LEFT_COLUMN_OPTION, LINE_FORMAT_OPTION, NORMAL_OPTION,
Packit Service fdd496
	SDIFF_MERGE_ASSIST_OPTION, STRIP_TRAILING_CR_OPTION,
Packit Service fdd496
	SUPPRESS_COMMON_LINES_OPTION, TO_FILE_OPTION,
Packit Service fdd496
	UNCHANGED_LINE_FORMAT_OPTION, OLD_LINE_FORMAT_OPTION,
Packit Service fdd496
	NEW_LINE_FORMAT_OPTION, UNCHANGED_GROUP_FORMAT_OPTION,
Packit Service fdd496
	OLD_GROUP_FORMAT_OPTION, NEW_GROUP_FORMAT_OPTION,
Packit Service fdd496
	CHANGED_GROUP_FORMAT_OPTION): New constants.
Packit Service fdd496
	(longopts, main): Use them.
Packit Service fdd496
Packit Service fdd496
	(longopts, main, option_help_msgid): Add -E, --from-file, --to-file.
Packit Service fdd496
Packit Service fdd496
	(main): Invoke bindtextdomain and textdomain after setlocale.
Packit Service fdd496
	Use grep syntax, not Emacs, for regular expressions.
Packit Service fdd496
	Use exclude.h, not our own functions.
Packit Service fdd496
	Use ISO 8601 time format in hard locales.
Packit Service fdd496
	Prepend DIFF_OPTIONS.
Packit Service fdd496
	Don't update ignore_some_changes.
Packit Service fdd496
	Use strtoumax instead of numeric_arg.
Packit Service fdd496
	Use specify_value when appropriate.
Packit Service fdd496
	error -> try_help when appropriate.
Packit Service fdd496
	-p now means ^[[:alpha:]$_], not ^[_a-zA-Z$].
Packit Service fdd496
	Ignore --inhibit-hunk-merge.
Packit Service fdd496
	Prefer changed group formats to unchanged ones.
Packit Service fdd496
	Remove now-unnecessary casts.
Packit Service fdd496
	Set files_can_be_treated_as_binary.
Packit Service fdd496
Packit Service fdd496
	(specify_value): Renamed from specify_format.  All uses changed.
Packit Service fdd496
Packit Service fdd496
	(specify_style): Default is now unspecified, not normal.  All
Packit Service fdd496
	uses changed.
Packit Service fdd496
Packit Service fdd496
	(set_mtime_to_now): New function.
Packit Service fdd496
	(compare_files): Use it.  Use memset, not bzero.
Packit Service fdd496
	Set stdin mtime to current time even when stdin is not a regular file.
Packit Service fdd496
	Check for same file attributes, as well as for same file.
Packit Service fdd496
	Use files_can_be_treated_as_binary.
Packit Service fdd496
	"write failed" -> "standard output on output failure.
Packit Service fdd496
Packit Service fdd496
	* src/context.c: Assume C89 or better.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	Include inttostr.h, regex.h.
Packit Service fdd496
	(TIMESPEC_NS): New macro.
Packit Service fdd496
	(nstrftime): New decl.
Packit Service fdd496
	(print_context_label): Use nstrftime and time_format to format times.
Packit Service fdd496
	Print numeric timestamp value if localtime fails.
Packit Service fdd496
	(print_context_function): New function.
Packit Service fdd496
	(pr_context_hunk, pr_unidiff_hunk): Use it.
Packit Service fdd496
	(find_function): Use size_t for sizes, not int.
Packit Service fdd496
Packit Service fdd496
	* src/cmp.c: Assume C89 or better.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	long -> off_t for line numbers.
Packit Service fdd496
	Use angle-brackets when including cmpbuf.h, getopt.h.
Packit Service fdd496
	Include error.h, freesoft.h, inttostr.h, xalloc.h.
Packit Service fdd496
	(copyright_string): Use only most recent year.
Packit Service fdd496
	(authorship_msgid): Wrap in N_().
Packit Service fdd496
	(buffer): Now word*, not char*.  All uses changed.
Packit Service fdd496
	(word): Remove macro; now in system.h.
Packit Service fdd496
	(long_options, option_help_msgid, main): -c --print-chars ->
Packit Service fdd496
	-b --print-bytes
Packit Service fdd496
	(check_stdout): "write failed" -> "standard output"
Packit Service fdd496
	(option_help_msgid): Wrap in N_().
Packit Service fdd496
	(main): Invoke bindtextdomain and textdomain after setlocale.
Packit Service fdd496
	Use strtoumax instead of doing the work ourselves.
Packit Service fdd496
	Check for same_file_attributes as well as same_file.
Packit Service fdd496
	(cmp): Use ssize_t for read returns, not size_t.
Packit Service fdd496
	Do not assume that size_t is not narrower than int.
Packit Service fdd496
	Do not assume that line numbers fit in 'long'.
Packit Service fdd496
	(block_compare_and_count, block_compare):
Packit Service fdd496
	Compiler now checks that buffers are word-aligned.
Packit Service fdd496
	(block_compare_and_count): Count sizes with size_t, not long.
Packit Service fdd496
	(sprintc): byte arg is unsigned char, not unsigned.
Packit Service fdd496
Packit Service fdd496
	* src/analyze.c: Assume C89 or better.
Packit Service fdd496
	int -> lin for line numbers.
Packit Service fdd496
	int -> bool for booleans.
Packit Service fdd496
	unsigned int -> size_t for sizes.
Packit Service fdd496
	Use angle-brackets when including cmpbuf.h.
Packit Service fdd496
	Include error.h, regex.h, xalloc.h.
Packit Service fdd496
	(discard_confusing_lines, diff_2_files): Use zalloc rather
Packit Service fdd496
	than xalloc+bzero.
Packit Service fdd496
	(discard_confusing_lines): unsigned int -> lin for values that
Packit Service fdd496
	are really line numbers.
Packit Service fdd496
	(shift_boundaries): Do not inhibit hunk merges.
Packit Service fdd496
	(build_reverse_script, build_script, diff_2_files): Use |, not ||.
Packit Service fdd496
	(diff_2_files): no_details_flag & ~ignore_some_changes ->
Packit Service fdd496
	files_can_be_treated_as_binary.  Esure that buffer size is a multiple
Packit Service fdd496
	of sizeof (word).  Use file_block_read to read buffers.
Packit Service fdd496
	(diff_2_files): Abort if output style is not one of the
Packit Service fdd496
	expected styles.
Packit Service fdd496
Packit Service fdd496
2001-11-23  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/Makefile.am, m4/vararrays.m4: New file.
Packit Service fdd496
Packit Service fdd496
	* m4/prereq.m4 (jm_PREREQ_READUTMP):
Packit Service fdd496
	Remove, as it gives autoheader the willies.
Packit Service fdd496
Packit Service fdd496
	* m4/README, lib/prepargs.h, lib/prepargs.c, lib/offtostr.c,
Packit Service fdd496
	lib/umaxtostr.c, lib/inttostr.c, lib/inttostr.h,
Packit Service fdd496
	lib/imaxtostr.c, lib/freesoft.h: New files.
Packit Service fdd496
Packit Service fdd496
	* lib/freesoft.c: Include config.h, freesoft.h rather than diff.h.
Packit Service fdd496
	(free_software_msgid): Wrap contents in N_.
Packit Service fdd496
Packit Service fdd496
	* lib/cmpbuf.h: Use prototypes instead of old-style functions.
Packit Service fdd496
Packit Service fdd496
	* lib/cmpbuf.c:
Packit Service fdd496
	Don't include system.h; instead, include config.h, unistd.h.
Packit Service fdd496
	Use prototypes instead of old-style functions.
Packit Service fdd496
	(block_read): Don't assume that int is no wider than size_t.
Packit Service fdd496
Packit Service fdd496
	* lib/Makefile.am, po/POTFILES.in: New file.
Packit Service fdd496
Packit Service fdd496
2001-11-22  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* pc/config.h:
Packit Service fdd496
	Define filename_cmp as an object-like macro, not as a function-like
Packit Service fdd496
	macro.
Packit Service fdd496
Packit Service fdd496
	* exgettext: Always operate in the C locale.
Packit Service fdd496
	Set AWK using a method that works even with broken shells.
Packit Service fdd496
Packit Service fdd496
	* doc/Makefile.am: New file.
Packit Service fdd496
Packit Service fdd496
	* configure.ac (AC_INIT):
Packit Service fdd496
	Use src/diff.c, not diff.h, as the source files got removed.
Packit Service fdd496
	(AM_CONFIG_HEADER): Switch from AC_CONFIG_HEADER.
Packit Service fdd496
	(AC_ARG_PROGRAM, AC_MINIX): Remove.
Packit Service fdd496
Packit Service fdd496
	(AC_PREREQ, AM_INIT_AUTOMAKE, ALL_LINGUAS, AC_PROG_AWK,
Packit Service fdd496
	AM_PROG_CC_STDC, AC_PROG_RANLIB, AC_C_INLINE, AC_C_VARARRAYS,
Packit Service fdd496
	DEFAULT_DIFF_PROGRAM, DEFAULT_EDITOR_PROGRAM,
Packit Service fdd496
	AC_STRUCT_ST_MTIM_NSEC): Add.
Packit Service fdd496
Packit Service fdd496
	(PR_PROGRAM): AC_DEFINE.
Packit Service fdd496
Packit Service fdd496
	(AC_SYS_LARGEFILE): Use instead of our homebrew version.
Packit Service fdd496
Packit Service fdd496
	(_GNU_SOURCE): Define if not defined.
Packit Service fdd496
Packit Service fdd496
	(AC_CHECK_HEADERS): Add stdbool.h, unistd.h.
Packit Service fdd496
	(AC_CHECK_TYPES): Add ptrdiff_t, uintmax_t.
Packit Service fdd496
	(AM_GNU_GETTEXT, XGETTEXT): Add.
Packit Service fdd496
Packit Service fdd496
	(WITH_MVFS_STAT_BUG, WITH_NFS_STAT_BUG): Remove.
Packit Service fdd496
	(HAVE_MEMCHR): Remove.
Packit Service fdd496
	(AC_CHECK_FUNCS): Add diraccess.
Packit Service fdd496
	(AC_REPLACE_FUNCS): Add memchr, waitpid.
Packit Service fdd496
	(jm_FUNC_GLIBC_UNLOCKED_IO, jm_FUNC_GNU_STRFTIME, jm_FUNC_MALLOC,
Packit Service fdd496
	 jm_FUNC_REALLOC, jm_PREREQ_ERROR, jm_PREREQ_QUOTEARG, jm_PREREQ_REGEX,
Packit Service fdd496
	 jm_PREREQ_TEMPNAME, jm_AC_PREREQ_XSTRTOUMAX, AC_FUNC_FNMATCH): Add.
Packit Service fdd496
	(fnmatch.h, regex.h): Do not create these files unless we're using
Packit Service fdd496
	our own fnmatch and regex.
Packit Service fdd496
Packit Service fdd496
	(AC_OUTPUT): Add doc/Makefile, intl/Makefile, lib/Makefile,
Packit Service fdd496
	lib/posix/Makefile, m4/Makefile, po/Makefile.in, src/Makefile.
Packit Service fdd496
Packit Service fdd496
	* Makefile.am: New file.
Packit Service fdd496
Packit Service fdd496
	* po/en_GB.po: Don't translate "program" to "programme".
Packit Service fdd496
Packit Service fdd496
2001-11-20  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* m4/prereq.m4: New file.
Packit Service fdd496
Packit Service fdd496
2001-03-16  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/tempname.c (uint64_t):
Packit Service fdd496
	Define if not defined, and if UINT64_MAX is not defined.
Packit Service fdd496
Packit Service fdd496
2001-02-26  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/tempname.c: glibc 1.32
Packit Service fdd496
Packit Service fdd496
2001-02-17  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* m4/Makefile.am.in: GNU fileutils 4.1
Packit Service fdd496
Packit Service fdd496
2001-01-09  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/tempname.c (struct_stat64): New macro.
Packit Service fdd496
	(direxists, __gen_tempname): Use it.  This avoids a portability problem
Packit Service fdd496
	with Solaris 8.
Packit Service fdd496
Packit Service fdd496
	* lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
Packit Service fdd496
	(<stddef.h>, <stdint.h>, <string.h>):
Packit Service fdd496
	Include only if STDC_HEADERS || _LIBC.
Packit Service fdd496
	(<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
Packit Service fdd496
	(<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
Packit Service fdd496
	(<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
Packit Service fdd496
	(__set_errno): Define this macro if <errno.h> doesn't.
Packit Service fdd496
	(P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
Packit Service fdd496
	Define these macros if <stdio.h> doesn't.
Packit Service fdd496
	(S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
Packit Service fdd496
	Define these macros if <sys/stat.h>
Packit Service fdd496
	doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
Packit Service fdd496
	(stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
Packit Service fdd496
	__xstat64): Define if not _LIBC.
Packit Service fdd496
	(__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
Packit Service fdd496
	(__gen_tempname): Invoke gettimeofday only if HAVE_GETTIMEOFDAY
Packit Service fdd496
	|| _LIBC; otherwise, fall back on plain "time".
Packit Service fdd496
	Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
Packit Service fdd496
Packit Service fdd496
	* lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
Packit Service fdd496
Packit Service fdd496
2000-10-25  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/hard-locale.c: New file.
Packit Service fdd496
Packit Service fdd496
2000-02-05  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* exgettext: From GCC repository
Packit Service fdd496
Packit Service fdd496
1999-07-06  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* lib/mkstemp.c: glibc 2.2
Packit Service fdd496
Packit Service fdd496
1998-12-11  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* src/sdiff.c (lf_snarf):
Packit Service fdd496
	Fix bug when help line wrapped around the input buffer.
Packit Service fdd496
Packit Service fdd496
1998-09-15  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* diff.texi: Add @dircategory and @direntry.
Packit Service fdd496
Packit Service fdd496
1998-09-14  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (VERSION): Version 2.7.2.
Packit Service fdd496
	(DEFAULT_DIFF_PROGRAM): Renamed from DIFF_PROGRAM.
Packit Service fdd496
	(PR_PROGRAM): All `configure' to define it.
Packit Service fdd496
	(srcs): Add $(diffutils_srcs), freesoft.c, quotearg.c instead of
Packit Service fdd496
	quote.c, quotearg.h.
Packit Service fdd496
	(distfiles): Add acconfig.h, message/*.
Packit Service fdd496
	(all): Depend on $(destfiles), not info.
Packit Service fdd496
	(version.c): Parenthesize `GNU diffutils'.
Packit Service fdd496
	(common_o): Add freesoft.o
Packit Service fdd496
	(diff_o): quote.o -> quotearg.o
Packit Service fdd496
	(diff3_o, sdiff_o): Likewise.
Packit Service fdd496
	(diff.dvi): Depend on version.texi.
Packit Service fdd496
	(diff.o diff3.o quotearg.o sdiff.o util.o):
Packit Service fdd496
	New dependency on quotearg.h
Packit Service fdd496
	(diff3.o): DIFF_PROGRAM -> DEFAULT_DIFF_PROGRAM.
Packit Service fdd496
	(sdiff.o): Likewise.
Packit Service fdd496
	(messages.po): Remove.
Packit Service fdd496
	(message/msgid.po, message/template.po): New rules.
Packit Service fdd496
	(maintainer-clean): Renamed from realclean.
Packit Service fdd496
	(install): Install from source directory, if applicable.
Packit Service fdd496
	Invoke install-info if needed.
Packit Service fdd496
	(install-strip): New rule.
Packit Service fdd496
	(check): Set DIFF.
Packit Service fdd496
	(stamp-h.in): Don't put the date into the timestamp.
Packit Service fdd496
	(D_dirs): Add $D/message.
Packit Service fdd496
	($D.tar.gz): Compress with gzip -9.
Packit Service fdd496
	Don't use ln to create distribution; it doesn't work with symlinks.
Packit Service fdd496
	(srcs, distfiles, diff_o, diff3_o, sdiff_o): Rename quotearg.c to
Packit Service fdd496
	quotesys.c and quotearg.h to quotesys.h.
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_PATH_PROG): Add PR_PROGRAM.
Packit Service fdd496
	If available, prefer support for large files unless the user specified
Packit Service fdd496
	one of the CPPFLAGS, LDFLAGS, or LIBS variables.
Packit Service fdd496
	(AC_STRUCT_ST_RDEV): Add.
Packit Service fdd496
	(HAVE_ST_FSTYPE_STRING): Add.
Packit Service fdd496
	(--with-mvfs-stat-bug, --with-nfs-stat-bug): New options.
Packit Service fdd496
	(HAVE_MEMCHR): New macro.
Packit Service fdd496
	(AC_CHECK_FUNCS): Add sicprocmask.
Packit Service fdd496
Packit Service fdd496
	* diff.h (XTERN): Renamed from EXTERN.
Packit Service fdd496
	(struct filedata): Remove dir_p arg.
Packit Service fdd496
	(struct comparison): New type.
Packit Service fdd496
	(diff_2_files, diff_dirs)" Ise ot/
Packit Service fdd496
	(error): Add printf attribute if applicable.
Packit Service fdd496
	(free_software_msgid): New decl.
Packit Service fdd496
	(pr_program): New decl.
Packit Service fdd496
	(fatal): Add noreturn attribute.
Packit Service fdd496
	(pfatal_with_name): Likewise.
Packit Service fdd496
Packit Service fdd496
	* system.h (__attribute__): New macro.
Packit Service fdd496
	(getenv): Don't declare if HAVE_STDLIB_H.
Packit Service fdd496
	(CHAR_MAX): New macro.
Packit Service fdd496
	(<locale.h>): New include.
Packit Service fdd496
	(<locale.h>): Include before <libintl.h>.
Packit Service fdd496
	(could_be_mvfs_stat_bug, could_be_nfs_stat_bug,
Packit Service fdd496
	dev_may_have_duplicate_ino, same_special_file): New macros.
Packit Service fdd496
	(same_file): Use them.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (authorship_msgid): New var.
Packit Service fdd496
	(free_software_msgid): New decl.
Packit Service fdd496
	(error): Now has printf attribute.
Packit Service fdd496
	(try_help): Likewise.
Packit Service fdd496
	(long_options): Don't assume ASCII.
Packit Service fdd496
	(try_help): Now accepts operand arg.
Packit Service fdd496
	(main): Check for -1, not EOF, when calling getopt_long.
Packit Service fdd496
	Report --ignore-initial value when complaining about it.
Packit Service fdd496
	Output copyright and free software info with -v.
Packit Service fdd496
	Don't assume ASCII.
Packit Service fdd496
	Report last operand when one is missing.
Packit Service fdd496
	Report text of extra operand.
Packit Service fdd496
	Move block_read into cmpbuf.c.
Packit Service fdd496
Packit Service fdd496
	* diff.c (authorship_msgid): New var.
Packit Service fdd496
	(quotesys.h): Include.
Packit Service fdd496
	(ck_atoi): Remove.
Packit Service fdd496
	(function_regexp_list, ignore_regexp_list): Now static.
Packit Service fdd496
	(binary_flag): Renamed from binary_I_O.
Packit Service fdd496
	(entire_new_file_flag, unidirectional_new_file_flag,
Packit Service fdd496
	print_file_same_flag): Now static.
Packit Service fdd496
	(numeric_arg): Renamed from ck_atoi.
Packit Service fdd496
	New argument specifying the argument type.
Packit Service fdd496
	(longopts, main): Don't assume ASCII.
Packit Service fdd496
	(longopts): Remove old aliases --file-label, --entire-new-file,
Packit Service fdd496
	--ascii, --print.
Packit Service fdd496
	(main): Check for -1, not EOF, when calling getopt_long.
Packit Service fdd496
	Use numeric_arg to report errors.
Packit Service fdd496
	Report error if -l specified but pagination is not supported.
Packit Service fdd496
	Report error if -S is specified twice with conflicting values.
Packit Service fdd496
	Have --version conform to the new GNU standards.
Packit Service fdd496
	Add new --from-file, --to-file, --inhibit-hun,-merge options.
Packit Service fdd496
	Make the horizon at least as large as the context.
Packit Service fdd496
	Add casts to pacify gcc -Wall.
Packit Service fdd496
	(try_help): Add operand arg.
Packit Service fdd496
	(option_help_msgid): Doc fix to match above.
Packit Service fdd496
	(usage): Indent option_help_msgid.
Packit Service fdd496
	(compare_files): Now takes struct comparison
Packit Service fdd496
	instead of two directory names and a depth.
Packit Service fdd496
	(NONEXISTENT, UNOPENED, ERRNO_ENCODE, ERRNO_DECODE):
Packit Service fdd496
	New macros.
Packit Service fdd496
	(DIR_P): New macro.
Packit Service fdd496
	Report error if fflush does.
Packit Service fdd496
Packit Service fdd496
	* cmpbuf.c (block_read): Moved here from cmp.c.
Packit Service fdd496
Packit Service fdd496
	* cmpbuf.h (block_read): New decl.
Packit Service fdd496
Packit Service fdd496
	* io.c (cmpbuf.h): Include.
Packit Service fdd496
	(slurp): Check for arithmetic overflow when computing buffer size.
Packit Service fdd496
Packit Service fdd496
	* dir.c (diff_dirs): Check for recursive directory loop.
Packit Service fdd496
	Arg is now struct comparison const *.
Packit Service fdd496
	(dir_loop): New function
Packit Service fdd496
Packit Service fdd496
	* analyze.c (no_discards): Remove.
Packit Service fdd496
	(inhibit): Remove.
Packit Service fdd496
	(shift_boundaries): Don't inhibit.  If inhibit_hunk_merge is nonzero,
Packit Service fdd496
	don't merge hunks.
Packit Service fdd496
	(briefly_report): Now returns 2 if trouble, CHANGES otherwise.
Packit Service fdd496
	(diff_2_files): Now takes struct comparison.  If briefly_report reports
Packit Service fdd496
	trouble, pass it on to caller.
Packit Service fdd496
Packit Service fdd496
	* side.c (print_half_line): Add brackets to pacify GCC -Wall.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (quotesys.h): Include.
Packit Service fdd496
	(DIFF_PROGRAM, DEFAULT_EDITOR_PROGRAM): Remove.
Packit Service fdd496
	(free_software_msgid, editor_program, not_found): New vars.
Packit Service fdd496
	(diffbin, edbin): Remove.
Packit Service fdd496
	(editor_program): Renamed from edbin.
Packit Service fdd496
	(edit, interact): Now take extra string arg.
Packit Service fdd496
	(exiterr, fatal, perror_fatal, try_help): Add noreturn attribute.
Packit Service fdd496
	(sigset_t, sigemptyset, sigmask, sigaddset, SIG_BLOCK, SIG_SETMASK):
Packit Service fdd496
	(sigprocmask): New macros, if !HAVE_SIGPROCMASK.
Packit Service fdd496
	(error): Now has printf attribute.
Packit Service fdd496
	(longopts, main): Don't assume ASCII.
Packit Service fdd496
	(try_help): New operand arg.
Packit Service fdd496
	(usage): Conform to new GNU standards.
Packit Service fdd496
	(main): Set static vars for editor and diff program.
Packit Service fdd496
	Compare getopt_long result to -1, not EOF.
Packit Service fdd496
	-v conforms to new GNU standard.
Packit Service fdd496
	Complain better about extra and missing operands.
Packit Service fdd496
	If HAVE_VFORK, block SIGINT and SIGPIPE in the parent, since when
Packit Service fdd496
	the child munges its handlers it may somp on the parent.
Packit Service fdd496
	Pass rname to intract.
Packit Service fdd496
	Translate not-found message before forking.
Packit Service fdd496
	(give_help): Just output it all at once.
Packit Service fdd496
	(edit): New args lname, lline, rname, rline.
Packit Service fdd496
	(edit): New command 'd'.
Packit Service fdd496
	(interact): New args lname, rname.
Packit Service fdd496
Packit Service fdd496
	* util.c (quotesys.h): Include.
Packit Service fdd496
	(PR_PROGRAM): New macro.
Packit Service fdd496
	(pfatal_with_name): Abort if error returns.
Packit Service fdd496
	(fatal): Likewise.
Packit Service fdd496
	(print_message_queue): Free message chain after printing.
Packit Service fdd496
	(currently_recursive): Renamed from current_depth, and now a boolean.
Packit Service fdd496
	(begin_output): Report error if fflush does.
Packit Service fdd496
	Avoid stdio and gettext in child.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (quotesys.h): Include.
Packit Service fdd496
	(free_software_msgid): New decl.
Packit Service fdd496
	(RANGE_START, RANGE_END): Renamed from START and END.
Packit Service fdd496
	(fatal, perror_with_exit, try_help): Add noreturn attribute.
Packit Service fdd496
	(error): Add printf attribute.
Packit Service fdd496
	(diff_program): Now a ptr, not an array.
Packit Service fdd496
	Initialize to DEFAULT_DIFF_PROGRAM instead of DIFF_PROGRAM.
Packit Service fdd496
	(longopts, main): Don't assume ASCII.
Packit Service fdd496
	(main): Use DIFF environment var to specify name of diff program.
Packit Service fdd496
	Compare getopt_long result to -1, not EOF.
Packit Service fdd496
	-v now reports version according to new GNU standard.
Packit Service fdd496
	Report spelling of extra operand, or last operand before missing one.
Packit Service fdd496
	(try_help): Now takes operand arg.
Packit Service fdd496
	(option_help_ms): Fix typo: missing comma.
Packit Service fdd496
	(usage): Update as per current GNU standards.
Packit Service fdd496
	(environ): Remove decl.
Packit Service fdd496
	(read_diff): Invoke diff with --inhibit-hunk-merge.
Packit Service fdd496
	Translate `not found' message before forking.
Packit Service fdd496
	Quote name of diff program.
Packit Service fdd496
	Pass horizon lines.
Packit Service fdd496
	`memory exhausted' -> `Memory exhausted'
Packit Service fdd496
Packit Service fdd496
	* pc/makefile (%.exe): Remove.
Packit Service fdd496
	(pc-clean): Remove *.exe
Packit Service fdd496
	* pc/makefile.sed (DEFAULT_DIFF_PROGRAM): Renamed from DIFF_PROGRAM.
Packit Service fdd496
	When editing mkinstalldirs rule, look for exec_prefix and prefix.
Packit Service fdd496
	Add .exe when installing files.
Packit Service fdd496
	* pc/emx/config.h (same_file): Add.
Packit Service fdd496
	* pc/config.h (same_file): Remove.
Packit Service fdd496
	* pc/djgpp/config.h: Adjust to latest patch from eliz.
Packit Service fdd496
	* pc/djgpp/makefile.sed: Don't alter PROGRAMS.
Packit Service fdd496
	* pc/pc.c: Update FSF address.
Packit Service fdd496
	(quote_system_arg): Renamed from system_quote_arg.
Packit Service fdd496
Packit Service fdd496
	* README: Add --with-mvfs-stat-bug, --with-nfs-stat-bug.
Packit Service fdd496
Packit Service fdd496
	* getmsgids: Add copyright date and update FSF address.
Packit Service fdd496
Packit Service fdd496
	* diff.texi: Document recent changes.
Packit Service fdd496
	The patch doc still corresponds to patch 2.2, unfortunately.
Packit Service fdd496
	Update GNU bug reporting address.  Omit Larry Wall's address;
Packit Service fdd496
	it's obsolete and he's busy with perl.
Packit Service fdd496
Packit Service fdd496
	* context.c: Fix spacing.
Packit Service fdd496
Packit Service fdd496
	* NEWS: Mention --from-file=FILE, --to-file=FILE, ed.
Packit Service fdd496
Packit Service fdd496
	* acconfig.h, freesoft.c, message/de.po, message/en_UK.po,
Packit Service fdd496
	message/es.po, message/fr.po, message/pl.po, message/sv.po:
Packit Service fdd496
	New files.
Packit Service fdd496
Packit Service fdd496
	* ed.c: Remove `#if 0'ed code.
Packit Service fdd496
Packit Service fdd496
	* normal.c, waitpid.c: Update FSF address.
Packit Service fdd496
Packit Service fdd496
1998-03-15  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* quotesys.c: Renamed from quotearg.c.
Packit Service fdd496
Packit Service fdd496
	* quotesys.h: Renamed from quotearg.h
Packit Service fdd496
	(__QUOTESYS_P): Renamed from __QUOTEARG_P.
Packit Service fdd496
Packit Service fdd496
1997-05-05  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* quotesys.c, quotesys.h: New file.
Packit Service fdd496
Packit Service fdd496
Mon Nov 14 05:10:56 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	Add internationalization support.
Packit Service fdd496
	Several messages have been changed slightly,
Packit Service fdd496
	to make them more consistent and easier to translate.
Packit Service fdd496
	All strings that are messages are passed through gettext once before
Packit Service fdd496
	being used, so that they can be localized.
Packit Service fdd496
	Each function and macro whose first parameter is a gettext msgid
Packit Service fdd496
	has had its first parameter's name changed so it ends in `msgid'.
Packit Service fdd496
	All arrays of msgids have had their names changed to end in `msgid'.
Packit Service fdd496
	`getmsgids' uses this to determine which strings are msgids.
Packit Service fdd496
Packit Service fdd496
	* pc/COPYING, pc/INSTALL, pc/config.h,
Packit Service fdd496
	pc/djgpp/config.h, pc/djgpp/makefile.sed,
Packit Service fdd496
	pc/emx/config.h, pc/emx/diff.def, pc/emx/gnuregex.def,
Packit Service fdd496
	pc/emx/makefile.sed,
Packit Service fdd496
	pc/makefile, pc/makefile.sed, pc/pc.c: New files, for PC support.
Packit Service fdd496
Packit Service fdd496
	* getmsgids: New file.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (PACKAGE, VERSION, diffutils_srcs, D): New vars.
Packit Service fdd496
	(version.c, version.texi, messages.po): New files.
Packit Service fdd496
	messages.po is built automatically from source files and `getmsgids'.
Packit Service fdd496
	(distfiles): Add them, pc/*, and getmsgids.
Packit Service fdd496
	(diff.info): Now depends on version.texi.
Packit Service fdd496
	(realclean): Clean messages.po, version.*.
Packit Service fdd496
	(dist): Just build $D.tar.gz.
Packit Service fdd496
	($D.tar.gz): New file, takes over old `dist' function.
Packit Service fdd496
	Don't assume $(distfiles) are all in same directory.
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_CHECK_HEADERS): Add libintl.h, locale.h.
Packit Service fdd496
	(AC_CHECK_LIB): Check for -lintl.
Packit Service fdd496
Packit Service fdd496
	* analyze.c (briefly_report): Rewrite `message (A?"B":"C")' as
Packit Service fdd496
	`if (A) message ("B") : message ("C")'; this is for getmsgids.
Packit Service fdd496
	(briefly_report, diff_2_files): For label, use file_label if set.
Packit Service fdd496
	* diff.c (compare_files): Likewise.
Packit Service fdd496
Packit Service fdd496
	* system.h (gettext): Declare; use a stub if ! HAVE_LIBINTL_H.
Packit Service fdd496
	(setlocale): Declare; use a stub if ! HAVE_LOCALE_H.
Packit Service fdd496
Packit Service fdd496
	* cmp.c, diff.c, diff3.c, sdiff.c (main):
Packit Service fdd496
	Invoke setlocale first thing, to tell library we're internationalized.
Packit Service fdd496
	(option_help_msgid): New constant.
Packit Service fdd496
	(usage): Use it, so message is translated one option at a time.
Packit Service fdd496
	* sdiff (help_msgid, give_help): Likewise.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (sprintc): Renamed from `printc'.
Packit Service fdd496
	Now outputs to a buffer instead of stdout.
Packit Service fdd496
	(cmp): Use new sprintc; it's easier to internationalize.
Packit Service fdd496
Packit Service fdd496
	* diff.c (main): -D FOO now outputs `/* ! FOO */ instead of
Packit Service fdd496
	`/* not FOO */'.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (version_string): Fix decl typo: `const' was missing.
Packit Service fdd496
	(trapsigs): Ignore sigaction failure, to be compatible with `signal'.
Packit Service fdd496
Packit Service fdd496
	* util.c (struct msg, message5, print_message_queue):
Packit Service fdd496
	Allocate just one block of memory to save a message.
Packit Service fdd496
Packit Service fdd496
Wed Nov  9 17:42:44 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (trapsigs): Don't check signal return value, since it's
Packit Service fdd496
	bogus under djgpp.
Packit Service fdd496
Packit Service fdd496
Mon Oct 31 07:27:27 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (srcs, diff_o, diff3_o, sdiff_o):
Packit Service fdd496
	New files quote.c, quote.o.
Packit Service fdd496
Packit Service fdd496
	* diff.h (function_regexp, ignore_regexp): Replace lists of compiled
Packit Service fdd496
	regexps with these single compiled regexps.  All users changed.
Packit Service fdd496
	(regexp_list,function_regexp_list,ignore_regexp_list): Move to diff.c.
Packit Service fdd496
	* diff.c (add_regexp): Build one big regexp instead of a regexp list.
Packit Service fdd496
	(summarize_regexp_list): New function.
Packit Service fdd496
	(regexp_list): Redesigned struct; moved here from diff.h.
Packit Service fdd496
	(function_regexp_list, ignore_regexp_list): Likewise, for vars.
Packit Service fdd496
Packit Service fdd496
	* context.c (find_function): Simplify interface:
Packit Service fdd496
	don't return size of function line.  All callers changed.
Packit Service fdd496
	(print_context_script, find_function): INT_MAX now denotes no
Packit Service fdd496
	previous match; this is simpler than `- file->prefix_lines - 1'.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (read_diff): Quote arguments with system_quote_arg.
Packit Service fdd496
	* sdiff.c (main): Use system_quote_arg to compute command.
Packit Service fdd496
	* diff.c (option_list): Quote options with system_quote_arg.
Packit Service fdd496
	* util.c (begin_output): Use system_quote_arg to compute command.
Packit Service fdd496
Packit Service fdd496
	* util.c (pr_program): New var.
Packit Service fdd496
	(analyze_hunk): Fix off-by-1 line length bug.
Packit Service fdd496
	Match with one big regexp instead of a list of regexps.
Packit Service fdd496
	Use new `trivial_length' local instead of comparing first byte to `\n'.
Packit Service fdd496
	Help the compiler with linbuf local vars.
Packit Service fdd496
Packit Service fdd496
	* system.h (system_quote_arg):
Packit Service fdd496
	New function; replaces SYSTEM_QUOTE_ARG macro.
Packit Service fdd496
Packit Service fdd496
Sat Oct 15 20:09:12 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* system.h (_tolower): Define if not already defined.
Packit Service fdd496
	* io.c (find_and_hash_each_line): Change tolower to _tolower; this
Packit Service fdd496
	speeds up diff -i considerably on some hosts (e.g. Solaris 2.3).
Packit Service fdd496
	* util.c (line_cmp): Likewise.
Packit Service fdd496
	* ifdef.c (groups_letter_value): Likewise.
Packit Service fdd496
Packit Service fdd496
	* diff.h (ignore_some_line_changes): Remove.  All users changed.
Packit Service fdd496
	* io.c (find_and_hash_each_line): Don't invoke line_cmp if the length
Packit Service fdd496
	differs and -i is in force.  Don't assume ISSPACE ('\n') is nonzero.
Packit Service fdd496
Packit Service fdd496
	* diff.h (xmalloc_exit_failure): New variable.
Packit Service fdd496
	All `main' programs set this variable at the start.
Packit Service fdd496
	xmalloc and xrealloc are now taken from GNU library.
Packit Service fdd496
	* cmp.c (main): Align buffer size to word size; some mallocs care.
Packit Service fdd496
	* io.c (slurp): Likewise.
Packit Service fdd496
	* diff.c (add_exclude): Can now assume xrealloc (0, ...) works.
Packit Service fdd496
	(add_regexp): Free storage on failure.  Allocate storage all at one go.
Packit Service fdd496
	* system.h (malloc, realloc): Remove unused declarations.
Packit Service fdd496
	* diff3.c, sdiff.c, util.c (xmalloc, xrealloc): Remove.
Packit Service fdd496
	* sdiff.c (diffarg): Take advantage of cleaner xrealloc semantics.
Packit Service fdd496
Packit Service fdd496
	* io.c (ROL): Use sizeof to make it more generic.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (common_o): New variable.
Packit Service fdd496
	Link error.o and xmalloc.o into all programs.
Packit Service fdd496
	(check): Depend on $(PROGRAMS).
Packit Service fdd496
Packit Service fdd496
	* diff.h (error): Change to GNU library standard.  All callers changed.
Packit Service fdd496
	* diff3.c (main): Use strerror (EISDIR) instead of "Is a directory".
Packit Service fdd496
	(fatal, perror_with_exit): Use `error'.
Packit Service fdd496
	* util.c (perror_with_name, fatal): Use GNU `error'.
Packit Service fdd496
	(error): Remove.
Packit Service fdd496
Packit Service fdd496
Wed Oct 12 17:04:40 1994  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* cmp.c (main): Set xmalloc_exit_failure.
Packit Service fdd496
Packit Service fdd496
Sat Oct  1 05:24:19 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* Version 2.7 released.
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_HEADER_SYS_WAIT): Add.
Packit Service fdd496
	(AC_CHECK_HEADERS): Remove sys/wait.h.
Packit Service fdd496
	(AC_CHECK_FUNCS): Add tmpnam.
Packit Service fdd496
	* system.h (<sys/wait.h>, WEXITSTATUS): Use simpler scheme
Packit Service fdd496
	now that HAVE_SYS_WAIT_H is not set on hosts
Packit Service fdd496
	that are incompatible with Posix applications.
Packit Service fdd496
Packit Service fdd496
	* util.c (dir_file_pathname): Use filename_lastdirchar not strrchr.
Packit Service fdd496
	* sdiff.c (expand_name): Likewise.
Packit Service fdd496
	(private_tempnam): Use tmpnam if HAVE_TMPNAM; this simplifies porting.
Packit Service fdd496
	(exists, letters): Omit if HAVE_TMPNAM.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (read_diff): If STAT_BLOCKSIZE yields zero,
Packit Service fdd496
	adjust it to a more reasonable value.
Packit Service fdd496
Packit Service fdd496
Sat Sep 24 20:36:40 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (exists, private_tempname): Adopt latest GNU libc algorithm.
Packit Service fdd496
	(private_tempnam): Specialize for sdiff to avoid portability problems.
Packit Service fdd496
Packit Service fdd496
Thu Sep 22 16:47:00 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_ARG_PROGRAM): Added.
Packit Service fdd496
	(AC_OUTPUT): Add [date > stamp-h].
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (DEFAULT_EDITOR_PROGRAM, DIFF_PROGRAM, LIBOBJS,
Packit Service fdd496
	NULL_DEVICE, PR_PROGRAM, PROGRAMS): New variables.
Packit Service fdd496
	(check, stamp-h.in, cmp.o, util.o): New targets.
Packit Service fdd496
	(edit_program_name): New variable; replaces old binprefix method.
Packit Service fdd496
	(install, uninstall): Use it.
Packit Service fdd496
	(binprefix): Removed.
Packit Service fdd496
	(distfiles): Add stamp-h.in.
Packit Service fdd496
	(clean): Clean stamp-h.
Packit Service fdd496
	(config.hin, config.h): Use timestamp files.
Packit Service fdd496
	(cmp_o): Add $(LIBOBJS).
Packit Service fdd496
	(install): Install info files from srcdir if they're not in `.'.
Packit Service fdd496
Packit Service fdd496
	* cmp.c, io.c (word): Don't define if already defined.
Packit Service fdd496
Packit Service fdd496
	* comp.c (main): Use setmode, not open(..., O_BINARY); this gets stdin.
Packit Service fdd496
	Use NULL_DEVICE instead of "/dev/null".
Packit Service fdd496
	(cmp): Use %lu instead of %ld when it is more likely to be right.
Packit Service fdd496
Packit Service fdd496
	* diff.h (PR_FILE_NAME): Rename to PR_PROGRAM and move to Makefile.in,
Packit Service fdd496
	util.c.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (main): Give proper diagnostic if too many labels were given.
Packit Service fdd496
	(read_diff): Use SYSTEM_QUOTE_ARG.
Packit Service fdd496
Packit Service fdd496
	* system.h: <string.h>: Include if HAVE_STRING_H, too.
Packit Service fdd496
	<ctype.h>: Include here.  All includers changed.
Packit Service fdd496
	(CTYPE_DOMAIN, ISDIGIT, ISPRINT, ISSPACE, ISUPPER): New macros that
Packit Service fdd496
	work around common <ctype.h> problems.
Packit Service fdd496
	(O_BINARY): Remove.
Packit Service fdd496
	(SYSTEM_QUOTE_ARG): New macros.
Packit Service fdd496
Packit Service fdd496
	* diff.c: Add comment.
Packit Service fdd496
Packit Service fdd496
	* util.c (PR_PROGRAM): Moved here from diff.h.
Packit Service fdd496
	(begin_output): Use SYSTEM_QUOTE_ARG.
Packit Service fdd496
Packit Service fdd496
	* io.c (read_files): Set mode to binary before returning 1.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (TMPDIR_ENV): New macro.
Packit Service fdd496
	(DEFAULT_EDITOR_PROGRAM): Renamed from DEFAULT_EDITOR for consistency.
Packit Service fdd496
	(expand_name): Change `isdir' to `is_dir' to avoid theoretical ctype
Packit Service fdd496
	namespace contamination.
Packit Service fdd496
	(main): Use SYSTEM_QUOTE_ARG.
Packit Service fdd496
	(private_tempnam): Don't access "/tmp" directly; use PVT_tmpdir.
Packit Service fdd496
Packit Service fdd496
Tue Sep 13 18:46:43 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_FUNC_MEMCHR): Remove.  Autoconf didn't adopt this,
Packit Service fdd496
	since we need not worry about an old experimental library
Packit Service fdd496
	where memchr didn't work.
Packit Service fdd496
	(AC_FUNC_MEMCMP): Not needed, since we only test for equality.
Packit Service fdd496
	(AC_REPLACE_FUNCS): Add test for memchr.
Packit Service fdd496
	(AC_CHECK_FUNCS): Check for memchr, not memcpy, since it'll be cached.
Packit Service fdd496
	(AC_CHECK_HEADERS): Add string.h; regex.c uses on some old hosts.
Packit Service fdd496
Packit Service fdd496
	* system.h (memcmp): Define in terms of bcmp.
Packit Service fdd496
	Use HAVE_MEMCHR to test for all mem* routines.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (srcs): Remove memcmp.c.
Packit Service fdd496
	We use bcmp if memcmp doesn't work, since we only test for equality.
Packit Service fdd496
Packit Service fdd496
Mon Sep 12 15:52:22 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_CONFIG_HEADER): Rename config.h.in to config.hin.
Packit Service fdd496
	(AC_ISC_POSIX, AC_MINIX): Go back to these old names for Autoconf 2.
Packit Service fdd496
	(AC_CHECK_HEADERS): Remove now-redundant check for <string.h>.
Packit Service fdd496
	(AC_CHECK_FUNCS): Check for strchr.
Packit Service fdd496
	(AC_FUNC_MEMCHR, AC_FUNC_MEMCMP, AC_CHECK_FUNCS): Use special-purpose
Packit Service fdd496
	macros when suitable.
Packit Service fdd496
	* memcmp.c: New file.
Packit Service fdd496
	* Makefile.in (CPPFLAGS, DEFS, CFLAGS, LDFLAGS, prefix, exec_prefix):
Packit Service fdd496
	Default to autoconf-specified strings.
Packit Service fdd496
	(COMPILE): Use the defaults.
Packit Service fdd496
	(srcs): Add memcmp.c.
Packit Service fdd496
	(distfiles): Rename config.h.in->config.hin, install.sh->install-sh.
Packit Service fdd496
	(Makefile, config.h, config.hin, config.status): Rework for
Packit Service fdd496
	compatibility with Autoconf 2.
Packit Service fdd496
	* io.c (binary_file_p): Assume non-broken memchr.
Packit Service fdd496
	* memchr.c: Assume compiler understands void *; otherwise
Packit Service fdd496
	we don't match GCC's internal declaration of memchr.
Packit Service fdd496
	* system.h: Use more modern autoconf approach to standard C headers.
Packit Service fdd496
	* version.c: Include <config.h>, not "config.h".
Packit Service fdd496
Packit Service fdd496
	* diff.c, diff.h (ignore_some_line_changes):
Packit Service fdd496
	New variable; replaces `length_varies'.
Packit Service fdd496
	(line_end_char): Replace with '\n'; it wasn't being used consistently.
Packit Service fdd496
Packit Service fdd496
	* io.c (find_and_hash_each_line): Fix inconsistencies with -b -w -i and
Packit Service fdd496
	incomplete lines.  Put incomplete lines into their own bucket.
Packit Service fdd496
	This means line_cmp no longer needs line length arguments,
Packit Service fdd496
	and equivalence classes' line lengths no longer need to include \n.
Packit Service fdd496
	Invoke line_cmp only if ignore_some_line_changes.
Packit Service fdd496
	(prepare_text_end): -B no longer ignores missing newlines.
Packit Service fdd496
	(read_files): Allocate another bucket for incomplete lines.
Packit Service fdd496
Packit Service fdd496
	* util.c (line_cmp): Now takes just two arguments.  No longer
Packit Service fdd496
	optimizes for common case of exact equality; the caller does that
Packit Service fdd496
	optimization now.  The caller is changed accordingly.
Packit Service fdd496
	Optimize for the common case of mostly equality.
Packit Service fdd496
	Use isupper+tolower instead of islower+toupper, for consistency.
Packit Service fdd496
Packit Service fdd496
	* waitpid.c (waitpid): Fix typo with internal scoping.
Packit Service fdd496
Packit Service fdd496
Thu Sep  8 08:23:15 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* configure.in: Revamp for Autoconf 2.
Packit Service fdd496
	* memchr.c, waitpid.c: New source files for substitute functions.
Packit Service fdd496
	* Makefile.in (diff_o, diff3_o, sdiff_o): Add $(LIBOBJS).
Packit Service fdd496
	(srcs): Add memchr.c, waitpid.c.
Packit Service fdd496
	(distfiles): Add install.sh, memchr.c, waitpid.c, install.sh.
Packit Service fdd496
	* system.h: Use Autoconf 2 style HAVE_DIRENT_H etc. macros for dirs.
Packit Service fdd496
	* dir.c (dir_sort): Prefer NAMLEN (p) to strlen (p->d_name).
Packit Service fdd496
	Change VOID_CLOSEDIR to CLOSEDIR_VOID for Autoconf 2.
Packit Service fdd496
	* sdiff.c, util.c (memchr, waitpid): Remove; use new substitutes.
Packit Service fdd496
	* diff3.c (read_diff): Use new waitpid substitute.
Packit Service fdd496
Packit Service fdd496
	* cmp.c, diff.c, diff3.c, sdiff.c (check_stdout, try_help): New fns.
Packit Service fdd496
	(usage): Just print more detailed usage message; let caller exit.
Packit Service fdd496
	* diff.c (option_help): New variable.
Packit Service fdd496
	(filetype): Add Posix.1b file types.
Packit Service fdd496
Packit Service fdd496
Fri Sep  2 16:01:49 1994  Paul Eggert  <eggert@twinsun.com>
Packit Service fdd496
Packit Service fdd496
	* configure.in: Switch to new autoconf names.  Add sys/file.h test.
Packit Service fdd496
	* Makefile.in (distclean): Clean config.cache, config.log
Packit Service fdd496
	(used by new autoconf).
Packit Service fdd496
Packit Service fdd496
	* diff.c, diff3.c, (main), sdiff.c (trapsigs): If we'll have children,
Packit Service fdd496
	make sure SIGCHLD isn't ignored.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (DIFF_CHUNK_SIZE): Removed.  Get size from STAT_BLOCKSIZE.
Packit Service fdd496
	(INT_STRLEN_BOUND): New macro.
Packit Service fdd496
Packit Service fdd496
	* ifdef.c (format_group, groups_letter_value):
Packit Service fdd496
	Use * instead of [] in prototypes.
Packit Service fdd496
Packit Service fdd496
	* system.h: Include <sys/file.h> only if HAVE_SYS_FILE_H.
Packit Service fdd496
	(S_IXGRP, S_IXOTH, S_IXUSR): Remove unused macros.
Packit Service fdd496
Packit Service fdd496
	* util.c (begin_output): Check fdopen result.
Packit Service fdd496
Packit Service fdd496
	The following changes simplify porting to non-Posix environments.
Packit Service fdd496
	* cmp.c, diff.c, diff3.c, sdiff.c, (main): Call initialize_main first.
Packit Service fdd496
	* diff.c (binary_I_O): New variable for --binary option.
Packit Service fdd496
	(main, usage, compare_files): Support --binary option.
Packit Service fdd496
	(compare_files): Use filename_lastdirchar to find last
Packit Service fdd496
	directory char in a file name.
Packit Service fdd496
	* cmp.c (main), diff.c (compare_files), dir.c (compare_names,
Packit Service fdd496
	diff_dirs): Use filename_cmp to compare file names.
Packit Service fdd496
	Use same_file to determine whether two files are the same.
Packit Service fdd496
	* context.c (print_context_label): Check whether ctime yields 0.
Packit Service fdd496
	* diff3.c (read_diff), sdiff.c (cleanup, main, waitpid),
Packit Service fdd496
	util.c (begin_output): Use popen+pclose if !HAVE_FORK.
Packit Service fdd496
	* io.c (sip): If HAVE_SETMODE, test for binary files in O_BINARY mode.
Packit Service fdd496
	* sdiff.c (ck_fdopen): Function removed.
Packit Service fdd496
	(edit): Use system if !HAVE_FORK.
Packit Service fdd496
	(execdiff): Now assumes caller has pushed all args, plus trailing 0.
Packit Service fdd496
	All callers changed.
Packit Service fdd496
	(private_tempnam): Try TMP if TMPDIR isn't defined.
Packit Service fdd496
	Fit temporary filenames into 8.3 limit.
Packit Service fdd496
	* system.h (STAT_BLOCKSIZE): Don't define if already defined.
Packit Service fdd496
	(min, max): Undef if already defined.
Packit Service fdd496
	(filename_cmp, filename_lastdirchar, HAVE_FORK, HAVE_SETMODE,
Packit Service fdd496
	initialize_main, O_BINARY, same_file): New macros.
Packit Service fdd496
Packit Service fdd496
Fri Jun 17 11:23:53 1994  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (info, dvi, diff.dvi): New targets.
Packit Service fdd496
	(clean): Remove TeX output files.
Packit Service fdd496
Packit Service fdd496
Fri Jun 17 05:37:52 1994  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* cmp.c, io.c (word): Change from typedef to #define, to avoid
Packit Service fdd496
	collision with Unicos 8.0 <sys/types.h>, which also typedefs `word'.
Packit Service fdd496
Packit Service fdd496
Thu Apr 15 00:53:01 1994  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff3.c (scan_diff_line), util.c (print_number_range): Don't
Packit Service fdd496
	rely on promotion to make the old-style parameter type agree
Packit Service fdd496
	with the prototype parameter type; this doesn't work on
Packit Service fdd496
	Apollos running bsd4.3.
Packit Service fdd496
Packit Service fdd496
Mon Jan  3 02:05:51 1994  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (LDFLAGS): Remove -g.  Change all link commands
Packit Service fdd496
	to use both $(CFLAGS) and $(LDFLAGS).
Packit Service fdd496
Packit Service fdd496
Mon Dec 13 12:23:27 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* system.h: Don't assume dirent.h exists just because
Packit Service fdd496
	_POSIX_VERSION is defined.
Packit Service fdd496
Packit Service fdd496
Fri Dec  3 18:39:39 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c (main): allow -pu.
Packit Service fdd496
Packit Service fdd496
Tue Nov 23 03:51:08 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (distclean): Remove config.h.
Packit Service fdd496
Packit Service fdd496
Wed Nov 10 00:28:27 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Version 2.6 released.
Packit Service fdd496
Packit Service fdd496
	* analyze.c (too_expensive): New variable, for heuristic to
Packit Service fdd496
	limit the worst-case cost to O(N**1.5 log N) at the price of
Packit Service fdd496
	producing suboptimal output for large inputs with many differences.
Packit Service fdd496
	(diff_2_files): Initialize it.
Packit Service fdd496
	(struct partition): New type.
Packit Service fdd496
	(SNAKE_LIMIT): New macro; merely documents already-used number 20.
Packit Service fdd496
	(diag): New `minimal' arg; all callers changed.  Put results into
Packit Service fdd496
	struct partition.  Apply `too_expensive' heuristic.  Tune.
Packit Service fdd496
	(compareseq): New `minimal' arg; all callers changed.  Tune.
Packit Service fdd496
	(shift_boundaries): Improve heuristic to also coalesce adjacent runs
Packit Service fdd496
	of changes more often.
Packit Service fdd496
Packit Service fdd496
	* diff.c (long_options, main, usage): Add `--help'.
Packit Service fdd496
	(main): Send version number to stdout, not stderr.
Packit Service fdd496
	(usage): Send usage to stdout, not stderr.
Packit Service fdd496
	(compare_files): Initialize `inf' properly.
Packit Service fdd496
Packit Service fdd496
	* io.c (word): Change to `int'; it makes a big difference on x86.
Packit Service fdd496
	(sip, slurp): Put off allocating room to hold the whole file until we
Packit Service fdd496
	have to read the whole file.  This wins if the file turns out
Packit Service fdd496
	to be binary.
Packit Service fdd496
Packit Service fdd496
	* util.c (xmalloc, xrealloc): "virtual memory" -> "memory"
Packit Service fdd496
	(primes): Omit large primes if INT_MAX is small.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (usage): Send usage to stdout, not stderr.
Packit Service fdd496
	(long_options, main, usage): Add `--help'.
Packit Service fdd496
	(main): Send version number to stdout, not stderr.  Exit afterwards.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (usage): Send usage to stdout, not stderr.
Packit Service fdd496
	(long_options, main, usage): Add `--help'.
Packit Service fdd496
	(read_diff): Detect integer overflow in buffer size calculations.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (word): New type.  All uses of `long' for
Packit Service fdd496
	word-at-a-time comparisons changed to `word'.
Packit Service fdd496
	(long_options, main, usage): Add `--help'.
Packit Service fdd496
	(usage): Send usage to stdout, not stderr.
Packit Service fdd496
	(main): Add `-v'.  Send version number to stdout, not stderr.
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_HAVE_HEADERS): Add unistd.h; remove AC_UNISTD_H.
Packit Service fdd496
Packit Service fdd496
Mon Sep 27 07:20:24 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c (add_exclude_file): Cast memchr to (char *)
Packit Service fdd496
	to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (cmp): Add version.o.
Packit Service fdd496
Packit Service fdd496
	* analyze.c (diff_2_files): Work around memcmp bug with size=0.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (main, usage, version_string): Add --version option.
Packit Service fdd496
Packit Service fdd496
	* system.h (malloc, realloc): Declare only if !HAVE_STDLIB_H.
Packit Service fdd496
	(memchr): Declare only if !HAVE_MEMCHR.  These changes are
Packit Service fdd496
	needed to keep some nonstandard hosts happy.
Packit Service fdd496
Packit Service fdd496
	* util.c (memchr): Make first arg char const *
Packit Service fdd496
	to match standard.
Packit Service fdd496
	(xmalloc, xrealloc): Cast malloc, realloc
Packit Service fdd496
	to (VOID *) to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (xmalloc, xrealloc): Cast malloc, realloc
Packit Service fdd496
	to (VOID *) to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (xmalloc, xrealloc): Cast malloc, realloc
Packit Service fdd496
	to (VOID *) to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
	(lf_copy, lf_skip, lf_snarf): Cast memchr to (char *)
Packit Service fdd496
	to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
	(memchr): Make first arg char const *
Packit Service fdd496
	to match standard.
Packit Service fdd496
Packit Service fdd496
Mon Sep 27 00:23:37 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Version 2.5 released.
Packit Service fdd496
Packit Service fdd496
	* analyze.c (diff_2_files): Work around memcmp bug with size=0.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (main, usage, version_string): Add --version option.
Packit Service fdd496
	* Makefile.in (cmp): Add version.o.
Packit Service fdd496
Packit Service fdd496
	* diff.c (add_exclude_file): Cast memchr to (char *)
Packit Service fdd496
	to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
	* sdiff.c (lf_copy, lf_skip, lf_snarf): Likewise.
Packit Service fdd496
Packit Service fdd496
	* diff3.c, sdiff.c, util.c (xmalloc, xrealloc): Cast malloc, realloc
Packit Service fdd496
	to (VOID *) to suppress bogus warnings on some nonstandard hosts.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c, util.c (memchr): Make first arg char const *
Packit Service fdd496
	to match standard.
Packit Service fdd496
Packit Service fdd496
	* system.h (malloc, realloc): Declare only if !HAVE_STDLIB_H.
Packit Service fdd496
	(memchr): Declare only if !HAVE_MEMCHR.  These changes are
Packit Service fdd496
	needed to keep some nonstandard hosts happy.
Packit Service fdd496
Packit Service fdd496
	* xmalloc.c: Include <sys/types.h> always; some nonstandard hosts
Packit Service fdd496
	need it for size_t even if STDC_HEADERS.
Packit Service fdd496
Packit Service fdd496
Sat Sep 18 01:33:07 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* configure.in (AC_STAT_MACROS_BROKEN): Add.
Packit Service fdd496
	* system.h (S_IS{BLK,CHR,DIR,FIFO,REG,SOCK}): Fix defns if
Packit Service fdd496
	STAT_MACROS_BROKEN.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (diff3, sdiff, cmp): Do not link $(ALLOCA).
Packit Service fdd496
Packit Service fdd496
	* analyze.c (discard_confusing_lines): Make defn static, like decl.
Packit Service fdd496
	* sdiff.c (xmalloc): Likewise.
Packit Service fdd496
Packit Service fdd496
	* ifdef.c (format_group): Ensure isdigit argument isn't < 0.
Packit Service fdd496
Packit Service fdd496
	* side.c (print_half_line): Use isprint, since some hosts lack isgraph.
Packit Service fdd496
	* util.c (output_1_line): Likewise.  Ensure its argument isn't < 0.
Packit Service fdd496
	(xmalloc, xrealloc): Remove needless casts.
Packit Service fdd496
Packit Service fdd496
	* system.h (volatile, const):
Packit Service fdd496
	Define these before including any system headers,
Packit Service fdd496
	so that they're used consistently in all system includes.
Packit Service fdd496
	(getenv, malloc, realloc): Declare even if HAVE_STDLIB_H, since some
Packit Service fdd496
	<stdlib.h>s don't declare them.
Packit Service fdd496
	(memchr): Likewise for <string.h>.
Packit Service fdd496
Packit Service fdd496
	* cmp.c, diff3.c, diff.h, sdiff.c: Include "system.h" first.
Packit Service fdd496
	* diff.c: Remove redundant "system.h" inclusion.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (xmalloc): Now static.
Packit Service fdd496
	(xmalloc, realloc): Remove needless casts.
Packit Service fdd496
	(READNUM): Ensure isdigit argument isn't negative.
Packit Service fdd496
Packit Service fdd496
Wed Sep 14 07:14:15 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Version 2.4 released.
Packit Service fdd496
Packit Service fdd496
	* ifdef.c (scan_char_literal): New function, for new %c'x' and
Packit Service fdd496
	%c'\ooo' format specs.
Packit Service fdd496
	(format_group, print_ifdef_lines): Use it.  Remove %0 format spec.
Packit Service fdd496
Packit Service fdd496
	* cmp.c (cmp): Don't try to read past end of file; this doesn't
Packit Service fdd496
	work on ttys.
Packit Service fdd496
Packit Service fdd496
	* system.h, version.c: #include <config.h>, not "config.h", to allow
Packit Service fdd496
	configuring in a separate directory when the source directory has
Packit Service fdd496
	already been configured.
Packit Service fdd496
	* Makefile.in (COMPILE): New defn, with proper -I options so that
Packit Service fdd496
	`#include <config.h>' works.
Packit Service fdd496
	(.c.o, diff3.o, sdiff.o): Use it.
Packit Service fdd496
Packit Service fdd496
Mon Sep 13 06:45:43 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c (main, longopts): Add --line-format=FORMAT option.
Packit Service fdd496
	(specify_format): Args no longer const pointers.  All callers changed.
Packit Service fdd496
Packit Service fdd496
	* ifdef.c: Add support for %?c, %(A=B?T:E), PRINTF_SPECn formats.
Packit Service fdd496
	(struct group): New struct.
Packit Service fdd496
	(print_ifdef_lines): Use it to simplify argument passing.
Packit Service fdd496
	Remove the convention that last arg -1 signifies that the lines
Packit Service fdd496
	from file 2 are the same as the lines from file 1; this
Packit Service fdd496
	convention no longer works, now that line numbers might be
Packit Service fdd496
	printed out, since the line numbers may differ.
Packit Service fdd496
	Add first FILE * argument to output to.  All callers changed.
Packit Service fdd496
	Use a faster test for the single-fwrite optimization.
Packit Service fdd496
	(format_group, scan_printf_spec, groups_letter_value): New functions.
Packit Service fdd496
Packit Service fdd496
	* diff.h (group_format, line_format): No longer const pointers.
Packit Service fdd496
	(format_ifdef): 1st arg is no longer const pointer.
Packit Service fdd496
Packit Service fdd496
	* configure.in: Configure HAVE_LIMITS_H, HAVE_STDLIB_H.
Packit Service fdd496
	* system.h <limits.h>, <stdlib.h>, <string.h>:
Packit Service fdd496
	Include only if HAVE_LIMITS_H etc.
Packit Service fdd496
Packit Service fdd496
	* system.h (memcmp, memcpy, strchr, strrchr, struct dirent): Prefer
Packit Service fdd496
	these standard names to the traditional names (bcmp, bcpy, index,
Packit Service fdd496
	rindex, struct direct).  All callers changed.
Packit Service fdd496
Packit Service fdd496
	* system.h (PARAMS, VOID):
Packit Service fdd496
	Define earlier so that malloc decl can use VOID.
Packit Service fdd496
	(STAT_BLOCKSIZE): Simplify ersatz defn; just use 8K.
Packit Service fdd496
Packit Service fdd496
Fri Sep  3 00:21:02 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c (compare_files): Two files with the same name must be
Packit Service fdd496
	the same file; avoid a needless `stat' in that case.
Packit Service fdd496
Packit Service fdd496
Fri Aug 27 06:59:03 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Pervasive changes for portability to 64-bit hosts:
Packit Service fdd496
	Add prototypes to function declarations.
Packit Service fdd496
	Use size_t, not int, when needed.
Packit Service fdd496
Packit Service fdd496
	* Other pervasive changes:
Packit Service fdd496
	Use `const' more often.
Packit Service fdd496
	Use STD{IN,OUT,ERR}_FILENO instead of [012].
Packit Service fdd496
	Use 0, not NULL, for portability to broken hosts.
Packit Service fdd496
Packit Service fdd496
	* Makefile.in: (srcs, objs, distfiles, cmp): New files cmpbuf.[ch].
Packit Service fdd496
	(distfiles): New files config.h.in, mkinstalldirs.
Packit Service fdd496
	(.c.o): Add -DHAVE_CONFIG_H.
Packit Service fdd496
Packit Service fdd496
	* analyze.c: (diag): Pacify `gcc -Wall' with a useless assignment.
Packit Service fdd496
	(diff_2_files): Use l.c.m., not max, of files' buffer sizes.
Packit Service fdd496
Packit Service fdd496
	* cmp.c: Make globals static when possible.
Packit Service fdd496
Packit Service fdd496
	(file): Now a 2-element array; replaces `file1' and `file2'.
Packit Service fdd496
	(file_desc, buffer): Likewise, for file[12]_desc and buf[12].
Packit Service fdd496
	(main): Likewise, for stat_buf[12].  Index these variables with `i'.
Packit Service fdd496
Packit Service fdd496
	(ignore_initial): New var.
Packit Service fdd496
	(long_options): Now const.  Add `--ignore-initial'.
Packit Service fdd496
	(usage): Sort options and add `--ignore-initial'.
Packit Service fdd496
	(main, cmp): Add `--ignore-initial' support.
Packit Service fdd496
Packit Service fdd496
	(main): `cmp - -' now succeeds.
Packit Service fdd496
	When comparing standard input to a file, and using a shortcut (e.g.
Packit Service fdd496
	looking at file sizes or inode numbers), take the lseek offset into
Packit Service fdd496
	account before deciding whether the files are identical.
Packit Service fdd496
	Avoid mentioning `dev_t', `ino_t' for portability to nonstandard hosts.
Packit Service fdd496
	Use l.c.m. of files' buffer sizes, not 8 * 1024.
Packit Service fdd496
	ferror (stdout) does not imply errno has a useful value.
Packit Service fdd496
	If 2nd file is "-", treat it first, in case stdin is closed.
Packit Service fdd496
Packit Service fdd496
	(cmp): Always compute `char_number', `smaller' for speed and simplicity.
Packit Service fdd496
	Say `cmp: EOF on input', not `/usr/gnu/bin/cmp: EOF on input',
Packit Service fdd496
	as per Posix.2.
Packit Service fdd496
Packit Service fdd496
	(block_compare_and_count): Increment line_number argument.
Packit Service fdd496
	Remove end_char argument; it's always '\n'.  All callers changed.
Packit Service fdd496
	Do not assume sizeof(long) == 4; this isn't true on some 64-bit hosts.
Packit Service fdd496
	(block_compare): Minimize differences with block_compare_and_count.
Packit Service fdd496
Packit Service fdd496
	(block_read): Coalesce `bp += nread's.
Packit Service fdd496
Packit Service fdd496
	(printc): Remove `FILE *' arg; output to stdout.  All callers changed.
Packit Service fdd496
Packit Service fdd496
	* configure.in: Configure HAVE_SIGACTION, RETSIGTYPE, HAVE_VPRINTF.
Packit Service fdd496
	Configure into config.h.
Packit Service fdd496
Packit Service fdd496
	* context.c (print_context_label):
Packit Service fdd496
	Standard input's st_mtime is no longer a special case
Packit Service fdd496
	here, since `compare_files' now sets it to the current time.
Packit Service fdd496
Packit Service fdd496
	* diff.c (usage): Sort options.
Packit Service fdd496
	(filetype): New function.
Packit Service fdd496
	(compare_files): Set stdin's st_mtime to be the current time.
Packit Service fdd496
	Leave its name "-" instead of changing it to "Standard Input";
Packit Service fdd496
	to test whether a file is stdin, we must compare its name to "-" instead
Packit Service fdd496
	of its desc to 0, since if it's closed other file descs may be 0.
Packit Service fdd496
	When comparing standard input to a file, and using a shortcut (e.g.
Packit Service fdd496
	looking at file sizes or inode numbers), take the lseek offset into
Packit Service fdd496
	account before deciding whether the files are identical.
Packit Service fdd496
	Pretend that nonexistent files have the same filetype as existing files.
Packit Service fdd496
	Rename `errorcount' to `failed', since it's boolean.
Packit Service fdd496
	In directory comparisons, if a file is neither a regular file nor a
Packit Service fdd496
	directory, just print its type and the other file's type.
Packit Service fdd496
Packit Service fdd496
	* diff.h (Is_space, textchar): Remove.
Packit Service fdd496
	(struct msg, msg_chain, msg_chain_end): Move to util.c.
Packit Service fdd496
	(VOID): Move to system.h.
Packit Service fdd496
	(line_cmp, version_string, change_letter, print_number_range,
Packit Service fdd496
	find_change): New decls.
Packit Service fdd496
Packit Service fdd496
	* diff.texi:
Packit Service fdd496
	whitespace -> white space.  It now stands for whatever isspace yields.
Packit Service fdd496
	Add --ignore-initial.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (VOID): Move to system.h.
Packit Service fdd496
	(version_string): Now char[].
Packit Service fdd496
	(usage): Sort options.
Packit Service fdd496
	(process_diff): Pacify `gcc -Wall' with a useless assignment.
Packit Service fdd496
	(read_diff): pid is of type pid_t, not int.  Use waitpid if available.
Packit Service fdd496
	(output_diff3): Simplify test for `\ No newline at end of file' message.
Packit Service fdd496
Packit Service fdd496
	* dir.c (struct dirdata): Rename `files' to `names' to avoid confusion
Packit Service fdd496
	with external struct file_data `files'.
Packit Service fdd496
Packit Service fdd496
	* io.c (line_cmp): Move declaration to diff.h.
Packit Service fdd496
	(textchar): Remove.
Packit Service fdd496
	(find_and_hash_each_line): Use locale's definition of white space
Packit Service fdd496
	instead of using one hardwired defn for -b and another for -w.
Packit Service fdd496
Packit Service fdd496
	* normal.c (change_letter, print_number_range, find_change):
Packit Service fdd496
	Move decls to diff.h.
Packit Service fdd496
	(print_normal_hunk): Now static.
Packit Service fdd496
Packit Service fdd496
	* sdiff.c (SEEK_SET): Move to system.h.
Packit Service fdd496
	(version_string): Now char[], not char*.
Packit Service fdd496
	(private_tempnam): Remove hardcoded limit on temporary file names.
Packit Service fdd496
	(exiterr, perror_fatal, main): When exiting because of a signal,
Packit Service fdd496
	exit with that signal's status.
Packit Service fdd496
	(lf_refill, main, skip_white, edit, interact): Check for signal.
Packit Service fdd496
	(ignore_SIGINT): Renamed from `ignore_signals'.
Packit Service fdd496
	(NUM_SIGS, initial_handler): New macros.
Packit Service fdd496
	(initial_action, signal_received, sigs_trapped): New vars.
Packit Service fdd496
	(catchsig, trapsigs): Use sigaction if possible, since this closes the
Packit Service fdd496
	windows of vulnerability that `signal' has.  Use RETSIGTYPE not void.
Packit Service fdd496
	When a signal comes in, just set a global variable; this is safer.
Packit Service fdd496
	(checksigs, untrapsig): New functions.
Packit Service fdd496
	(edit): Pacify `gcc -Wall' with a useless assignment.
Packit Service fdd496
	Respond to each empty line with help, not to every other empty line.
Packit Service fdd496
	(private_tempnam): Remove hardcoded limit on temporary file name length.
Packit Service fdd496
	Don't assume sizeof (pid_t) <= sizeof (int).
Packit Service fdd496
Packit Service fdd496
	* system.h: (S_IXOTH, S_IXGRP, S_IXUSR,
Packit Service fdd496
	SEEK_SET, SEEK_CUR,
Packit Service fdd496
	STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
Packit Service fdd496
	New macros, if system doesn't define them.
Packit Service fdd496
	(volatile): Don't define if already defined.
Packit Service fdd496
	(PARAMS): New macro.
Packit Service fdd496
	(VOID): Move here from diff.h.
Packit Service fdd496
Packit Service fdd496
	* util.c (struct msg, msg_chain, msg_chain_end): Moved here from diff.h.
Packit Service fdd496
	(message5): New function.
Packit Service fdd496
	(pr_pid): New var.
Packit Service fdd496
	(begin_output): Allocate `name' more precisely.
Packit Service fdd496
	Put child pid into pr_pid, so that we can wait for it later.
Packit Service fdd496
	Don't check execl's return value, since any return must be an error.
Packit Service fdd496
	(finish_output): Detect and report output errors.
Packit Service fdd496
	Use waitpid if available.  Check pr exit status.
Packit Service fdd496
	(line_cmp): Use locale's definition of white space
Packit Service fdd496
	instead of using one hardwired defn for -b and another for -w.
Packit Service fdd496
	(analyze_cmp): Avoid double negation with `! nontrivial'.
Packit Service fdd496
	Pacify `gcc -Wall' be rewriting for-loop into do-while-loop.
Packit Service fdd496
	(dir_file_pathname): New function.
Packit Service fdd496
Packit Service fdd496
	* version.c (version_string): Now char[], not char*.
Packit Service fdd496
Packit Service fdd496
Thu Jul 29 20:44:30 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (config.status): Run config.status --recheck, not
Packit Service fdd496
	configure, to get the right args passed.
Packit Service fdd496
Packit Service fdd496
Thu Jul 22 10:46:30 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (dist): Replace `if [ ! TEST ]; then ACTION; fi'
Packit Service fdd496
	with `[ TEST ] || ACTION || exit' so that the containing for-loop exits
Packit Service fdd496
	with proper status for `make'.
Packit Service fdd496
Packit Service fdd496
Thu Jul  8 19:47:22 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (installdirs): New target.
Packit Service fdd496
	(install): Use it.
Packit Service fdd496
	(Makefile, config.status, configure): New targets.
Packit Service fdd496
Packit Service fdd496
Sat Jun  5 23:10:40 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (dist): Switch from .z to .gz.
Packit Service fdd496
Packit Service fdd496
Wed May 26 17:16:02 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c (main): Cast args to compare_files, for traditional C.
Packit Service fdd496
	* side.c (print_sdiff_common_lines, print_sdiff_hunk): Likewise.
Packit Service fdd496
	* analyze.c, diff3.c, sdiff.c, util.c: Don't assume NULL is defined
Packit Service fdd496
	properly.
Packit Service fdd496
Packit Service fdd496
Tue May 25 14:54:05 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* analyze.c (diff_2_files):  With -q, do not report that files differ
Packit Service fdd496
	if all their differences are ignored.
Packit Service fdd496
	(briefly_report): New function.
Packit Service fdd496
	* diff.h (ignore_some_changes): New variable.
Packit Service fdd496
	* diff.c (compare_files): Don't use the file size shortcut if
Packit Service fdd496
	ignore_some_changes is nonzero, since the file size may differ
Packit Service fdd496
	merely due to ignored changes.
Packit Service fdd496
	(main):  Set ignore_some_changes if we might ignore some changes.
Packit Service fdd496
	Remove unsystematic assignment of 0 to static vars.
Packit Service fdd496
	* io.c (read_files): New argument PRETEND_BINARY says whether to
Packit Service fdd496
	pretend the files are binary.
Packit Service fdd496
Packit Service fdd496
	* diff3.c (tab_align_flag): New variable, for new -T option.
Packit Service fdd496
	(main, usage, output_diff3): Add support for -T.
Packit Service fdd496
Packit Service fdd496
Sun May 23 15:25:29 1993  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* dir.c (dir_sort): Always init `data' to avoid GCC warning.
Packit Service fdd496
Packit Service fdd496
Sat May 22 15:35:02 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (dist): Change name of package from diff to diffutils.
Packit Service fdd496
	Don't bother to build .Z dist; .z suffices.
Packit Service fdd496
Packit Service fdd496
Fri May 21 16:35:22 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* diff.c: Include "system.h" to get memchr declaration.
Packit Service fdd496
	* system.h (memchr): Declare if !HAVE_MEMCHR, not if
Packit Service fdd496
	!HAVE_MEMCHR && !STDC_HEADERS.
Packit Service fdd496
Packit Service fdd496
Wed May 19 17:43:55 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* Version 2.3 released.
Packit Service fdd496
Packit Service fdd496
Fri Apr 23 17:18:44 1993  Paul Eggert  (eggert@twinsun.com)
Packit Service fdd496
Packit Service fdd496
	* io.c (find_identical_ends): Do not discard the last HORIZON_LINES
Packit Service fdd496
	lines of the prefix, or the first HORIZON_LINES lines of the suffix.
Packit Service fdd496
	* diff.c (main, longopts, usage): Add --horizon-lines option.
Packit Service fdd496
	* diff3.c (main, process_diff, read_diff): Invoke second diff
Packit Service fdd496
	with --horizon-lines determined by the first diff.
Packit Service fdd496
	* diff.h, diff3.c (horizon_lines): New variable.
Packit Service fdd496
Packit Service fdd496
Mon Mar 22 16:16:00 1993  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* system.h [HAVE_STRING_H || STDC_HEADERS] (bcopy, bcmp, bzero):
Packit Service fdd496
	Don't define if already defined.
Packit Service fdd496
Packit Service fdd496
Fri Mar  5 00:20:16 1993  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* diff.c (main): Use NULL in arg to compare_files.
Packit Service fdd496
Packit Service fdd496
Thu Feb 25 15:26:01 1993  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* system.h: Declare memchr #if !HAVE_MEMCHR && !STDC_HEADERS,
Packit Service fdd496
	not #if !HAVE_MEMCHR || !STDC_HEADERS.
Packit Service fdd496
Packit Service fdd496
Mon Feb 22 15:04:46 1993  Richard Stallman  (rms@geech.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* io.c (find_identical_ends): Move complicated arg outside GUESS_LINES.
Packit Service fdd496
Packit Service fdd496
Mon Feb 22 12:56:12 1993  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* Makefile.in (.c.o): Add -I$(srcdir); put $(CFLAGS) last before $<.
Packit Service fdd496
Packit Service fdd496
Sat Feb 20 19:18:56 1993  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
Packit Service fdd496
Packit Service fdd496
	* io.c (binary_file_p): Return zero if file size is zero.
Packit Service fdd496
Packit Service fdd496
Fri Feb 19 17:31:32 1993  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
Packit Service fdd496