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. 25AC_PREREQ(2.59) 26 27AC_INIT([GNU Bison], [2.3], [bug-bison@gnu.org]) 28AC_CONFIG_AUX_DIR([build-aux]) 29AC_CONFIG_MACRO_DIR([m4]) 30 31# We don't have a file m4/Makefile.am, so we need Automake 1.8 or later. 32AM_INIT_AUTOMAKE([1.8 check-news readme-alpha dist-bzip2]) 33AC_CONFIG_HEADERS([config.h:config.hin]) 34 35gl_USE_SYSTEM_EXTENSIONS 36 37# Checks for the compiler. 38AC_PROG_CC 39AM_PROG_CC_STDC 40AC_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]) 47if 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.]) 65fi 66 67BISON_TEST_FOR_WORKING_C_COMPILER 68 69AC_ARG_ENABLE([yacc], 70 [AC_HELP_STRING([--disable-yacc], 71 [do not build a yacc command or an -ly library])], 72 , [enable_yacc=yes]) 73case $enable_yacc in 74yes) 75 YACC_SCRIPT=yacc 76 YACC_LIBRARY=liby.a;; 77*) 78 YACC_SCRIPT= 79 YACC_LIBRARY=;; 80esac 81AC_SUBST([YACC_SCRIPT]) 82AC_SUBST([YACC_LIBRARY]) 83 84# Checks for programs. 85AC_PROG_LEX 86AC_PROG_YACC 87AC_PROG_RANLIB 88BISON_PROG_GNU_M4 89if test x"$ac_cv_prog_gnu_m4" != xyes; then 90 AC_MSG_ERROR([GNU M4 1.4 is required]) 91fi 92AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.]) 93 94# Checks for header files. 95AC_CHECK_HEADERS_ONCE([locale.h]) 96AM_STDBOOL_H 97 98# Checks for compiler characteristics. 99AC_C_INLINE 100 101# Checks for types. 102AC_CHECK_TYPES([uintptr_t]) 103 104# Checks for library functions. 105AC_CHECK_FUNCS_ONCE([setlocale]) 106AM_WITH_DMALLOC 107BISON_PREREQ_SUBPIPE 108BISON_PREREQ_TIMEVAR 109 110# gnulib and gettext. 111GNULIB_AUTOCONF_SNIPPET 112# We use po/Makevars, so we need at least gettext 0.12. 113AM_GNU_GETTEXT_VERSION([0.12]) 114BISON_I18N 115 116# Internationalized parsers. 117AC_CONFIG_FILES([runtime-po/Makefile.in]) 118# Autoconf macros for packages using internationalized parsers. 119aclocaldir='${datadir}/aclocal' 120AC_SUBST([aclocaldir]) 121 122# Initialize the test suite. 123AC_CONFIG_TESTDIR(tests) 124AC_CONFIG_FILES([tests/Makefile tests/atlocal]) 125AC_CONFIG_FILES([tests/bison], [chmod +x tests/bison]) 126AC_CHECK_PROGS([VALGRIND], [valgrind]) 127AC_PROG_CXX 128BISON_TEST_FOR_WORKING_CXX_COMPILER 129AM_MISSING_PROG([AUTOM4TE], [autom4te]) 130# Needed by tests/atlocal.in. 131AC_SUBST([GCC]) 132O0CFLAGS=`echo $CFLAGS | sed 's/-O[[0-9]] *//'` 133AC_SUBST([O0CFLAGS]) 134O0CXXFLAGS=`echo $CXXFLAGS | sed 's/-O[[0-9]] *//'` 135AC_SUBST([O0CXXFLAGS]) 136 137AC_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]) 144AC_OUTPUT 145