From d23caf50d4cdd1ad41c8b373990f4de0b840c2d5 Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Sat, 12 Dec 2015 17:07:54 +0100 Subject: [PATCH] configure.ac: detect bison We use some bison-specific extensions so we really need bison, not yacc. This has bitten a few people before, so make it easier for them. Bison is only needed when compiling from git, since we ship the generated file in the tarball. We take this into account by checking for the generated file first. --- configure.ac | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/configure.ac b/configure.ac index f623263f..912aa917 100644 --- a/configure.ac +++ b/configure.ac @@ -44,6 +44,7 @@ AC_SYS_LARGEFILE # AC_PROG_CC AC_PROG_CPP +AC_PROG_EGREP AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET @@ -60,6 +61,18 @@ m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-conf PKG_PROG_PKG_CONFIG +AC_CACHE_CHECK([if bison is the parser generator], + [collectd_cv_prog_bison], + [AS_IF([$YACC --version 2>/dev/null | $EGREP -q '^bison '], + [collectd_cv_prog_bison=yes], [collectd_cv_prog_bison=no] + )] +) + +if test "x$collectd_cv_prog_bison" = "xno" && test ! -f "${srcdir}/liboconfig/parser.c" +then + AC_MSG_ERROR([bison is missing and you do not have ${srcdir}/liboconfig/parser.c. Please install bison]) +fi + AC_CHECK_PROG([have_protoc_c], [protoc-c], [yes], [no]) if test "x$have_protoc_c" = "xno" then -- 2.11.0