2021-06-14  Michael Forney  <mforney@mforney.org>

	* configure: Regenerated.

2021-04-16  Jakub Jelinek  <jakub@redhat.com>

	PR jit/100096
	* configure.ac: Add --enable-host-shared support.
	* Makefile.in: Update copyright.  Add @PICFLAG@ to CFLAGS.
	* configure: Regenerated.

2020-04-16  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/92008
	* configure.ac: Remove HAVE_BISON3 AC_DEFINE.
	* Makefile.in (HEADERS): Add plural-config.h.
	(.y.c): Also create plural-config.h.
	(dcigettext.o loadmsgcat.o plural.o plural-exp.o): Also depend
	on plural-config.h.
	(plural-config.h): Depend on plural.c.
	* plural-exp.h: Include plural-config.h.  Use USE_BISON3 instead
	of HAVE_BISON3.
	* plural.y: Use USE_BISON3 instead of HAVE_BISON3.
	* configure: Regenerated.
	* plural.c: Regenerated.
	* config.h.in: Regenerated.
	* plural-config.h: Generated.

	PR bootstrap/92008
	* configure.ac: Add check for bison >= 3, AC_DEFINE HAVE_BISON3
	and AC_SUBST BISON3_YES and BISON3_NO.
	* Makefile.in (.y.c): Prefix $(YACC) invocation with @BISON3_NO@,
	add @BISON3_YES@ prefixed rule to adjust the *.y source using sed
	and adjust output afterwards.
	* plural-exp.h (PLURAL_PARSE): If HAVE_BISON3 is defined, use
	struct parse_args * type for arg instead of void *.
	* plural.y: Add magic /* BISON3 ... */ comments with bison >= 3
	directives.
	(YYLEX_PARAM, YYPARSE_PARAM): Don't define if HAVE_BISON3 is defined.
	(yylex, yyerror): Adjust prototypes and definitions if HAVE_BISON3
	is defined.
	* plural.c: Regenerated.
	* config.h.in: Regenerated.
	* configure: Regenerated.

2020-02-01  Andrew Burgess  <andrew.burgess@embecosm.com>

	* configure: Regenerate.

2018-11-07  Hafiz Abid Qadeer  <abidh@codesourcery.com>

        * configure: Regenerated.

2018-10-31  Joseph Myers  <joseph@codesourcery.com>

	PR bootstrap/82856
	Merge from binutils-gdb:
	2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>

	* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS, remove AC_PREREQ.
	* configure: Re-generate.
	* config.h.in: Re-generate.
	* aclocal.m4: Re-generate.

2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>

	* libgnuintl.h (_INTL_MAY_RETURN_STRING_ARG, gettext, dgettext,
	dcgettext, ngettext, dngettext, dcngettext): Backport changes
	from upstream gettext.

2017-11-07  Alan Modra  <amodra@gmail.com>

	* configure.ac: Invoke AM_GNU_GETTEXT with need_ngettext.
	* configure: Regenerate.

2016-11-15  Matthias Klose  <doko@ubuntu.com>

	* configure: Regenerate.

2015-08-06  Yaakov Selkowitz  <yselkowi@redhat.com>

	* configure: Reflects renaming of configure.in to configure.ac

2015-07-24  Micahel Darling  <darlingm@gmail.com>

	PR other/66259
	* configure: Reflects renaming of configure.in to configure.ac

2015-05-13  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>

	* aclocal.m4: Regenerated with automake-1.11.6.

2010-06-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	PR bootstrap/44621
	* configure: Regenerate.

2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* aclocal.m4: Regenerate.

2009-10-15  Jim Blandy  <jimb@red-bean.com>

	* libgnuintl.h (_INTL_MAY_RETURN_STRING_ARG, gettext, dgettext)
	(dcgettext, ngettext, dngettext, dcngettext): Backport changes
	from current gettext to provide GCC format_arg attributes.

2009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* configure.ac (AC_PREREQ): Bump to 2.64.

2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* configure: Regenerate.

2008-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* Makefile.in (datarootdir): New variable.

2008-04-18  Paolo Bonzini  <bonzini@gnu.org>

	PR bootstrap/35457
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* aclocal.m4: Regenerate.
	* configure: Likewise.

2006-09-27  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.in (distclean): Delete config files.

2006-09-13  Eric Botcazou  <ebotcazou@libertysurf.fr>

	PR other/23541
	PR other/26507
	Backport from gettext repository:

	2003-09-04  Bruno Haible  <bruno@clisp.org>
	* dgettext.c: Include <locale.h> after gettextP.h, not before. This
	ensures that libintl_dcgettext is correctly declared on Solaris.
	(Needed because Solaris <locale.h> includes libintl.h.)
	* dngettext.c: Likewise, for the libintl_dcngettext declaration.

2006-06-07  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (install-info, install-dvi, install-ps, install-pdf):
	New dummy targets.

2005-05-23  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.in: Add info dvi ps pdf html install-html to .PHONY
	Add install-html target.

2005-05-13  Nick Clifton  <nickc@redhat.com>

	* Update the address and phone number of the FSF organization in
	the GPL notices in the following files:
	Makefile.in, bindtextdom.c, dcgettext.c, dcigettext.c,
	dcngettext.c, dgettext.c, dngettext.c, eval-plural.h,
	explodename.c, finddomain.c, gettext.c, gettextP.h, gmo.h,
	hash-string.h, intl-compat.c, l10nflist.c, libgnuintl.h,
	loadinfo.h, loadmsgcat.c, localcharset.c, localcharset.h,
	locale.alias, localealias.c, localename.c, log.c, ngettext.c,
	osdep.c, plural-exp.c, plural-exp.h, plural.c, plural.y,
	relocatable.c, relocatable.h, textdomain.c

2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>

	* aclocal.m4: Regenerate.

2004-09-23  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.in (config.h.in): Correct dependencies.
	(stamp-h1): Likewise.
	(config.intl): Likewise.

2004-09-22  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac (AC_CONFIG_MACRO_DIR): New.
	(ACLOCAL, AUTOCONF, AUTOHEADER, MAINT): Substitute.
	* Makefile.in: Update with maintainer mode rules.
	* README: Update aclocal regeneration instructions.
	* aclocal.m4, configure: Regenerate.

2004-09-22  Kelley Cook  <kcook@gcc.gnu.org>

	* .cvsignore: Ignore autom4te.cache

2004-04-25  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac: Point config.intl to the parent directory of
	${top_builddir}.
	* configure: Regenerate.

2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.
	* config.h.in: Regenerate.

2004-02-29  Nathanael Nerode  <neroden@gcc.gnu.org>

	* configure.in: Convert to autoconf 2.57, gratuitous stylistic
	cleanup, rename to configure.ac.
	* configure.ac: Renamed from configure.in.
	* config.h.in: Rebuilt with autoheader 2.57.
	* configure: Rebuilt with autoconf 2.57
	* README: Update to reflect rename of configure.in to configure.ac.

2003-07-07  Zack Weinberg  <zack@codesourcery.com>

	* README: Update.
	* Makefile.in (INSTALL, INSTALL_DATA, MKINSTALLDIRS,
	mkinstalldirs, gettextsrcdir, l): Delete.
	(COMPILE): Add $(DEFS-$@), remove $(XCFLAGS).
	(HEADERS): libgnuintl.h not libgnuintl.h.in.  Remove os2compat.h.
	(SOURCES): Remove os2compat.c.
	(DEFS-dcigettext.o, DEFS-localealias.o, DEFS-localcharset.o,
	DEFS-relocatable.o): New.
	(all-yes): Add config.intl.
	(libintl.h): Use cp, not cat.
	(INCLUDES): Remove -I..
	(TAGS, CTAGS, ID): Word wrap.
	(mostlyclean, distclean): Remove junk.
	(config.intl): New rule.
	* aclocal.m4: sinclude ../config/progtest.m4 instead of
	including it inline.
	* config.intl.in: New file.
	* configure.in: Take out unnecessary AC_CONFIG_AUX_DIR.
	Take out AC_DEFINEs for LOCALEDIR, LOCALE_ALIAS_PATH,
	LIBDIR, INSTALLDIR.  Set LIBINTL_DEP and INCINTL and AC_SUBST
	them.  Add config.intl to AC_OUTPUT.
	* os2compat.c, os2compat.h: Delete, unused.

2003-07-04  Zack Weinberg  <zack@codesourcery.com>

	* Makefile.in: Remove unnecessary capabilities for
	installation, build of shared libraries, generation of
	distribution tarballs, etc.  Fix all the places that rely on
	the parent directory.  Don't generate libgnuintl.h from
	anything; do generate $(objdir)/libintl.h from libgnuintl.h if
	necessary.  Adjust DEFS for use of config.h.
	* libgnuintl.h.in: Rename libgnuintl.h.
	* README: New file.
	* config.charset, ref-add.sin, ref-del.sin: Delete (unused).
	* COPYING.LIB-2.0, COPYING.LIB-2.1: Delete (redundant).
	* aclocal.m4: New; generated per instructions in gettext manual.
	* configure.in: New; written from scratch for this configuration.
	* configure, config.h.in: Generated.

2003-05-22  GNU  <bug-gnu-gettext@gnu.org>

	* Version 0.12.1 released.

