Blame ChangeLog

Packit 33f14e
2017-05-21  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	version 3.6
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
2017-05-19  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2017-05-18  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update to work with GCC7's -Werror=implicit-fallthrough=
Packit 33f14e
	* src/system.h (FALLTHROUGH): Define.
Packit 33f14e
	Use new FALLTHROUGH macro in place of comments
Packit 33f14e
	* src/cmp.c: FIXME
Packit 33f14e
	* src/diff3.c: FIXME
Packit 33f14e
	* src/ifdef.c: FIXME
Packit 33f14e
	* src/sdiff.c: FIXME
Packit 33f14e
	* src/side.c: FIXME
Packit 33f14e
	* src/util.c: FIXME
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2017-05-09  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	tests: new-file: closed-stdin: also ensure stdout was empty
Packit 33f14e
	* tests/new-file: Also require that "out" be empty.
Packit 33f14e
Packit 33f14e
2017-05-06  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: stop using @acronym{...} in texinfo sources
Packit 33f14e
	* doc/diffutils.texi: Remove all uses of @acronym{...},
Packit 33f14e
	per recommendation by Karl Berry.
Packit 33f14e
	* cfg.mk (local-checks-to-skip): Remove exemption, enabling
Packit 33f14e
	the @acronym{-prohibiting syntax-check rule.
Packit 33f14e
Packit 33f14e
2017-05-05  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	cmp: improve EOF diagnostic
Packit 33f14e
	This improves on yesterday's change, following up on a
Packit 33f14e
	remark by Jim Meyering (Bug#22816#21).
Packit 33f14e
	* doc/diffutils.texi (Invoking cmp, cmp Options): Follow POSIX more
Packit 33f14e
	closely in the documentation of the information appended to the EOF
Packit 33f14e
	diagnostic.
Packit 33f14e
	* src/cmp.c (cmp): Be more specific about the shorter file's length
Packit 33f14e
	and fix some off-by-1 issues in reporting line counts.
Packit 33f14e
	* tests/cmp: Adjust to match new behavior.
Packit 33f14e
	Don't assume internal details about stdio buffering.
Packit 33f14e
Packit 33f14e
2017-05-04  Benno Schulenberg  <bensberg@justemail.net>
Packit 33f14e
Packit 33f14e
	diff: describe each --help option with a single string
Packit 33f14e
	* src/diff.c: To ease translating, fuse four description pieces
Packit 33f14e
	into two whole ones.  Also reword and rewrap one of them to fit
Packit 33f14e
	within eighty characters.
Packit 33f14e
Packit 33f14e
2017-05-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	cmp: report prefix length when one file is shorter
Packit 33f14e
	Requested by Dan Jacobson (Bug#22816).
Packit 33f14e
	* NEWS:
Packit 33f14e
	* doc/diffutils.texi (Invoking cmp, cmp Options): Document this.
Packit 33f14e
	* src/cmp.c (cmp): Implement it.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add cmp.
Packit 33f14e
	* tests/cmp: New file.
Packit 33f14e
Packit 33f14e
2017-05-02  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	tests: add test for latest fix
Packit 33f14e
	* NEWS (Bug fixes): Describe it.
Packit 33f14e
	* tests/invalid-re: New test for just-fixed bug.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2017-04-27  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: don't crash if regexp is invalid
Packit 33f14e
	Problem reported by Marcel Böhme in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2017-04/msg00002.html
Packit 33f14e
	* src/diff.c (add_regexp): Exit if re_compile_pattern fails.
Packit 33f14e
Packit 33f14e
2017-03-24  julama  <julama@fake-box.com>
Packit 33f14e
Packit 33f14e
	tests: avoid false failure for unreadable /proc/cmdline
Packit 33f14e
	* tests/brief-vs-stat-zero-kernel-lies: Use "test -r" rather than
Packit 33f14e
	just "test -f".  This avoids a false test failure on a linux system
Packit 33f14e
	with grsecurity and its GRKERNSEC_PROC_USER option enabled, for which
Packit 33f14e
	/proc/cmdline is unreadable.  Reported in https://bugs.gnu.org/26155
Packit 33f14e
Packit 33f14e
2017-02-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	tests: avoid false failure with some shells on debian, freebsd
Packit 33f14e
	* tests/colors: Move the TERM=dumb setting into the code run by
Packit 33f14e
	"returns_", since some shells do not propagate envvar setting through
Packit 33f14e
	to a use of a function like this.  That would cause this test to fail
Packit 33f14e
	because results were colorized when they should not have been.
Packit 33f14e
	Reported by Nelson Beebe.
Packit 33f14e
Packit 33f14e
2017-01-31  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: add "introduced in 3.4" in latest NEWS entry
Packit 33f14e
	* NEWS: Update.  Also, thanks to Nelson Beebe for reporting this.
Packit 33f14e
Packit 33f14e
	diff: avoid UMR with ---presume-output-tty
Packit 33f14e
	* src/diff.c (main): Always define presume_output_tty.
Packit 33f14e
	Otherwise, it would be read uninitialized.
Packit 33f14e
	Introduced in v3.3-45-g17e2698
Packit 33f14e
	* NEWS (Bug fixes): Mention it.
Packit 33f14e
Packit 33f14e
	gnulib: update to latest; and update bootstrap and init.sh
Packit 33f14e
Packit 33f14e
	maint: change "time stamp" to "timestamp" globally
Packit 33f14e
	This avoids a new syntax-check failure.
Packit 33f14e
	* ChangeLog-2008: Perform that change.
Packit 33f14e
	* doc/diffutils.texi: Likewise.
Packit 33f14e
	* NEWS: Likewise.
Packit 33f14e
	* cfg.mk: Update the old news hash accordingly.
Packit 33f14e
Packit 33f14e
2017-01-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update gnulib and copyright dates for 2017
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
	* all files: Run "make update-copyright".
Packit 33f14e
Packit 33f14e
2016-11-08  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	tests: use "returns_" rather than explicit comparison with "$?"
Packit 33f14e
	* tests/colors: Use "returns_ 1" rather than testing $? = 1
Packit 33f14e
	* tests/basic: Likewise.
Packit 33f14e
	* tests/binary: Likewise.
Packit 33f14e
	* tests/filename-quoting: Likewise.
Packit 33f14e
	* tests/function-line-vs-leading-space: Likewise.
Packit 33f14e
	* tests/ignore-matching-lines: Likewise.
Packit 33f14e
	* tests/label-vs-func: Likewise.
Packit 33f14e
	* tests/new-file: Likewise.
Packit 33f14e
	* tests/no-dereference: Likewise.
Packit 33f14e
	* tests/no-newline-at-eof: Likewise.
Packit 33f14e
	* tests/stdin: Likewise.
Packit 33f14e
Packit 33f14e
2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: fix big performance degradation in 3.4
Packit 33f14e
	* NEWS, doc/diffutils.texi (Overview): Document this.
Packit 33f14e
	* src/analyze.c (diff_2_files): Restore too_expensive heuristic,
Packit 33f14e
	but this time with a floor that is 16 times the old floor.  This
Packit 33f14e
	should fix Bug#16848, by generating good-quality output for its
Packit 33f14e
	test case, while not introducing Bug#24715, by running nearly as
Packit 33f14e
	fast as diff-3.3 for that test case.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2016-10-16  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: use die rather than error
Packit 33f14e
	Use "die (N, ..." rather than "error (N, ..." whenever N is a nonzero
Packit 33f14e
	constant.  That lets the compiler know that control never goes beyond
Packit 33f14e
	that point, and thus makes unnecessary the occasional following
Packit 33f14e
	"abort ();" or "break;" statement we have historically added to inform
Packit 33f14e
	static analysis tools of this aspect of "error" semantics.
Packit 33f14e
	* src/die.h: New file.
Packit 33f14e
	* src/Makefile.am (noinst_HEADERS): Add it.
Packit 33f14e
	* src/cmp.c: Use die in place of error whenever the first
Packit 33f14e
	argument is a nonzero constant.  Also remove any immediately-
Packit 33f14e
	following call to abort, and include "die.h".
Packit 33f14e
	* src/diff.c: Likewise.
Packit 33f14e
	* src/diff3.c: Likewise.
Packit 33f14e
	* src/sdiff.c: Likewise.
Packit 33f14e
	* src/util.c: Likewise.
Packit 33f14e
Packit 33f14e
2016-10-02  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
	build: avoid GCC 7's new warnings
Packit 33f14e
	* src/util.c (get_funky_string): Adjust comment so that GCC 7's
Packit 33f14e
	-Wimplicit-fallthrough recognizes it.
Packit 33f14e
	* src/diff3.c (main): Cast boolean MERGE to "int" to avoid this:
Packit 33f14e
	diff3.c:341:25: error: '~' on a boolean expression \
Packit 33f14e
	[-Werror=bool-operation]
Packit 33f14e
Packit 33f14e
2016-08-30  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2016-08-29  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest, to port to upcoming GCC 7
Packit 33f14e
	This fixes compilation errors when using gcc-7-to-be that were
Packit 33f14e
	due to missing backslashes in gnulib's intprops.h and an API
Packit 33f14e
	change in functions like __builtin_add_overflow.  This ports
Packit 33f14e
	to GCC 7's newer built-in overflow-checking functions.
Packit 33f14e
Packit 33f14e
2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: don't assume ptrdiff_t <= long long int
Packit 33f14e
	* src/system.h (printint, pI): Port to (theoretical) platforms
Packit 33f14e
	where ptrdiff_t is wider than long long int (Bug#24311).
Packit 33f14e
Packit 33f14e
2016-08-27  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: port line numbers to mingw64
Packit 33f14e
	Problem reported by Peter Rosin (Bug#24311).
Packit 33f14e
	* src/system.h (printint, pI): New typedef and macro.
Packit 33f14e
	All uses of 'long int' and "%l" in printf format replaced by
Packit 33f14e
	'printint' and "%"pI respectively.
Packit 33f14e
	* src/ifdef.c (do_printf_spec): Don't assume pI is length 1.
Packit 33f14e
Packit 33f14e
2016-08-20  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.5
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
2016-08-16  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	build: arrange to build with -fno-common, when possible
Packit 33f14e
	* configure.ac (WERROR_CFLAGS): Add -fno-common, when possible.
Packit 33f14e
	This would have prevented the duplicate definition of
Packit 33f14e
	presume_output_tty that was fixed in v3.4-10-gc2dc91f.
Packit 33f14e
Packit 33f14e
2016-08-16  Hanno Böck  <hanno@hboeck.de>
Packit 33f14e
Packit 33f14e
	diff: avoid duplicate definition of presume_output_tty
Packit 33f14e
	* src/util.c (presume_output_tty): Remove this definition.
Packit 33f14e
	The other is in diff.h.  Reported in https://bugs.gnu.org/24248
Packit 33f14e
Packit 33f14e
2016-08-14  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
	tests: diff3: work around missing seq on some systems
Packit 33f14e
	* tests/diff3 (seq): Provide a seq replacement function,
Packit 33f14e
	since at least AIX, SunOS 5.10, OpenBSD-5.8 lack it.
Packit 33f14e
	Reported by Assaf Gordon in https://bugs.gnu.org/24227#8
Packit 33f14e
Packit 33f14e
2016-08-13  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	diff3: fix leaks, for real
Packit 33f14e
	* src/diff3.c (struct diff_block)[lint]: Add member, n2.
Packit 33f14e
	(free_diff_block, next_to_n2): New functions.
Packit 33f14e
	* tests/diff3: Add more test coverage.
Packit 33f14e
Packit 33f14e
	maint: require that commit messages be of a certain form
Packit 33f14e
	* bootstrap.conf (bootstrap_epilogue): Merge from coreutils, so that
Packit 33f14e
	a local commit hook will now help enforce consistent commit messages.
Packit 33f14e
	* Makefile.am (check-git-hook-script-sync): New rule, largely copied
Packit 33f14e
	from coreutils.
Packit 33f14e
	* scripts/git-hooks/commit-msg: New file, from coreutils, but
Packit 33f14e
	with adapted list of program names.
Packit 33f14e
	* scripts/git-hooks/applypatch-msg: New file, from git.
Packit 33f14e
	* scripts/git-hooks/pre-applypatch: Likewise.
Packit 33f14e
	* scripts/git-hooks/pre-commit: Likewise.
Packit 33f14e
Packit 33f14e
2016-08-13  Bastian Beischer  <bastian.beischer@rwth-aachen.de>
Packit 33f14e
Packit 33f14e
	diff3: fix heap use-after-free; add minimal diff3 test coverage
Packit 33f14e
	Commit v3.3-42-g3b74a90, "FIXME: src/diff3: plug a leak" added an
Packit 33f14e
	invalid use of free, leading to use-after-free in nearly any invocation
Packit 33f14e
	of diff3.  Revert that commit.
Packit 33f14e
	* NEWS (Bug fixes): Mention it.
Packit 33f14e
	* tests/diff3: New file, to add minimal test coverage.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
	Reported by Bastian Beischer in http://bugs.gnu.org/24210
Packit 33f14e
Packit 33f14e
2016-08-13  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	build: ignore texinfo build artifacts
Packit 33f14e
	* .gitignore: Ignore texinfo artifacts in doc/.
Packit 33f14e
Packit 33f14e
	maint: diff3: remove an unreachable statement
Packit 33f14e
	* src/diff3.c (main): Remove unreachable "return" after exit from main.
Packit 33f14e
Packit 33f14e
2016-08-08  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	diff: disable colorization for TERM=dumb
Packit 33f14e
	* src/diff.c (main): With --color or --color=auto, when TERM is
Packit 33f14e
	"dumb", disable colorization.  Suggested by Daniel Colascione.
Packit 33f14e
	* NEWS (Bug fixes): Mention it.
Packit 33f14e
	* tests/colors: Add a test that would fail without this change,
Packit 33f14e
	yet passes with it.
Packit 33f14e
Packit 33f14e
	maint: post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.4
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
2016-08-06  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
	tests: tweak built_programs definition
Packit 33f14e
	* tests/Makefile.am (built_programs): Adjust to work around what
Packit 33f14e
	may be a problem due to interaction between Solaris 10's /bin/sh
Packit 33f14e
	and an old version of GNU make. Reported by Dagobert Michelsen
Packit 33f14e
	in https https://bugs.gnu.org/24137.
Packit 33f14e
Packit 33f14e
2016-08-02  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
	tests: skip a /proc/self-dependent test on the Hurd
Packit 33f14e
	* tests/brief-vs-stat-zero-kernel-lies: The Hurd's /proc/self
Packit 33f14e
	is not useful, so detect that and skip the test that requires it.
Packit 33f14e
	Reported by Assaf Gordon in https://debbugs.gnu.org/24121#29
Packit 33f14e
Packit 33f14e
2016-08-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	tests/colors: fix portability problem with touch --date
Packit 33f14e
	* tests/colors (epoch): Don't use GNU touch's --date=$epoch option.
Packit 33f14e
	Use the portable -t 197001010000.00.
Packit 33f14e
	Reported by Assaf Gordon in https://debbugs.gnu.org/24121#8
Packit 33f14e
Packit 33f14e
	build: Solaris 9: avoid link failure due to isblank use
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add isblank, to avoid a link
Packit 33f14e
	error on Solaris 9 Sparc.  Reported by Dagobert Michelsen.
Packit 33f14e
Packit 33f14e
	test: improve test infrastructure
Packit 33f14e
	* tests/envvar-check: New file, copied from grep, with the addition
Packit 33f14e
	of the EDITOR and GREP_OPTIONS envvar names.
Packit 33f14e
	* tests/Makefile.am (EXTRA_DIST): Add it.
Packit 33f14e
	(TESTS_ENVIRONMENT): Revamp, to be more like that of grep.
Packit 33f14e
Packit 33f14e
2016-07-31  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: remove gl/lib/reg*.c.diff; no longer needed
Packit 33f14e
	* gl/lib/regcomp.c.diff: Remove file, now that gnulib's
Packit 33f14e
	regcomp.c compiles regex.c with -Wno-unused-parameter.
Packit 33f14e
	* gl/lib/regex_internal.c.diff: This file induced a change to ensure
Packit 33f14e
	that the "Idx" type was unsigned and to remove a few "VAR < 0"
Packit 33f14e
	comparisons.  These days, it is probably fine to stay in sync with
Packit 33f14e
	gnulib/glibc's copies
Packit 33f14e
	of these files, so remove these patches, too.
Packit 33f14e
	* gl/lib/regexec.c.diff: Likewise.
Packit 33f14e
	Prompted by a report by Assaf Gordon and a suggestion from Paul Eggert.
Packit 33f14e
Packit 33f14e
	tests: colors: fix a portability problem and work around a shell bug
Packit 33f14e
	* tests/colors (e): Fix a portability bug: use printf '\033'
Packit 33f14e
	rather than '\e' to generate the required byte sequence, since
Packit 33f14e
	for some shells (at least dash 0.5.8), the latter doesn't work.
Packit 33f14e
	Work around a shell bug whereby "local tab=$(printf '\t')"
Packit 33f14e
	would result in an empty value for "$tab": hoist each "tab"
Packit 33f14e
	definition up/out of its function to global scope.
Packit 33f14e
	Reported by Assaf Gordon in http://debbugs.gnu.org/24116#8
Packit 33f14e
Packit 33f14e
2016-07-23  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest; and tests/init.sh
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
	* init.sh: Update from gnulib.
Packit 33f14e
Packit 33f14e
2016-05-30  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: arrange for "make distcheck" to work with unreleased automake
Packit 33f14e
	* dist-check.mk (my-distcheck): Remove all .deps directories
Packit 33f14e
	before performing the recursive comparison.
Packit 33f14e
Packit 33f14e
2016-05-24  Glenn Morris  <rgm@gnu.org>
Packit 33f14e
Packit 33f14e
	doc: fix a reference to emacs' emerge node
Packit 33f14e
	* doc/diffutils.texi (Interactive Merging): Correct a reference to
Packit 33f14e
	emacs' emerge node: s/emerge/Emerge/.
Packit 33f14e
	This addresses http://debbugs.gnu.org/23613
Packit 33f14e
Packit 33f14e
2016-04-30  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: arrange for better URLs in generated announcement message
Packit 33f14e
	* cfg.mk (url_dir_list): Define.  I had been correcting the generated
Packit 33f14e
	URLs by hand, just before the announcement.  This is better.
Packit 33f14e
Packit 33f14e
2016-03-15  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: don't ignore gitlog-to-changelog failure
Packit 33f14e
	* Makefile.am (gen-ChangeLog): Don't ignore failure of
Packit 33f14e
	gitlog-to-changelog. This syncs to coreutils' copy of this rule.
Packit 33f14e
Packit 33f14e
2016-03-06  Giuseppe Scrivano  <gscrivano@gnu.org>
Packit 33f14e
Packit 33f14e
	diff: --color: fix an infinite recursion bug
Packit 33f14e
	* src/diff.h (presume_output_tty): New extern variable.
Packit 33f14e
	* src/diff.c (PRESUME_OUTPUT_TTY_OPTION): New enum.
Packit 33f14e
	(group_format_option): Add '-presume-output-tty'.
Packit 33f14e
	(main): Handle PRESUME_OUTPUT_TTY_OPTION.
Packit 33f14e
	* src/util.c: New variable `presume_output_tty'.
Packit 33f14e
	(check_color_output): Handle presume_output_tty.
Packit 33f14e
	(set_color_context): Call process_signals only when color_context is
Packit 33f14e
	not RESET_CONTEXT.
Packit 33f14e
	* tests/colors: Check that diff doesn't crash when interrupted
Packit 33f14e
	in the middle of a color sequence.
Packit 33f14e
Packit 33f14e
	Reported by Gisle Vanem in http://debbugs.gnu.org/22067
Packit 33f14e
Packit 33f14e
2016-01-31  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update prereq version of gettext
Packit 33f14e
	* configure.ac: Increase designated gettext version to 0.19.2
Packit 33f14e
	* bootstrap.conf (buildreq): Likewise.
Packit 33f14e
	Remove now-unnecessary code to remove gettext-provided files.
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2016-01-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	FIXME: src/diff3: plug a leak
Packit 33f14e
Packit 33f14e
2016-01-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update copyright year, bootstrap, init.sh
Packit 33f14e
	Run "make update-copyright" and then...
Packit 33f14e
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
	* tests/init.sh: Update from gnulib.
Packit 33f14e
	* bootstrap: Likewise.
Packit 33f14e
Packit 33f14e
2015-12-06  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	diff --brief no longer mistakenly reports diff. with 0-sized /proc/ files
Packit 33f14e
	Normally, it is safe to assume two regular files are different when
Packit 33f14e
	their st_size values are different.  However, that assumption may
Packit 33f14e
	be invalid if either value is zero, as happens with files on Linux
Packit 33f14e
	/proc and /sys file systems. Since skipping this optimization will
Packit 33f14e
	usually cost very little (one read syscall, to read zero bytes),
Packit 33f14e
	it is fine to accommodate those unusual files.
Packit 33f14e
	* src/analyze.c (diff_2_files): Do not assume regular files differ
Packit 33f14e
	just because their st_size values differ when one or more is 0.
Packit 33f14e
	* src/diff.c (compare_files): Likewise.
Packit 33f14e
	* tests/brief-vs-proc-stat-zero: New test.
Packit 33f14e
	* tests/Makefile.am: Add it.
Packit 33f14e
	* NEWS (Bug fixes): Describe it.
Packit 33f14e
	Reported by Stephan Müller in http://debbugs.gnu.org/21942
Packit 33f14e
Packit 33f14e
	tests: arrange to print any skipped-test explanation to tty, too
Packit 33f14e
	I noticed that when a test was skipped, the reason was not printed.
Packit 33f14e
	This fixes it.  In coreutils, this variable is set in init.cfg,
Packit 33f14e
	but there is no point in putting the definition so far from the
Packit 33f14e
	code that chooses the file descriptor number in tests/Makefile.am.
Packit 33f14e
	* tests/Makefile.am (TESTS_ENVIRONMENT) [stderr_fileno_]: Define
Packit 33f14e
	here (to 9), right next to the companion "9>&2".
Packit 33f14e
Packit 33f14e
2015-11-29  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	build: add gperf to the list of required programs
Packit 33f14e
	* bootstrap.conf (buildreq): Add gperf to the list.
Packit 33f14e
	Reported by Stephan Müller in http://debbugs.gnu.org/21945
Packit 33f14e
Packit 33f14e
2015-11-29  Giuseppe Scrivano  <gscrivano@gnu.org>
Packit 33f14e
Packit 33f14e
	tests: Add tests for --color and --palette
Packit 33f14e
	* tests/colors: New file.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add colors.
Packit 33f14e
Packit 33f14e
	doc: mention --color and --palette in NEWS
Packit 33f14e
Packit 33f14e
	diff: add --palette
Packit 33f14e
	* bootstrap (gnulib_modules): Add 'argmatch'.
Packit 33f14e
	* doc/diffutils.texi: Add documentation for --palette
Packit 33f14e
	* src/diff.h (set_color_palette): New prototype.
Packit 33f14e
	* src/diff.c (set_color_palette): New function.
Packit 33f14e
	(color_palette): New variable.
Packit 33f14e
	* src/utils.c: Include "argmatch.h".
Packit 33f14e
	(struct bin_str): New struct.
Packit 33f14e
	(struct color_ext_type): New struct.
Packit 33f14e
	(color_indicator): New array.
Packit 33f14e
	(indicator_name): New array.
Packit 33f14e
	(indicator_no): New enum.
Packit 33f14e
	(parse_state): New enum.
Packit 33f14e
	(put_indicator): New function.
Packit 33f14e
	(get_funky_string): New function. Copied from coreutils ls.
Packit 33f14e
	(parse_diff_color):  New function. Copied from coreutils ls
Packit 33f14e
	"parse_ls_color" function.
Packit 33f14e
	(set_color_context): Use put_indicator instead of directly
Packit 33f14e
	outputting the sequence.
Packit 33f14e
	* po/POTFILES.in: Add 'lib/argmatch.c'
Packit 33f14e
Packit 33f14e
	diff: add support for --color
Packit 33f14e
	* doc/diffutils.texi (diff Options): Add documentation for --color.
Packit 33f14e
	Copied from coreutils ls --color.
Packit 33f14e
	* src/context.c (pr_unidiff_hunk): Set the color context.
Packit 33f14e
	(print_context_header): Likewise.
Packit 33f14e
	(pr_context_hunk): Likewise.
Packit 33f14e
	* src/diff.h (enum colors_style): New enum to record when to use colors.
Packit 33f14e
	(colors_style): New variable to memorize the argument value.
Packit 33f14e
	(set_color_context): Add function definition.
Packit 33f14e
	* src/diff.c: : Define COLOR_OPTION.
Packit 33f14e
	(specify_colors_style): New function.
Packit 33f14e
	(longopts): Add --color.
Packit 33f14e
	(main): Handle --color argument.
Packit 33f14e
	(option_help_msgid): Add usage string for --color.
Packit 33f14e
	* src/normal.c (print_normal_hunk): Set the color context.
Packit 33f14e
	* src/side.c (print_1sdiff_line): Likewise.
Packit 33f14e
	* src/util.c (print_1_line_nl): New function.
Packit 33f14e
	(print_1_line): Make it a wrapper of 'print_1_line_nl'.
Packit 33f14e
	(colors_enabled): New boolean variable.
Packit 33f14e
	(begin_output): Call check_color_output once the output file is
Packit 33f14e
	configured.
Packit 33f14e
	(output_1_line): Periodically call `process_signals'.
Packit 33f14e
	(caught_signals): New sigset_t.
Packit 33f14e
	(colors_enabled): New boolean variable.
Packit 33f14e
	(interrupt_signal): New sig_atomic_t.
Packit 33f14e
	(stop_signal_count): New sig_atomic_t.
Packit 33f14e
	(check_color_output): New function.
Packit 33f14e
	(install_signal_handlers): Likewise. Copied from coreutils ls.
Packit 33f14e
	(process_signals): Likewise.  Copied from coreutils ls.
Packit 33f14e
	(set_color_context): New function.
Packit 33f14e
	(sighandler): Likewise.  Copied from coreutils ls.
Packit 33f14e
	(stophandler): Likewise.  Copied from coreutils ls.
Packit 33f14e
Packit 33f14e
2015-09-24  Andreas Grünbacher  <agruen@gnu.org>
Packit 33f14e
Packit 33f14e
	diff: Improve help text of option --label
Packit 33f14e
	* src/diff.c (option_help_msgid): Improve help text of option --label.
Packit 33f14e
Packit 33f14e
2015-09-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	build: correct man-page generation rule
Packit 33f14e
	The PATH was set incorrectly, so that the diff used by
Packit 33f14e
	help2man was the one from $PATH, rather than the just-built
Packit 33f14e
	one.
Packit 33f14e
	* man/Makefile.am (bin_dir): New variable, to...
Packit 33f14e
	(dist_man1_MANS): ...prepend ../src to PATH, not just "..".
Packit 33f14e
	Also, add a test to ensure that each $(bin_dir)/$$base is
Packit 33f14e
	executable, so this doesn't happen again.
Packit 33f14e
	In http://debbugs.gnu.org/21023, Rodrigo Valiña
Packit 33f14e
	Gutiérrez reported that diff.1 from the diffutils-3.3 tarball
Packit 33f14e
	contained no description of the then-new --no-dereference option.
Packit 33f14e
Packit 33f14e
2015-07-10  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	doc: --no-dereference: improve wording/description
Packit 33f14e
	* doc/diffutils.texi (Comparing Directories): Correct grammar.
Packit 33f14e
	(diff Options) [--no-dereference]: Say a little more.
Packit 33f14e
Packit 33f14e
2015-01-01  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update copyright year ranges to include 2015; update gnulib
Packit 33f14e
Packit 33f14e
2014-12-12  KO Myung-Hun  <komh@chollian.net>
Packit 33f14e
Packit 33f14e
	diff: skip test if seek is not possible on OS/2 kLIBC
Packit 33f14e
	This fixes the problem that 'diff - file' and 'cat file | diff - file'
Packit 33f14e
	fail due to a seek failure with a message 'diff.exe: -: Invalid seek',
Packit 33f14e
	because seek does not work on stdin and a pipe on OS/2 kLIBC.
Packit 33f14e
Packit 33f14e
	* src/io.c (sip): Set skip_test to true if seek is not possible on
Packit 33f14e
	OS/2 kLIBC.
Packit 33f14e
Packit 33f14e
2014-12-09  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest
Packit 33f14e
Packit 33f14e
2014-12-09  KO Myung-Hun  <komh78@gmail.com>
Packit 33f14e
Packit 33f14e
	build: double-quote use of $PATH
Packit 33f14e
	* man/Makefile.am (dist_man1_MANS): On OS/2, PATH_SEPARATOR is ';',
Packit 33f14e
	but unquoted, that is interpreted as the shell's statement
Packit 33f14e
	terminator.  Quote it.
Packit 33f14e
Packit 33f14e
2014-10-27  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: fix integer overflow problem with --tabsize
Packit 33f14e
	Reported by Tobias Stoeckmann in: http://bugs.gnu.org/18857
Packit 33f14e
	* src/diff.c (main): Don't overflow if INTMAX_MAX / 2 < tabsize.
Packit 33f14e
	* tests/bignum: New file, to test for this bug.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2014-09-03  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	doc: mention diff -B fix in NEWS
Packit 33f14e
Packit 33f14e
	diff: fix bug with diff -B and incomplete lines
Packit 33f14e
	Reported by Navin Kabra via Eric Blake in:
Packit 33f14e
	http://bugs.gnu.org/18402
Packit 33f14e
	* src/util.c (analyze_hunk): Don't mishandle incomplete
Packit 33f14e
	lines at end of file.
Packit 33f14e
	* tests/no-newline-at-eof: Test for the bug.
Packit 33f14e
Packit 33f14e
	diff: fix performance bug with prefix computation
Packit 33f14e
	* src/io.c (find_identical_ends): Fix performance bug:
Packit 33f14e
	the test for when the prefix was needed messed up by
Packit 33f14e
	the 2002-02-28 integer-overflow fixes, causing performance to be
Packit 33f14e
	worse than it needed to be.
Packit 33f14e
Packit 33f14e
2014-08-23  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	gnulib: update to latest, as well as bootstrap
Packit 33f14e
Packit 33f14e
	maint: update copyright year range in texinfo documentation
Packit 33f14e
	* doc/diffutils.texi: Update copyright.
Packit 33f14e
Packit 33f14e
2014-04-15  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: update bug-reporting address
Packit 33f14e
	* README: Change bug-gnu-utils@... to bug-diffutils@gnu.org.
Packit 33f14e
	* doc/diffutils.texi: Likewise.
Packit 33f14e
	Reported by Jamie Landeg Jones.
Packit 33f14e
Packit 33f14e
2014-03-26  Paul Eggert  <eggert@penguin.cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: fix two "..." typos in --help output
Packit 33f14e
	* src/diff.c (option_help_msgid): Remove two "..." typos (Bug#17102).
Packit 33f14e
Packit 33f14e
2014-03-25  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	doc: improve documentation about reading and stdin
Packit 33f14e
	See Bug#17075.
Packit 33f14e
	* doc/diffutils.texi (Comparison): Say that files need not be read.
Packit 33f14e
	(Invoking diff): Remove confusing remark about 'diff - -'.
Packit 33f14e
	It's not that useful, and it's not portable anyway.
Packit 33f14e
Packit 33f14e
2014-02-24  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff, sdiff: minor integer overflow fixes
Packit 33f14e
	* src/context.c (find_hunk):
Packit 33f14e
	Simplify, now that 2 * context + 1 cannot overflow.
Packit 33f14e
	* src/diff.c (main):
Packit 33f14e
	* src/sdiff.c (interact):
Packit 33f14e
	Don't rely on undefined behavior on signed integer overflow.
Packit 33f14e
	* src/diff.c (main): Don't let contexts exceed CONTEXT_MAX.
Packit 33f14e
	* src/system.h (CONTEXT_MAX): New macro.
Packit 33f14e
Packit 33f14e
	diff: fix bug with -I and overlapping hunks
Packit 33f14e
	Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16864>.
Packit 33f14e
	* src/context.c (find_hunk): Threshold is CONTEXT only if
Packit 33f14e
	the second change is ignorable.
Packit 33f14e
	* tests/ignore-matching-lines: New test.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2014-02-23  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: remove TOO_EXPENSIVE heuristic
Packit 33f14e
	Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16848>.
Packit 33f14e
	The simplest solution is to remove the TOO_EXPENSIVE heuristic
Packit 33f14e
	that I added to GNU diff in 1993.  Although appropriate for
Packit 33f14e
	circa-1993 hardware, these days the heuristic seems to be more
Packit 33f14e
	trouble than it's worth.
Packit 33f14e
	* NEWS: Document this.
Packit 33f14e
	* doc/diffutils.texi (Overview): Modernize citations.
Packit 33f14e
	Remove mention of TOO_EXPENSIVE heuristic.
Packit 33f14e
	* src/analyze.c (diff_2_files): Adjust to TOO_EXPENSIVE-related
Packit 33f14e
	API changes in gnulib's diffseq module.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2014-01-31  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: exit with status 1, not 2, when binary files differ
Packit 33f14e
	Problem reported by Vincent Lefevre in <http://bugs.gnu.org/16608>.
Packit 33f14e
	* NEWS:
Packit 33f14e
	* doc/diffutils.texi (Binary, Invoking diff): Document this.
Packit 33f14e
	* src/analyze.c (briefly_report): Return void, not int.
Packit 33f14e
	All uses changed.  Do not futz with exit status.  Simplify.
Packit 33f14e
	* tests/binary: Adjust to match new behavior.
Packit 33f14e
Packit 33f14e
2013-09-26  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	build: omit -Wsuggest-attribute=pure for lib
Packit 33f14e
	* configure.ac (WARN_CFLAGS): Omit -Wsuggest-attribute=pure
Packit 33f14e
	when compiling the lib subdirectory.  Reported for Fedora 19
Packit 33f14e
	by Eric Blake in <http://bugs.gnu.org/15463>.
Packit 33f14e
Packit 33f14e
2013-08-22  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	cmp, diff, sdiff: tune by using rawmemchr
Packit 33f14e
	On my platform (AMD Phenom II X4 910e, Fedora 17 x86-64), this sped up
Packit 33f14e
	'cmp -n 8GiB /dev/full /dev/zero' by a factor of 3.8, and
Packit 33f14e
	'cmp -sn 8GiB /dev/full /dev/zero' by a factor of 1.8.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add rawmemchr.
Packit 33f14e
	* src/cmp.c (cmp): Optimize the common case where buffers are the same,
Packit 33f14e
	by using count_newlines rather than block_compare_and_count.
Packit 33f14e
	(block_compare_and_count): Remove.
Packit 33f14e
	(count_newlines): New function.
Packit 33f14e
	* src/cmp.c (count_newlines):
Packit 33f14e
	* src/io.c (prepare_text):
Packit 33f14e
	* src/sdiff.c (lf_copy, lf_skip, lf_snarf):
Packit 33f14e
	Use rawmemchr instead of memchr, for speed.
Packit 33f14e
Packit 33f14e
2013-08-12  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	cmp: tune 'cmp a b' for GCC x86
Packit 33f14e
	Performance problem reported by David Balažic in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2013-08/msg00013.html
Packit 33f14e
	* src/system.h (word): Make it size_t, not uintmax_t.
Packit 33f14e
	This sped up plain cmp 90% on my tests (GCC 4.8.1, x86).
Packit 33f14e
Packit 33f14e
2013-07-06  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2013-05-06  Stefano Lattarini  <stefano.lattarini@gmail.com>
Packit 33f14e
Packit 33f14e
	build: enable 'subdir-objects' automake option
Packit 33f14e
	The future major Automake version (2.0, ETA at least one year from now)
Packit 33f14e
	might enable that option unconditionally, so better get prepared in due
Packit 33f14e
	time.
Packit 33f14e
Packit 33f14e
	* configure.ac (AM_INIT_AUTOMAKE): Adjust.
Packit 33f14e
	(AM_PROG_CC_C_O): New, required by Automake up to 1.13.x when the
Packit 33f14e
	'subdir-objects' is in use.
Packit 33f14e
Packit 33f14e
2013-04-28  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2013-04-03  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: fix bug with Asian file names
Packit 33f14e
	Problem reported by Errembault Philippe in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2013-03/msg00012.html
Packit 33f14e
	* NEWS: Document this.
Packit 33f14e
	* src/dir.c (compare_names): Fall back on file_name_cmp if
Packit 33f14e
	compare_collated returns 0, unless ignoring file name case.
Packit 33f14e
	(diff_dirs): Don't bother with the O(N**2) stuff unless ignoring
Packit 33f14e
	file name case.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add strcoll-0-names.
Packit 33f14e
	* tests/strcoll-0-names: New file.
Packit 33f14e
Packit 33f14e
	diff: remove unnecessary decl
Packit 33f14e
	* src/dir.c (compare_names_for_qsort): Remove declaration.
Packit 33f14e
	Not needed now that we assume C89.
Packit 33f14e
Packit 33f14e
	diff: tune compare_names_for_qsort
Packit 33f14e
	* src/dir.c (compare_collated): New function.
Packit 33f14e
	(compare_names): Use it.
Packit 33f14e
	(compare_names_for_qsort): Use it.  This is a bit more efficient
Packit 33f14e
	as it can avoid a double invocation of file_name_cmp when
Packit 33f14e
	file_name_cmp returns zero.
Packit 33f14e
Packit 33f14e
2013-03-30  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	doc: mention new option, --no-dereference in 3.3's NEWS
Packit 33f14e
	* NEWS (New feeatures): Update 3.3's news to mention --no-dereference.
Packit 33f14e
	Reported by Denis Excoffier.
Packit 33f14e
	* Makefile.am (old_NEWS_hash): Update, since this modifies old, and
Packit 33f14e
	normally-immutable NEWS.
Packit 33f14e
Packit 33f14e
2013-03-26  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	tests: port to Solaris 10 /bin/sh
Packit 33f14e
	* tests/Makefile.am (TESTS_ENVIRONMENT):
Packit 33f14e
	Use "FOO=val; export FOO" rather than "export FOO=val",
Packit 33f14e
	as the latter form doesn't work with Solaris /bin/sh.
Packit 33f14e
	Problem found when trying to run "make check" on Solaris 10.
Packit 33f14e
Packit 33f14e
2013-03-24  Jim Meyering  <meyering@fb.com>
Packit 33f14e
Packit 33f14e
	maint: post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.3
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
2013-03-23  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	doc: fix menu typo
Packit 33f14e
	* doc/diffutils.texi (Comparing Three Files): Fix out-of-order menu.
Packit 33f14e
	Bug caught by Texinfo 5.0.
Packit 33f14e
Packit 33f14e
	maint: update build procedure to recent gettext etc.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add vararrays.
Packit 33f14e
	(needed_gnulib_files, unnecessary_gettext_files): New vars.
Packit 33f14e
	(bootstrap_post_import_hook): New function, to implement these vars.
Packit 33f14e
	(excluded_files): Remove; 'bootstrap' no longer supports this.
Packit 33f14e
	Its function is now performed by unnecessary_gettext_files.
Packit 33f14e
	(buildreq): Update automake to 1.12.2, to avoid CVE-2012-3386.
Packit 33f14e
	* configure.ac (AM_GNU_GETTEXT_VERSION): Bump from 0.17 to 0.18.2,
Packit 33f14e
	to lessen the probability that we'll have outlandishly old files
Packit 33f14e
	during a build.
Packit 33f14e
	* m4/vararrays.m4: Remove from repository, as we now use the
Packit 33f14e
	gnulib version.
Packit 33f14e
Packit 33f14e
2013-03-21  Jim Meyering  <jim@meyering.net>
Packit 33f14e
Packit 33f14e
	build: update gnulib to latest and adapt; update bootstrap, too
Packit 33f14e
	Blindly updating to the latest from gnulib, bootstrap would
Packit 33f14e
	fail due to failure of our local patches to apply.  Hence,
Packit 33f14e
	these first two updates.
Packit 33f14e
	* gl/lib/regex_internal.c.diff: Update offsets, so this patch
Packit 33f14e
	applies to the latest from gnulib.
Packit 33f14e
	* gl/lib/regex_internal.h.diff: Remove file.  No longer needed.
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
Packit 33f14e
2013-01-06  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	tests: port to hosts lacking fmt, make -C
Packit 33f14e
	* tests/Makefile.am (built_programs): Don't assume fmt works.
Packit 33f14e
	Don't rely on 'make -C', either.
Packit 33f14e
Packit 33f14e
	maint: update .gitignore for recent gnulib
Packit 33f14e
	* .gitignore: Add tests/*.trs and several *.h and *.sed files in lib,
Packit 33f14e
Packit 33f14e
2013-01-04  Jim Meyering  <jim@meyering.net>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	maint: update all copyright year number ranges
Packit 33f14e
	Run "make update-copyright".
Packit 33f14e
Packit 33f14e
2012-10-23  Eric Blake  <eblake@redhat.com>
Packit 33f14e
Packit 33f14e
	build: default to --enable-gcc-warnings in a git tree
Packit 33f14e
	Anyone building from cloned sources can be assumed to have a new
Packit 33f14e
	enough environment, such that enabling gcc warnings by default will
Packit 33f14e
	be useful.  Tarballs still default to no warnings, and the default
Packit 33f14e
	can still be overridden with --disable-gcc-warnings.
Packit 33f14e
	* configure.ac (gl_gcc_warnings): Set default based on environment.
Packit 33f14e
Packit 33f14e
2012-10-03  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	* doc/diffutils.texi (cmp Options): Document -l format better.
Packit 33f14e
Packit 33f14e
2012-09-10  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: use xasprintf in place of xmalloc+sprintf
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add gnulib's xvasprintf module.
Packit 33f14e
	* src/util.c: Include "xvasprintf.h".
Packit 33f14e
	(begin_output): Use xasprintf in place of xmalloc+sprintf.
Packit 33f14e
Packit 33f14e
2012-09-10  Andreas Gruenbacher  <agruen@gnu.org>
Packit 33f14e
Packit 33f14e
	diff: encode file names with special characters
Packit 33f14e
	* src/util.c (c_escape_char): New function.
Packit 33f14e
	(c_escape): New function.
Packit 33f14e
	(begin_output): Escape file names when needed.
Packit 33f14e
	* src/context.c (print_context_header): New names parameter.
Packit 33f14e
	(print_context_label): New name parameter.
Packit 33f14e
	* src/diff.h (print_context_header): Change prototype.
Packit 33f14e
	* tests/filename-quoting: New file.
Packit 33f14e
	* NEWS: Document this change.
Packit 33f14e
Packit 33f14e
2012-08-30  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: silence GCC warning instead of slowing down
Packit 33f14e
	* src/dir.c (find_dir_file_pathname): Use 'IF_LINT (volatile)' to
Packit 33f14e
	silence the gcc warning, rather than using 'volatile', as the
Packit 33f14e
	warning appears to be bogus.
Packit 33f14e
Packit 33f14e
2012-08-28  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	diff: avoid possible longjmp-triggered misbehavior
Packit 33f14e
	* src/dir.c (find_dir_file_pathname): gcc 4.8.0 20120825 reported
Packit 33f14e
	that a local variable's value might be clobbered.  Declare "match"
Packit 33f14e
	to be volatile.
Packit 33f14e
Packit 33f14e
	build: update gnulib, bootstrap and init.sh to latest
Packit 33f14e
Packit 33f14e
	maint: avoid new syntax-check failure due to @xref use
Packit 33f14e
	* doc/diffutils.texi: Change several "; @xref{..." to ".  @xref{...",
Packit 33f14e
	since @xref should start a sentence.
Packit 33f14e
Packit 33f14e
2012-05-15  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	maint: remove ms subdirectory
Packit 33f14e
	diffutils is now designed to build with Cygwin or MinGW.
Packit 33f14e
	The old DJGPP stuff probably doesn't work anyway.
Packit 33f14e
	* Makefile.am (SUBDIRS): Remove ms.
Packit 33f14e
	* NEWS: Document this.
Packit 33f14e
	* configure.ac (AC_CONFIG_FILES): Remove ms/Makefile.
Packit 33f14e
	* ms/Makefile.am, ms/README, ms/config.bat, ms/config.sed:
Packit 33f14e
	* ms/config.site: Remove.
Packit 33f14e
Packit 33f14e
2012-05-14  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	maint: update bootstrap from gnulib
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
Packit 33f14e
	main: port subcommands to mingw
Packit 33f14e
	Problem reported by Eli Zaretskii in
Packit 33f14e
	<http://lists.gnu.org/archive/html/bug-gnu-utils/2012-05/msg00013.html>.
Packit 33f14e
	Approach suggested by Bruno Haible as option (4) in
Packit 33f14e
	<http://lists.gnu.org/archive/html/bug-gnu-utils/2012-05/msg00036.html>.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add system-quote.
Packit 33f14e
	* src/diff3.c, src/sdiff.c, src/util.c:
Packit 33f14e
	Include <system-quote.h>, not <sh-quote.h>.
Packit 33f14e
	* src/diff3.c (read_diff):
Packit 33f14e
	* src/sdiff.c (main, edit):
Packit 33f14e
	* src/util.c (begin_output):
Packit 33f14e
	Use system_quote_argv, for portability to Mingw.
Packit 33f14e
	* src/sdiff.c (NUM_SIGS, handler_index_of_SIGINT): Now enum
Packit 33f14e
	values, not macros; this is cleaner and avoids a GCC warning if
Packit 33f14e
	!HAVE_WORKING_VFORK.
Packit 33f14e
	* src/util.c (begin_output) [! HAVE_WORKING_FORK]: Do not use -f,
Packit 33f14e
	for consistency with the HAVE_WORKING_FORK code.
Packit 33f14e
Packit 33f14e
	maint: update bootstrap from gnulib
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
Packit 33f14e
	maint: m4/gnulib-cache.m4 is not under version control
Packit 33f14e
	This is like what coreutils does, and suppresses 'git status' chatter.
Packit 33f14e
	* .gitignore: Add /m4/gnulib-cache.m4.
Packit 33f14e
Packit 33f14e
	Use binary mode when testing for binary files.
Packit 33f14e
	This reverts the 2006-01-05 change and modernizes to the current API.
Packit 33f14e
	Idea suggested by Eli Zaretskii in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-gnu-utils/2012-05/msg00066.html
Packit 33f14e
	* src/cmp.c (main):
Packit 33f14e
	* src/diff.c (main, compare_files):
Packit 33f14e
	Use set_binary_mode rather than SET_BINARY.
Packit 33f14e
	* src/diff.c (compare_files): Omit unnecessary use of O_BINARY.
Packit 33f14e
	* src/io.c (sip): Sample unknown files in binary mode, to see
Packit 33f14e
	whether they are binary.
Packit 33f14e
	(read_files): Read binary files in binary mode.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2012-05-13  Stefano Lattarini  <stefano.lattarini@gmail.com>
Packit 33f14e
Packit 33f14e
	build: omit obsolete AM_PROG_CC_STDC macro
Packit 33f14e
	The Automake-provided macro 'AM_PROG_CC_STDC' has been superseded by
Packit 33f14e
	the Autoconf-provided one 'AC_PROG_CC' since October 2002, and will
Packit 33f14e
	be removed in the next major automake version.
Packit 33f14e
	* configure.ac (AM_PROG_CC_STDC): Drop it.
Packit 33f14e
Packit 33f14e
2012-05-05  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	diff: fix a typo that was always disabling the same_special_file macro
Packit 33f14e
	* src/system.h (same_special_file): Correct cpp guard expression:
Packit 33f14e
	s/HAVE_ST_RDEV/HAVE_STRUCT_STAT_ST_RDEV/.  Reported by Eli Zaretskii.
Packit 33f14e
Packit 33f14e
2012-04-17  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: update bootstrap from gnulib
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
Packit 33f14e
2012-03-07  Eric Blake  <eblake@redhat.com>
Packit 33f14e
Packit 33f14e
	usage: improve wording of --ignore-matching-lines
Packit 33f14e
	* src/diff.c (option_help_msgid): Tweak wording.
Packit 33f14e
Packit 33f14e
2012-03-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	doc: explain -I RE better in --help output
Packit 33f14e
	* src/diff.c, src/sdiff.c (option_help_msgid): For -I RE,
Packit 33f14e
	change "whose lines all match" to "all whose lines match" to avoid
Packit 33f14e
	unintended interpretation.  Reported by Danijel Tasov in
Packit 33f14e
	<http://bugs.debian.org/648411>.
Packit 33f14e
Packit 33f14e
2012-02-12  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	sdiff: remove dependency on sigprocmask
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Remove sigprocmask.
Packit 33f14e
	* src/sdiff.c (temporary_file): No need to invoke sigprocmask
Packit 33f14e
	here, since the signal handler merely sets a flag.
Packit 33f14e
Packit 33f14e
2012-02-04  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: -N, --unidirectional-new-file now compare to "-" too
Packit 33f14e
	* NEWS: Document this.
Packit 33f14e
	* doc/diffutils.texi (Comparing Directories): Likewise.
Packit 33f14e
	Also, document that these options work at the top level.
Packit 33f14e
	* src/diff.c (compare_files): Treat EBADF like ENOENT, to handle
Packit 33f14e
	the case where "-" is closed.  Allow the other file to be
Packit 33f14e
	STDIN_FILENO, in case it's "-".
Packit 33f14e
	* tests/Makefile.am (TESTS): Add new-file.
Packit 33f14e
	* tests/new-file: New file.
Packit 33f14e
Packit 33f14e
2012-01-25  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	maint: quote 'like this' or "like this", not `like this'
Packit 33f14e
	This is in response to a recent change in the GNU coding standards,
Packit 33f14e
	which now suggest quoting 'like this' or "like this", instead of
Packit 33f14e
	`like this' or ``like this''.
Packit 33f14e
	* HACKING, NEWS, README, README-hacking, TODO, doc/diagmeet.note:
Packit 33f14e
	* doc/diffutils.texi, ms/config.bat, ms/config.site:
Packit 33f14e
	* src/analyze.c, src/cmp.c, src/context.c, src/diff.c:
Packit 33f14e
	* src/diff.h, src/diff3.c, src/dir.c, src/ifdef.c, src/io.c:
Packit 33f14e
	* src/sdiff.c, src/side.c, src/system.h, src/util.c:
Packit 33f14e
	* tests/help-version:
Packit 33f14e
	Quote 'like this' or "like this" in commentary.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Adjust to reflect new NEWS quoting.
Packit 33f14e
	* man/help2man: Update to 1.40.4 version, with quoting fixed as above.
Packit 33f14e
	* po/en.po: Remove translation involving `, as it's no longer needed.
Packit 33f14e
	* src/cmp.c (try_help, specify_ignore_initial, usage, main):
Packit 33f14e
	* src/diff.c (main, try_help, option_help_msgid, specify_value)
Packit 33f14e
	(compare_files):
Packit 33f14e
	* src/diff3.c (main, try_help, option_help_msgid, usage)
Packit 33f14e
	(read_diff):
Packit 33f14e
	* src/dir.c (compare_names):
Packit 33f14e
	* src/sdiff.c (try_help, usage, check_child_status, main):
Packit 33f14e
	* src/util.c (finish_output):
Packit 33f14e
	* tests/help-version:
Packit 33f14e
	Quote 'like this' in output.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2012-01-12  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: accommodate newer bootstrap from gnulib
Packit 33f14e
	* bootstrap.conf (gnulib_tool_option_extras): Add both --symlink
Packit 33f14e
	and --makefile-name=gnulib.mk.  Also remove now-obsolete $bt/ prefix.
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
	* tests/init.sh: Update from gnulib.
Packit 33f14e
	* lib/Makefile.am: Initialize numerous variables, so that
Packit 33f14e
	generated code in gnulib.mk may use += to append to them.
Packit 33f14e
Packit 33f14e
	maint: avoid new syntax-check failure
Packit 33f14e
	* src/diff.c (compare_files): Use STREQ, not strcmp.
Packit 33f14e
Packit 33f14e
2012-01-08  Bruno Haible  <bruno@clisp.org>
Packit 33f14e
Packit 33f14e
	New option --no-dereference.
Packit 33f14e
	* src/diff.h (no_dereference_symlinks): New variable.
Packit 33f14e
	* src/diff.c: Include xreadlink.h.
Packit 33f14e
	(longopts): Add --no-dereference option.
Packit 33f14e
	(main): Accept --no-dereference option.
Packit 33f14e
	(option_help_msgid): Mention the --no-dereference option.
Packit 33f14e
	(compare_files): If no_dereference_symlinks is true, use lstat()
Packit 33f14e
	instead of stat(). Compare symbolic links by comparing their values.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add lstat, stat, xreadlink.
Packit 33f14e
	* doc/diffutils.texi (Comparing Directories, diff Options): Mention the
Packit 33f14e
	--no-dereference option.
Packit 33f14e
	* tests/no-dereference: New file.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2012-01-01  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: update all copyright year number ranges
Packit 33f14e
	Run "make update-copyright".
Packit 33f14e
Packit 33f14e
2011-12-14  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update to latest gnulib and adapt
Packit 33f14e
	* tests/binary: Reverse arguments to compare to avoid failure of
Packit 33f14e
	new syntax-check rule.
Packit 33f14e
	* configure.ac: Use -Wno-format-nonliteral.
Packit 33f14e
	Mark functions as pure of const, per recommendations enabled by
Packit 33f14e
	new gcc -W options.  Use _GL_ATTRIBUTE_PURE and _GL_ATTRIBUTE_CONST.
Packit 33f14e
	* lib/cmpbuf.h (buffer_lcm, block_compare):
Packit 33f14e
	Apply pure and/or const attributes.
Packit 33f14e
	* src/cmp.c (block_compare): Likewise.
Packit 33f14e
	* src/context.c (find_hunk): Likewise.
Packit 33f14e
	* src/diff.h (lines_differ): Likewise.
Packit 33f14e
	* src/diff3.c (skipwhite): Likewise.
Packit 33f14e
	* src/dir.c (dir_loop): Likewise.
Packit 33f14e
	* src/util.c (find_change, find_reverse_change): Likewise.
Packit 33f14e
	(translate_line_number): Likewise.
Packit 33f14e
Packit 33f14e
	build: stop distributing gzip'd releases;  xz is enough
Packit 33f14e
	* configure.ac (AM_INIT_AUTOMAKE): Add no-dist-gzip.
Packit 33f14e
Packit 33f14e
2011-11-29  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: use "compare exp out", not "compare out exp"
Packit 33f14e
	Likewise, when an empty file is expected, use "compare /dev/null out",
Packit 33f14e
	not "compare out /dev/null". I.e., specify the expected/desired contents
Packit 33f14e
	via the first file name.  Prompted by a suggestion from Bruno Haible
Packit 33f14e
	in http://thread.gmane.org/gmane.comp.gnu.grep.bugs/4020/focus=29154
Packit 33f14e
Packit 33f14e
	Run these commands:
Packit 33f14e
Packit 33f14e
	  git grep -l -E 'compare [^ ]+ exp' \
Packit 33f14e
	    |xargs perl -pi -e 's/\b(compare) (\S+) (exp\S*)/$1 $3 $2/'
Packit 33f14e
	  git grep -l -E 'compare [^ ]+ /dev/null' \
Packit 33f14e
	    |xargs perl -pi -e 's,\b(compare) (\S+) (/dev/null),$1 $3 $2,'
Packit 33f14e
Packit 33f14e
	But manually convert this one:
Packit 33f14e
Packit 33f14e
	  -compare out exp-$(echo $opt|tr ' ' _)
Packit 33f14e
	  +compare exp-$(echo $opt|tr ' ' _) out
Packit 33f14e
Packit 33f14e
	and avoid an inappropriate change to cfg.mk.
Packit 33f14e
Packit 33f14e
2011-10-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
Packit 33f14e
Packit 33f14e
	tests: use more portable fd redirection in TESTS_ENVIRONMENT
Packit 33f14e
	* tests/Makefile.am (TESTS_ENVIRONMENT): Redirection with `exec 9>&2'
Packit 33f14e
	is not portable to various Korn shells, and to (at least) HP-UX 11
Packit 33f14e
	/bin/sh.  Use a more portable idiom.
Packit 33f14e
	See http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/22488 for
Packit 33f14e
	lots of discussion.
Packit 33f14e
Packit 33f14e
2011-10-11  Stefano Lattarini  <stefano.lattarini@gmail.com>
Packit 33f14e
Packit 33f14e
	tests: make test runner a script, not a shell function
Packit 33f14e
	All the test scripts in the diffutils testsuite are shell scripts,
Packit 33f14e
	so the current definition of TESTS_ENVIRONMENT, which adaptively
Packit 33f14e
	run tests using either perl or the shell depending on their kind,
Packit 33f14e
	is an overkill.
Packit 33f14e
Packit 33f14e
	Moreover, this change is required in order for the testsuite to
Packit 33f14e
	continue to work with the new testsuite harness that is planned
Packit 33f14e
	to be introduced in Automake 1.12 (which, as of the writing date,
Packit 33f14e
	is still under development and in late alpha state).
Packit 33f14e
Packit 33f14e
	See also related discussion on bug-coreutils:
Packit 33f14e
	 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8887>
Packit 33f14e
Packit 33f14e
	* tests/Makefile.am (TESTS_ENVIRONMENT): Remove definition of the
Packit 33f14e
	`shell_or_perl_' shell function, which is not required anymore.
Packit 33f14e
	(LOG_COMPILER): New, define to `$(SHELL)'.
Packit 33f14e
	* tests/binary: Make executable.
Packit 33f14e
	* tests/colliding-file-names: Likewise.
Packit 33f14e
	* tests/excess-slash: Likewise.
Packit 33f14e
	* tests/no-newline-at-eof: Likewise.
Packit 33f14e
Packit 33f14e
2011-10-04  Claudio Bley  <claudio.bley@gmail.com>
Packit 33f14e
Packit 33f14e
	portability: use SET_BINARY rather than xfreopen (NULL, ...
Packit 33f14e
	* src/diff.c: Include binary-io.h, not xfreopen.h.
Packit 33f14e
	(main): Use SET_BINARY (...) rather than xfreopen (NULL, X, ...),
Packit 33f14e
	because the latter doesn't work on MinGW and crashes using MSVC.
Packit 33f14e
	* src/cmp.c (main): Likewise.
Packit 33f14e
Packit 33f14e
2011-10-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2011-09-02  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.2
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
	build: update bootstrap and tests/init.sh from gnulib
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
	* tests/init.sh: Likewise.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2011-09-01  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: diffutils' texi-derived doc may now be in debian's "main" section
Packit 33f14e
	* NEWS (Packaging): Mention the "no front/back-cover" change.
Packit 33f14e
Packit 33f14e
2011-08-14  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: avoid new "make sytnax-check" failure.
Packit 33f14e
	* src/diff.h (find_dir_file_pathname): Mark declaration with "extern"
Packit 33f14e
	keyword, in order to placate the tight-scope syntax check.
Packit 33f14e
Packit 33f14e
2011-08-14  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	* src/io.c (find_and_hash_each_line): Refactor for brevity.
Packit 33f14e
Packit 33f14e
2011-08-14  Roland McGrath  <roland@hack.frob.com>
Packit 33f14e
Packit 33f14e
	diff, sdiff: new option --ignore-trailing-space (-Z)
Packit 33f14e
	Derived from Roland McGrath's patch (dated June 2004!) in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-gnu-utils/2004-07/msg00000.html
Packit 33f14e
	* NEWS:
Packit 33f14e
	* doc/diffutils.texi (White Space, Blank Lines)
Packit 33f14e
	(sdiff Option Summary, diff Options, sdiff Options): Document -Z.
Packit 33f14e
	* src/diff.h (IGNORE_TRAILING_SPACE)
Packit 33f14e
	(IGNORE_TAB_EXPANSION_AND_TRAILING_SPACE): New constants, for -Z.
Packit 33f14e
	* src/diff.c (shortopts, longopts, main, option_help_msgid):
Packit 33f14e
	* src/sdiff.c (longopts, option_help_msgid, main):
Packit 33f14e
	* src/io.c (find_and_hash_each_line):
Packit 33f14e
	* src/util.c (lines_differ, analyze_hunk): Support -Z.
Packit 33f14e
Packit 33f14e
2011-08-13  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Remove timegm.
Packit 33f14e
	This fixes a problem noted by Andreas Schwab in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2011-08/msg00035.html
Packit 33f14e
Packit 33f14e
2011-08-13  Tim Waugh  <twaugh@redhat.com>
Packit 33f14e
Packit 33f14e
	diff: --ignore-file-name-case now applies at top level too
Packit 33f14e
	Derived from Tim Waugh's patch in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2011-08/msg00034.html
Packit 33f14e
	* NEWS, doc/diffutils.texi (diff Options): Document this.
Packit 33f14e
	* src/diff.c (compare_files): Implement this, by using
Packit 33f14e
	find_dir_file_pathname.
Packit 33f14e
	* src/diff.h (find_dir_file_pathname): New decl.
Packit 33f14e
	* src/dir.c: Include filenamecat.h.
Packit 33f14e
	(find_dir_file_pathname): New function.
Packit 33f14e
Packit 33f14e
2011-08-13  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	* .gitignore: Add lib/unistr, lib/unused-parameter.h.
Packit 33f14e
Packit 33f14e
2011-08-10  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.1
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
	build: use largefile module and update to latest gnulib
Packit 33f14e
	* configure.ac: Remove AC_SYS_LARGEFILE, subsumed by ...
Packit 33f14e
	* bootstrap.conf (gnulib_modules): ...this.  Use largefile module.
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
Packit 33f14e
2011-08-08  Santiago Vila  <sanvila@unex.es>
Packit 33f14e
Packit 33f14e
	doc: insert comma in --help line for --ignore-space-change (-b)
Packit 33f14e
	* src/diff.c (option_help_msgid): Insert omitted comma between
Packit 33f14e
	"-b" and "--ignore-space-change".  (tiny change)
Packit 33f14e
Packit 33f14e
2011-08-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: relax restriction on front-cover and back-cover texts
Packit 33f14e
	* doc/diffutils.texi (copying): Relax restriction on front-cover
Packit 33f14e
	and back-cover texts (just as m4 did here:
Packit 33f14e
	http://git.savannah.gnu.org/cgit/m4.git/commit?id=ee1e92ec).
Packit 33f14e
	Reported by Santiago Vila.  Fix suggested by Eric Blake.
Packit 33f14e
Packit 33f14e
2011-08-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: update init.sh from gnulib
Packit 33f14e
	* tests/init.sh: Update from gnulib.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2011-07-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: remove inclusion of unused header, for "make syntax-check"
Packit 33f14e
	* src/diff3.c: Don't include <inttostr.h>.  Not used.
Packit 33f14e
	* src/context.c: Likewise.
Packit 33f14e
Packit 33f14e
2011-06-19  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: don't require perl when building from a tarball
Packit 33f14e
	But do ensure -- in all other circumstances -- that the man/*.1
Packit 33f14e
	files are rebuilt whenever the version number changes.
Packit 33f14e
	* configure.ac (SRC_VERSION_C): Define.
Packit 33f14e
	* man/Makefile.am (dist_man1_MANS): Rename from $(man1_MANS),
Packit 33f14e
	so that we distribute those pesky man/*.1 files.
Packit 33f14e
	(EXTRA_DIST): Reflect name change.
Packit 33f14e
	(MAINTAINERCLEANFILES): Define this, not DISTCLEANFILES,
Packit 33f14e
	now that these generated files are distributed.
Packit 33f14e
	($(dist_man1_MANS)): Depend on $(SRC_VERSION_C), so we get the
Packit 33f14e
	full dependency when not building from a tarball.
Packit 33f14e
Packit 33f14e
2011-06-13  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: do not distribute generated man/*.1 man files
Packit 33f14e
	* man/help2man: New file.
Packit 33f14e
	* man/Makefile.am: Use $(srcdir)/help2man.
Packit 33f14e
	Convert $(dist_man1_MANS) to $(man1_MANS), to tell automake
Packit 33f14e
	not to distribute the generated man/*.1 files.  Now they're
Packit 33f14e
	generated at build-from-tarball time.
Packit 33f14e
	($(man1_MANS)): Depend on version.c, so that man pages are
Packit 33f14e
	regenerated whenever the version string changes.
Packit 33f14e
Packit 33f14e
	build: ccache works better without embedded version strings
Packit 33f14e
	* src/Makefile.am: Generate version.c and version.h and put the
Packit 33f14e
	new symbol in a tiny library to be used by each program.
Packit 33f14e
	(LDADD): Add the new library.
Packit 33f14e
	* src/cmp.c (main): Use Version, not PACKAGE_VERSION, so the .o
Packit 33f14e
	file does not change with each commit-derived version increment.
Packit 33f14e
	* src/diff.c (main): Likewise.
Packit 33f14e
	* src/diff3.c (main): Likewise.
Packit 33f14e
	* src/sdiff.c (main): Likewise.
Packit 33f14e
	* src/system.h: Include "version.h".
Packit 33f14e
	* .gitignore: Add version.[ch]
Packit 33f14e
Packit 33f14e
2011-06-12  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: ensure each program has a man/*.x file: add "SEE ALSO" references
Packit 33f14e
	* man/cmp.x: New file.
Packit 33f14e
	* man/diff3.x: New file.
Packit 33f14e
	* man/sdiff.x: New file.
Packit 33f14e
	* man/diff.x: Add xrefs to the other three programs, and to patch.
Packit 33f14e
	* man/Makefile.am (EXTRA_DIST): List new files.
Packit 33f14e
	(cmp.1, diff3.1, sdiff.1): Depend on each .x file.
Packit 33f14e
Packit 33f14e
	doc: rename diff.texi to diffutils.texi
Packit 33f14e
	This makes the .texi basename the same as the package name,
Packit 33f14e
	which is consistent with most other GNU packages.
Packit 33f14e
	* doc/diffutils.texi: Rename from...
Packit 33f14e
	* doc/diff.texi: ...removed.
Packit 33f14e
	* doc/Makefile.am (info_TEXINFOS): Reflect name change.
Packit 33f14e
	(diffutils_TEXINFOS): Likewise.
Packit 33f14e
	* cfg.mk (gendocs_options_): Remove this customization.  It is no
Packit 33f14e
	longer needed, now that the .texi name matches that of the package.
Packit 33f14e
	* man/Makefile.am ($(dist_man1_MANS)): Remove now-unnecessary sed
Packit 33f14e
	filter.
Packit 33f14e
	* README: Update references to diffutils.texi etc. here, too.
Packit 33f14e
	* .gitignore: Update here, too.
Packit 33f14e
	Suggested by Karl Berry.
Packit 33f14e
Packit 33f14e
2011-06-08  Karl Berry  <karl@freefriends.org>
Packit 33f14e
Packit 33f14e
	cmp, diff, diff3, sdiff: edit and align --help text.
Packit 33f14e
	* cmp.c (option_help_msgid, usage),
Packit 33f14e
	* diff.c (option_help_msgid, usage),
Packit 33f14e
	* diff3.c (option_help_msgid, usage),
Packit 33f14e
	* sdiff.c (option_help_msgid, usage): align descriptions in the --help
Packit 33f14e
	output and slightly edit content.
Packit 33f14e
Packit 33f14e
2011-05-27  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: don't use locales after local-specific sorting fails
Packit 33f14e
	* src/dir.c (compare_names): Don't invoke strcasecmp if
Packit 33f14e
	locale-specific sorting fails, because POSIX.1-2008 says strcasecmp
Packit 33f14e
	has unspecified behavior outside the POSIX locale.  See:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2011-05/msg00008.html
Packit 33f14e
Packit 33f14e
	bootstrap: Avoid multithreading.
Packit 33f14e
	* bootstrap.conf (gnulib_tool_option_extras):
Packit 33f14e
	Add "--avoid=localename --avoid=lock", because we don't want to
Packit 33f14e
	bring in the multithreading code that recent gnulib changes would
Packit 33f14e
	otherwise bring in.
Packit 33f14e
	(excluded_files): Remove m4/lock.m4; no longer needed, now that
Packit 33f14e
	we use --avoid=lock.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2011-05-23  Karl Berry  <karl@gnu.org>
Packit 33f14e
Packit 33f14e
	maint: update README-hacking
Packit 33f14e
	* README-hacking: Update a la coreutils for git, etc.
Packit 33f14e
Packit 33f14e
2011-05-23  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: update gnulib to latest with accompanying tight-scope tweaks
Packit 33f14e
	* cfg.mk: Include $(srcdir)/dist-check.mk using "-include",
Packit 33f14e
	to accommodate the new sc_tight_scope rule.
Packit 33f14e
	(_gl_TS_extern): Define, to tell gnulib's tight_scope rule that
Packit 33f14e
	headers here mark externs with "XTERN".
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
Packit 33f14e
2011-05-18  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: use gnulib's new readme-release module
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add readme-release.
Packit 33f14e
	(bootstrap_epilogue): Add the recommended perl one-liner.
Packit 33f14e
	* README-release: Remove file; it is now generated from gnulib.
Packit 33f14e
	* .gitignore: Add it.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	maint: prepare for the tight-scope check
Packit 33f14e
	* src/diff.h: Mark function declarations with "extern" in
Packit 33f14e
	preparation for the tight-scope check.
Packit 33f14e
	(ignore_white_space): Separate enum decl from declaration
Packit 33f14e
	of this variable.
Packit 33f14e
	* src/Makefile.am (diff_SOURCES): Move diff.h from here to ...
Packit 33f14e
	(noinst_HEADERS): ...here.
Packit 33f14e
	For convenience, since the tight-scope rule uses $(noinst_HEADERS).
Packit 33f14e
Packit 33f14e
	maint: don't use now-removed gnulib "exit" module
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Remove "exit" module.
Packit 33f14e
	It no longer exists.
Packit 33f14e
Packit 33f14e
2011-03-26  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	* .x-sc_space_tab: Remove file.  Instead, ...
Packit 33f14e
	* cfg.mk (exclude_file_name_regexp--sc_space_tab): ...define this.
Packit 33f14e
Packit 33f14e
	maint: fix typo in unused rule
Packit 33f14e
	* cfg.mk (config-save): Fix typo: add leading "_" in variable name.
Packit 33f14e
Packit 33f14e
2011-03-18  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: add a reference to wdiff(1) from diff.1
Packit 33f14e
	* man/diff.x: New file, to add "SEE ALSO" reference to wdiff(1).
Packit 33f14e
	* man/Makefile.am (diff.1): Depend on diff.x.
Packit 33f14e
	($(dist_man1_MANS)): Tell help2man to include diff.x.
Packit 33f14e
	(EXTRA_DIST): Add diff.x.
Packit 33f14e
	Suggestion from Dan Jacobson in http://bugs.debian.org/613319
Packit 33f14e
Packit 33f14e
2011-03-18  Eric Blake  <eblake@redhat.com>
Packit 33f14e
Packit 33f14e
	docs: info should mention -L
Packit 33f14e
	* doc/diff.texi (diff Options): Document -L.
Packit 33f14e
Packit 33f14e
	docs: diff --help should mention -L
Packit 33f14e
	* src/diff.c (option_help_msgid): Document -L.
Packit 33f14e
Packit 33f14e
2011-02-15  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: speak of the --test (-a) option, not "the -a or --test option"
Packit 33f14e
	Convert using this command:
Packit 33f14e
	perl -pi -e \
Packit 33f14e
	  's/(\@option{-.}) or (\@option{--.*?}) option/$2 ($1) option/' \
Packit 33f14e
	  doc/diff.texi
Packit 33f14e
	Then convert some more with this:
Packit 33f14e
	perl -pi -e \
Packit 33f14e
	    's/the (\@option{-.}) or (\@option{--.*?})$/the $2 ($1)/' \
Packit 33f14e
	  doc/diff.texi
Packit 33f14e
	Then convert more manually.
Packit 33f14e
Packit 33f14e
	Suggested by Dan Jacobson
Packit 33f14e
Packit 33f14e
2011-01-24  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: remove all uses of vfork: use fork instead
Packit 33f14e
	Our use of vfork now provokes warnings from gcc-4.6.0.
Packit 33f14e
	Also, vfork is no longer even specified by POSIX.1-2008.
Packit 33f14e
	* src/diff3.c (read_diff): Change each use of vfork to "fork".
Packit 33f14e
	Remove #ifdef'd code.
Packit 33f14e
	* src/util.c (begin_output, finish_output): Likewise.
Packit 33f14e
	* src/sdiff.c (cleanup, main, edit): Likewise.
Packit 33f14e
	(handler_index_of_SIGPIPE): Remove now-unused definition.
Packit 33f14e
	* src/system.h: Don't include <vfork.h>.
Packit 33f14e
	(vfork): Remove definition.
Packit 33f14e
	* ms/config.site: Remove reference to vfork cache variable.
Packit 33f14e
Packit 33f14e
	tests: avoid newer but less-portable tail option syntax
Packit 33f14e
	* tests/function-line-vs-leading-space: Use sed -n '3,$p' rather than
Packit 33f14e
	tail -n+3.  Older versions of tail do not accept that newer syntax.
Packit 33f14e
	Reported by Sudhakara Peram.
Packit 33f14e
Packit 33f14e
	tests: fix an erroneous test
Packit 33f14e
	On most systems, like-named files were compared, by luck.
Packit 33f14e
	However, on others, different-named files would be compared
Packit 33f14e
	since their names were being treated as equal -- but they had
Packit 33f14e
	different content, so the test would fail.
Packit 33f14e
	* tests/colliding-file-names: Use different sets of file names
Packit 33f14e
	in d1 and d2 so that they cannot accidentally match.
Packit 33f14e
	Put the same line in each test file.  This is required
Packit 33f14e
	when files named e.g., abc and ABC are compared.
Packit 33f14e
	This test was failing on a NixOS 86_64-darwin system.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	tests: fix typo that silently disabled all tests
Packit 33f14e
	* tests/Makefile.am (TESTS): Fix typo: s/jESTS/TESTS/
Packit 33f14e
Packit 33f14e
2011-01-23  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	maint: avoid new syntax-check failure
Packit 33f14e
	* src/diff.c (specify_value): Use !STREQ(...), not strcmp(...) != 0.
Packit 33f14e
	* src/diff3.c (main): Likewise.
Packit 33f14e
Packit 33f14e
2011-01-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: update copyright year ranges to include 2011
Packit 33f14e
	Run "make update-copyright", so "make syntax-check" works in 2011.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2010-12-16  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	bootstrap: adjust to recent gnulib changes
Packit 33f14e
	* bootstrap.conf (excluded_files): Do not exclude m4/size_max.m4
Packit 33f14e
	and m4/xsize.m4 when using an external gettext, since they are
Packit 33f14e
	now needed by other gnulib modules.
Packit 33f14e
Packit 33f14e
2010-12-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: add contributor guidelines: HACKING
Packit 33f14e
	* HACKING: New file, copied 99% from the one in grep's repository.
Packit 33f14e
Packit 33f14e
2010-10-09  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: describe policy on copyright year number ranges
Packit 33f14e
	* README: Mention coreutils' long-standing policy on use of M-N
Packit 33f14e
	ranges in copyright year lists.  Requested by Richard Stallman.
Packit 33f14e
Packit 33f14e
2010-09-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: adjust init.sh use to conform
Packit 33f14e
	* tests/help-version: Use one line: "${srcdir=.}/init.sh"; ...
Packit 33f14e
	* tests/basic: Likewise.
Packit 33f14e
	* tests/binary: Likewise.
Packit 33f14e
	* tests/colliding-file-names: Likewise.
Packit 33f14e
	* tests/excess-slash: Likewise.
Packit 33f14e
	* tests/function-line-vs-leading-space: Likewise.
Packit 33f14e
	* tests/help-version: Likewise.
Packit 33f14e
	* tests/label-vs-func: Likewise.
Packit 33f14e
	* tests/no-newline-at-eof: Likewise.
Packit 33f14e
	* tests/stdin: Likewise.
Packit 33f14e
Packit 33f14e
	maint: avoid shadowing warning
Packit 33f14e
	* src/dir.c (diff_dirs): Rename shadowed local cmp to "c".
Packit 33f14e
Packit 33f14e
2010-09-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: use gettext-h, not gettext
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Use gettext-h, not gettext.
Packit 33f14e
	The latter is overkill for a package that uses
Packit 33f14e
	AM_GNU_GETTEXT([external]...
Packit 33f14e
Packit 33f14e
	build: update build/test tools from gnulib
Packit 33f14e
	* bootstrap: Update from gnulib.
Packit 33f14e
	* tests/init.sh: Likewise.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2010-08-14  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	diff -r: avoid printing excess slashes in concatenated file names
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add filenamecat.
Packit 33f14e
	* src/diff.c: Include "filenamecat.h".
Packit 33f14e
	(compare_files): Use file_name_concat, rather than dir_file_pathname.
Packit 33f14e
	* src/util.c (dir_file_pathname): Remove now-unused function.
Packit 33f14e
	* src/diff.h: Remove its declaration.
Packit 33f14e
	* tests/excess-slash: New script to test for this.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
	Forwarded by Santiago Vila from <bugs.debian.org/586301a>,
Packit 33f14e
	reported by Jari Aalto.
Packit 33f14e
Packit 33f14e
2010-08-12  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	diff: avoid spurious diffs when two distinct dir entries compare equal
Packit 33f14e
	Problem reported by Christoph Anton Mitterer in:
Packit 33f14e
	http://lists.gnu.org/archive/html/bug-diffutils/2010-08/msg00000.html
Packit 33f14e
Packit 33f14e
	* NEWS: Mention this bug fix.
Packit 33f14e
	* src/dir.c (compare_names_for_qsort): Fall back on file_name_cmp
Packit 33f14e
	if two distinct entries in the same directory compare equal.
Packit 33f14e
	(diff_dirs): Prefer a file_name_cmp match when available.
Packit 33f14e
	* tests/Makefile.am (TESTS): New test colliding-file-names.
Packit 33f14e
	* tests/colliding-file-names: New file.
Packit 33f14e
Packit 33f14e
2010-05-09  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	build: don't define macros that gnulib provides
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add signal, stdint.
Packit 33f14e
	* lib/cmpbuf.c (SA_RESTART, SA_INTERRUPT): Remove definitions.
Packit 33f14e
	(SIZE_MAX, PTRDIFF_MAX): Likewise.
Packit 33f14e
	Include <stdint.h>.
Packit 33f14e
	* src/system.h (WEXITSTATUS, WIFEXITED): Remove definitions.
Packit 33f14e
	(SA_RESTART, SA_INTERRUPT): Likewise.
Packit 33f14e
Packit 33f14e
	build: rely on gnulib's sigprocmask module
Packit 33f14e
	* src/sdiff.c: Remove #if-!HAVE_SIGPROCMASK-guarded code.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add sigprocmask.
Packit 33f14e
Packit 33f14e
2010-05-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: README-release: don't mention To:, Cc:, etc announcement headers,
Packit 33f14e
	now that those are supplied automatically via gnulib's maint.mk.
Packit 33f14e
	* README-release: sync with coreutils.
Packit 33f14e
Packit 33f14e
	maint: teach web-doc-generating code how to do its job
Packit 33f14e
	* cfg.mk (gendocs_options): Define, so that gendocs.sh knows
Packit 33f14e
	the name of our texinfo source file.
Packit 33f14e
	* gnulib: Update to latest, for new gnu-web-doc-update and maint.mk.
Packit 33f14e
Packit 33f14e
2010-05-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: update release procedure
Packit 33f14e
	* README-release: Rearrange slightly: post the announcement to
Packit 33f14e
	Savannah first, so you can include a link to that post in the email.
Packit 33f14e
	Sync a few details from coreutils' README-release.
Packit 33f14e
Packit 33f14e
	post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 3.0
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2010-04-30  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: use gnulib's sys_wait module
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Use gnulib's sys_wait module,
Packit 33f14e
	now that we assume its presence.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
	* bootstrap: Also update from gnulib.
Packit 33f14e
	* tests/init.sh: Likewise
Packit 33f14e
Packit 33f14e
	maint: remove now-useless #if HAVE_HEADER_H guards
Packit 33f14e
	* src/system.h: Include <sys/wait.h> unconditionally,
Packit 33f14e
	now that gnulib guarantees its presence.
Packit 33f14e
	* lib/cmpbuf.c: Likewise for <unistd.h> and <inttypes.h>.
Packit 33f14e
Packit 33f14e
2010-04-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: use original no-newline-at-eof test, but with -U1, not -U2
Packit 33f14e
	* tests/no-newline-at-eof: Revert to the smaller test, but with
Packit 33f14e
	-U1 rather than -U2, since that actually triggers the bug.
Packit 33f14e
Packit 33f14e
2010-04-16  Paul Eggert  <eggert@cs.ucla.edu>
Packit 33f14e
Packit 33f14e
	Followon improvements for the fix for Debian bug 577832.
Packit 33f14e
	* src/io.c (find_and_hash_each_line): Omit the inserted newline in
Packit 33f14e
	a simpler way.
Packit 33f14e
	* tests/no-newline-at-eof: Fix the test case so that it rejects
Packit 33f14e
	the old, buggy behavior.
Packit 33f14e
Packit 33f14e
2010-04-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	tests: test for the no-newline-at-EOF bug
Packit 33f14e
	* tests/no-newline-at-eof: New file.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2010-04-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	diff: fix a regression when at least one input lacks a newline-at-EOF,
Packit 33f14e
	and the final hunk plus context-length aligns exactly with the end
Packit 33f14e
	of the newline-lacking file.  Diff would fail to output the required
Packit 33f14e
	"\ No newline at end of file" line, thus rendering the output invalid.
Packit 33f14e
	This bug appears to have been introduced by 2006-05-07
Packit 33f14e
	commit 58d0483b, "(find_identical_ends): Fix huge performance bug...",
Packit 33f14e
	at least to the extent that reverting that change fixes the bug.
Packit 33f14e
	Considering the stated effect of that change and lack of metrics,
Packit 33f14e
	reverting it is not an option, so here we take a more direct approach.
Packit 33f14e
Packit 33f14e
	Given these inputs,
Packit 33f14e
Packit 33f14e
	    printf '\n1'>a; printf '\n0\n\n1'>b
Packit 33f14e
Packit 33f14e
	and running diff like this:
Packit 33f14e
Packit 33f14e
	    ./diff -U1 a b
Packit 33f14e
Packit 33f14e
	for input file "b", the pointer, files[1].linbuf[4][-1], to
Packit 33f14e
	the last byte on the final line was mistakenly pointing at the
Packit 33f14e
	sentinel newline at EOF, rather than at the preceding byte.
Packit 33f14e
Packit 33f14e
	  (gdb) p files[1].linbuf[4][-1]
Packit 33f14e
	  $3 = 10 '\n'
Packit 33f14e
Packit 33f14e
	Thus, this test in the final print_1_line call:
Packit 33f14e
Packit 33f14e
	  if ((!line_flag || line_flag[0]) && limit[-1] != '\n')
Packit 33f14e
	    fprintf (out, "\n\\ %s\n", _("No newline at end of file"));
Packit 33f14e
Packit 33f14e
	would fail, because limit[-1] (which is files[1].linbuf[4][-1])
Packit 33f14e
	was mistakenly '\n', rather than the desired '1'.
Packit 33f14e
Packit 33f14e
	My first thought was simply to adjust the final linbuf[line] setting,
Packit 33f14e
	at the end of io.c's find_and_hash_each_line function function:
Packit 33f14e
Packit 33f14e
	       if (p == bufend)
Packit 33f14e
	-       break;
Packit 33f14e
	+       {
Packit 33f14e
	+         if (current->missing_newline)
Packit 33f14e
	+           --linbuf[line];
Packit 33f14e
	+         break;
Packit 33f14e
	+       }
Packit 33f14e
Packit 33f14e
	But that would make diff misbehave with this input
Packit 33f14e
	(same as above, but with a newline appended to "a"),
Packit 33f14e
Packit 33f14e
	    printf '\n1\n'>a; printf '\n0\n\n1'>b
Packit 33f14e
	    ./diff -U1 a b
Packit 33f14e
Packit 33f14e
	due to the block (100 lines above) that is triggered in that case
Packit 33f14e
	(but not in the both-files-missing-newline case):
Packit 33f14e
Packit 33f14e
	      if (p == bufend
Packit 33f14e
	          && current->missing_newline
Packit 33f14e
	          && ROBUST_OUTPUT_STYLE (output_style))
Packit 33f14e
	        {
Packit 33f14e
	          /* This line is incomplete.  If this is significant,
Packit 33f14e
	             put the line into buckets[-1].  */
Packit 33f14e
	          if (ignore_white_space < IGNORE_SPACE_CHANGE)
Packit 33f14e
	            bucket = &buckets[-1];
Packit 33f14e
Packit 33f14e
	          /* Omit the inserted newline when computing linbuf later.  */
Packit 33f14e
	          p--;
Packit 33f14e
	          bufend = suffix_begin = p;
Packit 33f14e
	        }
Packit 33f14e
Packit 33f14e
	Note how "p" is decremented and "bufend" adjusted.
Packit 33f14e
	When that happens, we certainly don't want to decrement
Packit 33f14e
	"bufend" yet again.
Packit 33f14e
Packit 33f14e
	Since there is no other way to determine at the end whether "bufend"
Packit 33f14e
	was already decremented, add a new variable to serve as witness.
Packit 33f14e
Packit 33f14e
	* NEWS (Bug fixes): Mention it.
Packit 33f14e
	Reported by Timo Juhani Lindfors in http://bugs.debian.org/577832.
Packit 33f14e
	Forwarded by Santiago Vila.
Packit 33f14e
Packit 33f14e
2010-04-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: update init.sh from gnulib
Packit 33f14e
	* tests/init.sh: Update from gnulib.
Packit 33f14e
Packit 33f14e
2010-04-08  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: include cfg.mk and dist-check.mk in the distribution tarball
Packit 33f14e
	* Makefile.am (EXTRA_DIST): Add cfg.mk and dist-check.mk.
Packit 33f14e
Packit 33f14e
	maint: update to latest gnulib
Packit 33f14e
	* cfg.mk (sc_cross_check_PATH_usage_in_tests): Remove rule,
Packit 33f14e
	now that it's in gnulib's maint.mk.
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
Packit 33f14e
2010-04-07  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: make new PATH-crosschecking syntax-check tighter
Packit 33f14e
	* cfg.mk (sc_cross_check_PATH_usage_in_tests): Use grep's -x (match
Packit 33f14e
	entire line) option with -F.
Packit 33f14e
Packit 33f14e
	tests: pull latest help-version from gzip
Packit 33f14e
	* tests/help-version: Update from gzip.
Packit 33f14e
	* Makefile.am (TESTS_ENVIRONMENT): Export VERSION,
Packit 33f14e
	as required for this new help-version script.
Packit 33f14e
Packit 33f14e
	tests: add syntax-check rule to verify that tests use proper PATH
Packit 33f14e
	* cfg.mk (sc_cross_check_PATH_usage_in_tests): New rule, that is
Packit 33f14e
	useful only in conjunction with the help-version script.
Packit 33f14e
Packit 33f14e
	tests: use path_prepend_ consistently; remove unnecessary VERBOSE check
Packit 33f14e
	* tests/basic: Likewise.
Packit 33f14e
	* tests/binary: Likewise.
Packit 33f14e
	* tests/function-line-vs-leading-space: Likewise.
Packit 33f14e
	* tests/label-vs-func: Likewise.
Packit 33f14e
	* tests/stdin: Likewise.
Packit 33f14e
Packit 33f14e
2010-04-06  Eric Blake  <eblake@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: ignore generated files
Packit 33f14e
	* .gitignore: Ignore recent gnulib additions.
Packit 33f14e
Packit 33f14e
	maint: update to latest bootstrap
Packit 33f14e
	* bootstrap: Copy from gnulib/build-aux.
Packit 33f14e
Packit 33f14e
2010-04-05  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: get latest init.sh from gnulib
Packit 33f14e
	* tests/init.sh: Update from gnulib.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest; adapt
Packit 33f14e
	* cfg.mk (local-checks-to-skip): Add new sc_texinfo_acronym, to skip it.
Packit 33f14e
Packit 33f14e
	diff -F/-p: don't depend on locale-specific white-space definition
Packit 33f14e
	* src/context.c: Include "c-ctype.h".
Packit 33f14e
	Use c_isspace, not isspace.
Packit 33f14e
Packit 33f14e
2010-03-18  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: exercise new behavior of -F RE
Packit 33f14e
	* tests/function-line-vs-leading-space: New file.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2010-03-18  Yannick Moy  <yannick.moy@adacore.com>
Packit 33f14e
Packit 33f14e
	with -F or -p, emit better function lines: no leading white space
Packit 33f14e
	* src/diff.c (print_context_function): For languages like Ada
Packit 33f14e
	that allow local functions and procedures, the plain context
Packit 33f14e
	function line may start with enough blank characters that the
Packit 33f14e
	function name does not get completely printed in the 40
Packit 33f14e
	characters limit.  This patch solves this problem by removing
Packit 33f14e
	these useless initial blank characters.
Packit 33f14e
	* NEWS (Changes in behavior): Mention this change.
Packit 33f14e
Packit 33f14e
2010-03-17  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: don't require a specific version of help2man
Packit 33f14e
	* bootstrap.conf (buildreq): Bootstrap can't deal with it,
Packit 33f14e
	perhaps because the command name contains a digit.
Packit 33f14e
Packit 33f14e
	build: make bootstrap ensure that help2man is available
Packit 33f14e
	* bootstrap.conf (buildreq): Add help2man.
Packit 33f14e
Packit 33f14e
2010-02-23  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: test for the "Binary files A and B differ" diagnostic
Packit 33f14e
	* tests/binary: New script.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
	revert 2002 change that removed "Binary " from "files A and B differ"
Packit 33f14e
	With this change, "printf '\0'|diff - /dev/null" now prints
Packit 33f14e
	"Binary files - and /dev/null differ" once again.
Packit 33f14e
	This reverts 2002-06-28 commit a352f0980,
Packit 33f14e
	"(briefly_report): Don't say "Binary files differ", ...".
Packit 33f14e
	* src/analyze.c (briefly_report): Do include the "Binary " prefix
Packit 33f14e
	in the diagnostic, when !brief.
Packit 33f14e
	* NEWS (Changes in behavior): Mention the diagnostic change.
Packit 33f14e
	Reported by Andreas Hoenen in http://bugs.debian.org/570064.
Packit 33f14e
Packit 33f14e
2010-02-14  Juan Manuel Guerrero  <juan.guerrero@gmx.de>
Packit 33f14e
Packit 33f14e
	avoid compilation failure on systems lacking both fork and vfork
Packit 33f14e
	* src/sdiff.c [!HAVE_WORKING_FORK && !HAVE_WORKING_VFORK] (main):
Packit 33f14e
	Pass the right number of arguments to shell_quote_copy.
Packit 33f14e
	* src/util.c [!HAVE_WORKING_FORK && !HAVE_WORKING_VFORK] (begin_output):
Packit 33f14e
	Likewise.
Packit 33f14e
Packit 33f14e
2010-02-11  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	post-release administrivia
Packit 33f14e
	* NEWS: Add header line for next release.
Packit 33f14e
	* .prev-version: Record previous version.
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Auto-update.
Packit 33f14e
Packit 33f14e
	version 2.9
Packit 33f14e
	* NEWS: Record release date.
Packit 33f14e
Packit 33f14e
	doc: document the release procedure
Packit 33f14e
	* README-release: New file.
Packit 33f14e
Packit 33f14e
2010-02-10  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: change use of "|" to more maintainable "||" (no semantic change)
Packit 33f14e
	* src/analyze.c (diff_2_files): Using the "||" operator happens to
Packit 33f14e
	be equivalent to using "|" in this case.  It is also clearer and
Packit 33f14e
	less prone to inadvertent bug introduction, in case the variable,
Packit 33f14e
	"changes" were ever to take on a value not in {0,1}.
Packit 33f14e
	Patch by Tim Waugh, via Mike Frysinger.
Packit 33f14e
Packit 33f14e
	portability: avoid "diff - ..." failure at least on *BSD and Solaris
Packit 33f14e
	The new "stdin" test was failing on many types of systems.
Packit 33f14e
	* src/diff.c (compare_files): Guard use of xfreopen (NULL, "rb", ...
Packit 33f14e
	also with O_BINARY, so as to avoid this unnecessary call on
Packit 33f14e
	systems where it's not needed (on some it fails with "Bad address".
Packit 33f14e
Packit 33f14e
2010-02-09  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: honor VERBOSE
Packit 33f14e
	* tests/basic: Enable "set -x" if $VERBOSE.
Packit 33f14e
	* tests/help-version: Likewise.
Packit 33f14e
	* tests/label-vs-func: Likewise.
Packit 33f14e
	* tests/stdin: Likewise.
Packit 33f14e
Packit 33f14e
2010-02-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	sync with gnulib
Packit 33f14e
	* gl/lib/regcomp.c.diff: Adjust to apply to the latest in gnulib.
Packit 33f14e
	* gnulib: Update submodule to latest.
Packit 33f14e
Packit 33f14e
2010-02-04  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: do not override gnulib-provided AM_CFLAGS options
Packit 33f14e
	Avoid a warning from automake:
Packit 33f14e
	lib/Makefile.am:23: AM_CFLAGS multiply defined in condition TRUE ...
Packit 33f14e
	lib/gnulib.mk:30: ... `AM_CFLAGS' previously defined here
Packit 33f14e
	lib/Makefile.am:18:   `lib/gnulib.mk' included from here
Packit 33f14e
Packit 33f14e
	* lib/Makefile.am (AM_CFLAGS): Append $(WARN_CFLAGS) and
Packit 33f14e
	$(WERROR_CFLAGS), i.e., use "+=", not "=".
Packit 33f14e
	This was introduced via 2009-12-17 commit e58efa5b
Packit 33f14e
	"build: enable warnings and -Werror.",
Packit 33f14e
	but fortunately is not a bug, because the definition
Packit 33f14e
	it would have overridden was always empty.
Packit 33f14e
Packit 33f14e
2010-01-17  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: add to .gitignore
Packit 33f14e
	* .gitignore: Ignore more.
Packit 33f14e
Packit 33f14e
2010-01-15  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	doc: add to TODO
Packit 33f14e
	* TODO: Add an item, suggested by Dan Jacobson.
Packit 33f14e
Packit 33f14e
2010-01-13  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: ensure that an argument of "-" is treated as standard input
Packit 33f14e
	* tests/stdin: New test.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
2010-01-10  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: now "make distcheck" runs more tests, incl. syntax-check
Packit 33f14e
	* cfg.mk: Include dist-check.mk, from coreutils.
Packit 33f14e
	* Makefile.am (distcheck-hook): Define rule, to hook to...
Packit 33f14e
	* dist-check.mk: New file.
Packit 33f14e
Packit 33f14e
2010-01-09  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib to latest, for fixed syntax-check rule
Packit 33f14e
Packit 33f14e
	maint: record updated NEWS hash
Packit 33f14e
	* cfg.mk (old_NEWS_hash): Update to account for GFDL change.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	tests: add a test of basic functionality
Packit 33f14e
	* tests/basic: Start adding tests.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add it.
Packit 33f14e
Packit 33f14e
	maint: udpate GFDL license to 1.3
Packit 33f14e
	* doc/diff.texi: Update to use GFDL version 1.3.
Packit 33f14e
Packit 33f14e
2010-01-04  Eric Blake  <ebb9@byu.net>
Packit 33f14e
Packit 33f14e
	build: allow compilation on cygwin
Packit 33f14e
	* src/Makefile.am (cmp_LDADD): Move LIBICONV...
Packit 33f14e
	(LDADD): ...into global flags, since all programs need it.
Packit 33f14e
Packit 33f14e
2010-01-03  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: record update-copyright options for this package
Packit 33f14e
	* cfg.mk: Next time, just run "make update-copyright".
Packit 33f14e
Packit 33f14e
	tests: prepend ../src, not "." to PATH
Packit 33f14e
	* tests/help-version: Correct PATH.
Packit 33f14e
Packit 33f14e
2010-01-01  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: update all FSF copyright year lists to include 2010
Packit 33f14e
	Use this command:
Packit 33f14e
	git ls-files |grep -vE '^(\..*|COPYING|gnulib)$' |xargs \
Packit 33f14e
	env UPDATE_COPYRIGHT_USE_INTERVALS=1 build-aux/update-copyright
Packit 33f14e
Packit 33f14e
2009-12-31  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: newer gnulib; don't hard-code my GPG key ID
Packit 33f14e
	* cfg.mk (gpg_key_ID): Remove definition, now that maint.mk automates it.
Packit 33f14e
	* gnulib: Update to latest.
Packit 33f14e
Packit 33f14e
	tests: exercise diff -p's function-name matching
Packit 33f14e
	* tests/label-vs-func: New file.
Packit 33f14e
	* tests/Makefile.am (TESTS): Add label-vs-func.
Packit 33f14e
	Reported by Simon Arlott <simon@fire.lp0.eu>
Packit 33f14e
	http://article.gmane.org/gmane.linux.kernel.janitors/14260
Packit 33f14e
Packit 33f14e
	tests: use gnulib's init.sh
Packit 33f14e
	* tests/Makefile.am (EXTRA_DIST): Add init.sh.
Packit 33f14e
	Remove test-lib.sh.
Packit 33f14e
	* tests/init.sh: New file.
Packit 33f14e
	* tests/test-lib.sh: Remove file.
Packit 33f14e
	* tests/help-version: Use init.sh, not test-lib.sh.
Packit 33f14e
Packit 33f14e
2009-11-28  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: don't let trailing spaces in diffs perturb make syntax-check
Packit 33f14e
	* .x-sc_space_tab: New file.
Packit 33f14e
Packit 33f14e
2009-11-22  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: enable warnings and -Werror.
Packit 33f14e
	* src/Makefile.am (AM_CFLAGS): Enable warnings and -Werror.
Packit 33f14e
	Set to this: $(WARN_CFLAGS) $(WERROR_CFLAGS)
Packit 33f14e
	* lib/Makefile.am (AM_CFLAGS): Similarly, but use this:
Packit 33f14e
	$(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS)
Packit 33f14e
	* configure.ac (GNULIB_WARN_CFLAGS): Don't turn off -Wuninitialized.
Packit 33f14e
Packit 33f14e
	build: avoid a warning from gnulib's sh-quote.c
Packit 33f14e
	* gl/lib/sh-quote.c.diff: New file, to avoid a warning.
Packit 33f14e
Packit 33f14e
	maint: avoid warnings via patched versions of gnulib's regex functions
Packit 33f14e
	* gl/lib/regcomp.c.diff: New file.
Packit 33f14e
	* gl/lib/regex_internal.c.diff: Likewise.
Packit 33f14e
	* gl/lib/regex_internal.h.diff: Likewise.
Packit 33f14e
	* gl/lib/regexec.c.diff: Likewise.
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
2009-11-20  Eric Blake  <ebb9@byu.net>
Packit 33f14e
Packit 33f14e
	build: ignore more files
Packit 33f14e
	* .gitignore: Add config.cache, *.exe.
Packit 33f14e
Packit 33f14e
2009-11-20  Eric Blake  <ebb9@byu.net>
Packit 33f14e
Packit 33f14e
	build: fix test run on cygwin
Packit 33f14e
	This, plus a gnulib update for xalloc-die-tests, are necessary
Packit 33f14e
	for make check to pass on cygwin.
Packit 33f14e
Packit 33f14e
	* tests/Makefile.am (built_programs): Ignore $(EXEEXT).
Packit 33f14e
	* src/Makefile.am (paths.h): Add missing dependency.
Packit 33f14e
Packit 33f14e
2009-11-20  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: remove vestiges of nanosleep
Packit 33f14e
	* src/Makefile.am (LDADD): Remove $(LIB_NANOSLEEP), now
Packit 33f14e
	that we no longer use the nanosleep module.
Packit 33f14e
	Spotted by Eric Blake.
Packit 33f14e
Packit 33f14e
	maint: don't pull in gnulib's nanosleep unnecessarily
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Remove nanosleep.  Not needed.
Packit 33f14e
	Spotted by Eric Blake.
Packit 33f14e
Packit 33f14e
	maint: cfg.mk: remove factored-out ftp host/dir definitions
Packit 33f14e
	* cfg.mk (gnu_ftp_host-alpha, gnu_ftp_host-beta gnu_ftp_host-stable):
Packit 33f14e
	(gnu_rel_host, url_dir_list): Remove definitions.  The defaults,
Packit 33f14e
	now provided by maint.mk, are the same.
Packit 33f14e
	* gnulib: Update for latest, including those maint.mk additions.
Packit 33f14e
Packit 33f14e
	build: link with now-required libraries
Packit 33f14e
	* src/Makefile.am (LDADD): Add gnulib-required libraries.
Packit 33f14e
	(cmp_LDADD): Add $(LIBICONV), for cmp's use of proper_name_utf8.
Packit 33f14e
Packit 33f14e
	maint: lib/xfreopen.c contains translatable strings
Packit 33f14e
	* po/POTFILES.in: Add lib/xfreopen.c.
Packit 33f14e
Packit 33f14e
	maint: remove hard-coded macro definitions provided by intprops.h
Packit 33f14e
	* lib/cmpbuf.c: Include "intprops.h" rather than open-coding macros
Packit 33f14e
	like TYPE_SIGNED and TYPE_MINIMUM.
Packit 33f14e
Packit 33f14e
	maint: add gnulib's announce-gen module
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add announce-gen
Packit 33f14e
Packit 33f14e
	build: suppress warnings about bindtextdomain and textdomain
Packit 33f14e
	* src/system.h (bindtextdomain, textdomain) [!ENABLE_NLS]: Define away.
Packit 33f14e
Packit 33f14e
	build: use more gnulib modules
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add mktime, nanosleep, strptime
Packit 33f14e
	and timegm.
Packit 33f14e
Packit 33f14e
	use xfreopen rather than freopen
Packit 33f14e
	* src/cmp.c: Include "xfreopen.h".
Packit 33f14e
	Use xfreopen in place of freopen.
Packit 33f14e
	* src/diff.c Likewise, and...
Packit 33f14e
	(main): Set exit_failure to EXIT_TROUBLE, rather than to 2.
Packit 33f14e
	* src/diff3.c: Likewise.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add xfreopen.
Packit 33f14e
Packit 33f14e
	build: enable many warnings
Packit 33f14e
	* configure.ac: Add support for --enable-gcc-warnings.
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add manywarnings.
Packit 33f14e
	* Makefile.am (AM_CFLAGS): Add $(WARN_CFLAGS) $(WERROR_CFLAGS)
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	maint: add an assertion to suppress clang-detected warning
Packit 33f14e
	The clang static analyzer reported that a NULL parent could be
Packit 33f14e
	dereferenced.  However, that cannot happen, because for all callers,
Packit 33f14e
	the parameter, parent, is always non-NULL at that point.
Packit 33f14e
	* src/diff.c: Include <assert.h>.
Packit 33f14e
	Assert that parent is not NULL.
Packit 33f14e
Packit 33f14e
	maint: remove dead assignment from diff3.c
Packit 33f14e
	* src/diff3.c (make_3way_diff): Remove dead assignment.
Packit 33f14e
Packit 33f14e
2009-11-17  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: update gnulib submodule to latest
Packit 33f14e
Packit 33f14e
	maint: hide build commands behind $(AM_V_GEN)
Packit 33f14e
	* src/Makefile.am (paths.h): Use $(AM_V_GEN), and split a long line.
Packit 33f14e
	* man/Makefile.am ($(dist_man1_MANS)): Use $(AM_V_GEN) here, too.
Packit 33f14e
Packit 33f14e
2009-11-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: let automake generate better man-installation rules
Packit 33f14e
	* man/Makefile.am (dist_man1_MANS): Rename from dist_man_MANS,
Packit 33f14e
	to enable better automake-generated installation rules.
Packit 33f14e
Packit 33f14e
	admin: ignore all of gnulib-tests
Packit 33f14e
	* .gitignore: Add gnulib-tests
Packit 33f14e
Packit 33f14e
2009-11-16  Eric Blake  <ebb9@byu.net>
Packit 33f14e
Packit 33f14e
	build: avoid link failure when libsigsegv is used
Packit 33f14e
	* src/Makefile.am (LDADD): Link against LIBSIGSEGV.
Packit 33f14e
Packit 33f14e
2009-11-16  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: define/use PROGRAM_NAME and AUTHORS; use propername module
Packit 33f14e
	* bootstrap.conf (gnulib_modules): Add propername.
Packit 33f14e
	* src/cmp.c (PROGRAM_NAME, AUTHORS): Define.
Packit 33f14e
	(main): Use them in use of version_etc.
Packit 33f14e
	* src/diff.c (PROGRAM_NAME, AUTHORS, main): Likewise.
Packit 33f14e
	* src/diff3.c (PROGRAM_NAME, AUTHORS, main): Likewise.
Packit 33f14e
	* src/sdiff.c (PROGRAM_NAME, AUTHORS, main): Likewise.
Packit 33f14e
	* src/system.h: Include "propername.h".
Packit 33f14e
Packit 33f14e
	maint: no longer define *_FILENO constants
Packit 33f14e
	* src/system.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
Packit 33f14e
	Remove definitions.  Now guaranteed by gnulib.
Packit 33f14e
Packit 33f14e
	maint: bug-diffutils@gnu.org is the new bug-reporting address
Packit 33f14e
	* configure.ac (AC_INIT): Use bug-diffutils@..., not bug-gnu-utils
Packit 33f14e
	as the bug-reporting address.
Packit 33f14e
	* NEWS (Administrivia): Mention this.
Packit 33f14e
	* src/cmp.c (usage): Remove hard-coded address.
Packit 33f14e
	Instead, use gnulib's emit_bug_reporting_address function.
Packit 33f14e
	* src/diff.c (usage, option_help_msgid): Likewise.
Packit 33f14e
	* src/diff3.c (usage): Likewise.
Packit 33f14e
	* src/sdiff.c (usage): Likewise.
Packit 33f14e
Packit 33f14e
	sdiff, diff3: exec diff, not $(bindir)/diff
Packit 33f14e
	* src/Makefile.am (paths.h): Emit a definition of DEFAULT_DIFF_PROGRAM
Packit 33f14e
	that is simply "diff" (or whatever $(transform) would convert that to,
Packit 33f14e
	e.g., "gdiff").  This makes it so that tests can work without first
Packit 33f14e
	installing diff, and so that the binaries do not hard-code $(prefix).
Packit 33f14e
	* NEWS (Changes in behavior): Mention this.
Packit 33f14e
Packit 33f14e
2009-11-14  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	tests: add the first script; hook up gnulib-tests
Packit 33f14e
	* configure.ac (AC_CONFIG_FILES): Add tests/Makefile and
Packit 33f14e
	gnulib-tests/Makefile.
Packit 33f14e
	* tests/help-version: New file, from coreutils.
Packit 33f14e
	* tests/test-lib.sh: Likewise.
Packit 33f14e
	* tests/Makefile.am: New file, from gzip.
Packit 33f14e
	* Makefile.am (SUBDIRS): Add tests and gnulib-tests.
Packit 33f14e
	* tests/t-local.sh: New, empty(for now) file.
Packit 33f14e
Packit 33f14e
2009-11-13  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: require gettext-0.17
Packit 33f14e
	* configure.ac: Require gettext-0.17; it was released two years ago.
Packit 33f14e
Packit 33f14e
	build: correct gettext configure-time support
Packit 33f14e
	* configure.ac: Use AM_GNU_GETTEXT([external], [need-ngettext]),
Packit 33f14e
	rather than AM_GNU_GETTEXT([external], [need-formatstring-macros]).
Packit 33f14e
	Reported by Martin Jacobs in
Packit 33f14e
	http://thread.gmane.org/gmane.comp.parsers.bison.bugs/3181
Packit 33f14e
Packit 33f14e
2009-11-12  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	build: generalize autoheader check
Packit 33f14e
	* bootstrap: Look for AC_CONFIG_HEADER as well as AC_CONFIG_HEADERS.
Packit 33f14e
Packit 33f14e
2009-11-11  Jim Meyering  <meyering@redhat.com>
Packit 33f14e
Packit 33f14e
	maint: use a git submodule for gnulib
Packit 33f14e
	* .gitmodules: New file, to track gnulib.
Packit 33f14e
	* gnulib: New file, created by running this:
Packit 33f14e
	git submodule add git://git.sv.gnu.org/gnulib.git gnulib
Packit 33f14e
Packit 33f14e
	maint: tell git what it can ignore
Packit 33f14e
	* .gitignore: Ignore generated files.