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