From: Paul Eggert Date: Sun, 9 Jul 2006 03:44:51 +0000 (+0000) Subject: Adjust to Autoconf 2.60 and today's gnulib. X-Git-Tag: v2.3b~343 X-Git-Url: https://git.saurik.com/bison.git/commitdiff_plain/cb48f1919ce8ccbd8587556c165a8b8b0d78d80f Adjust to Autoconf 2.60 and today's gnulib. * bootstrap (gnulib_modules): Add stdint. Remove special case for m4/onceonly_2_57.m4, since gnulib-tool no longer copies it. (intl_files_to_remove): Remove m4/longlong.m4 and m4/wchar_t.m4, since stdint needs the former and wcwidth (which is now required by mbswidth) needs the latter. Append 'datarootdir = @datarootdir@' to po/Makefile.in.in, to work around a compatibility glitch between gettext 0.14.6 and Autoconf 2.60. * configure.ac (AC_PREREQ): Require Autoconf 2.60. Do not check for uintptr_t, since new stdint module does the right thing. * lib/.cvsignore: Remove alloca.c, alloca.h, alloca_.h. Add stdint.h, stdint_.h, wcwidth.h. * m4/.cvsignore: Remove alloca.m4, onceonly.m4. Add absolute-header.m4, double-slash-root.m4, longlong.m4, stdint.m4, wchar_t.m4, wcwidth.m4. * src/files.c: Include and in the usual order for ../lib/*.h files. (file_name_split): Use last_component, not base_name, to adjust to gnulib changes. * src/parse-gram.h: Include in the usual order for ../lib/*.h files. (YYTYPE_INT16, YYTYPE_INT8, YYTYPE_UINT16, YYTYPE_UINT8): Define unconditionally, since we now assume the stdint module. * src/scan-skel.l: Include . (BASE_QPUTS): Use last_component, not base_name. * src/system.h: Include in the usual order for ../lib/*.h files. Include unconditionally, since we now use the stdint module. (uintptr_t): Declare if UINTPTR_MAX is not defined, not HAVE_UINTPTR_T, since we now use the stdint module. (base_name): Remove decl, since files now include to get the decl. --- diff --git a/ChangeLog b/ChangeLog index 81f0478d..6ad089a4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,41 @@ +2006-07-08 Paul Eggert + + Adjust to Autoconf 2.60 and today's gnulib. + * bootstrap (gnulib_modules): Add stdint. + Remove special case for m4/onceonly_2_57.m4, since gnulib-tool + no longer copies it. + (intl_files_to_remove): Remove m4/longlong.m4 and m4/wchar_t.m4, + since stdint needs the former and wcwidth (which is now required + by mbswidth) needs the latter. + Append 'datarootdir = @datarootdir@' to po/Makefile.in.in, to + work around a compatibility glitch between gettext 0.14.6 and + Autoconf 2.60. + * configure.ac (AC_PREREQ): Require Autoconf 2.60. + Do not check for uintptr_t, since new stdint module does the right + thing. + * lib/.cvsignore: Remove alloca.c, alloca.h, alloca_.h. + Add stdint.h, stdint_.h, wcwidth.h. + * m4/.cvsignore: Remove alloca.m4, onceonly.m4. + Add absolute-header.m4, double-slash-root.m4, longlong.m4, + stdint.m4, wchar_t.m4, wcwidth.m4. + * src/files.c: Include and in the + usual order for ../lib/*.h files. + (file_name_split): Use last_component, not base_name, to adjust + to gnulib changes. + * src/parse-gram.h: Include in the usual order + for ../lib/*.h files. + (YYTYPE_INT16, YYTYPE_INT8, YYTYPE_UINT16, YYTYPE_UINT8): + Define unconditionally, since we now assume the stdint module. + * src/scan-skel.l: Include . + (BASE_QPUTS): Use last_component, not base_name. + * src/system.h: Include in the usual order + for ../lib/*.h files. Include unconditionally, + since we now use the stdint module. + (uintptr_t): Declare if UINTPTR_MAX is not defined, not + HAVE_UINTPTR_T, since we now use the stdint module. + (base_name): Remove decl, since files now include + to get the decl. + 2006-07-08 Akim Demaille * data/c.m4 (b4_location_initial_column, b4_location_initial_line): diff --git a/bootstrap b/bootstrap index 1ed1cd13..73cdef5d 100755 --- a/bootstrap +++ b/bootstrap @@ -109,6 +109,7 @@ quote quotearg stdbool stdio-safer +stdint stpcpy strerror strtoul @@ -145,7 +146,6 @@ for gnulib_file in $gnulib_files; do dest=$gnulib_file case $gnulib_file in - m4/onceonly_2_57.m4) dest=m4/onceonly.m4;; # These will be overwritten by autopoint, which still uses # old jm_.* macro names, so we have to keep both copies. # m4/gettext.m4 isn't mentioned here, since it's patched below. @@ -261,7 +261,6 @@ intl_files_to_remove=' m4/lib-ld.m4 m4/lib-prefix.m4 m4/longdouble.m4 - m4/longlong.m4 m4/po.m4 m4/printf-posix.m4 m4/signed.m4 @@ -269,7 +268,6 @@ intl_files_to_remove=' m4/stdint_h.m4 m4/uintmax_t.m4 m4/ulonglong.m4 - m4/wchar_t.m4 m4/wint_t.m4 m4/xsize.m4 ' @@ -296,6 +294,12 @@ sed ' s/^\(XGETTEXT_OPTIONS\) *=.*/\1 = --keyword=YY_/ ' runtime-po/Makevars +# Append 'datarootdir = $(prefix)/share' to po/Makefile.in.in to work +# around an incompatibility between Autoconf 2.60 and gettext 0.14.6. +# This hack can be removed once we assume gettext 0.15 or later. +grep datarootdir po/Makefile.in.in >/dev/null || + echo 'datarootdir = @datarootdir@' >>po/Makefile.in.in + # Copy identical files from po to runtime-po. (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po) diff --git a/configure.ac b/configure.ac index 808243f7..eafa6c37 100644 --- a/configure.ac +++ b/configure.ac @@ -18,11 +18,8 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301 USA -# This file uses AC_CONFIG_MACRO_DIR, so we need Autoconf 2.58 or better. -# But Autoconf 2.58 has a bug in the way that it generates tests: it -# puts the wrong absolute path names in the tests. So we need at -# least Autoconf 2.59. -AC_PREREQ(2.59) +# We use macros like AC_CHECK_HEADERS_ONCE, so we need Autoconf 2.60 or better. +AC_PREREQ(2.60) AC_INIT([GNU Bison], [2.3+], [bug-bison@gnu.org]) AC_CONFIG_AUX_DIR([build-aux]) @@ -98,9 +95,6 @@ AM_STDBOOL_H # Checks for compiler characteristics. AC_C_INLINE -# Checks for types. -AC_CHECK_TYPES([uintptr_t]) - # Checks for library functions. AC_CHECK_FUNCS_ONCE([setlocale]) AM_WITH_DMALLOC diff --git a/lib/.cvsignore b/lib/.cvsignore index 590bd43d..da928127 100644 --- a/lib/.cvsignore +++ b/lib/.cvsignore @@ -1,9 +1,6 @@ .deps Makefile Makefile.in -alloca.c -alloca.h -alloca_.h argmatch.c argmatch.h basename.c @@ -40,6 +37,8 @@ quotearg.c quotearg.h stdbool.h stdbool_.h +stdint.h +stdint_.h stdio--.h stdio-safer.h stpcpy.c @@ -60,6 +59,7 @@ unistd--.h unistd-safer.h unlocked-io.h verify.h +wcwidth.h xalloc-die.c xalloc.h xmalloc.c diff --git a/m4/.cvsignore b/m4/.cvsignore index 1f6f6ea8..301fd04e 100644 --- a/m4/.cvsignore +++ b/m4/.cvsignore @@ -1,7 +1,8 @@ *_gl.m4 -alloca.m4 +absolute-header.m4 dirname.m4 dos.m4 +double-slash-root.m4 error.m4 exitfail.m4 extensions.m4 @@ -11,16 +12,17 @@ hard-locale.m4 hash.m4 iconv.m4 lib-link.m4 +longlong.m4 mbrtowc.m4 mbstate_t.m4 mbswidth.m4 nls.m4 obstack.m4 -onceonly.m4 progtest.m4 quote.m4 quotearg.m4 stdbool.m4 +stdint.m4 stdio-safer.m4 stpcpy.m4 strdup.m4 @@ -34,5 +36,7 @@ strverscmp.m4 unistd-safer.m4 unistd_h.m4 unlocked-io.m4 +wchar_t.m4 +wcwidth.m4 xalloc.m4 xstrndup.m4 diff --git a/src/files.c b/src/files.c index f3bb0f9c..d324966b 100644 --- a/src/files.c +++ b/src/files.c @@ -1,7 +1,7 @@ /* Open and close files for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004, 2005 - Free Software Foundation, Inc. + Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004, + 2005, 2006 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -24,16 +24,16 @@ #include "system.h" #include +#include #include #include +#include #include #include "complain.h" -#include "dirname.h" #include "files.h" #include "getargs.h" #include "gram.h" -#include "stdio-safer.h" struct obstack pre_prologue_obstack; struct obstack post_prologue_obstack; @@ -208,7 +208,7 @@ static void file_name_split (const char *file_name, const char **base, const char **tab, const char **ext) { - *base = base_name (file_name); + *base = last_component (file_name); /* Look for the extension, i.e., look for the last dot. */ *ext = strrchr (*base, '.'); diff --git a/src/parse-gram.y b/src/parse-gram.y index faf573ee..16ae62b8 100644 --- a/src/parse-gram.y +++ b/src/parse-gram.y @@ -23,6 +23,8 @@ #include #include "system.h" +#include + #include "complain.h" #include "conflicts.h" #include "files.h" @@ -34,7 +36,6 @@ #include "symlist.h" #include "scan-gram.h" #include "scan-code.h" -#include "strverscmp.h" #define YYLLOC_DEFAULT(Current, Rhs, N) (Current) = lloc_default (Rhs, N) static YYLTYPE lloc_default (YYLTYPE const *, int); @@ -61,18 +62,10 @@ static symbol *current_lhs; static location current_lhs_location; static int current_prec = 0; -#ifdef UINT_FAST8_MAX -# define YYTYPE_UINT8 uint_fast8_t -#endif -#ifdef INT_FAST8_MAX -# define YYTYPE_INT8 int_fast8_t -#endif -#ifdef UINT_FAST16_MAX -# define YYTYPE_UINT16 uint_fast16_t -#endif -#ifdef INT_FAST16_MAX -# define YYTYPE_INT16 int_fast16_t -#endif +#define YYTYPE_INT16 int_fast16_t +#define YYTYPE_INT8 int_fast8_t +#define YYTYPE_UINT16 uint_fast16_t +#define YYTYPE_UINT8 uint_fast8_t %} %debug diff --git a/src/scan-skel.l b/src/scan-skel.l index c84eea13..d16c6ba9 100644 --- a/src/scan-skel.l +++ b/src/scan-skel.l @@ -31,6 +31,7 @@ #include "system.h" +#include #include #include @@ -57,7 +58,7 @@ int skel_lex_destroy (void); fputs (quotearg_style (c_quoting_style, String), yyout) #define BASE_QPUTS(File) \ - QPUTS (base_name (File)) + QPUTS (last_component (File)) %} %% diff --git a/src/system.h b/src/system.h index 2468deed..241a40d7 100644 --- a/src/system.h +++ b/src/system.h @@ -41,8 +41,6 @@ #include #include -#include "unlocked-io.h" - #if HAVE_SYS_TYPES_H # include #endif @@ -54,28 +52,24 @@ #if HAVE_INTTYPES_H # include #endif -#if HAVE_STDINT_H -# include -#endif -#if ! HAVE_UINTPTR_T +#include + +#ifndef UINTPTR_MAX /* This isn't perfect, but it's good enough for Bison, which needs only to hash pointers. */ typedef size_t uintptr_t; #endif -#include -#include - -/*---------------------. -| Missing prototypes. | -`---------------------*/ +/*---------. +| Gnulib. | +`---------*/ #include - -/* From lib/basename.c. */ -char *base_name (char const *name); +#include +#include +#include /*-----------------.