]> git.saurik.com Git - bison.git/blob - configure.ac
* data/lalr1.cc: Adjust the indentation of the labels.
[bison.git] / configure.ac
1 # Configure template for GNU Bison. -*-Autoconf-*-
2 #
3 # Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 # 02111-1307 USA
19
20 # This file uses AC_CONFIG_MACRO_DIR, so we need Autoconf 2.58 or better.
21 # But Autoconf 2.58 has a bug in the way that it generates tests: it
22 # puts the wrong absolute path names in the tests. So we need at
23 # least Autoconf 2.59.
24 AC_PREREQ(2.59)
25
26 AC_INIT([GNU Bison], [1.875e], [bug-bison@gnu.org])
27 AC_CONFIG_AUX_DIR([config])
28 AC_CONFIG_MACRO_DIR([m4])
29
30 # We don't have a file m4/Makefile.am, so we need Automake 1.8 or later.
31 AM_INIT_AUTOMAKE([1.8 check-news readme-alpha dist-bzip2])
32 AC_CONFIG_HEADERS([config.h:config.hin])
33
34 gl_USE_SYSTEM_EXTENSIONS
35
36 # Checks for the compiler.
37 AC_PROG_CC
38 AM_PROG_CC_STDC
39 AC_ARG_ENABLE(gcc-warnings,
40 [ --enable-gcc-warnings turn on lots of GCC warnings (not recommended)],
41 [case "${enableval}" in
42 yes|no) ;;
43 *) AC_MSG_ERROR([bad value ${enableval} for gcc-warnings option]) ;;
44 esac],
45 [enableval=no])
46 if test "${enableval}" = yes; then
47 BISON_WARNING(-Werror)
48 AC_SUBST([WERROR_CFLAGS], [$WARNING_CFLAGS])
49 WARNING_CFLAGS=
50 BISON_WARNING(-W)
51 BISON_WARNING(-Wall)
52 BISON_WARNING(-Wcast-align)
53 BISON_WARNING(-Wcast-qual)
54 BISON_WARNING(-Wformat)
55 BISON_WARNING(-Wwrite-strings)
56 AC_SUBST([WARNING_CXXFLAGS], [$WARNING_CFLAGS])
57 # The following warnings are not suitable for C++.
58 BISON_WARNING(-Wbad-function-cast)
59 BISON_WARNING(-Wmissing-declarations)
60 BISON_WARNING(-Wmissing-prototypes)
61 BISON_WARNING(-Wnested-externs)
62 BISON_WARNING(-Wshadow)
63 BISON_WARNING(-Wstrict-prototypes)
64 AC_DEFINE([lint], 1, [Define to 1 if the compiler is checking for lint.])
65 fi
66
67 AC_ARG_ENABLE([yacc],
68 [AC_HELP_STRING([--disable-yacc],
69 [do not build a yacc command or an -ly library])],
70 , [enable_yacc=yes])
71 case $enable_yacc in
72 yes)
73 YACC_SCRIPT=yacc
74 YACC_LIBRARY=liby.a;;
75 *)
76 YACC_SCRIPT=
77 YACC_LIBRARY=;;
78 esac
79 AC_SUBST([YACC_SCRIPT])
80 AC_SUBST([YACC_LIBRARY])
81
82 # Checks for programs.
83 AC_PROG_LEX
84 AC_PROG_YACC
85 AC_PROG_RANLIB
86 BISON_PROG_GNU_M4
87 if test x"$ac_cv_prog_gnu_m4" != xyes; then
88 AC_MSG_ERROR([GNU M4 1.4 is required])
89 fi
90 AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.])
91
92 # Checks for header files.
93 AC_CHECK_HEADERS_ONCE([locale.h])
94 AM_STDBOOL_H
95
96 # Checks for compiler characteristics.
97 AC_C_INLINE
98
99 # Checks for types.
100 AC_CHECK_TYPES([uintptr_t])
101
102 # Checks for library functions.
103 AC_CHECK_FUNCS_ONCE([setlocale])
104 AM_WITH_DMALLOC
105 BISON_PREREQ_SUBPIPE
106 BISON_PREREQ_TIMEVAR
107
108 # gnulib and gettext.
109 GNULIB_AUTOCONF_SNIPPET
110 # We use po/Makevars.template, so we need at least gettext 0.12.
111 AM_GNU_GETTEXT_VERSION([0.12])
112
113 # Initialize the test suite.
114 AC_CONFIG_TESTDIR(tests)
115 AC_CONFIG_FILES([tests/Makefile tests/atlocal])
116 AC_CONFIG_FILES([tests/bison], [chmod +x tests/bison])
117 AC_CHECK_PROGS([VALGRIND], [valgrind])
118 AC_PROG_CXX
119 BISON_TEST_FOR_WORKING_CXX_COMPILER
120 AM_MISSING_PROG([AUTOM4TE], [autom4te])
121 # Needed by tests/atlocal.in.
122 AC_SUBST([GCC])
123 O0CFLAGS=`echo $CFLAGS | sed 's/-O[0-9] *//'`
124 AC_SUBST([O0CFLAGS])
125 O0CXXFLAGS=`echo $CXXFLAGS | sed 's/-O[0-9] *//'`
126 AC_SUBST([O0CXXFLAGS])
127
128 AC_CONFIG_FILES([Makefile
129 config/Makefile
130 po/Makefile.in
131 data/Makefile
132 lib/Makefile src/Makefile doc/Makefile])
133 AC_OUTPUT