Commit Graph

14 Commits

Author SHA1 Message Date
Nick Alcock
53d4244ec0 intl: always picify
libintl is included in several shared libraries (at least
libinproctrace.so and libctf.so): unconditionally picify with code
borrowed from libiberty configure.  (It's not performance-critical, so
don't bother making separate PIC and non-PIC libraries like libiberty
does.)

intl/ChangeLog
2021-02-02  Nick Alcock  <nick.alcock@oracle.com>

	* aclocal.m4: include picflag.m4.
	* configure.ac (PICFLAG): Add and substitute.
	* Makefile.in (PICFLAG): New.
	(COMPILE): Use it.
	* configure: Regenerate.
2021-02-10 15:26:57 +00:00
Jakub Jelinek
adda0248ed intl: Unbreak intl build with bison 3 when no regeneration is needed [PR92008]
As Iain reported, my change broke the case when one has bison >= 3,
but make decides there is no reason to regenerate plural.c, unfortunately
that seems to be a scenario I haven't tested.  The problem is that
the pregenerated plural.c has been generated with bison 1.35, but when
config.h says HAVE_BISON3, the code assumes it is the bison3 variant.
What used to work fine is when one has bison >= 3 and plural.c has been
regenerated (e.g. do touch intl/plural.y and it will work), or when
one doesn't have any bison (then nothing is regenerated, but HAVE_BISON3
isn't defined either), or when one has bison < 3 and doesn't need to
regenerate, or when one has bison < 3 and it is regenerated.

The following patch fixes this, by killing the HAVE_BISON3 macro from
config.h, and instead remembering the fact whether plural.c has been created
with bison < 3 or bison >= 3 in a separate new plural-config.h header.
The way this works:
- user doesn't have bison
- user has bison >= 3, but intl/{plural-config.h,plural.c} aren't older than intl/plural.y
- user has bison < 3, but intl/{plural-config.h,plural.c} aren't older than intl/plural.y
	pregenerated !USE_BISON3 plural.c and plural-config.h from source
	dir is used, nothing in the objdir
- user has bison >= 3 and intl/plural.y is newer
	Makefile generates plural.c and USE_BISON3 plural-config.h in the
	objdir, which is then used in preference to srcdir copies
- user has bison < 3 and intl/plural.y is newer
	Makefile generates plural.c and !USE_BISON3 plural-config.h in the
	objdir, which is then used in preference to srcdir copies
I have tested all these cases and make all-yes worked in all the cases.
If one uses the unsupported ./configure where srcdir == objdir, I guess
(though haven't tested) that it should still work, just it would be nice
if such people didn't try to check in the plural{.c,-config.h} they have
regenerated.
What doesn't work, but didn't work before either (just tested gcc-9 branch
too) is when one doesn't have bison and plural.y is newer than plural.c.
Don't do that ;)

intl/ChangeLog
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.
2021-02-10 15:26:57 +00:00
Jakub Jelinek
830c5a1ffb intl: Allow building both with old bison and bison >= 3 [PR92008]
bison 3 apparently made a backwards incompatible change, dropped
YYLEX_PARAM/YYPARSE_PARAM support and instead needs %param or %lex-param
and %parse-param.  Furthermore, there is no easy way to conditionalize
on bison version in the *.y files.
While e.g. glibc bumped bison requirement and just has the bison 3
compatible version, Richi said there are still systems with older bison
where we want to build gcc.

So, this patch instead determines during configure bison version, and
depending on that when building plural.c (if building it at all) tweaks
what is passed over to bison if needed.

Tested with both bison 3 and bison 1.35, in each case with reconfiguring
intl and building with make all-yes (as in my setup intl isn't normally
used).

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

	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.
2021-02-10 15:26:56 +00:00
Ralf Wildenhues
1983cb9a62 intl/
* Makefile.in (aclocal_deps): New variable.
	($(srcdir)/aclocal.m4): Use it, for portable makefile syntax.

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

etc/
	* Makefile.in (AUTOCONF, configure_deps): New variables.
	($(srcdir)/configure, config.status): New rules.
	(Makefile): Depend on config.status.
	* configure.in: Accept --enable-maintainer-mode, set and
	substitute MAINT accordingly.

gdb/
	* Makefile.in (ACLOCAL, ACLOCAL_AMFLAGS, aclocal_m4_deps)
	(AUTOCONF, configure_deps, AUTOHEADER): New variables.
	($(srcdir)/aclocal.m4, $(srcdir)/configure, $(srcdir)/config.in)
	(am--refresh): New rules.
	(stamp-h, config.status): List config.in and configure including
	$(srcdir)/ prefix.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
2009-07-30 22:44:50 +00:00
DJ Delorie
8d9223e50f merge from gcc 2008-06-16 18:15:49 +00:00
DJ Delorie
7c481d1e7d merge from gcc 2006-09-27 15:03:38 +00:00
Daniel Jacobowitz
55f96808b5 * Makefile.in (install-info, install-dvi, install-ps, install-pdf):
New dummy targets.
2006-06-07 15:43:36 +00:00
DJ Delorie
a3ce7aa2ee merge from gcc 2006-05-24 02:02:46 +00:00
Steve Ellcey
bf070c84b1 2006-05-22 Steve Ellcey <sje@cup.hp.com>
* MAINTAINERS: Change intl updating instructions.
	* config.rpath: Copy from GCC tree.
	* intl: Replace contents of intl directory with intl from GCC tree.
2006-05-22 15:30:13 +00:00
Carlos O'Donell
108a6f8eb4 2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.tpl: Add install-html target.
	* Makefile.def: Add install-html target.
	* Makefile.in: Regenerate.
	* configure.in: Add --with-datarootdir, --with-docdir,
	and --with-htmldir options.
	* configure: Regenerate.

bfd/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* po/Make-in: Add install-html target.
	* Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir
	htmldir. Add install-html and install-html-recursive targets.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST for datarootdir, docdir and htmldir.
	* configure: Regenerate.

bfd/doc/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.am: Add install-html and install-html-am targets.
	Define datarootdir, docdir and htmldir.
	* Makefile.in: Regenerate.

binutils/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* po/Make-in: Add install-html target.
	* Makefile.am: Add install-html and install-html-recursive targets.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST datarootdir, docdir and htmldir.
	* configure: Regenerate.
	* doc/Makefile.am: Add install-html and install-html-am targets.
	* doc/Makefile.in: Regenerate.

etc/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.in: Add install-html target. Add htmldir,
	docdir and datarootdir.
	* configure.texi: Document install-html target.
	* configure.in: AC_SUBST datarootdir, docdir, htmldir.
	* configure: Regenerate.

gas/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* po/Make-in: Add install-html target.
	* Makefile.am: Add install-html and install-html-recursive targets.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST datarootdir, docdir, htmldir.
	* configure: Regenerate.
	* doc/Makefile.am: Add install-html and install-html-am targets.
	* doc/Makefile.in: Regenerate.

gprof/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* po/Make-in: Add install-html target.
	* Makefile.am: Add install-html, install-html-am and
	install-html-recursive targets.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST datarootdir, docdir, htmldir.
	* configure: Regenerate.

intl/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* intl/Makefile.in: Add html info and dvi and install-html to .PHONY
	Add install-html target.

ld/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.am: Add install-html, install-html-am, and
	install-html-recursive targets.
	* Makefile.in: Regenerate.
	* configure.in: AC_SUBST datarootdir, docdir, htmldir.
	* configure: Regenerate.
	* po/Make-in: Add install-html target.

opcodes/

2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.am: Add install-html target.
	* Makefile.in: Regenerate.
2006-04-06 21:49:35 +00:00
Carlos O'Donell
f7d9e5c379 bfd/doc/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * Makefile.am: Add html target.
       * Makefile.in: Regenerate.

bfd/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * po/Make-in: Add html target.

binutils/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * po/Make-in: Add html target.

gas/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * doc/Makefile.am: Add html target.
       * doc/Makefile.in: Regenerate.
       * po/Make-in: Add html target.

gprof/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * po/Make-in: Add html target.

ld/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * Makefile.am: Add html target.
       * Makefile.in: Regenerate.
       * po/Make-in: Add html target.

opcodes/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * po/Make-in: Add html target.

etc/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * Makefile.in: TEXI2HTML uses makeinfo. Define
       HTMLFILES. Add html targets.
       * configure.texi: Use ifnottex. Add alternative
       image format specifier as jpg.
       * standards.texi: Use ifnottex.

intl/
2006-10-14  Carlos O'Donell  <carlos@codesourcery.com>

       * intl/Makefile.in: Add html target.
2006-02-27 16:26:26 +00:00
Nick Clifton
c09b15a991 Update the address and telephone number of the FSF organization 2005-05-13 08:04:31 +00:00
Nick Clifton
3211808135 Change LOCALEDIR to $(datadir)/share. 2004-11-30 17:20:48 +00:00
Richard Henderson
252b5132c7 19990502 sourceware import 1999-05-03 07:29:11 +00:00