summaryrefslogtreecommitdiff
path: root/aclocal
diff options
context:
space:
mode:
authorjfarrell <jfarrell@apache.org>2014-07-10 09:23:43 -0400
committerjfarrell <jfarrell@apache.org>2014-07-10 09:23:43 -0400
commit4f54d13e7924424358e401840f985936f9867274 (patch)
tree60f3247344130daffd422e268fe5592485a252b6 /aclocal
parentef7d56c1d6e24cdd0a24d3ee825c499b917d7dda (diff)
downloadthrift-4f54d13e7924424358e401840f985936f9867274.tar.gz
THRIFT-2602: Fix missing dist files
Client: build process Patch: jfarrell Adding macro check around bison version and removing am__yacc_c2h and will conditionally include the necessary h/hh file, this will fix the mentioned missing .hh file in dist and make it compatible with automake 1.11 and above
Diffstat (limited to 'aclocal')
-rw-r--r--aclocal/ac_prog_bison.m454
1 files changed, 54 insertions, 0 deletions
diff --git a/aclocal/ac_prog_bison.m4 b/aclocal/ac_prog_bison.m4
new file mode 100644
index 000000000..1e2d200c7
--- /dev/null
+++ b/aclocal/ac_prog_bison.m4
@@ -0,0 +1,54 @@
+dnl
+dnl Check Bison version
+dnl AC_PROG_BISON([MIN_VERSION=2.6])
+dnl
+dnl Will define BISON_USE_PARSER_H_EXTENSION if Automake is < 1.11
+dnl for use with .h includes.
+dnl
+
+AC_DEFUN([AC_PROG_BISON], [
+if test "x$1" = "x" ; then
+ bison_required_version="2.6"
+else
+ bison_required_version="$1"
+fi
+
+AC_CHECK_PROG(have_prog_bison, [bison], [yes],[no])
+
+AC_DEFINE_UNQUOTED([BISON_VERSION], [0.0], [Bison version if bison is not available])
+
+#Do not use *.h extension for parser header files, use newer *.hh
+bison_use_parser_h_extension=false
+
+if test "$have_prog_bison" = "yes" ; then
+ AC_MSG_CHECKING([for bison version >= $bison_required_version])
+ bison_version=`bison --version | head -n 1 | cut '-d ' -f 4`
+ AC_DEFINE_UNQUOTED([BISON_VERSION], [$bison_version], [Defines bison version])
+ if test "$bison_version" \< "$bison_required_version" ; then
+ BISON=:
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([Bison version 2.6 or higher must be installed on the system!])
+ else
+ AC_MSG_RESULT([yes])
+ BISON=bison
+ AC_SUBST(BISON)
+
+ #Verify automake version 1.11 headers for yy files are .h, > 1.12 uses .hh
+ automake_version=`automake --version | head -n 1 | cut '-d ' -f 4`
+ AC_DEFINE_UNQUOTED([AUTOMAKE_VERSION], [$automake_version], [Defines automake version])
+
+ if test "$automake_version" \< "1.12" ; then
+ #Use *.h extension for parser header file
+ bison_use_parser_h_extension=true
+ echo "Automake version < 1.12"
+ AC_DEFINE([BISON_USE_PARSER_H_EXTENSION], [1], [Use *.h extension for parser header file])
+ fi
+ fi
+else
+ BISON=:
+ AC_MSG_RESULT([NO])
+fi
+
+AM_CONDITIONAL([BISON_USE_PARSER_H_EXTENSION], [test x$bison_use_parser_h_extension = xtrue])
+AC_SUBST(BISON)
+])