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.3], [bug-bison (a] 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 145