Cleanup: bison and flex detection
[babeltrace.git] / m4 / ax_prog_bison_version.m4
CommitLineData
1a3ad29b 1# ===========================================================================
8a121625 2# https://www.gnu.org/software/autoconf-archive/ax_prog_bison_version.html
1a3ad29b
JR
3# ===========================================================================
4#
2b4887a2
JR
5# SYNOPSIS
6#
7# AX_PROG_BISON_VERSION([VERSION],[ACTION-IF-TRUE],[ACTION-IF-FALSE])
8#
9# DESCRIPTION
10#
1a3ad29b
JR
11# Makes sure that bison version is greater or equal to the version
12# indicated. If true the shell commands in ACTION-IF-TRUE are executed. If
13# not the shell commands in commands in ACTION-IF-TRUE are executed. If
8a121625
MJ
14# not the shell commands in ACTION-IF-FALSE are run. Note if $YACC is not
15# set (for example by running AC_PROG_YACC or AC_PATH_PROG) the macro
1a3ad29b 16# will fail.
2b4887a2
JR
17#
18# Example:
19#
8a121625 20# AC_PROG_YACC
2b4887a2
JR
21# AX_PROG_BISON_VERSION([3.0.2],[ ... ],[ ... ])
22#
1a3ad29b
JR
23# This will check to make sure that the bison you have is at least version
24# 3.0.2 or greater.
2b4887a2 25#
8a121625
MJ
26# NOTE: This macro uses the $YACC variable to perform the check, if it's
27# empty it will failover to the $BISON variable for backwards compatibility.
2b4887a2
JR
28#
29# LICENSE
30#
31# Copyright (c) 2015 Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com>
8a121625 32# 2017 Michael Jeanson <mjeanson@efficios.com>
2b4887a2
JR
33#
34# Copying and distribution of this file, with or without modification, are
35# permitted in any medium without royalty provided the copyright notice
36# and this notice are preserved. This file is offered as-is, without any
37# warranty.
38
8a121625 39#serial 4
2b4887a2
JR
40
41AC_DEFUN([AX_PROG_BISON_VERSION],[
42 AC_REQUIRE([AC_PROG_SED])
43 AC_REQUIRE([AC_PROG_GREP])
44
8a121625
MJ
45 AS_IF([test -z "$YACC"],[
46 AS_IF([test -n "$BISON"],[
47 YACC=$BISON
48 ])
49 ])
50
51 AS_IF([test -n "$YACC"],[
2b4887a2
JR
52 ax_bison_version="$1"
53
54 AC_MSG_CHECKING([for bison version])
55 changequote(<<,>>)
8a121625 56 bison_version=`$YACC --version 2>&1 \
2b4887a2
JR
57 | $SED -n -e '/bison (GNU Bison)/b inspect
58b
59: inspect
60s/.* (\{0,1\}\([0-9]*\.[0-9]*\.[0-9]*\))\{0,1\}.*/\1/;p'`
61 changequote([,])
62 AC_MSG_RESULT($bison_version)
63
64 AC_SUBST([BISON_VERSION],[$bison_version])
65
66 AX_COMPARE_VERSION([$bison_version],[ge],[$ax_bison_version],[
67 :
68 $2
69 ],[
70 :
71 $3
72 ])
73 ],[
74 AC_MSG_WARN([could not find bison])
75 $3
76 ])
77])
This page took 0.036818 seconds and 4 git commands to generate.