2015-09-11  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.6 released.

2015-06-11  Philip Withnall  <philip.withnall@collabora.co.uk>

	xgettext: add support for AppData files
	* Makefile.am (TESTS): Add xgettext-appdata-1.
	* xgettext-appdata-1: New file.

2015-08-21  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am (check_PROGRAMS): Rename from noinst_PROGRAMS, to
	defer the compilation until required.

2015-07-28  Daiki Ueno  <ueno@gnu.org>

	* autopoint-2: Add checks for AM_GNU_GETTEXT_REQUIRE_VERSION.

2015-07-28  Daiki Ueno  <ueno@gnu.org>

	* init-env.in (ARCHIVE_VERSION): New substituted variable.
	* autopoint-2: Use ARCHIVE_VERSION, instead of the hard-coded
	version string.
	* autopoint-3: Likewise.

2015-07-10  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.5 released.

2015-06-24  Daiki Ueno  <ueno@gnu.org>

	* autopoint-2 (required_gettext_version): Update to 0.19.5.
	* autopoint-3 (required_gettext_version): Likewise.

2015-06-24  Daiki Ueno  <ueno@gnu.org>

	* lang-bash: Skip if "bash --help" isn't localized on Mac OS X.

2015-06-24  Daiki Ueno  <ueno@gnu.org>

	* msgfilter-8: Port the "echo -n" equivalent from gettext-2.
	Reported by Paul Zimmermann in:
	<https://lists.gnu.org/archive/html/bug-gettext/2015-06/msg00019.html>.

2015-06-24  Daiki Ueno  <ueno@gnu.org>

	* cldr-plurals-1: Skip if XML is not supported.
	* msginit-4: Likewise.

2015-06-24  Daiki Ueno  <ueno@gnu.org>

	* format-kde-kuit-1: Skip if KDE KUIT format is not supported.
	* format-kde-kuit-2: Likewise.
	Suggested by Chusslove Illich.

2015-06-23  Daiki Ueno  <ueno@gnu.org>

	* msginit-4: Don't check the Project-Id-Version: field, which
	cannot be generated since we can't rely on the project-id script
	when $builddir != $srcdir.

2015-06-23  Daiki Ueno  <ueno@gnu.org>

	* msginit-4: New file.
	* common/supplemental/plurals.xml: New data file.
	* Makefile.am (TESTS): Add new tests.
	(EXTRA_DIST): Add new data file.

2015-06-22  Daiki Ueno  <ueno@gnu.org>

	* cldr-plurals-1: New file.
	* Makefile.am (TESTS): Add new tests.

2015-03-12  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am (sentence_CPPFLAGS): Add -I$(top_srcdir)/src and
	$(AM_CPPFLAGS).

2015-03-05  Daiki Ueno  <ueno@gnu.org>

	* format-kde-kuit-1: New file.
	* format-kde-kuit-2: New file.
	* Makefile.am (TESTS): Add new tests.

2015-03-03  Daiki Ueno  <ueno@gnu.org>

	* xgettext-14: New file.
	* sentence.c: New file
	* Makefile.am (TESTS): Add new tests.
	(noinst_PROGRAMS): Add 'sentence'.
	(sentence_SOURCES): New variable.
	(sentence_CPPFLAGS): New variable.
	(sentence_LDADD): New variable.

2015-02-06  Daiki Ueno  <ueno@gnu.org>

	tests: Fix "broken pipe" error in msgfilter-7
	* msgfilter-7: Eat up filter input to avoid EPIPE in the parent
	msgfilter process, which was exposed on AIX 5.
	Reported by Michael Felt.

2015-02-05  Alex Henrie  <alexhenrie24@gmail.com>  (tiny change)

	* xgettext-13: New file.
	* Makefile.am (TESTS): Add new test.
	* mm-viet.out: Adjust to the recent line-wrapping behavior change.

2015-01-29  Daiki Ueno  <ueno@gnu.org>

	* msgexec-6: New file.
	* Makefile.am (TESTS): Add new test.

2015-01-28  Daiki Ueno  <ueno@gnu.org>

	* msgfilter-8: New file.
	* Makefile.am (TESTS): Add new test.

2015-01-16  Daiki Ueno  <ueno@gnu.org>

	* xgettext-desktop-1: Check "invalid non-blank character" warning.

2015-01-13  Daiki Ueno  <ueno@gnu.org>

	* xgettext-c-20: Improve test coverage of raw string tests.

2015-01-13  Daiki Ueno  <ueno@gnu.org>

	* xgettext-c-20: Adjust to the latest xgettext C++ scanner change;
	don't accept unbalanced prefix in raw string literal.

2015-01-13  Daiki Ueno  <ueno@gnu.org>

	* xgettext-c-20: Adjust the source file name from *.c to *.cc to
	enable handling of raw string literals.

2014-12-24  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.4 released.

2014-12-17  Daiki Ueno  <ueno@gnu.org>

	* xgettext-sh-3: Test Bash ANSI-C quoting.

2014-12-12  Daiki Ueno  <ueno@gnu.org>

	* format-lisp-2, format-scheme-2: Test type compatibility with
	non-strict checking mode.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	* gettext-8-prg.c: Include <assert.h>.
	(main): Check return value of 'gettext'.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	* gettext-8-prg.c (main): Release allocated memory.  Spotted by
	clang-analyzer.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	tests: Test msgcat --sort-by-file option
	* msgcat-20: New file.
	* Makefile.am (TESTS): Add new test.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	tests: Improve test coverage of Lua scanner
	* xgettext-lua-1: Test nested and unmatched brackets.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	* xgettext-vala-1: Don't copy the test program out of the test
	directory.  Fix commit 2ff7a105.

2014-12-09  Daiki Ueno  <ueno@gnu.org>

	tests: Improve test coverage of Desktop scanner
	* xgettext-desktop-1: Test invalid input and blank lines.

2014-12-07  Daiki Ueno  <ueno@gnu.org>

	tests: Improve test coverage of Vala scanner
	* xgettext-vala-1: Test regex literal right after arithmetic
	assignment operators, and the case '@' is not followed by a
	template string.

2014-12-05  Daiki Ueno  <ueno@gnu.org>

	tests: Add more tests for integer overflow when reading MO file
	* msgunfmt-3: Check overflow-[1-6].mo.
	* Makefile.am (EXTRA_DIST): Add more test data for msgunfmt
	integer overflow.

2014-12-04  Daiki Ueno  <ueno@gnu.org>

	tests: Improve test coverage of GSettings scanner
	* xgettext-gsettings-1: Check empty string and multiline comment.

2014-12-03  Daiki Ueno  <ueno@gnu.org>

	* msgunfmt-3: Locate overflow.mo in $abs_srcdir instead of '..'.

2014-12-02  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for C++11 string literals
	* xgettext-c-20: New file.
	* Makefile.am (TESTS): Add new test.

2014-12-01  Daiki Ueno  <ueno@gnu.org>

	tests: Add more tests for C# Unicode handling
	* xgettext-csharp-1: Test verbatim string.
	* xgettext-csharp-2: Test Unicode identifiers.

2014-12-01  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for Unicode surrogate characters in C#
	* xgettext-csharp-8: New file.
	* Makefile.am (TESTS): Add new test.

2014-11-28  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for empty msgstr passed to msgfilter
	* msgfilter-7: New file.
	* Makefile.am (TESTS): Add new test.

2014-11-18  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for integer overflow when reading MO file
	* msgunfmt-3: New file.
	* Makefile.am (TESTS): Add new test.
	(EXTRA_DIST): Add data file for msgunfmt-3.

2014-10-28  Daiki Ueno  <ueno@gnu.org>

	xgettext: Allow plural extraction from a single argument function
	* xgettext-12: Test a single argument function.

2014-10-28  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for same ARGNUM1/ARGNUM2 given to xgettext -k
	* xgettext-12: New file.
	* Makefile.am (TESTS): Add new test.

2014-10-15  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.3 released.

2014-10-15  Daiki Ueno  <ueno@gnu.org>

	* autopoint-2 (required_gettext_version): Update to 0.19.3.
	* autopoint-3 (required_gettext_version): Likewise.

2014-10-12  Daiki Ueno  <ueno@gnu.org>

	tests: Avoid sed error on Mac OS X when dealing with binary input
	Reported by Ramsey Dow in:
	<http://lists.gnu.org/archive/html/bug-gettext/2014-07/msg00002.html>.
	* msgmerge-compendium-6: Run sed with LC_ALL=C, to avoid 'illegal
	byte sequence' error on Mac OS X.
	* format-sh-1: Likewise.

2014-10-10  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for Debian bug#764580
	* autopoint-2: Check if m4_assert is properly redefined while
	tracing.

2014-10-08  Daiki Ueno  <ueno@gnu.org>

	tests: Improve test coverage of C and Vala scanners
	* xgettext-c-4: Check more trigraphs.
	* xgettext-c-2: Check floating point literal.
	* xgettext-c-19: Check out-of-range Unicode character, "\U"
	character escape, incomplete "\u" escape, and surrogates.
	* xgettext-vala-1: Check unterminated regexp literal, floating
	point literal, string template, "/=" operator, multi-line
	comments, and backslash-escaped character inside regexp literal.

2014-10-03  Daiki Ueno  <ueno@gnu.org>

	* lang-c++: Check if CXX is "no", not ":".  See commit e854d2c7
	for the rationale.

2014-10-02  Daiki Ueno  <ueno@gnu.org>

	* autopoint-3: Invoke AC_CONFIG_MACRO_DIR after AC_INIT, not
	before.

2014-10-01  Daiki Ueno  <ueno@gnu.org>

	tests: Adjust textdomain directory for Solaris 11
	* init.cfg (prepare_locale_): New function.
	* lang-bash: Call prepare_locale_ before running locale-dependant
	tests.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-csharp: Likewise.
	* lang-gawk: Likewise.
	* lang-guile: Likewise.
	* lang-java: Likewise.
	* lang-javascript: Likewise.
	* lang-librep: Likewise.
	* lang-lua: Likewise.
	* lang-objc: Likewise.
	* lang-pascal: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-sh: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.
	* lang-vala: Likewise.

2014-10-01  Daiki Ueno  <ueno@gnu.org>

	tests: Stop redundant textdomain directory creation
	This was introduced by commit 3533f6cc when we didn't use separate
	test directory for each test.  Now that we switched to init.sh, we
	don't need to worry about filename conflicts.
	* lang-c: Stop redundant textdomain directory creation.
	* lang-c++: Likewise.
	* lang-objc: Likewise.
	* lang-sh: Likewise.
	* lang-bash: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-clisp: Likewise.
	* lang-elisp: Likewise.
	* lang-librep: Likewise.
	* lang-guile: Likewise.
	* lang-smalltalk: Likewise.
	* lang-java: Likewise.
	* lang-csharp: Likewise.
	* lang-gawk: Likewise.
	* lang-pascal: Likewise.
	* lang-ycp: Likewise.
	* lang-tcl: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-po: Likewise.
	* lang-rst: Likewise.
	* lang-lua: Likewise.
	* lang-javascript: Likewise.
	* lang-vala: Likewise.

2014-09-30  Daiki Ueno  <ueno@gnu.org>

	* autopoint-1: Don't rely on non-portable "grep -q".
	* msginit-3: Likewise.
	* msgen-1: Likewise.

2014-09-30  Daiki Ueno  <ueno@gnu.org>

	* xgettext-c-19: Test octal string escape.

2014-09-24  Daiki Ueno  <ueno@gnu.org>

	* xgettext-c-19: Use iconv -f/-t instead of non-portable
	--from/--to.

2014-09-05  Daiki Ueno  <ueno@gnu.org>

	* autopoint-3: Use libtool when compiling included libintl.

2014-09-05  Daiki Ueno  <ueno@gnu.org>

	* autopoint-2, autopoint-3: Collect error output.

2014-07-14  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.2 released.

2014-07-14  Daiki Ueno  <ueno@gnu.org>

	tests: Test empty literals in Vala test
	* xgettext-vala-1: Test empty literals that do not affect the
	following lines.

2014-07-14  Daiki Ueno  <ueno@gnu.org>

	tests: Test for AC_CONFIG_AUX_DIR usage in autopoint test
	* autopoint-2: Check if build-aux/config.rpath is created if
	AC_CONFIG_AUX_DIR([build-aux]) is called.

2014-07-14  Daiki Ueno  <ueno@gnu.org>

	tests: Test empty literals in C test
	* xgettext-c-2: Test empty literals that do not affect the
	following lines.

2014-06-16  Daiki Ueno  <ueno@gnu.org>

	tests: Test "make dist" in autopoint test
	* autopoint-3: Run "make dist" after "make"; add a workaround for
	a bug in 0.19 and 0.19.1, where intl/ChangeLog is required but
	missing in the archive.

2014-06-10  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19.1 released.

2014-06-03  Daiki Ueno  <ueno@gnu.org>

	* msgfmt-desktop-2: Test the effect of the LINGUAS envvar.

2014-06-03  Daiki Ueno  <ueno@gnu.org>

	tests: Ignore the LINGUAS envvar in msgfmt-desktop-2
	Reported by Lars Wendler at:
	<http://lists.gnu.org/archive/html/bug-gettext/2014-06/msg00002.html>.
	* msgfmt-desktop-2: Unset the LINGUAS envvar.

2014-06-03  Daiki Ueno  <ueno@gnu.org>

	* xgettext-vala-1: Test comment-like string inside a string literal.

2014-06-02  Daiki Ueno  <ueno@gnu.org>

	* msgfmt-10: Update after error checking behaviro change.

2014-06-02  Daiki Ueno  <ueno@gnu.org>

	* gettext 0.19 released.

2014-05-31  Daiki Ueno  <ueno@gnu.org>

	* msgexec-5: Test MSGEXEC_PREV_MSGID and MSGEXEC_PREV_MSGID_PLURAL.

2014-05-31  Daiki Ueno  <ueno@gnu.org>

	* msgfilter-6: Test MSGFILTER_PREV_MSGID and
	MSGFILTER_PREV_MSGID_PLURAL.

2014-05-15  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for msgfilter plural handling
	* msgfilter-6: New test.
	* Makefile.am (TESTS): Add new test.

2014-05-15  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for msgexec plural handling
	* msgexec-5: New test.
	* Makefile.am (TESTS): Add new test.

2014-05-15  Daiki Ueno  <ueno@gnu.org>

	* msginit-3: Fix charset value after msginit invocation.

2014-05-14  Daiki Ueno  <ueno@gnu.org>

	tests: Fix errors when CFLAGS contains --coverage
	* lang-c: Supply $CFLAGS to the libtool link command.
	* lang-objc: Likewise.

2014-05-14  Daiki Ueno  <ueno@gnu.org>

	msgfmt: Report error on accelerator mismatch
	* msgfmt-18: New test.
	* Makefile.am (TESTS): Add new test.

2014-05-13  Daiki Ueno  <ueno@gnu.org>

	* msgfmt-10: Increment expected error count.

2014-05-12  Daiki Ueno  <ueno@gnu.org>

	* msgfilter-quote-1: Test doubled grave characters.

2014-05-10  Guido Flohr  <guido@imperia.net>

	msgattrib: Add --empty option to clear msgstr
	* msgattrib-19: New test.
	* Makefile.am (TESTS): Add new test.

2014-05-09  Daiki Ueno  <ueno@gnu.org>

	vala: Interpret string literals lazily
	* xgettext-vala-1: Test escape sequence in verbatim string.

2014-05-09  Daiki Ueno  <ueno@gnu.org>

	c: Interpret string literals lazily
	* xgettext-c-19: New file.
	* Makefile.am (TESTS): Add new test.

2014-05-03  Daiki Ueno  <ueno@gnu.org>

	tests: Add test for prefixed comment tag
	* xgettext-11: New file.
	* Makefile.am (TESTS): Add new test.

2014-05-02  Daiki Ueno  <ueno@gnu.org>

	* xgettext-vala-1: Test Unicode character escapes.

2014-04-30  Daiki Ueno  <ueno@gnu.org>

	* xgettext-scheme-4: New file.
	* Makefile.am (TESTS): Add new test.

2014-04-30  Daiki Ueno  <ueno@gnu.org>

	format-python-brace: Limit acceptable format specifiers
	* format-python-brace-1: Add tests for standard format specifiers.

2014-04-29  Daiki Ueno  <ueno@gnu.org>

	tests: Don't run a test only successful after "make dist" by default
	* Makefile.am (TESTS): Move xgettext-1 to...
	(EXTRA_DIST): ...here.

2014-04-29  Daiki Ueno  <ueno@gnu.org>

	* autopoint-3 (gettext_datadir): Don't regenerate intl/plural.c.

2014-04-21  Daiki Ueno  <ueno@gnu.org>

	tests: Don't run system dependent test by default
	* Makefile.am (TESTS): Move xgettext-c-1 to...
	(EXTRA_DIST): ...here.

2014-04-21  Daiki Ueno  <ueno@gnu.org>

	* autopoint-1 (gettext_datadir): Rename from gettext_dir.
	* autopoint-2 (gettext_datadir): Likewise.
	* autopoint-3 (gettext_datadir): Likewise.

2014-04-15  Daiki Ueno  <ueno@gnu.org>

	tests: Add tests for 'msgfilter quot' and 'msgfilter boldquot'
	* msgfilter-quote-1: New file.
	* Makefile.am (TESTS): Add new tests.

2014-04-04  Daiki Ueno  <ueno@gnu.org>

	tests: Add tests for msgfmt --desktop
	* msgfmt-desktop-1: New file.
	* msgfmt-desktop-2: New file.
	* Makefile.am (TESTS): Add new tests.

2014-04-04  Daiki Ueno  <ueno@gnu.org>

	tests: Add tests for xgettext Desktop Entry support
	* xgettext-desktop-1: New file.
	* Makefile.am (TESTS): Add new tests.

2014-03-27  Daiki Ueno  <ueno@gnu.org>

	* autopoint-2: Check for the case when multiple arguments are
	supplied to AM_GNU_GETTEXT.

2014-03-26  Daiki Ueno  <ueno@gnu.org>

	tests: Add tests for autopoint
	* autopoint-1: New file.
	* autopoint-2: New file.
	* autopoint-3: New file.
	* Makefile.am (TESTS): Add new tests.

2014-03-25  Daiki Ueno  <ueno@gnu.org>

	Add tests for --add-location=file option.
	* msgattrib-18: New file.
	* msgcat-19: New file.
	* msgcomm-28: New file.
	* msgconv-7: New file.
	* msgen-4: New file.
	* msgfilter-5: New file.
	* msggrep-11: New file.
	* msgmerge-25: New file.
	* msguniq-7: New file.
	* xgettext-10: New file.
	* Makefile.am (TESTS): Add new tests

2014-03-11  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am (EXTRA_DIST): Add init.cfg, which is no longer
	auto-generated by configure.

2014-03-11  Daiki Ueno  <ueno@gnu.org>

	* init-env.in (top_builddir): Don't set $LIBTOOL.
	* lang-c: Explicitly call $top_builddir/libtool script with
	$CONFIG_SHELL; also separate compilation/link into two phase as
	lang-c++.
	* lang-c++: Likewise.
	* lang-objc: Likewise.

2014-03-10  Daiki Ueno  <ueno@gnu.org>

	php: Recognize single and double quotes around heredoc label
	* xgettext-php-2: Add test cases to check quoted heredoc labels.

2014-03-10  Daiki Ueno  <ueno@gnu.org>

	Remove unnecessary temporary file cleanup code.
	Cleanup code like "rm -fr $tmpfiles" are no longer needed, since
	'init.sh' takes care of that.
	* format-awk-1: Remove unnecessary temporary file cleanup code.
	* format-awk-2: Likewise
	* format-boost-1: Likewise
	* format-boost-2: Likewise
	* format-c-1: Likewise
	* format-c-2: Likewise
	* format-c-3: Likewise
	* format-c-4: Likewise
	* format-c-5: Likewise
	* format-csharp-1: Likewise
	* format-csharp-2: Likewise
	* format-elisp-1: Likewise
	* format-elisp-2: Likewise
	* format-gcc-internal-1: Likewise
	* format-gcc-internal-2: Likewise
	* format-gfc-internal-1: Likewise
	* format-gfc-internal-2: Likewise
	* format-java-1: Likewise
	* format-java-2: Likewise
	* format-javascript-1: Likewise
	* format-javascript-2: Likewise
	* format-kde-1: Likewise
	* format-kde-2: Likewise
	* format-librep-1: Likewise
	* format-librep-2: Likewise
	* format-lisp-1: Likewise
	* format-lisp-2: Likewise
	* format-lua-1: Likewise
	* format-lua-2: Likewise
	* format-pascal-1: Likewise
	* format-pascal-2: Likewise
	* format-perl-1: Likewise
	* format-perl-2: Likewise
	* format-perl-brace-1: Likewise
	* format-perl-brace-2: Likewise
	* format-perl-mixed-1: Likewise
	* format-perl-mixed-2: Likewise
	* format-php-1: Likewise
	* format-php-2: Likewise
	* format-python-1: Likewise
	* format-python-2: Likewise
	* format-python-brace-1: Likewise
	* format-python-brace-2: Likewise
	* format-qt-1: Likewise
	* format-qt-2: Likewise
	* format-qt-plural-1: Likewise
	* format-qt-plural-2: Likewise
	* format-scheme-1: Likewise
	* format-scheme-2: Likewise
	* format-sh-1: Likewise
	* format-sh-2: Likewise
	* format-tcl-1: Likewise
	* format-tcl-2: Likewise
	* format-ycp-1: Likewise
	* format-ycp-2: Likewise
	* gettext-1: Likewise
	* gettext-2: Likewise
	* gettext-3: Likewise
	* gettext-4: Likewise
	* gettext-5: Likewise
	* gettext-6: Likewise
	* gettext-7: Likewise
	* gettextpo-1: Likewise
	* lang-bash: Likewise
	* lang-c: Likewise
	* lang-c++: Likewise
	* lang-clisp: Likewise
	* lang-csharp: Likewise
	* lang-elisp: Likewise
	* lang-gawk: Likewise
	* lang-guile: Likewise
	* lang-java: Likewise
	* lang-javascript: Likewise
	* lang-librep: Likewise
	* lang-lua: Likewise
	* lang-objc: Likewise
	* lang-pascal: Likewise
	* lang-perl-1: Likewise
	* lang-perl-2: Likewise
	* lang-php: Likewise
	* lang-po: Likewise
	* lang-python-1: Likewise
	* lang-python-2: Likewise
	* lang-rst: Likewise
	* lang-sh: Likewise
	* lang-smalltalk: Likewise
	* lang-tcl: Likewise
	* lang-vala: Likewise
	* lang-ycp: Likewise
	* msgattrib-1: Likewise
	* msgattrib-10: Likewise
	* msgattrib-11: Likewise
	* msgattrib-12: Likewise
	* msgattrib-13: Likewise
	* msgattrib-14: Likewise
	* msgattrib-15: Likewise
	* msgattrib-16: Likewise
	* msgattrib-17: Likewise
	* msgattrib-2: Likewise
	* msgattrib-3: Likewise
	* msgattrib-4: Likewise
	* msgattrib-5: Likewise
	* msgattrib-6: Likewise
	* msgattrib-7: Likewise
	* msgattrib-8: Likewise
	* msgattrib-9: Likewise
	* msgattrib-properties-1: Likewise
	* msgcat-1: Likewise
	* msgcat-10: Likewise
	* msgcat-11: Likewise
	* msgcat-12: Likewise
	* msgcat-13: Likewise
	* msgcat-14: Likewise
	* msgcat-15: Likewise
	* msgcat-16: Likewise
	* msgcat-17: Likewise
	* msgcat-18: Likewise
	* msgcat-2: Likewise
	* msgcat-3: Likewise
	* msgcat-4: Likewise
	* msgcat-5: Likewise
	* msgcat-6: Likewise
	* msgcat-7: Likewise
	* msgcat-8: Likewise
	* msgcat-9: Likewise
	* msgcat-properties-1: Likewise
	* msgcat-properties-2: Likewise
	* msgcat-stringtable-1: Likewise
	* msgcmp-1: Likewise
	* msgcmp-2: Likewise
	* msgcmp-3: Likewise
	* msgcmp-4: Likewise
	* msgcomm-1: Likewise
	* msgcomm-10: Likewise
	* msgcomm-11: Likewise
	* msgcomm-12: Likewise
	* msgcomm-13: Likewise
	* msgcomm-14: Likewise
	* msgcomm-15: Likewise
	* msgcomm-16: Likewise
	* msgcomm-17: Likewise
	* msgcomm-18: Likewise
	* msgcomm-19: Likewise
	* msgcomm-2: Likewise
	* msgcomm-20: Likewise
	* msgcomm-21: Likewise
	* msgcomm-22: Likewise
	* msgcomm-23: Likewise
	* msgcomm-24: Likewise
	* msgcomm-25: Likewise
	* msgcomm-26: Likewise
	* msgcomm-27: Likewise
	* msgcomm-3: Likewise
	* msgcomm-4: Likewise
	* msgcomm-5: Likewise
	* msgcomm-6: Likewise
	* msgcomm-7: Likewise
	* msgcomm-8: Likewise
	* msgcomm-9: Likewise
	* msgconv-1: Likewise
	* msgconv-2: Likewise
	* msgconv-3: Likewise
	* msgconv-4: Likewise
	* msgconv-5: Likewise
	* msgconv-6: Likewise
	* msgen-1: Likewise
	* msgen-2: Likewise
	* msgen-3: Likewise
	* msgexec-1: Likewise
	* msgexec-2: Likewise
	* msgexec-3: Likewise
	* msgexec-4: Likewise
	* msgfilter-1: Likewise
	* msgfilter-2: Likewise
	* msgfilter-3: Likewise
	* msgfilter-4: Likewise
	* msgfilter-sr-latin-1: Likewise
	* msgfmt-1: Likewise
	* msgfmt-10: Likewise
	* msgfmt-11: Likewise
	* msgfmt-12: Likewise
	* msgfmt-13: Likewise
	* msgfmt-14: Likewise
	* msgfmt-15: Likewise
	* msgfmt-16: Likewise
	* msgfmt-17: Likewise
	* msgfmt-2: Likewise
	* msgfmt-3: Likewise
	* msgfmt-4: Likewise
	* msgfmt-5: Likewise
	* msgfmt-6: Likewise
	* msgfmt-7: Likewise
	* msgfmt-8: Likewise
	* msgfmt-9: Likewise
	* msgfmt-properties-1: Likewise
	* msgfmt-qt-1: Likewise
	* msgfmt-qt-2: Likewise
	* msggrep-1: Likewise
	* msggrep-10: Likewise
	* msggrep-2: Likewise
	* msggrep-3: Likewise
	* msggrep-4: Likewise
	* msggrep-5: Likewise
	* msggrep-6: Likewise
	* msggrep-7: Likewise
	* msggrep-8: Likewise
	* msggrep-9: Likewise
	* msginit-1: Likewise
	* msginit-2: Likewise
	* msgmerge-1: Likewise
	* msgmerge-10: Likewise
	* msgmerge-11: Likewise
	* msgmerge-12: Likewise
	* msgmerge-13: Likewise
	* msgmerge-14: Likewise
	* msgmerge-15: Likewise
	* msgmerge-16: Likewise
	* msgmerge-17: Likewise
	* msgmerge-18: Likewise
	* msgmerge-19: Likewise
	* msgmerge-2: Likewise
	* msgmerge-20: Likewise
	* msgmerge-21: Likewise
	* msgmerge-22: Likewise
	* msgmerge-23: Likewise
	* msgmerge-24: Likewise
	* msgmerge-3: Likewise
	* msgmerge-4: Likewise
	* msgmerge-5: Likewise
	* msgmerge-6: Likewise
	* msgmerge-7: Likewise
	* msgmerge-8: Likewise
	* msgmerge-9: Likewise
	* msgmerge-compendium-1: Likewise
	* msgmerge-compendium-2: Likewise
	* msgmerge-compendium-3: Likewise
	* msgmerge-compendium-4: Likewise
	* msgmerge-compendium-5: Likewise
	* msgmerge-compendium-6: Likewise
	* msgmerge-properties-1: Likewise
	* msgmerge-properties-2: Likewise
	* msgmerge-update-1: Likewise
	* msgmerge-update-2: Likewise
	* msgmerge-update-3: Likewise
	* msgmerge-update-4: Likewise
	* msgunfmt-1: Likewise
	* msgunfmt-2: Likewise
	* msgunfmt-csharp-1: Likewise
	* msgunfmt-java-1: Likewise
	* msgunfmt-properties-1: Likewise
	* msgunfmt-tcl-1: Likewise
	* msguniq-1: Likewise
	* msguniq-2: Likewise
	* msguniq-3: Likewise
	* msguniq-4: Likewise
	* msguniq-5: Likewise
	* msguniq-6: Likewise
	* plural-1: Likewise
	* plural-2: Likewise
	* recode-sr-latin-1: Likewise
	* recode-sr-latin-2: Likewise
	* xgettext-1: Likewise
	* xgettext-2: Likewise
	* xgettext-3: Likewise
	* xgettext-4: Likewise
	* xgettext-5: Likewise
	* xgettext-6: Likewise
	* xgettext-7: Likewise
	* xgettext-8: Likewise
	* xgettext-9: Likewise
	* xgettext-awk-1: Likewise
	* xgettext-awk-2: Likewise
	* xgettext-c-1: Likewise
	* xgettext-c-10: Likewise
	* xgettext-c-11: Likewise
	* xgettext-c-12: Likewise
	* xgettext-c-13: Likewise
	* xgettext-c-14: Likewise
	* xgettext-c-15: Likewise
	* xgettext-c-16: Likewise
	* xgettext-c-17: Likewise
	* xgettext-c-18: Likewise
	* xgettext-c-2: Likewise
	* xgettext-c-3: Likewise
	* xgettext-c-4: Likewise
	* xgettext-c-5: Likewise
	* xgettext-c-6: Likewise
	* xgettext-c-7: Likewise
	* xgettext-c-8: Likewise
	* xgettext-c-9: Likewise
	* xgettext-csharp-1: Likewise
	* xgettext-csharp-2: Likewise
	* xgettext-csharp-3: Likewise
	* xgettext-csharp-4: Likewise
	* xgettext-csharp-5: Likewise
	* xgettext-csharp-6: Likewise
	* xgettext-csharp-7: Likewise
	* xgettext-elisp-1: Likewise
	* xgettext-elisp-2: Likewise
	* xgettext-glade-1: Likewise
	* xgettext-glade-2: Likewise
	* xgettext-glade-3: Likewise
	* xgettext-glade-4: Likewise
	* xgettext-glade-5: Likewise
	* xgettext-glade-6: Likewise
	* xgettext-glade-7: Likewise
	* xgettext-gsettings-1: Likewise
	* xgettext-java-1: Likewise
	* xgettext-java-2: Likewise
	* xgettext-java-3: Likewise
	* xgettext-java-4: Likewise
	* xgettext-java-5: Likewise
	* xgettext-java-6: Likewise
	* xgettext-java-7: Likewise
	* xgettext-javascript-1: Likewise
	* xgettext-javascript-2: Likewise
	* xgettext-javascript-3: Likewise
	* xgettext-javascript-4: Likewise
	* xgettext-javascript-5: Likewise
	* xgettext-javascript-6: Likewise
	* xgettext-librep-1: Likewise
	* xgettext-librep-2: Likewise
	* xgettext-lisp-1: Likewise
	* xgettext-lisp-2: Likewise
	* xgettext-lua-1: Likewise
	* xgettext-lua-2: Likewise
	* xgettext-objc-1: Likewise
	* xgettext-objc-2: Likewise
	* xgettext-perl-1: Likewise
	* xgettext-perl-2: Likewise
	* xgettext-perl-3: Likewise
	* xgettext-perl-4: Likewise
	* xgettext-perl-5: Likewise
	* xgettext-perl-6: Likewise
	* xgettext-perl-7: Likewise
	* xgettext-perl-8: Likewise
	* xgettext-php-1: Likewise
	* xgettext-php-2: Likewise
	* xgettext-php-3: Likewise
	* xgettext-php-4: Likewise
	* xgettext-po-1: Likewise
	* xgettext-properties-1: Likewise
	* xgettext-python-1: Likewise
	* xgettext-python-2: Likewise
	* xgettext-python-3: Likewise
	* xgettext-python-4: Likewise
	* xgettext-scheme-1: Likewise
	* xgettext-scheme-2: Likewise
	* xgettext-scheme-3: Likewise
	* xgettext-sh-1: Likewise
	* xgettext-sh-2: Likewise
	* xgettext-sh-3: Likewise
	* xgettext-sh-4: Likewise
	* xgettext-sh-5: Likewise
	* xgettext-sh-6: Likewise
	* xgettext-smalltalk-1: Likewise
	* xgettext-smalltalk-2: Likewise
	* xgettext-stringtable-1: Likewise
	* xgettext-tcl-1: Likewise
	* xgettext-tcl-2: Likewise
	* xgettext-tcl-3: Likewise
	* xgettext-tcl-4: Likewise
	* xgettext-vala-1: Likewise
	* xgettext-ycp-1: Likewise
	* xgettext-ycp-2: Likewise
	* xgettext-ycp-3: Likewise
	* xgettext-ycp-4: Likewise

2014-02-03  Roumen Petrov <bugtrack@roumenpetrov.info>  (tiny change)

	tests: pass required --tag=XX to libtool
	Reported at:
	<https://lists.gnu.org/archive/html/bug-gettext/2014-02/msg00001.html>.
	* lang-c: Pass --tag=CC to libtool.
	* lang-objc: Likewise.
	* lang-c++: Pass --tag=CXX to libtool.

2014-01-28  Roumen Petrov <bugtrack@roumenpetrov.info>  (tiny change)

	tests: fix "make check" under VPATH builds
	Reported at:
	<https://lists.gnu.org/archive/html/bug-gettext/2014-01/msg00012.html>.
	* init-env: New file renamed from init.cfg.in.
	* init.cfg.in: Remove.
	* init.cfg: Read $builddir/init-env.

2014-01-28  Roumen Petrov <bugtrack@roumenpetrov.info>  (tiny change)

	Support configuration with absolute path.
	Reported at:
	<https://lists.gnu.org/archive/html/bug-gettext/2014-01/msg00011.html>.
	* Makefile.am (TESTS_ENVIRONMENT): Define abs_srcdir and
	abs_top_srcdir.
	* format-c-3: Replace ../${top_,}srcdir with $abs_{top_,}srcdir.
	* format-c-4: Likewise.
	* format-c-5: Likewise.
	* gettext-1: Likewise.
	* gettext-2: Likewise.
	* gettext-3: Likewise.
	* gettext-4: Likewise.
	* gettext-5: Likewise.
	* gettext-6: Likewise.
	* gettext-7: Likewise.
	* gettextpo-1: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-objc: Likewise.
	* msgcomm-23: Likewise.
	* msgexec-2: Likewise.
	* msgfmt-qt-1: Likewise.
	* msgfmt-qt-2: Likewise.
	* msgmerge-compendium-5: Likewise.
	* msgmerge-compendium-6: Likewise.
	* msgunfmt-tcl-1: Likewise.
	* msguniq-1: Likewise.
	* msguniq-2: Likewise.
	* msguniq-3: Likewise.
	* msguniq-4: Likewise.
	* plural-1: Likewise.
	* xgettext-1: Likewise.
	* xgettext-c-1: Likewise.

2013-12-04  Andreas Stricker  <andy@knitter.ch>

	* xgettext-javascript-6: Add more tests for E4X.

2013-11-20  Daiki Ueno  <ueno@gnu.org>

	xgettext: Add E4X support to JavaScript scanner
	* Makefile.am (TESTS): Add xgettext-javascript-6.
	* xgettext-javascript-6: New file.

2013-11-14  Daiki Ueno  <ueno@gnu.org>

	* xgettext-javascript-1: Add a test to extract translator comments.

2013-08-30  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am (gettextpo_1_prg_CPPFLAGS): Don't add 'gnulib-lib'
	to the include path.
	Reported by Perry Smith in
	<https://lists.gnu.org/archive/html/bug-gettext/2013-08/msg00053.html>.

2013-08-13  Miguel Angel Arruga Vivas  <rosen644835@gmail.com>

	* xgettext-glade-5: Add a test for --extract-all option behavior.
	* xgettext-glade-6: Likewise.

2013-08-12  Daiki Ueno  <ueno@gnu.org>

	* xgettext-glade-7: Add a test for multi-line extracted comments.

2013-08-06  Daiki Ueno  <ueno@gnu.org>

	xgettext: add support for GSettings schema file
	* Makefile.am (TESTS): Add xgettext-gsettings-1.
	* xgettext-gsettings-1: New file.

2013-07-25  Daiki Ueno  <ueno@gnu.org>

	tests: allow each test to run individually without 'make'
	* Makefile.am (TESTS_ENVIRONMENT): Move required envvar to...
	* init.cfg.in: ...here, so each test can run individually.
	* lang-c: Guard if top_srcdir is not set.
	* lang-c++: Likewise.
	* lang-objc: Likewise.
	* msgunfmt-tcl-1: Likewise.
	* xgettext-1: Likewise.
	* xgettext-c-1: Likewise.

2013-07-25  Daiki Ueno  <ueno@gnu.org>

	tests: fix path adjustment for LTLIBINTL
	* lang-bash: Add gettext-runtime/src to PATH for gettext.sh.
	* lang-sh: Likewise.
	* lang-c: Don't set top_builddir here.
	* lang-c++: Likewise.
	* lang-objc: Likewise.
	* Makefile.am (TESTS_ENVIRONMENT): Don't set PATH here.
	* init.cfg.in: New file to adjust relative path needed by
	LTLIBINTL.

2013-07-21  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am (EXTRA_DIST): Add init.sh.

2013-07-11  Daiki Ueno  <ueno@gnu.org>

	* xgettext-lua-1: Add test case for string concatenation.

2013-07-10  Daiki Ueno  <ueno@gnu.org>

	gettext-tools: convert tests to use init.sh from Gnulib
	* Makefile.am (TESTS_ENVIRONMENT): Don't define LIBTOOL envvar
	since it contains a relative path which cannot easily modified by
	init.sh-using tests.  Set it in the tests instead.
	* *: convert to use init.sh.

2013-07-07  Daiki Ueno  <ueno@gnu.org>

	* lang-javascript: Fix gjs module checks.

2013-06-27  Daiki Ueno  <ueno@gnu.org>

	* xgettext-python-1: Test non-literal string concatenation with
	'+' to the test script.

2013-06-25  Daiki Ueno  <ueno@gnu.org>

	Fix handling of \u escape sequences in Tcl.
	* Makefile.am (TESTS): Add xgettext-tcl-4.
	* xgettext-tcl-4: New test for escape sequences.

2013-06-17  Daiki Ueno  <ueno@gnu.org>

	* format-python-brace-1: No need to pass
	--flag=gettext:1:pass-python-brace-format to xgettext.

2013-06-17  Daiki Ueno  <ueno@gnu.org>

	* Makefile.am: Rename xgettext-gtkbuilder-* to
	xgettext-glade-* as the current GtkBuilder support is implemented
	as a variant of Glade.
	(TESTS): Remove xgettext-gtkbuilder-[12] and add
	xgettext-glade-[67].
	(EXTRA_DIST): Remove xgettext-gtkbuilder-empty.ui.
	* xgettext-glade-6: Rename from xgettext-gtkbuilder-1.
	* xgettext-glade-7: Rename from xgettext-gtkbuilder-2.

2013-06-13  Miguel Angel Arruga Vivas  <rosen644835@gmail.com>

	Tests for GtkBuilder support.
	* Makefile.am (TESTS): New tests xgettext-gtkbuilder{1,2}.
	(EXTRA_DIST): Added file 'xgettext-gtkbuilder-empty.ui'.
	* xgettext-gtkbuilder-empty.ui: New file for testing.
	* xgettext-gtkbuilder-1: New test.
	* xgettext-gtkbuilder-2: Likewise.

2013-06-06  Daiki Ueno  <ueno@gnu.org>

	* lang-javascript: Check if gjs gettext and format modules are
	available.

2013-06-04  Daiki Ueno  <ueno@gnu.org>

	Support for Vala.
	* xgettext-vala-1: New file.
	* lang-vala: New file.
	* Makefile.am (TESTS): Add them.

2013-05-29  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)

	* Makefile.am (TESTS_ENVIRONMENT): Remove $(SHELL).
	(LOG_COMPILER): Define to $(SHELL).

2013-05-29  Daiki Ueno  <ueno@gnu.org>

	Avoid temp file name collisions in test scripts.
	* format-c-3: Use distinct temporary file names.
	* format-c-4: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* gettext-1: Likewise.
	* gettext-2: Likewise.
	* gettext-3: Likewise.
	* gettext-4: Likewise.
	* gettext-5: Likewise.
	* gettext-6: Likewise.
	* gettext-7: Likewise.
	* lang-bash: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-csharp: Likewise.
	* lang-elisp: Likewise.
	* lang-gawk: Likewise.
	* lang-guile: Likewise.
	* lang-java: Likewise.
	* lang-javascript: Likewise.
	* lang-librep: Likewise.
	* lang-lua: Likewise.
	* lang-objc: Likewise.
	* lang-pascal: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-po: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-rst: Likewise.
	* lang-sh: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.
	* lang-ycp: Likewise.
	* msgfmt-1: Likewise.
	* msgfmt-17: Likewise.
	* msgfmt-2: Likewise.
	* msgfmt-properties-1: Likewise.
	* msgunfmt-csharp-1: Likewise.
	* msgunfmt-java-1: Likewise.
	* msgunfmt-tcl-1: Likewise.
	* plural-1: Likewise.
	* plural-2: Likewise.
	* xgettext-glade-1: Likewise.
	* xgettext-glade-2: Likewise.
	* xgettext-glade-3: Likewise.
	* xgettext-glade-4: Likewise.
	* xgettext-glade-5: Likewise.
	* xgettext-python-4: Likewise.
	* xgettext-stringtable-1: Likewise.
	* format-c-3-prg.c: Use distinct message catalog directory.
	* format-c-4-prg.c: Likewise.
	* gettext-3-prg.c: Likewise.
	* gettext-4-prg.c: Likewise.
	* gettext-5-prg.c: Likewise.
	* gettext-6-prg.c: Likewise.
	* gettext-7-prg.c: Likewise.
	* plural-1-prg.c: Likewise.

2013-05-12  Daiki Ueno  <ueno@gnu.org>

	* xgettext-javascript-4: Add a test for normal escape sequences.

2013-05-12  Andreas Stricker <astricker@futurelab.ch>

	Improve JavaScript scanner tests.
	* xgettext-javascript-2: Add tests for backslash escapes and
	_(...) call in regular expressions.
	* xgettext-javascript-3: Use distinct temporary file names.
	* xgettext-javascript-4: Likewise.
	* xgettext-javascript-5: Add tests for unbalanced double-quotes in
	regular expressions and strings.
	* Makefile.am (TESTS): Add xgettext-javascript-5.

2013-05-02  Daiki Ueno  <ueno@gnu.org>

	* format-python-brace-2: Fix test for added argument.

2013-04-26  Daiki Ueno  <ueno@gnu.org>

	Support for Python brace format.
	* format-python-brace-1: New file.
	* format-python-brace-2: New file.
	* Makefile.am (TESTS): Add them.

2013-04-22  Daiki Ueno  <ueno@gnu.org>

	Support explicit string concatenation in Python.
	* xgettext-python-1: Add test for explicit string concatenation.

2013-04-17  Andreas Stricker  <astricker@futurelab.ch>

	Support for JavaScript.
	* format-javascript-1: New file.
	* format-javascript-2: New file.
	* xgettext-javascript-1: New file.
	* xgettext-javascript-2: New file.
	* xgettext-javascript-3: New file.
	* xgettext-javascript-4: New file.
	* lang-javascript: New file.
	* Makefile.am (TESTS): Add them.

2013-04-16  Ľubomír Remák  <lubomirr@lubomirr.eu>

	Support for escape sequences added in Lua 5.2.
	* xgettext-lua-1: New test cases for \x and \z escape sequences.

2013-04-11  Ľubomír Remák  <lubomirr@lubomirr.eu>

	Support for Lua.
	* format-lua-1: New file.
	* format-lua-2: New file.
	* xgettext-lua-1: New file.
	* xgettext-lua-2: New file.
	* lang-lua: New file.
	* Makefile.am (TESTS): Add them.

2013-03-03  Miguel Angel Arruga Vivas  <rosen644835@gmail.com>

	Add a test case for atkproperty tag in Glade2 files.
	* xgettext-glade-4: New test case for atkproperty.

2013-03-14  Miguel Angel Arruga Vivas  <rosen644835@gmail.com>

	Test msgctxt extraction on glade files.
	* Makefile.am (TESTS): Add xgettext-glade-5.
	* xgettext-glade-5: New test for msgctxt Glade2 extraction.

2012-12-25  Daiki Ueno  <ueno@gnu.org>

	* gettext-0.18.2 released.

2012-06-03  Jim Meyering  <jim@meyering.net>

	* msgcomm-17: Spelling fixes.

2012-02-19  Bruno Haible  <bruno@clisp.org>

	Avoid spurious test output with guile 2.0.x.
	* lang-guile: Filter out ";;;" lines from standard error.

2012-02-18  Bruno Haible  <bruno@clisp.org>

	Avoid test failure with fpc version 2.6.0.
	* lang-rst: Allow a test result with line wrapping.

2012-02-18  Bruno Haible  <bruno@clisp.org>

	Make the lang-pascal test work on x86_64 platforms.
	* lang-pascal: Try also the ppcx64 program.

2012-01-26  Bruno Haible  <bruno@clisp.org>

	Modernize quoting.
	* tstgettext.c (usage): Quote 'like this', not `like this', as per the
	recent change to the GNU coding standards.
	* tstngettext.c (usage): Likewise.

2012-01-15  Bruno Haible  <bruno@clisp.org>

	Avoid test failure on Solaris 11.
	* msgfilter-sr-latin-1: Skip the test if the PO file is incorrect.

2011-06-02  Bruno Haible  <bruno@clisp.org>

	* xgettext-python-1: Update expected result after linebreaking in
	libunistring changed on 2011-01-09.

2010-11-20  Bruno Haible  <bruno@clisp.org>

	Port to uClibc.
	* gettext-6-prg.c: Treat uClibc like a non-glibc platform.
	* gettext-7-prg.c: Likewise.
	* format-c-5-prg.c: Likewise.

2010-08-31  Bruno Haible  <bruno@clisp.org>

	Avoid test leftovers on MacOS X 10.5.
	* lang-objc: Add hello.dSYM to tmpfiles.

2010-06-06  Bruno Haible  <bruno@clisp.org>

	Test the libgettextpo library and its functions.
	* gettextpo-1: New file.
	* gettextpo-1-prg.c: New file.
	* gettextpo-1.de.po: New file.
	* Makefile.am (TESTS): Add gettextpo-1.
	(EXTRA_DIST): Add gettextpo-1.de.po.
	(noinst_PROGRAMS): Add gettextpo-1-prg.
	(gettextpo_1_prg_SOURCES, gettextpo_1_prg_CPPFLAGS,
	gettextpo_1_prg_LDADD): New variables.

2010-06-04  Bruno Haible  <bruno@clisp.org>

	* gettext-0.18.1 released.

2010-05-26  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on NetBSD 5.0.
	* msgfilter-1: Skip the test if the 'fold' program trims trailing
	spaces.
	* msgfilter-3: Likewise.

2010-05-23  Bruno Haible  <bruno@clisp.org>

	msggrep: Fix interpretation of '$' in regular expressions.
	* msggrep-9: New file.
	* msggrep-10: New file.
	* Makefile.am (TESTS): Add them.
	Reported by Sean Flanigan <sflaniga@redhat.com>.

2010-05-22  Bruno Haible  <bruno@clisp.org>

	xgettext-glade-4: Skip, not fail, when expat was not available.
	* xgettext-glade-4: Use the same test for xgettext Glade support as in
	xgettext-glade-[123].
	Patch by Matt Burgess <matthew@linuxfromscratch.org>.

2010-05-15  Bruno Haible  <bruno@clisp.org>

	Avoid link error on MacOS X 10.4, due to replaced 'unsetenv' function.
	* Makefile.am (gettext_6_prg_LDADD, gettext_7_prg_LDADD): Add
	libgettextlib.la. Add $(LDADD).
	(gettext_6_prg_LDADD_1, gettext_7_prg_LDADD_1): Remove $(LDADD) here.
	Reported by <ryandesign> at <https://savannah.gnu.org/bugs/?29888>.

2010-05-09  Bruno Haible  <bruno@clisp.org>

	* gettext-0.18 released.

2010-05-09  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on Cygwin 1.7.
	* lang-c++: Link without the -Wl,--disable-auto-import option.
	* lang-clisp: Convert CR/LF to LF before applying DIFF.
	* lang-tcl: Likewise.

2010-04-25  Bruno Haible  <bruno@clisp.org>

	Update support of object-pascal-format strings.
	* format-pascal-1: Add test for "%:d".
	* format-pascal-2: Add test for "%:s". Test type compatibility between
	%d, %u, %x.

2010-03-31  Guido Flohr  <guido@imperia.net>

	Improve how xgettext handles Perl syntax ambiguities.
	* xgettext-perl-8: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Guillem Jover <guillem@debian.org> via Santiago Vila.

2009-12-26  Bruno Haible  <bruno@clisp.org>

	Enable the gettext-6 and gettext-7 tests also on MacOS X.
	* Makefile.am (gettext_6_prg_CFLAGS, gettext_7_prg_CFLAGS): Depend on
	HAVE_NEWLOCALE instead of GLIBC2.
	(gettext_6_prg_LDADD, gettext_7_prg_LDADD): Likewise. Remove
	libgettextlib.la.
	* gettext-6-prg.c: Enable the test also on MacOS X platforms that have
	uselocale.
	(LOCALE_DE_ISO8859, LOCALE_FR_ISO8859): New macros.
	(thread1_execution, thread2_execution): Use them.
	(check_locale_exists): New function.
	(main): Check for the locales if an argument is passed.
	* gettext-7-prg.c: Enable the test also on MacOS X platforms that have
	uselocale.
	(LOCALE_DE_ISO8859, LOCALE_DE_UTF8): New macros.
	(thread1_execution, thread2_execution): Use them.
	(check_locale_exists): New function.
	(main): Check for the locales if an argument is passed.
	* gettext-6: Make the test work also on MacOS X systems. Test the
	presence of the locales through the program, not through testlocale.
	* gettext-7: Likewise.

2009-12-26  Bruno Haible  <bruno@clisp.org>

	* gettext-7: Make the test fail when it produced unexpected results.

2009-12-21  Bruno Haible  <bruno@clisp.org>

	* format-c-3-prg.c: Don't use setlocale override.
	* format-c-4-prg.c: Likewise.
	* plural-1-prg.c: Likewise.

2009-12-13  Bruno Haible  <bruno@clisp.org>

	Avoid a test failure on MacOS X 10.5.
	* lang-java: Make the test work when both locales fr_FR.ISO8859-1 and
	fr_FR.UTF-8 exist.

2009-12-12  Bruno Haible  <bruno@clisp.org>

	* *.c: Untabify.

2009-08-30  Bruno Haible  <bruno@clisp.org>

	Fix a test failure on Solaris.
	* msgexec-2 (TR): New variable.

2009-08-15  Bruno Haible  <bruno@clisp.org>

	* msgunfmt-tcl-1: Explain that this test fails on mingw.

2009-08-14  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (update-expected): New target.

2009-08-14  Bruno Haible  <bruno@clisp.org>

	Avoid a warning message on Cygwin.
	* msggrep-7: Filter out msggrep's warning about locale charset.

2009-08-13  Bruno Haible  <bruno@clisp.org>

	* msgexec-1: Filter out msgexec's warning about locale charset.
	* msgexec-2: Likewise.
	* msgexec-4: Likewise. Explain why this test fails on mingw.

2009-08-10  Bruno Haible  <bruno@clisp.org>

	Avoid a test failure on Cygwin.
	* msginit-1: Replace also CP1252 label with ASCII.

2009-07-27  Часлав Илић (Chusslove Illich)  <caslav.ilic@gmx.net>
            Bruno Haible  <bruno@clisp.org>

	* recode-sr-latin-1: Add test cases with accents.

2009-06-06  Bruno Haible  <bruno@clisp.org>

	* xgettext-perl-1: Add test of // operator.

2009-05-29  Bruno Haible  <bruno@clisp.org>

	* msgfmt-10: Update after msgfmt's error message changed.

2009-05-29  Bruno Haible  <bruno@clisp.org>

	Avoid lang-c++ test failure.
	* lang-c++: Pass --tag option to libtool.

2009-05-21  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (AUTOMAKE_OPTIONS): Add 1.11 and color-tests.

2009-05-16  Bruno Haible  <bruno@clisp.org>

	* xgettext-glade-4: New file.
	* Makefile.am (TESTS): Add it.

2009-03-29  Bruno Haible  <bruno@clisp.org>

	* format-gfc-internal-1: New file.
	* format-gfc-internal-2: New file.
	* Makefile.am (TESTS): Add them.

2009-01-28  Bruno Haible  <bruno@clisp.org>

	* format-qt-plural-1: New file.
	* format-qt-plural-2: New file.
	* Makefile.am (TESTS): Add them.

2009-01-27  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-13: Test also the 3 variants of the tr function and the
	qt-plural-format flag.

2009-01-25  Bruno Haible  <bruno@clisp.org>

	Avoid a test suite failure on platforms that have a gl_IE locale.
	* msginit-1: Normalize the charset of the generated PO file.

2008-10-04  Bruno Haible  <bruno@clisp.org>

	* msgfmt-17: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Anatoly Techtonik <techtonik@gmail.com>
	via <https://savannah.gnu.org/bugs/?24433>.

2008-10-04  Bruno Haible  <bruno@clisp.org>

	* msgcat-18: New file.
	* msgcomm-27: New file.
	* msgmerge-24: New file.
	* xgettext-c-18: New file.
	* Makefile.am (TESTS): Add them.

2008-09-29  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on mingw.
	* msgexec-1: Don't produce CR/LFs in the per-message command script.
	* msgexec-3: Likewise.
	* msgexec-4: Likewise.

2008-09-28  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on mingw.
	* msgcmp-2: Normalize program name with .exe suffix also when it
	occurs at the beginning of a line of error output.
	* msgcmp-3: Likewise.
	* msgfmt-7: Likewise.
	* msgfmt-8: Likewise.
	* msgfmt-9: Likewise.
	* msgfmt-10: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-9: Likewise.
	* msgexec-2: Convert CR/LF to LF before applying DIFF.

2008-08-23  Bruno Haible  <bruno@clisp.org>

	* msgmerge-update-4: New file, based on msgmerge-update-3.
	* Makefile.am (TESTS): Add it.
	Reported by Vincent Danjean <vdanjean.abo@free.fr>
	via <http://savannah.gnu.org/bugs/?24123>.

2008-08-16  Bruno Haible  <bruno@clisp.org>

	* xgettext-python-1: Test that strings inside [ ] are not extracted for
	an outer gettext call.

2008-08-15  Bruno Haible  <bruno@clisp.org>

	* format-python-2: Check that %.0s normally behaves like %s.

2008-06-01  Bruno Haible  <bruno@clisp.org>

	* lang-bash: Add note about failure on MacOS X.

2008-06-01  Bruno Haible  <bruno@clisp.org>

	* lang-smalltalk: Avoid test failure with gst-3.0.3 on MacOS X.

2008-05-26  Bruno Haible  <bruno@clisp.org>

	* gettext-8: New file.
	* Makefile.am (noinst_PROGRAMS): Add gettext-8-prg, remove gettext-8.
	(gettext_8_prg_*): Renamed from gettext_8_*.

2008-05-12  Bruno Haible  <bruno@clisp.org>

	* msgcat-17: Change test so that it works with newer line-breaking
	algorithm.

2008-04-06  Bruno Haible  <bruno@clisp.org>

	Avoid testsuite failures on MacOS X 10.5.
	* format-c-3: Use "LC_ALL=C tr" instead of "tr". Avoids error with
	non-ASCII bytes in UTF-8 locales.
	* format-c-4: Likewise.
	* format-c-5: Likewise.
	* format-perl-mixed-1: Likewise.
	* gettext-1: Likewise.
	* lang-bash: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-csharp: Likewise.
	* lang-elisp: Likewise.
	* lang-gawk: Likewise.
	* lang-guile: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-objc: Likewise.
	* lang-pascal: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-po: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-rst: Likewise.
	* lang-sh: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.
	* lang-ycp: Likewise.
	* msgattrib-1: Likewise.
	* msgattrib-10: Likewise.
	* msgattrib-11: Likewise.
	* msgattrib-12: Likewise.
	* msgattrib-13: Likewise.
	* msgattrib-14: Likewise.
	* msgattrib-15: Likewise.
	* msgattrib-16: Likewise.
	* msgattrib-17: Likewise.
	* msgattrib-2: Likewise.
	* msgattrib-3: Likewise.
	* msgattrib-4: Likewise.
	* msgattrib-5: Likewise.
	* msgattrib-6: Likewise.
	* msgattrib-7: Likewise.
	* msgattrib-8: Likewise.
	* msgattrib-9: Likewise.
	* msgattrib-properties-1: Likewise.
	* msgcat-1: Likewise.
	* msgcat-10: Likewise.
	* msgcat-11: Likewise.
	* msgcat-13: Likewise.
	* msgcat-15: Likewise.
	* msgcat-16: Likewise.
	* msgcat-17: Likewise.
	* msgcat-2: Likewise.
	* msgcat-3: Likewise.
	* msgcat-4: Likewise.
	* msgcat-5: Likewise.
	* msgcat-6: Likewise.
	* msgcat-7: Likewise.
	* msgcat-8: Likewise.
	* msgcat-9: Likewise.
	* msgcat-properties-1: Likewise.
	* msgcat-stringtable-1: Likewise.
	* msgcmp-2: Likewise.
	* msgcmp-3: Likewise.
	* msgcomm-1: Likewise.
	* msgcomm-10: Likewise.
	* msgcomm-11: Likewise.
	* msgcomm-12: Likewise.
	* msgcomm-13: Likewise.
	* msgcomm-14: Likewise.
	* msgcomm-16: Likewise.
	* msgcomm-17: Likewise.
	* msgcomm-18: Likewise.
	* msgcomm-19: Likewise.
	* msgcomm-2: Likewise.
	* msgcomm-20: Likewise.
	* msgcomm-21: Likewise.
	* msgcomm-22: Likewise.
	* msgcomm-23: Likewise.
	* msgcomm-24: Likewise.
	* msgcomm-25: Likewise.
	* msgcomm-26: Likewise.
	* msgcomm-3: Likewise.
	* msgcomm-4: Likewise.
	* msgcomm-5: Likewise.
	* msgcomm-6: Likewise.
	* msgcomm-7: Likewise.
	* msgcomm-8: Likewise.
	* msgcomm-9: Likewise.
	* msgconv-5: Likewise.
	* msgconv-6: Likewise.
	* msgen-1: Likewise.
	* msgen-2: Likewise.
	* msgen-3: Likewise.
	* msgfilter-sr-latin-1: Likewise.
	* msgfmt-1: Likewise.
	* msgfmt-10: Likewise.
	* msgfmt-12: Likewise.
	* msgfmt-14: Likewise.
	* msgfmt-16: Likewise.
	* msgfmt-5: Likewise.
	* msgfmt-7: Likewise.
	* msgfmt-8: Likewise.
	* msgfmt-9: Likewise.
	* msgfmt-properties-1: Likewise.
	* msggrep-1: Likewise.
	* msggrep-2: Likewise.
	* msggrep-3: Likewise.
	* msggrep-4: Likewise.
	* msggrep-5: Likewise.
	* msggrep-6: Likewise.
	* msggrep-7: Likewise.
	* msggrep-8: Likewise.
	* msginit-1: Likewise.
	* msginit-2: Likewise.
	* msgmerge-1: Likewise.
	* msgmerge-10: Likewise.
	* msgmerge-11: Likewise.
	* msgmerge-12: Likewise.
	* msgmerge-13: Likewise.
	* msgmerge-14: Likewise.
	* msgmerge-15: Likewise.
	* msgmerge-16: Likewise.
	* msgmerge-17: Likewise.
	* msgmerge-18: Likewise.
	* msgmerge-19: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-20: Likewise.
	* msgmerge-21: Likewise.
	* msgmerge-22: Likewise.
	* msgmerge-23: Likewise.
	* msgmerge-3: Likewise.
	* msgmerge-4: Likewise.
	* msgmerge-5: Likewise.
	* msgmerge-6: Likewise.
	* msgmerge-7: Likewise.
	* msgmerge-8: Likewise.
	* msgmerge-9: Likewise.
	* msgmerge-compendium-1: Likewise.
	* msgmerge-compendium-2: Likewise.
	* msgmerge-compendium-3: Likewise.
	* msgmerge-compendium-4: Likewise.
	* msgmerge-compendium-5: Likewise.
	* msgmerge-compendium-6: Likewise.
	* msgmerge-properties-1: Likewise.
	* msgmerge-properties-2: Likewise.
	* msgmerge-update-2: Likewise.
	* msgunfmt-1: Likewise.
	* msgunfmt-2: Likewise.
	* msgunfmt-properties-1: Likewise.
	* msguniq-1: Likewise.
	* msguniq-2: Likewise.
	* msguniq-3: Likewise.
	* msguniq-5: Likewise.
	* msguniq-6: Likewise.
	* plural-1: Likewise.
	* xgettext-2: Likewise.
	* xgettext-3: Likewise.
	* xgettext-4: Likewise.
	* xgettext-5: Likewise.
	* xgettext-6: Likewise.
	* xgettext-7: Likewise.
	* xgettext-8: Likewise.
	* xgettext-9: Likewise.
	* xgettext-awk-1: Likewise.
	* xgettext-awk-2: Likewise.
	* xgettext-c-1: Likewise.
	* xgettext-c-10: Likewise.
	* xgettext-c-11: Likewise.
	* xgettext-c-12: Likewise.
	* xgettext-c-13: Likewise.
	* xgettext-c-14: Likewise.
	* xgettext-c-15: Likewise.
	* xgettext-c-16: Likewise.
	* xgettext-c-17: Likewise.
	* xgettext-c-2: Likewise.
	* xgettext-c-3: Likewise.
	* xgettext-c-4: Likewise.
	* xgettext-c-5: Likewise.
	* xgettext-c-6: Likewise.
	* xgettext-c-7: Likewise.
	* xgettext-c-8: Likewise.
	* xgettext-c-9: Likewise.
	* xgettext-csharp-1: Likewise.
	* xgettext-csharp-2: Likewise.
	* xgettext-csharp-3: Likewise.
	* xgettext-csharp-4: Likewise.
	* xgettext-csharp-5: Likewise.
	* xgettext-csharp-6: Likewise.
	* xgettext-csharp-7: Likewise.
	* xgettext-elisp-1: Likewise.
	* xgettext-elisp-2: Likewise.
	* xgettext-java-1: Likewise.
	* xgettext-java-2: Likewise.
	* xgettext-java-3: Likewise.
	* xgettext-java-4: Likewise.
	* xgettext-java-5: Likewise.
	* xgettext-java-6: Likewise.
	* xgettext-java-7: Likewise.
	* xgettext-librep-1: Likewise.
	* xgettext-librep-2: Likewise.
	* xgettext-lisp-1: Likewise.
	* xgettext-lisp-2: Likewise.
	* xgettext-objc-1: Likewise.
	* xgettext-objc-2: Likewise.
	* xgettext-perl-1: Likewise.
	* xgettext-perl-2: Likewise.
	* xgettext-perl-3: Likewise.
	* xgettext-perl-4: Likewise.
	* xgettext-perl-5: Likewise.
	* xgettext-perl-6: Likewise.
	* xgettext-perl-7: Likewise.
	* xgettext-php-1: Likewise.
	* xgettext-php-2: Likewise.
	* xgettext-php-3: Likewise.
	* xgettext-php-4: Likewise.
	* xgettext-po-1: Likewise.
	* xgettext-properties-1: Likewise.
	* xgettext-python-1: Likewise.
	* xgettext-python-2: Likewise.
	* xgettext-python-3: Likewise.
	* xgettext-python-4: Likewise.
	* xgettext-scheme-1: Likewise.
	* xgettext-scheme-3: Likewise.
	* xgettext-sh-1: Likewise.
	* xgettext-sh-2: Likewise.
	* xgettext-sh-3: Likewise.
	* xgettext-sh-4: Likewise.
	* xgettext-sh-5: Likewise.
	* xgettext-sh-6: Likewise.
	* xgettext-smalltalk-1: Likewise.
	* xgettext-smalltalk-2: Likewise.
	* xgettext-stringtable-1: Likewise.
	* xgettext-tcl-1: Likewise.
	* xgettext-tcl-2: Likewise.
	* xgettext-tcl-3: Likewise.
	* xgettext-ycp-1: Likewise.
	* xgettext-ycp-2: Likewise.
	* xgettext-ycp-3: Likewise.
	* xgettext-ycp-4: Likewise.

2008-02-20  Bruno Haible  <bruno@clisp.org>

	* format-gcc-internal-1: Test also %K.

2008-02-04  Bruno Haible  <bruno@clisp.org>

	* msgmerge-23: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Yukiko Bando <ybando@k6.dion.ne.jp> via
	Chusslove Illich (Часлав Илић) <caslav.ilic@gmx.net>.

2008-01-12  Bruno Haible  <bruno@clisp.org>

	* xgettext-glade-2: Use 'grep' with a pipe as input, not a regular
	file.
	* xgettext-glade-3: Likewise.
	* xgettext-java-2: Likewise.
	* xgettext-python-1: Likewise.
	* xgettext-python-3: Likewise.
	* xgettext-stringtable-1: Likewise.
	* xgettext-tcl-1: Likewise.
	Fixes test failures on OpenBSD 4.0.

2007-12-24  Bruno Haible  <bruno@clisp.org>

	* gettext-3-prg.c: Don't include setenv.h.
	* gettext-5-prg.c: Likewise.
	* gettext-6-prg.c: Likewise.
	* gettext-7-prg.c: Likewise.

2007-12-24  Bruno Haible  <bruno@clisp.org>

	* msginit-1: Add 'Language' field in header to input. Check that it is
	filled.
	* msginit-2: Likewise.
	* msgmerge-5: Add 'Language' field in header to expected result.
	* msgmerge-6: Likewise.
	* msgmerge-10: Likewise.
	* msgmerge-11: Likewise.
	* msgmerge-12: Likewise.
	* msgmerge-13: Likewise.
	* msgmerge-14: Likewise.
	* msgmerge-16: Likewise.
	* msgmerge-21: Likewise.
	* msgmerge-22: Likewise.
	* mm-viet.out: Likewise.
	* msgmerge-update-1: Add 'Language' field in header to input.
	* msgmerge-update-2: Likewise.
	* msgmerge-update-3: Likewise.
	* xgettext-3: Add 'Language' field in header to expected result.
	* xgettext-4: Likewise.
	* xgettext-5: Likewise.
	* xgettext-8: Likewise.
	* xgettext-csharp-2: Likewise.
	* xgettext-csharp-3: Likewise.
	* xgettext-glade-1: Likewise.
	* xgettext-glade-2: Likewise.
	* xgettext-glade-3: Likewise.
	* xgettext-java-2: Likewise.
	* xgettext-perl-2: Likewise.
	* xgettext-perl-3: Likewise.
	* xgettext-python-1: Likewise.
	* xgettext-python-3: Likewise.
	* xgettext-stringtable-1: Likewise.
	* xgettext-tcl-1: Likewise.

2007-12-22  Bruno Haible  <bruno@clisp.org>

	* msgcat-17: New file.
	* Makefile.am (TESTS): Add it.

2007-11-15  Bruno Haible  <bruno@clisp.org>

	* gettext-8-prg.c: New file.
	* Makefile.am (TESTS, noinst_PROGRAMS): Add gettext-8.
	(gettext_8_*): New variables.

2007-11-07  Bruno Haible  <bruno@clisp.org>

	* gettext-0.17 released.

2007-10-27  Bruno Haible  <bruno@clisp.org>

	* lang-gawk: Skip the test if the gawk version is 3.1.5.

2007-10-20  Bruno Haible  <bruno@clisp.org>

	* msgmerge-22: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Chusslove Illich (Часлав Илић) <caslav.ilic@gmx.net>.

2007-10-20  Bruno Haible  <bruno@clisp.org>

	* msgmerge-21: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Chusslove Illich (Часлав Илић) <caslav.ilic@gmx.net>.

2007-10-19  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on Cygwin-hosted mingw.
	* msginit-1: Convert CR/LF to LF after applying SED or GREP.
	* msginit-2: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-9: Likewise.
	* xgettext-3: Likewise.
	* xgettext-4: Likewise.
	* xgettext-5: Likewise.
	* xgettext-8: Likewise.
	* xgettext-csharp-2: Likewise.
	* xgettext-perl-2: Likewise.
	* xgettext-perl-3: Likewise.
	* xgettext-python-1: Likewise.
	* xgettext-csharp-3: Likewise.
	* xgettext-java-2: Likewise.
	* xgettext-python-3: Likewise.
	* xgettext-stringtable-1: Likewise.
	* xgettext-tcl-1: Likewise.
	* format-perl-mixed-1: Likewise.
	* plural-1: Convert CR/LF to LF before applying DIFF.

2007-10-09  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-17: New file.
	* Makefile.am (TESTS): Add it.

2007-10-07  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (main): In the --version output, say GPLv3+.
	* tstngettext.c (main): Likewise.

2007-09-30  Bruno Haible  <bruno@clisp.org>

	Add support for KDE 4 format strings.
	* format-kde-1: New file.
	* format-kde-2: New file.
	* Makefile.am (TESTS): Add them.
	Based on input by by Chusslove Illich <caslav.ilic@gmx.net>.

2007-09-09  Bruno Haible  <bruno@clisp.org>

	Add support for Qt 4 format strings.
	* format-qt-1: Update for Qt 4 syntax.
	* format-qt-2: Likewise.
	Based on input by by Chusslove Illich <caslav.ilic@gmx.net>.

2007-09-02  Bruno Haible  <bruno@clisp.org>

	Implement msgctxt for C# ResourceManagers.
	* xgettext-csharp-7: New file.
	* msgunfmt-csharp-1: Add a few messages with context.
	* lang-csharp: Likewise.
	* Makefile.am (TESTS): Add xgettext-csharp-7.

2007-09-01  Bruno Haible  <bruno@clisp.org>

	Implement msgctxt for Java ResourceBundles.
	* xgettext-java-7: New file.
	* msgunfmt-java-1: Add a few messages with context.
	* lang-java: Likewise.
	* Makefile.am (TESTS): Add xgettext-java-7.
	Suggested by Felix Berger.

2007-07-04  Bruno Haible  <bruno@clisp.org>

	* xgettext-php-3: Use string concatenation in the test.
	* xgettext-php-4: New file.
	* Makefile.am (TESTS): Add it.

2007-06-30  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (main): Use the standard --version output, see
	<http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00302.html>.
	* tstngettext.c (main): Likewise.

2007-06-25  Bruno Haible  <bruno@clisp.org>

	* xgettext-awk-2: New file.
	* xgettext-c-16: New file.
	* xgettext-csharp-6: New file.
	* xgettext-elisp-2: New file.
	* xgettext-java-6: New file.
	* xgettext-librep-2: New file.
	* xgettext-lisp-2: New file.
	* xgettext-perl-7: New file.
	* xgettext-php-3: New file.
	* xgettext-python-4: New file.
	* xgettext-scheme-3: New file.
	* xgettext-sh-6: New file.
	* xgettext-smalltalk-2: New file.
	* xgettext-tcl-3: New file.
	* xgettext-ycp-4: New file.
	* Makefile.am (TESTS): Add them.

2007-05-14  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on mingw.
	* msgcmp-2: Reduce the file name in the error output.
	* msgcmp-3: Likewise.
	* msgfmt-7: Likewise.
	* msgfmt-8: Likewise.
	* msgfmt-9: Likewise.
	* msgfmt-10: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-9: Likewise.

2007-05-14  Bruno Haible  <bruno@clisp.org>

	Avoid test suite failures on mingw.
	* gettext-1: Convert CR/LF to LF before applying DIFF.
	* msgattrib-1: Likewise.
	* msgattrib-2: Likewise.
	* msgattrib-3: Likewise.
	* msgattrib-4: Likewise.
	* msgattrib-5: Likewise.
	* msgattrib-6: Likewise.
	* msgattrib-7: Likewise.
	* msgattrib-8: Likewise.
	* msgattrib-9: Likewise.
	* msgattrib-10: Likewise.
	* msgattrib-11: Likewise.
	* msgattrib-12: Likewise.
	* msgattrib-13: Likewise.
	* msgattrib-14: Likewise.
	* msgattrib-15: Likewise.
	* msgattrib-16: Likewise.
	* msgattrib-17: Likewise.
	* msgattrib-properties-1: Likewise.
	* msgcat-1: Likewise.
	* msgcat-2: Likewise.
	* msgcat-3: Likewise.
	* msgcat-4: Likewise.
	* msgcat-5: Likewise.
	* msgcat-6: Likewise.
	* msgcat-7: Likewise.
	* msgcat-8: Likewise.
	* msgcat-9: Likewise.
	* msgcat-10: Likewise.
	* msgcat-11: Likewise.
	* msgcat-13: Likewise.
	* msgcat-15: Likewise.
	* msgcat-16: Likewise.
	* msgcat-properties-1: Likewise.
	* msgcat-stringtable-1: Likewise.
	* msgcmp-2: Likewise.
	* msgcmp-3: Likewise.
	* msgcomm-1: Likewise.
	* msgcomm-2: Likewise.
	* msgcomm-3: Likewise.
	* msgcomm-4: Likewise.
	* msgcomm-5: Likewise.
	* msgcomm-6: Likewise.
	* msgcomm-7: Likewise.
	* msgcomm-8: Likewise.
	* msgcomm-9: Likewise.
	* msgcomm-10: Likewise.
	* msgcomm-11: Likewise.
	* msgcomm-12: Likewise.
	* msgcomm-13: Likewise.
	* msgcomm-14: Likewise.
	* msgcomm-16: Likewise.
	* msgcomm-17: Likewise.
	* msgcomm-18: Likewise.
	* msgcomm-19: Likewise.
	* msgcomm-20: Likewise.
	* msgcomm-21: Likewise.
	* msgcomm-22: Likewise.
	* msgcomm-23: Likewise.
	* msgcomm-24: Likewise.
	* msgcomm-25: Likewise.
	* msgcomm-26: Likewise.
	* msgconv-5: Likewise.
	* msgconv-6: Likewise.
	* msgen-1: Likewise.
	* msgen-2: Likewise.
	* msgen-3: Likewise.
	* msgfilter-sr-latin-1: Likewise.
	* msgfmt-1: Likewise.
	* msgfmt-5: Likewise.
	* msgfmt-7: Likewise.
	* msgfmt-8: Likewise.
	* msgfmt-9: Likewise.
	* msgfmt-10: Likewise.
	* msgfmt-12: Likewise.
	* msgfmt-14: Likewise.
	* msgfmt-16: Likewise.
	* msgfmt-properties-1: Likewise.
	* msggrep-1: Likewise.
	* msggrep-2: Likewise.
	* msggrep-3: Likewise.
	* msggrep-4: Likewise.
	* msggrep-5: Likewise.
	* msggrep-6: Likewise.
	* msggrep-7: Likewise.
	* msggrep-8: Likewise.
	* msgmerge-1: Likewise.
	* msgmerge-3: Likewise.
	* msgmerge-4: Likewise.
	* msgmerge-5: Likewise.
	* msgmerge-6: Likewise.
	* msgmerge-7: Likewise.
	* msgmerge-8: Likewise.
	* msgmerge-10: Likewise.
	* msgmerge-11: Likewise.
	* msgmerge-12: Likewise.
	* msgmerge-13: Likewise.
	* msgmerge-14: Likewise.
	* msgmerge-15: Likewise.
	* msgmerge-16: Likewise.
	* msgmerge-17: Likewise.
	* msgmerge-18: Likewise.
	* msgmerge-19: Likewise.
	* msgmerge-20: Likewise.
	* msgmerge-compendium-1: Likewise.
	* msgmerge-compendium-2: Likewise.
	* msgmerge-compendium-3: Likewise.
	* msgmerge-compendium-4: Likewise.
	* msgmerge-compendium-5: Likewise.
	* msgmerge-compendium-6: Likewise.
	* msgmerge-properties-1: Likewise.
	* msgmerge-properties-2: Likewise.
	* msgmerge-update-2: Likewise.
	* msgunfmt-1: Likewise.
	* msgunfmt-2: Likewise.
	* msgunfmt-properties-1: Likewise.
	* msguniq-1: Likewise.
	* msguniq-2: Likewise.
	* msguniq-3: Likewise.
	* msguniq-5: Likewise.
	* msguniq-6: Likewise.
	* xgettext-2: Likewise.
	* xgettext-6: Likewise.
	* xgettext-7: Likewise.
	* xgettext-9: Likewise.
	* xgettext-awk-1: Likewise.
	* xgettext-c-1: Likewise.
	* xgettext-c-2: Likewise.
	* xgettext-c-3: Likewise.
	* xgettext-c-4: Likewise.
	* xgettext-c-5: Likewise.
	* xgettext-c-6: Likewise.
	* xgettext-c-7: Likewise.
	* xgettext-c-8: Likewise.
	* xgettext-c-9: Likewise.
	* xgettext-c-10: Likewise.
	* xgettext-c-11: Likewise.
	* xgettext-c-12: Likewise.
	* xgettext-c-13: Likewise.
	* xgettext-c-14: Likewise.
	* xgettext-c-15: Likewise.
	* xgettext-csharp-1: Likewise.
	* xgettext-csharp-4: Likewise.
	* xgettext-csharp-5: Likewise.
	* xgettext-elisp-1: Likewise.
	* xgettext-java-1: Likewise.
	* xgettext-java-3: Likewise.
	* xgettext-java-4: Likewise.
	* xgettext-java-5: Likewise.
	* xgettext-librep-1: Likewise.
	* xgettext-lisp-1: Likewise.
	* xgettext-objc-1: Likewise.
	* xgettext-objc-2: Likewise.
	* xgettext-perl-1: Likewise.
	* xgettext-perl-4: Likewise.
	* xgettext-perl-5: Likewise.
	* xgettext-perl-6: Likewise.
	* xgettext-php-1: Likewise.
	* xgettext-php-2: Likewise.
	* xgettext-po-1: Likewise.
	* xgettext-properties-1: Likewise.
	* xgettext-python-2: Likewise.
	* xgettext-scheme-1: Likewise.
	* xgettext-sh-1: Likewise.
	* xgettext-sh-2: Likewise.
	* xgettext-sh-3: Likewise.
	* xgettext-sh-4: Likewise.
	* xgettext-sh-5: Likewise.
	* xgettext-smalltalk-1: Likewise.
	* xgettext-tcl-2: Likewise.
	* xgettext-ycp-1: Likewise.
	* xgettext-ycp-2: Likewise.
	* xgettext-ycp-3: Likewise.
	* format-c-3: Likewise.
	* format-c-4: Likewise.
	* format-c-5: Likewise.
	* plural-1: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-objc: Likewise.
	* lang-sh: Likewise.
	* lang-bash: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-clisp: Likewise.
	* lang-elisp: Likewise.
	* lang-librep: Likewise.
	* lang-guile: Likewise.
	* lang-smalltalk: Likewise.
	* lang-java: Likewise.
	* lang-csharp: Likewise.
	* lang-gawk: Likewise.
	* lang-pascal: Likewise.
	* lang-ycp: Likewise.
	* lang-tcl: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-po: Likewise.
	* lang-rst: Likewise.

2007-04-30  Bruno Haible  <bruno@clisp.org>

	* lang-php: Remove 'echo' of printf result.
	Patch by Jens Petersen <petersen@redhat.com>.

2007-03-27  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (usage): Ask translators to specify a translation bug
	report address.
	* tstngettext.c (usage): Likewise.

2007-03-19  Bruno Haible  <bruno@clisp.org>

	* lang-php: Use <?php instead of <?, since the latter does not work
	when php is configured with short_open_tag = off.
	Patch by Jens Petersen <petersen@redhat.com>.

2007-03-17  Bruno Haible  <bruno@clisp.org>

	* xgettext-php-1: Test that strings inside [ ] are not extracted for an
	outer gettext call.

2007-02-19  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c: Don't include exit.h.
	* tstngettext.c: Likewise.

2007-02-04  Bruno Haible  <bruno@clisp.org>

	* lang-java: Hide compiler warnings.

2007-01-28  Bruno Haible  <bruno@clisp.org>

	* xgettext-java-2: Change expected result to contains U+FFFD instead
	of an ill-formed UTF-8 sequence.

2007-01-27  Bruno Haible  <bruno@clisp.org>

	* lang-smalltalk: Update expected result so that it works with GNU
	smalltalk 2.3 as well.

2007-01-07  Bruno Haible  <bruno@clisp.org>

	* msgmerge-20: New file.
	* Makefile.am (TESTS): Add it.
	Reported by Leonardo Fontenelle <leo.fontenelle@gmail.com>.

2006-12-16  Bruno Haible  <bruno@clisp.org>

	Make it work with autoconf > 2.61.
	* Makefile.am (TESTS_ENVIRONMENT): Also set GLIBC2.
	* gettext-3: Use GLIBC2 from the environment instead of grepping
	config.status.
	* gettext-5: Likewise.
	* gettext-6: Likewise.
	* gettext-7: Likewise.
	Reported by Ralf Wildenhues.

2006-12-10  Bruno Haible  <bruno@clisp.org>

	Fix a test failure on Solaris.
	* Makefile.am (TESTS_ENVIRONMENT): Also set LOCALE_JA.
	* recode-sr-latin-2: Use the LOCALE_JA value from the Makefile,
	instead of using the 'testlocale' program.
	Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.

2006-11-12  Bruno Haible  <bruno@clisp.org>

	* msgcat-15: Update expected test output.

2006-11-03  Bruno Haible  <bruno@clisp.org>

	Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
	* tstgettext.c (expand_escape): Use XNMALLOC instead of xmalloc.

2006-11-27  Bruno Haible  <bruno@clisp.org>

	* gettext-0.16.1 released.

2006-10-26  Bruno Haible  <bruno@clisp.org>

	* gettext-0.16 released.

2006-10-03  Bruno Haible  <bruno@clisp.org>

	* msgattrib-16: New file.
	* msgattrib-17: New file.
	* msgcat-15: New file.
	* msgcat-16: New file.
	* msgcmp-4: New file.
	* msgcomm-26: New file.
	* msgconv-6: New file.
	* msgfmt-16: New file.
	* msgmerge-19: New file.
	* msguniq-6: New file.
	* Makefile.am (TESTS): Add them.

2006-10-03  Bruno Haible  <bruno@clisp.org>

	* msgmerge-18: Invoke msgcmp with options --use-fuzzy and
	--use-untranslated.

2006-10-01  Bruno Haible  <bruno@clisp.org>

	* xgettext-perl-6: New file.
	* Makefile.am (TESTS): Add it.

2006-09-06  Bruno Haible  <bruno@clisp.org>

	* msgfmt-12: Update expected output.
	* format-c-3: Likewise.
	* format-c-4: Likewise.
	* format-c-5: Likewise.

2006-08-28  Bruno Haible  <bruno@clisp.org>

	* xgettext-scheme-2: New file.
	* Makefile.am (TESTS): Add it.

2006-08-16  Bruno Haible  <bruno@clisp.org>

	* plural-2: Use Japanese, not Hungarian, as a test case for nplurals=1.

2006-08-16  Bruno Haible  <bruno@clisp.org>

	* msgunfmt-2: New file.
	* Makefile.am (TESTS): Add it.

2006-08-01  Bruno Haible  <bruno@clisp.org>

	* msgmerge-compendium-6: New file.
	* mm-ko.ascii.pot: New file.
	* mm-ko.euc-kr.po: New file.
	* mm-ko-comp.euc-kr.po: New file.
	* Makefile.am (TESTS): Add msgmerge-compendium-6.
	(EXTRA_DIST): Add mm-ko.ascii.pot, mm-ko.euc-kr.po,
	mm-ko-comp.euc-kr.po.

2006-08-01  Bruno Haible  <bruno@clisp.org>

	* mm-viet.comp.po: Renamed from msgmerge-v.comp.po.
	* mm-viet.out: Renamed from msgmerge-v.out.
	* mm-viet.pot: msgmerge-v.pot.
	* msgmerge-compendium-5: Update.
	* Makefile.am (EXTRA_DIST): Update.

2006-08-04  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (TESTS): Really add msgfmt-qt-2.

2006-08-02  Bruno Haible  <bruno@clisp.org>

	* lang-c: Replace ../lib with ../gnulib-lib.
	* lang-c++: Likewise.
	* lang-objc: Likewise.

2006-07-30  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (AM_CPPFLAGS, *_LDADD*): Replace ../lib with
	../gnulib-lib.
	* lang-csharp (CSHARPCOMP, CSHARPEXEC): Remove lib/ from pathname.
	* lang-java (JAVACOMP, JAVAEXEC): Remove lib/ from pathname.

2006-07-25  Bruno Haible  <bruno@clisp.org>

	* Makefile.msvc: Remove file.
	* Makefile.am (EXTRA_DIST): Remove Makefile.msvc.

2006-07-25  Bruno Haible  <bruno@clisp.org>

	* Makefile.vms: Remove file.
	* Makefile.am (EXTRA_DIST): Remove Makefile.vms.

2006-07-21  Bruno Haible  <bruno@clisp.org>

	* gettext-0.15 released.

2006-07-21  Bruno Haible  <bruno@clisp.org>

	* gettext-4: Store the PO file under fr/, not fr_FR/. Needed on
	Solaris 7, because there the french locale is called fr, not fr_FR.

2006-07-21  Bruno Haible  <bruno@clisp.org>

	* gettext-6-prg.c: Enable the test only for glibc >= 2.3.
	* gettext-7-prg.c: Likewise.
	* gettext-6: Update.
	* gettext-7: Likewise.

2006-07-14  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (MOSTLYCLEANFILES): New variable.

2006-04-14  Bruno Haible  <bruno@clisp.org>

	Assume autoconf >= 2.60.
	* Makefile.am (localedir): Remove variable.

2006-06-21  Bruno Haible  <bruno@clisp.org>

	* xgettext-sh-5: New file.
	* Makefile.am (TESTS): Add it.

2006-06-17  Bruno Haible  <bruno@clisp.org>

	* recode-sr-latin-2 (LOCALE_JA_EUCJP): Determine locale name depending
	on the platform.
	Needed for NetBSD 3.0, where testlocale always succeeds. (On NetBSD,
	setlocale always works, but for invalid locales nl_locale(CODESET)
	returns "646".)

2006-06-17  Bruno Haible  <bruno@clisp.org>

	* gettext-4: Use a french locale instead of a german locale. Pass
	the locale name as an argument to gettext-4-prg.
	* gettext-4-prg.c (main): Use the locale name passed as argument.

2006-06-04  Bruno Haible  <bruno@clisp.org>

	* recode-sr-latin-2: Skip the test on MacOS X and BeOS.

2006-06-04  Bruno Haible  <bruno@clisp.org>

	* lang-php: Skip the test if php does not have the 'gettext' module
	built-in.

2006-06-04  Bruno Haible  <bruno@clisp.org>

	* lang-gawk: Require gawk-3.1.3 or newer.

2006-06-04  Bruno Haible  <bruno@clisp.org>

	Provide better SKIP explanations.
	* lang-pascal (UTF8_LOCALE_UNSUPPORTED): New variable.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.

2006-06-03  Bruno Haible  <bruno@clisp.org>

	* lang-php: Fix version recognition for PHP 4.

2006-06-03  Bruno Haible  <bruno@clisp.org>

	Explain why tests are skipped.
	* Makefile.am (TESTS_ENVIRONMENT): Also define JAVA_CHOICE, BUILDJAVA,
	CSHARPCHOICE, BUILDCSHARP.
	* testlocale.c (main): Don't print "Couldn't set locale.".
	* format-c-5-prg.c (main): Likewise.
	* format-c-5: Print a message explaining why the test is skipped.
	* gettext-3: Likewise.
	* gettext-4: Likewise.
	* gettext-5: Likewise.
	* gettext-6: Likewise.
	* gettext-7: Likewise.
	* lang-bash: Likewise.
	* lang-clisp: Likewise.
	* lang-csharp: Likewise.
	* lang-gawk: Likewise.
	* lang-guile: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-pascal: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-sh: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.
	* msgfilter-1: Likewise.
	* msgfilter-2: Likewise.
	* msgfilter-3: Likewise.
	* msgfilter-4: Likewise.
	* msgunfmt-csharp-1: Likewise.
	* msgunfmt-java-1: Likewise.
	* msgunfmt-tcl-1: Likewise.
	* recode-sr-latin-1: Likewise.
	* recode-sr-latin-2: Likewise.
	* xgettext-glade-1: Likewise.
	* xgettext-glade-2: Likewise.
	* xgettext-glade-3: Likewise.
	* lang-c: Print a message explaining why the test is skipped. Don't
	print "Couldn't set locale.".
	* lang-c++: Likewise.
	* lang-objc: Likewise.

2006-05-31  Bruno Haible  <bruno@clisp.org>

	* xgettext-ycp-3: New file, from Karl Eichwalder <ke@suse.de>.
	* Makefile.am (TESTS): Add it.

2006-05-16  Bruno Haible  <bruno@clisp.org>

	* gettext-4-prg.c: Set the LC_ALL environment variable, not just LANG.
	Needed on non-glibc Unix systems where !HAVE_LOCALE_NULL and
	_nl_locale_name_default() = "C".

2006-05-14  Bruno Haible  <bruno@clisp.org>

	* xgettext-php-2: New file.
	* Makefile.am (TESTS): Add it.

2006-04-02  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c: Include propername.h.
	(main): Call proper_name. Bump copyright year.
	* tstngettext.c: Include propername.h.
	(main): Call proper_name. Bump copyright year.

2006-03-28  Bruno Haible  <bruno@clisp.org>

	* recode-sr-latin-1: New file.
	* recode-sr-latin-2: New file.
	* msgfilter-sr-latin-1: New file.
	* Makefile.am (TESTS): Add them.
	(TESTS_ENVIRONMENT): Also set the RECODE variable.

2006-03-19  Bruno Haible  <bruno@clisp.org>

	* xgettext-9: New file.
	* Makefile.am (TESTS): Add it.

2006-03-16  Bruno Haible  <bruno@clisp.org>

	* msggrep-8: New file.
	* Makefile.am (TESTS): Add it.

2006-03-16  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-15: New file.
	* Makefile.am (TESTS): Add it.

2006-03-11  Bruno Haible  <bruno@clisp.org>

	* lang-c: Put the -I flags before ${CFLAGS} ${CPPFLAGS}.
	* lang-c++: Likewise.
	* lang-objc: Likewise.

2006-03-11  Bruno Haible  <bruno@clisp.org>

	* format-python-1: Hide xgettext warnings.

2006-03-11  Bruno Haible  <bruno@clisp.org>

	Make the gettext-4 test work on MacOS X.
	* gettext-4-prg.c: Include xsetenv.h instead of setenv.h.
	(main): Clear also the LC_ALL, LC_MESSAGES, LC_CTYPE, LANG environment
	variables. Set LANGUAGE explicitly. Disable first test on MacOS X and
	BeOS. Add a third test instead.

2006-03-11  Bruno Haible  <bruno@clisp.org>

	* msgmerge-compendium-5: New file.
	* msgmerge-v.comp.po: New file, from Clytie Siddall.
	* msgmerge-v.pot: New file, from KDE project.
	* msgmerge-v.out: New file.
	* Makefile.am (TESTS): Add msgmerge-compendium-5.
	(EXTRA_DIST): Add msgmerge-v.comp.po, msgmerge-v.pot, msgmerge-v.out.

2006-02-12  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-14: New file.
	* format-boost-1: New file.
	* format-boost-2: New file.
	* Makefile.am (TESTS): Add them.

2006-02-12  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-13: New file.
	* Makefile.am (TESTS): Add it.

2006-02-12  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-12: New file.
	* Makefile.am (TESTS): Add it.

2005-11-21  Bruno Haible  <bruno@clisp.org>

	* format-c-3: Put all non-option arguments after all option arguments,
	so that the test works 1. when POSIXLY_CORRECT is set, 2. on platforms
	whose getopt facility is POSIX compliant but not GNU libc compatible,
	such as Cygwin.
	* format-c-4: Likewise.
	* format-c-5: Likewise.
	* msgattrib-1: Likewise.
	* msgattrib-2: Likewise.
	* msgattrib-3: Likewise.
	* msgattrib-4: Likewise.
	* msgattrib-5: Likewise.
	* msgattrib-6: Likewise.
	* msgattrib-7: Likewise.
	* msgattrib-8: Likewise.
	* msgattrib-9: Likewise.
	* msgattrib-10: Likewise.
	* msgattrib-11: Likewise.
	* msgattrib-12: Likewise.
	* msgattrib-13: Likewise.
	* msgattrib-14: Likewise.
	* msgattrib-15: Likewise.
	* msgattrib-properties-1: Likewise.
	* msgcat-1: Likewise.
	* msgcat-11: Likewise.
	* msgcat-properties-1: Likewise.
	* msgcat-properties-2: Likewise.
	* msgcat-stringtable-1: Likewise.
	* msgcomm-17: Likewise.
	* msgcomm-18: Likewise.
	* msgcomm-19: Likewise.
	* msgcomm-21: Likewise.
	* msgcomm-23: Likewise.
	* msgconv-1: Likewise.
	* msgconv-2: Likewise.
	* msgconv-4: Likewise.
	* msgconv-5: Likewise.
	* msgen-1: Likewise.
	* msgen-2: Likewise.
	* msgen-3: Likewise.
	* msgfmt-1: Likewise.
	* msgfmt-2: Likewise.
	* msgfmt-3: Likewise.
	* msgfmt-4: Likewise.
	* msgfmt-5: Likewise.
	* msgfmt-10: Likewise.
	* msgfmt-12: Likewise.
	* msgfmt-14: Likewise.
	* msgfmt-15: Likewise.
	* msgfmt-properties-1: Likewise.
	* msgfmt-qt-1: Likewise.
	* msggrep-1: Likewise.
	* msggrep-2: Likewise.
	* msggrep-3: Likewise.
	* msggrep-4: Likewise.
	* msggrep-5: Likewise.
	* msggrep-6: Likewise.
	* msggrep-7: Likewise.
	* msgmerge-1: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-3: Likewise.
	* msgmerge-4: Likewise.
	* msgmerge-5: Likewise.
	* msgmerge-6: Likewise.
	* msgmerge-7: Likewise.
	* msgmerge-8: Likewise.
	* msgmerge-9: Likewise.
	* msgmerge-10: Likewise.
	* msgmerge-11: Likewise.
	* msgmerge-12: Likewise.
	* msgmerge-13: Likewise.
	* msgmerge-14: Likewise.
	* msgmerge-15: Likewise.
	* msgmerge-16: Likewise.
	* msgmerge-17: Likewise.
	* msgmerge-18: Likewise.
	* msgmerge-compendium-1: Likewise.
	* msgmerge-compendium-2: Likewise.
	* msgmerge-compendium-3: Likewise.
	* msgmerge-compendium-4: Likewise.
	* msgmerge-properties-1: Likewise.
	* msgunfmt-1: Likewise.
	* msgunfmt-csharp-1: Likewise.
	* msgunfmt-java-1: Likewise.
	* msgunfmt-properties-1: Likewise.
	* msguniq-1: Likewise.
	* msguniq-2: Likewise.
	* msguniq-3: Likewise.
	* msguniq-4: Likewise.
	* msguniq-5: Likewise.
	* plural-1: Likewise.
	* xgettext-awk-1: Likewise.
	* xgettext-c-3: Likewise.
	* xgettext-c-4: Likewise.
	* xgettext-c-5: Likewise.
	* xgettext-c-6: Likewise.
	* xgettext-c-9: Likewise.
	* xgettext-c-10: Likewise.
	* xgettext-c-11: Likewise.
	* xgettext-csharp-5: Likewise.
	* xgettext-elisp-1: Likewise.
	* xgettext-java-5: Likewise.
	* xgettext-librep-1: Likewise.
	* xgettext-lisp-1: Likewise.
	* xgettext-objc-1: Likewise.
	* xgettext-objc-2: Likewise.
	* xgettext-perl-1: Likewise.
	* xgettext-perl-5: Likewise.
	* xgettext-php-1: Likewise.
	* xgettext-po-1: Likewise.
	* xgettext-properties-1: Likewise.
	* xgettext-python-2: Likewise.
	* xgettext-python-3: Likewise.
	* xgettext-scheme-1: Likewise.
	* xgettext-sh-1: Likewise.
	* xgettext-sh-2: Likewise.
	* xgettext-sh-3: Likewise.
	* xgettext-sh-4: Likewise.
	* xgettext-smalltalk-1: Likewise.
	* xgettext-stringtable-1: Likewise.
	* xgettext-tcl-2: Likewise.
	* xgettext-ycp-2: Likewise.
	Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.

2005-11-21  Bruno Haible  <bruno@clisp.org>

	* gettext-4: Skip the test if there is no de_DE.ISO-8859-1 locale.

2005-10-18  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-11: New file.
	* Makefile.am (TESTS): Add it.

2005-10-05  Bruno Haible  <bruno@clisp.org>

	* msgfmt-15: New file.
	* Makefile.am (TESTS): Add it.

2005-10-04  Bruno Haible  <bruno@clisp.org>

	* msgfmt-10: Change expected error message, to match new line numbers.

2005-10-03  Bruno Haible  <bruno@clisp.org>

	Add support for contexts in xgettext.
	* xgettext-c-10: New file.
	* xgettext-sh-1: Pass additional --keyword option because xgettext's
	behaviour has changed when too few arguments are given.
	* Makefile.am (TESTS): Add xgettext-c-10.

2005-10-01  Bruno Haible  <bruno@clisp.org>

	Support for context dependent translations in PO files.
	* msgattrib-15: New file.
	* msgcat-13: New file.
	* msgcat-14: New file.
	* msgcomm-25: New file.
	* msgconv-5: New file.
	* msgen-3: New file.
	* msgexec-4: New file.
	* msgfilter-4: New file.
	* msgfmt-14: New file.
	* msgfmt-qt-2: New file.
	* msggrep-7: New file.
	* msginit-2: New file.
	* msgmerge-18: New file.
	* msguniq-5: New file.
	* qttest2_de.po: New file.
	* qttest2_de.qm: New file.
	* qttest2_de.ts: New file.
	* Makefile.am (TESTS): Add msgattrib-15, msgcat-13, msgcat-14,
	msgcomm-25, msgconv-5, msgen-3, msgexec-4, msgfmt-14, msgfmt-qt-2,
	msggrep-7, msginit-2, msgmerge-18, msguniq-5.
	(EXTRA_DIST): Add qttest2_de.po, qttest2_de.qm, qttest2_de.ts.

2005-10-01  Bruno Haible  <bruno@clisp.org>

	* msgcat-12: New file.
	* Makefie.am (TESTS): Add it.

2005-10-01  Bruno Haible  <bruno@clisp.org>

	* msgcat-stringtable-1: Update 2005-07-16 patch after the error message
	changed.

2005-10-01  Bruno Haible  <bruno@clisp.org>

	* msgattrib-10: Update for changed behaviour of msgattrib.

2005-09-25  Bruno Haible  <bruno@clisp.org>

	* xgettext-python-3: New file.
	* Makefile.am (TESTS): Add it.

2005-09-17  Bruno Haible  <bruno@clisp.org>

	* msgfmt-7: Update after slight change in error message.
	* msgfmt-8: Likewise.
	* msgfmt-9: Likewise.
	* msgmerge-2: Likewise.
	* msgmerge-9: Likewise.

2005-08-26  Bruno Haible  <bruno@clisp.org>

	* plural-2: Add test for Romanian plural formula.

2005-07-22  Bruno Haible  <bruno@clisp.org>

	* gettext-6-prg.c: Don't compile the test on non-glibc systems.
	* gettext-7-prg.c: Likewise.

2005-07-16  Bruno Haible  <bruno@clisp.org>

	* msgcat-stringtable-1: Filter out warning message from output.

2005-05-27  Bruno Haible  <bruno@clisp.org>

	* msgcat-stringtable-1: Expect \v or \a escape sequence in output.
	* xgettext-csharp-3: Likewise.
	* xgettext-java-2: Likewise.
	* xgettext-python-1: Likewise.

2005-05-05  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (LDADD_yes, LDADD_no): Add @LTLIBTHREAD@.

2005-05-01  Bruno Haible  <bruno@clisp.org>

	* xgettext-sh-4: New file.
	* Makefile.am (TESTS): Add it.

2005-03-20  Bruno Haible  <bruno@clisp.org>

	* gettext-6: New file.
	* gettext-6-prg.c: New file.
	* gettext-6-1.po: New file.
	* gettext-6-2.po: New file.
	* gettext-7: New file.
	* gettext-7-prg.c: New file.
	* gettext-7.po: New file.
	* Makefile.am (TESTS): Add gettext-6, gettext-7.
	(EXTRA_DIST): Add gettext-6-1.po, gettext-6-2.po, gettext-7.po.
	(noinst_PROGRAMS): Add gettext-6-prg, gettext-7-prg.
	(gettext_6_prg_SOURCES, gettext_6_prg_CFLAGS, gettext_6_prg_LDADD): New
	variables.
	(gettext_7_prg_SOURCES, gettext_7_prg_CFLAGS, gettext_7_prg_LDADD): New
	variables.

2005-03-19  Bruno Haible  <bruno@clisp.org>

	* gettext-3: New file.
	* gettext-3-prg.c: New file.
	* gettext-3-1.po: New file, taken from glibc.
	* gettext-3-2.po: New file, taken from glibc.
	* gettext-4: New file.
	* gettext-4-prg.c: New file.
	* gettext-4-po: New file, taken from glibc.
	* gettext-5: New file.
	* gettext-5-prg.c: New file.
	* gettext-5-po: New file, taken from glibc.
	* Makefile.am (TESTS): Add gettext-3, gettext-4, gettext-5.
	(EXTRA_DIST): Add gettext-3-1.po, gettext-3-2.po, gettext-4.po,
	gettext-5.po.
	(noinst_PROGRAMS): Add gettext-3-prg, gettext-4-prg, gettext-5-prg.
	(gettext_3_prg_SOURCES, gettext_3_prg_LDADD): New variables.
	(gettext_4_prg_SOURCES, gettext_4_prg_LDADD): New variables.
	(gettext_5_prg_SOURCES, gettext_5_prg_LDADD): New variables.

2006-06-21  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.6 released.

2006-06-20  Bruno Haible  <bruno@clisp.org>

	* format-gcc-internal-1: Update to GCC 4.1 internal format strings.
	* format-gcc-internal-2: Likewise.

2005-05-23  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.5 released.

2005-05-21  Bruno Haible  <bruno@clisp.org>

	* format-gcc-internal-1: Add tests for GCC-4.0 directives %<, %>, %',
	%m, %p, %J and size specifiers.
	* format-gcc-internal-2: Likewise.

2005-05-21  Bruno Haible  <bruno@clisp.org>

	* format-c-2: Test also the type incompatibility due to size.

2005-04-11  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.4 released.

2005-03-14  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.3 released.

2005-02-26  Bruno Haible  <bruno@clisp.org>

	* format-scheme-1: Remove tests for ~W, ~_, ~T, ~/, ~<. Update or add
	tests for ~Y, ~C, ~I, ~_, ~/, ~!, ~Q, ~T, ~K.
	* format-scheme-2: Remove tests for ~W, ~<. Add tests for
	~!, ~Q, ~Y, ~I, ~/, ~K.

2005-02-26  Bruno Haible  <bruno@clisp.org>

	* format-scheme-1: Remove test for #!.

2005-02-24  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.2 released.

2005-02-23  Bruno Haible  <bruno@clisp.org>

	* lang-java: On newer Darwin systems, set the System.out encoding to
	UTF-8, not ISO-8859-1.

2005-02-13  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (TESTS_ENVIRONMENT): Define also the environment variable
	LOCALE_FR_UTF8.
	* lang-bash: Don't test using the traditional french locale if it does
	exist. Try not only the traditional french locale, but also the UTF-8
	locale, if it exists.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-csharp: Likewise.
	* lang-gawk: Likewise.
	* lang-guile: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-objc: Likewise.
	* lang-perl-1: Likewise.
	* lang-perl-2: Likewise.
	* lang-php: Likewise.
	* lang-sh: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.
	* lang-pascal: Likewise, but disable the test of the UTF-8 locale.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.

2005-02-12  Bruno Haible  <bruno@clisp.org>

	* lang-clisp: Use only the first line of "clisp --version"'s output.
	Needed to avoid /bin/sh limitations on HP-UX 10.

2005-02-08  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (LDADD_yes): Remove INTL_MACOSX_LIBS.
	(LDADD): Add INTL_MACOSX_LIBS here.
	Needed for MacOS X build with --disable-shared --disable-nls.

2005-02-06  Bruno Haible  <bruno@clisp.org>

	* msgcat-11: New file.
	* Makefile.am (TESTS): Add it.

2005-01-29  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (LDADD_yes): Add INTL_MACOSX_LIBS.

2005-01-20  Bruno Haible  <bruno@clisp.org>

	* lang-guile: Make it work.

2005-01-16  Bruno Haible  <bruno@clisp.org>

	Support for Scheme.
	* format-scheme-1: New file.
	* format-scheme-2: New file.
	* xgettext-scheme-1: New file.
	* lang-guile: New file.
	* Makefile.am (TESTS): Add them.

2005-01-08  Bruno Haible  <bruno@clisp.org>

	* msggrep-4: Remove unportability notes.

2005-01-09  Bruno Haible  <bruno@clisp.org>

	* xgettext-8: New file.
	* Makefile.am (TESTS): Add it.

2005-01-05  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (main): Update year in --version output.
	* tstngettext.c (main): Likewise.

2004-10-01  Guido Flohr  <guido@imperia.net>

	* xgettext-perl-4: Add test case with '-s' function.
	Reported by Ryan Anderson <ryan@autoweb.net>.

2004-09-11  Bruno Haible  <bruno@clisp.org>

	* msginit-1: New file.
	* msgmerge-17: New file.
	* Makefile.am (TESTS): Add msginit-1, msgmerge-17.
	(TESTS_ENVIRONMENT): Also define MSGINIT.
	Reported by Jens A. Tkotz <jens@peino.de>.

2004-09-08  Bruno Haible  <bruno@clisp.org>

	Make lang-java work again on platforms with Java version < 1.4.
	* lang-java: Undo last patch for all platforms except Darwin.
	* Makefile.am (TESTS_ENVIRONMENT): Also define host_os.

2004-08-13  Bruno Haible  <bruno@clisp.org>

	Fix test failures on MacOS X.
	* lang-clisp: Skip the test if clisp was not built with gettext
	support.
	* lang-java: Enforce encoding ISO-8859-1 for System.out.

2004-07-10  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (expand_escape): Don't go into an endless loop when the
	first backslash is not followed by one of the expected characters.
	Reported by Arkadiusz Miśkiewicz <arekm@pld-linux.org>.

2004-07-10  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (expand_escape): Support also \a and \v.

2004-03-14  Bruno Haible  <bruno@clisp.org>

	* format-lisp-2: Add one more test for ~[...~].

2004-01-30  Bruno Haible  <bruno@clisp.org>

	* format-c-5-prg.c (main): Return with exit code 77 when the requested
	locale doesn't exist.
	* format-c-5: Skip the test when the fa_IR locale doesn't exist.
	Reported by Paul Jarc <prj@po.cwru.edu>.

2004-01-29  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14.1 released.

2004-01-28  Bruno Haible  <bruno@clisp.org>

	* gettext-0.14 released.

2004-01-11  Bruno Haible  <bruno@clisp.org>

	* format-c-5: New file.
	* format-c-5-prg.c: New file.
	* Makefile.am (TESTS): Add format-c-5.
	(noinst_PROGRAMS): Add fc5.
	(fc5_SOURCES, fc5_LDADD): New variables.

2004-01-09  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (main): Update year in --version output.
	* tstngettext.c (main): Likewise.

2004-01-10  Bruno Haible  <bruno@clisp.org>

	* lang-csharp: Work around mono-0.29 CurrentUICulture bug.

2003-12-29  Bruno Haible  <bruno@clisp.org>

	* testlocale.c: Include stdlib.h.

2003-12-29  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-9: Add a test with a multi-part string with newlines and
	comments between the parts.
	* xgettext-java-5: Likewise.
	* xgettext-csharp-5: Likewise.
	* xgettext-python-2: Likewise.
	* xgettext-objc-2: New file.
	* Makefile.am (TESTS): Add it.

2003-12-26  Bruno Haible  <bruno@clisp.org>

	Support for C#.
	* msgunfmt-csharp-1: New file.
	* lang-csharp: New file.
	* Makefile.am (TESTS): Add them.
	(TESTS_ENVIRONMENT): Also set the TESTCSHARP variable.

2003-12-26  Bruno Haible  <bruno@clisp.org>

	* format-csharp-1: New file.
	* format-csharp-2: New file.
	* xgettext-csharp-1: New file.
	* xgettext-csharp-2: New file.
	* xgettext-csharp-3: New file.
	* xgettext-csharp-4: New file.
	* xgettext-csharp-5: New file.
	* Makefile.am (TESTS): Add them.

2003-12-27  Bruno Haible  <bruno@clisp.org>

	* lang-c++: Skip the test if TESTLIBASPRINTF is not set to "yes".
	* Makefile.am (TESTS_ENVIRONMENT): Also set TESTLIBASPRINTF.
	Reported by Adrian Bunk <bunk@fs.tum.de>.

2003-12-12  Bruno Haible  <bruno@clisp.org>

	Assume automake-1.8.
	* Makefile.am (clean-local): Renamed from clean-am.

2003-12-17  Bruno Haible  <bruno@clisp.org>

	* gettext-0.13.1 released.

2003-12-14  Bruno Haible  <bruno@clisp.org>

	* xgettext-sh-3: New file.
	* Makefile.am (TESTS): Add it.

2003-12-05  Bruno Haible  <bruno@clisp.org>

	* testlocale.c: New file.
	* Makefile.am (noinst_PROGRAMS): Add testlocale.
	(testlocale_SOURCES): New variable.
	* lang-bash: Skip the test if the testlocale program determines that
	the locale is not usable. (For example on glibc systems with no
	installed fr_FR locale.)
	* lang-clisp: Likewise.
	* lang-gawk: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-php: Likewise.
	* lang-sh: Likewise.

2003-12-05  Bruno Haible  <bruno@clisp.org>

	* lang-c: Use ANSI C function declaration syntax.
	* lang-objc: Likewise.

2003-12-03  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (TESTS_ENVIRONMENT): Add the gettext-runtime/src source
	dir to PATH, so that gettext.sh is found.
	Reported by Peter Breitenlohner <peb@mppmu.mpg.de>.

2003-12-03  Bruno Haible  <bruno@clisp.org>

	* xgettext-glade-2: Protect here document against backslash
	interpretation.
	* xgettext-glade-3: Likewise.
	Reported by Paul Jarc <prj@po.cwru.edu>.

2003-12-02  Bruno Haible  <bruno@clisp.org>

	* xgettext-glade-3: Skip the test if expat is not available.
	Reported by Jouko Orava <joorava@pcu.helsinki.fi>.

2003-11-30  Bruno Haible  <bruno@clisp.org>

	* gettext-0.13 released.

2003-11-22  Bruno Haible  <bruno@clisp.org>

	* xgettext-c-9: New file.
	* xgettext-sh-2: New file.
	* xgettext-python-2: New file.
	* xgettext-lisp-1: New file.
	* xgettext-elisp-1: New file.
	* xgettext-librep-1: New file.
	* xgettext-smalltalk-1: New file.
	* xgettext-java-5: New file.
	* xgettext-awk-1: New file.
	* xgettext-ycp-2: New file.
	* xgettext-tcl-2: New file.
	* xgettext-perl-5: New file.
	* xgettext-php-1: New file.
	* Makefile.am (TESTS): Add them.

2003-11-15  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (AM_CPPFLAGS): Renamed from INCLUDES.

2003-11-15  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (EXTRA_DIST): Remove xg-test1.ok.po, add xg-c-1.ok.po.
	(xg-c-1.ok.po): Renamed from xg-test1.ok.po.

2003-11-15  Bruno Haible  <bruno@clisp.org>

	* xgettext-7: Fix typo in tmpfiles.

2003-11-07  Bruno Haible  <bruno@clisp.org>

	* xgettext-7: New file.
	* Makefile.am (TESTS): Add it.

2003-11-06  Bruno Haible  <bruno@clisp.org>

	* msgcat-stringtable-1: Fix expected test result.

2003-11-02  Bruno Haible  <bruno@clisp.org>

	* msgattrib-properties-1: Renamed from msgattrib-15.
	* msgcat-properties-1: Renamed from msgcat-11.
	* msgcat-properties-2: Renamed from msgcat-12.
	* msgcat-stringtable-1: Renamed from msgcat-13.
	* msgfmt-properties-1: Renamed from msgfmt-13.
	* msgfmt-qt-1: Renamed from msgfmt-15.
	* msgfmt-13: Renamed from msgfmt-14.
	* msgmerge-compendium-1: Renamed from msgmerge-6.
	* msgmerge-compendium-2: Renamed from msgmerge-7.
	* msgmerge-compendium-3: Renamed from msgmerge-8.
	* msgmerge-compendium-4: Renamed from msgmerge-12.
	* msgmerge-update-1: Renamed from msgmerge-14.
	* msgmerge-update-2: Renamed from msgmerge-15.
	* msgmerge-update-3: Renamed from msgmerge-16.
	* msgmerge-properties-1: Renamed from msgmerge-23.
	* msgmerge-properties-2: Renamed from msgmerge-24.
	* msgmerge-6: Renamed from msgmerge-9.
	* msgmerge-7: Renamed from msgmerge-10.
	* msgmerge-8: Renamed from msgmerge-11.
	* msgmerge-9: Renamed from msgmerge-13.
	* msgmerge-10: Renamed from msgmerge-17.
	* msgmerge-11: Renamed from msgmerge-18.
	* msgmerge-12: Renamed from msgmerge-19.
	* msgmerge-13: Renamed from msgmerge-20.
	* msgmerge-14: Renamed from msgmerge-21.
	* msgmerge-15: Renamed from msgmerge-22.
	* msgmerge-16: Renamed from msgmerge-25.
	* msgunfmt-java-1: Renamed from msgunfmt-2.
	* msgunfmt-tcl-1: Renamed from msgunfmt-3.
	* msgunfmt-properties-1: Renamed from msgunfmt-4.
	* xgettext-java-1: Renamed from xgettext-10.
	* xgettext-java-2: Renamed from xgettext-11.
	* xgettext-java-3: Renamed from xgettext-15.
	* xgettext-java-4: Renamed from xgettext-16.
	* xgettext-ycp-1: Renamed from xgettext-17.
	* xgettext-python-1: Renamed from xgettext-18.
	* xgettext-glade-1: Renamed from xgettext-19.
	* xgettext-glade-2: Renamed from xgettext-20.
	* xgettext-tcl-1: Renamed from xgettext-21.
	* xgettext-glade-3: Renamed from xgettext-25.
	* xgettext-perl-1: Renamed from xgettext-26.
	* xgettext-perl-2: Renamed from xgettext-27.
	* xgettext-perl-3: Renamed from xgettext-28.
	* xgettext-perl-4: Renamed from xgettext-29.
	* xgettext-sh-1: Renamed from xgettext-30.
	* xgettext-objc-1: Renamed from xgettext-32.
	* xgettext-stringtable-1: Renamed from xgettext-33.
	* xgettext-c-1: Renamed from xgettext-1.
	* xgettext-c-2: Renamed from xgettext-2.
	* xgettext-c-3: Renamed from xgettext-4.
	* xgettext-c-4: Renamed from xgettext-5.
	* xgettext-c-5: Renamed from xgettext-6.
	* xgettext-c-6: Renamed from xgettext-7.
	* xgettext-c-7: Renamed from xgettext-9.
	* xgettext-c-8: Renamed from xgettext-22.
	* xgettext-po-1: Renamed from xgettext-8.
	* xgettext-properties-1: Renamed from xgettext-24.
	* xgettext-1: Renamed from xgettext-3.
	* xgettext-2: Renamed from xgettext-12.
	* xgettext-3: Renamed from xgettext-13.
	* xgettext-4: Renamed from xgettext-14.
	* xgettext-5: Renamed from xgettext-23.
	* xgettext-6: Renamed from xgettext-31.
	* Makefile.am (TESTS): Update.

2003-10-23  Bruno Haible  <bruno@clisp.org>

	* msgcat-13: Change expected result.

2003-10-21  Bruno Haible  <bruno@clisp.org>

	* lang-bash: Hide the warning about deprecated syntax.

2003-10-21  Bruno Haible  <bruno@clisp.org>

	* msgmerge-25: New file.
	* Makefile.am (TESTS): Add it.

2003-10-19  Bruno Haible  <bruno@clisp.org>

	* format-qt-1: New file.
	* format-qt-2: New file.
	* msgfmt-15: New file.
	* qttest_pl.po: New file.
	* qttest_pl.qm: New file.
	* Makefile.am (TESTS): Add format-qt-1, format-qt-2, msgfmt-15.
	(EXTRA_DIST): Add qttest_pl.po, qttest_pl.qm.

2003-10-14  Bruno Haible  <bruno@clisp.org>

	* xgettext-22: Update expected result.
	* lang-c: Likewise.
	* lang-objc: Likewise.

2003-10-12  Bruno Haible  <bruno@clisp.org>

	* msgcat-13: New file.
	* xgettext-33: New file.
	* Makefile.am (TESTS): Add them.

2003-10-12  Bruno Haible  <bruno@clisp.org>

	* xgettext-32: New file.
	* Makefile.am (TESTS): Add xgettext-32.

2003-10-09  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c: Include xalloc.h instead of xmalloc.h.

2003-10-05  Bruno Haible  <bruno@clisp.org>

	* xgettext-4: Update expected test result.
	* xgettext-5: Likewise.
	* xgettext-6: Likewise.
	* xgettext-8: Likewise.
	* xgettext-24: Likewise.
	* xgettext-26: Pass --flag options to xgettext. Update expected test
	result.
	* lang-perl-1: Pass --flag options to xgettext.
	* lang-perl-2: Likewise.

	* xgettext-31: New file.
	* Makefile.am (TESTS): Add it.

2003-10-04  Bruno Haible  <bruno@clisp.org>

	* xgettext-11: Test details of the new Java backend, instead of the
	--keyword-substring option.

2003-10-07  Bruno Haible  <bruno@clisp.org>

	* lang-perl-1: Set LC_CTYPE to empty in while setting LANG.
	* lang-perl-2: Likewise.
	* lang-tcl: Likewise.

2003-10-06  Guido Flohr  <guido@imperia.net>
            Bruno Haible  <bruno@clisp.org>

	* xgettext-26: Add three tests for 'sub' handling.
	Reported by Crispin Flowerday <cflowerday@zeus.com>.

2003-09-16  Bruno Haible  <bruno@clisp.org>

	* tstgettext.c (add_newline, do_expand): Change type to bool. Make
	static.
	(main, expand_escape): Use bool.
	* tstngettext.c (main): Use bool.

2003-09-13  Bruno Haible  <bruno@clisp.org>

	* lang-sh: Source gettext.sh.
	(echo, eval_gettext, eval_ngettext): Remove definitions.
	* lang-bash: Source gettext.sh.
	(echo, eval_ngettext): Remove definitions.

2003-09-13  Bruno Haible  <bruno@clisp.org>

	* format-sh-1: Update to match stricter format string definition.
	* format-sh-2: Likewise.

2003-09-13  Bruno Haible  <bruno@clisp.org>

	Fix behaviour of "<program> --help > /dev/full".
	* tstgettext.c: Include closeout.h.
	(main): Register close_stdout for execution at program exit.
	* tstngettext.c: Include closeout.h.
	(main): Register close_stdout for execution at program exit.

2003-09-11  Bruno Haible  <bruno@clisp.org>

	* msgfmt-14: New file.
	* Makefile.am (TESTS): Add it.

2003-09-09  Guido Flohr  <guido@imperia.net>

	* xgettext-29: Add more tests.
	* lang-perl-1: Use gettext instead of _.

2003-09-08  Bruno Haible  <bruno@clisp.org>

	* lang-sh: Avoid test failure with Solaris /bin/sh.
	* lang-bash: Avoid test failure when bash is built without i18n
	support.

2003-09-03  Bruno Haible  <bruno@clisp.org>

	* xgettext-30: New file.
	* lang-sh: New file.
	* lang-bash: New file.
	* Makefile.am (TESTS): Add them.
	(TESTS_ENVIRONMENT): Add ../../gettext-runtime/src to the PATH.

2003-08-31  Bruno Haible  <bruno@clisp.org>

	* format-sh-1: New file.
	* format-sh-2: New file.
	* Makefile.am (TESTS): Add them.

2003-09-01  Bruno Haible  <bruno@clisp.org>

	* xgettext-26: Add explicit symbol import to 'use' command.
	* lang-perl-1: Likewise.
	Suggested by Guido Flohr.

2003-09-01  Bruno Haible  <bruno@clisp.org>

	* xgettext-29: New test, from Guido Flohr.
	* Makefile.am (TESTS): Add it.

2003-08-08  Bruno Haible  <bruno@clisp.org>

	* format-gcc-internal-1: New file.
	* format-gcc-internal-2: New file.
	* Makefile.am (TESTS): Add them.

2003-08-04  Bruno Haible  <bruno@clisp.org>

	* lang-perl-1: Small tweaks.
	* lang-perl-2: Likewise.
	* xgettext-26: Likewise.

2003-08-04  Guido Flohr  <guido@imperia.net>

	* format-perl-brace-1: Fix last patch,

2003-07-05  Bruno Haible  <bruno@clisp.org>

	* format-perl-brace-1: Renamed from format-perl-bracket-1. Use braces
	instead of brackets.
	* format-perl-brace-2: Renamed from format-perl-bracket-2. Use braces
	instead of brackets.
	* format-perl-mixed-1: Use braces instead of brackets.
	* format-perl-mixed-2: Likewise.
	* xgettext-26: Likewise.
	* lang-perl-2: Likewise.
	* Makefile.am (TESTS): Add format-perl-brace-[12], remove
	format-perl-bracket-[12].

2003-06-27  Bruno Haible  <bruno@clisp.org>

	* xgettext-27: Also test Unicode character names in here documents.
	* xgettext-28: Likewise.

2003-06-24  Bruno Haible  <bruno@clisp.org>

	* xgettext-27: New file.
	* xgettext-28: New file.
	* Makefile.am (TESTS): Add them.

2003-06-23  Bruno Haible  <bruno@clisp.org>

	* xgettext-26: Fix expected test result for backslashed dollar in
	single-quoted string.

2003-06-23  Bruno Haible  <bruno@clisp.org>

	* format-perl-bracket-2: Allow added arguments in msgstr.

2003-06-21  Bruno Haible  <bruno@clisp.org>

	* xgettext-26: Add more test cases, some from Guido Flohr.
	* format-perl-1: Complete rewrite, based on format-c-1.
	* format-perl-2: Complete rewrite, based on format-c-2.
	* format-perl-bracket-1: New file, based on format-python-1, partially
	from Guido Flohr.
	* format-perl-bracket-2: New file, based on format-python-2, partially
	from Guido Flohr.
	* format-perl-mixed-1: New file, from Guido Flohr.
	* format-perl-mixed-2: New file, from Guido Flohr.
	* lang-perl-1: Renamed from lang-perl.
	* lang-perl-2: New file, from Guido Flohr, based on lang-perl.
	* Makefile.am (TESTS): Add format-perl-bracket-1,
	format-perl-bracket-2, format-perl-mixed-1, format-perl-mixed-2,
	lang-perl-1, lang-perl-2. Remove lang-perl.

2003-06-19  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (TESTS_ENVIRONMENT): Also set LOCALE_FR.
	* lang-c: Use system dependent locale name $LOCALE_FR, not just fr_FR.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-gawk: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-objc: Likewise.
	* lang-pascal: Likewise.
	* lang-perl: Likewise.
	* lang-php: Likewise.
	* lang-python-1: Likewise.
	* lang-python-2: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.

2003-06-17  Paul Eggert  <eggert@twinsun.com>

	* msgcat-7: Put msgcat options before file name, so that the test
	doesn't fail if POSIXLY_CORRECT is set.

2003-06-15  Bruno Haible  <bruno@clisp.org>

	* xgettext-26: New file, derived from lang-perl.
	* Makefile.am (TESTS): Add it.
	* lang-perl: Turn into a real integration test.

2003-06-12  Bruno Haible  <bruno@clisp.org>

	* format-perl-1: Avoid conflict with format-awk-1.
	* format-perl-2: Avoid conflict with format-awk-2.
	* Makefile.am (TESTS): Mention perl between tcl and php.

2003-06-11  Guido Flohr  <guido@imperia.net>

	* format-perl-1: New file.
	* format-perl-2: New file.
	* lang-perl: New file.
	* Makefile.am (TESTS): Add them.

2003-05-27  Bruno Haible  <bruno@clisp.org>

	* plural-2: Add test for Slovak plural formula.

2003-05-24  Bruno Haible  <bruno@clisp.org>

	* xgettext-25: New file.
	* Makefile.am (TESTS): Add it.

2003-05-22  Bruno Haible  <bruno@clisp.org>

	* gettext-0.12.1 released.

2003-05-19  Bruno Haible  <bruno@clisp.org>

	* lang-smalltalk: Skip the test if smalltalk version 2.1 or 2.1.1
	is used; these versions lack the I18N package.

2003-05-17  Bruno Haible  <bruno@clisp.org>

	* gettext-0.12 released.

2003-04-27  Bruno Haible  <bruno@clisp.org>

	* plural-2: Really make the test fail if there is a mismatch. Add a
	test for the alternate formula for Russian from the glibc manual.

2003-04-26  Bruno Haible  <bruno@clisp.org>

	* msgattrib-15: New file.
	* msgcat-11: New file.
	* msgcat-12: New file.
	* msgcmp-3: New file.
	* msgcomm-24: New file.
	* msgconv-4: New file.
	* msgen-2: New file.
	* msgexec-3: New file.
	* msgfilter-3: New file.
	* msgfmt-13: New file.
	* msggrep-6: New file.
	* msgmerge-23: New file.
	* msgmerge-24: New file.
	* msgunfmt-4: New file.
	* msguniq-4: New file.
	* xgettext-24: New file.
	* msguniq-a.inp: New file.
	* Makefile.am (TESTS): Add the new tests.
	(EXTRA_DIST): Add msguniq-a.inp.

2003-04-14  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (CHECKER): New variable.
	(TESTS_ENVIRONMENT): Use it.

2003-04-12  Bruno Haible  <bruno@clisp.org>

	* Makefile.vms: Avoid rules with no lines. Don't use the force target.
	Suggested by Jouk Jansen <joukj@hrem.stm.tudelft.nl>.

2003-04-06  Bruno Haible  <bruno@clisp.org>

	* lang-c++: Update includes list to match the changed location of
	autosprintf.h.

2003-03-30  Bruno Haible  <bruno@clisp.org>

	* Makefile.vms: New file.
	* Makefile.am (EXTRA_DIST): Add Makefile.vms.

2003-03-17  Bruno Haible  <bruno@clisp.org>

	Native Woe32/MSVC support.
	* Makefile.msvc: New file.
	* Makefile.am (EXTRA_DIST): Add it.
	(INCLUDES): Look for libgnuintl.h in ../intl, not
	$(top_srcdir)/../gettext-runtime/intl.

2003-02-28  Bruno Haible  <bruno@clisp.org>

	Support for relocatable installation.
	* tstgettext.c: Include progname.h, relocatable.h.
	(program_name): Remove variable.
	(main): Use set_program_name. Relocate LOCALEDIR value. Update
	copyright year.
	* tstngettext.c: Include progname.h, relocatable.h.
	(program_name): Remove variable.
	(main): Use set_program_name. Relocate LOCALEDIR value. Update
	copyright year.
	* Makefile.am (tstgettext_CFLAGS, tstngettext_CFLAGS): New variables.

2003-02-28  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (localedir): New variable.

2003-02-28  Bruno Haible  <bruno@clisp.org>

	* xgettext-19: Add Report-Msgid-Bugs-To line to expected result.
	* xgettext-20: Likewise.

2003-02-23  Bruno Haible  <bruno@clisp.org>

	* format-lisp-1: Correct the syntax of a test string.

2003-02-22  Bruno Haible  <bruno@clisp.org>

	* lang-python-1: Renamed from lang-python. Make it work with Python
	2.3.
	* lang-python-2: New file.
	* Makefile.am (TESTS): Remove lang-python, add lang-python-[12].

2003-02-20  Bruno Haible  <bruno@clisp.org>

	* msgfilter-1: Remove SKIP: messages, now emitted by the Makefile.
	* msgfilter-2: Likewise.
	* msgunfmt-2: Likewise.
	* msgunfmt-3: Likewise.
	* xgettext-19: Likewise.
	* xgettext-20: Likewise.
	* lang-c: Likewise.
	* lang-c++: Likewise.
	* lang-clisp: Likewise.
	* lang-gawk: Likewise.
	* lang-java: Likewise.
	* lang-librep: Likewise.
	* lang-objc: Likewise.
	* lang-pascal: Likewise.
	* lang-php: Likewise.
	* lang-python: Likewise.
	* lang-smalltalk: Likewise.
	* lang-tcl: Likewise.

2003-02-20  Bruno Haible  <bruno@clisp.org>

	* lang-gawk: Skip the test if gawk was built with --disable-nls.
	Reported by Paul Jarc <prj@po.cwru.edu>.

2003-02-18  Bruno Haible  <bruno@clisp.org>

	* Makefile.am (clean-am): New rule. For Solaris cc.

2003-02-18  Bruno Haible  <bruno@clisp.org>

	* xgettext-13: Add Report-Msgid-Bugs-To line to expected result.
	* xgettext-14: Likewise.
	* xgettext-18: Likewise.
	* xgettext-21: Likewise.
	* xgettext-23: Likewise.

2003-02-12  Bruno Haible  <bruno@clisp.org>

	Big restructuring.
	* rpath*: Moved to autoconf-lib-link package.
	* Makefile.am (TESTS, EXTRA_DIST): Remove rpath*.
	(EXTRA_DIST): Add ChangeLog.0.
	(xg-test1.ok.po): Drop gettext.c from input files.
	(INCLUDES): Refer to intl in gettext-runtime directory.
	* lang-c++: Update for changed directory structure.
	* lang-java: Likewise.
	* xgettext-1: Drop gettext.c from input files.
	* xgettext-3: Update for changed domain name.


See ChangeLog.0 for earlier changes.
