• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ===========================================================================
2#   https://www.gnu.org/software/autoconf-archive/ax_prog_perl_version.html
3# ===========================================================================
4#
5# SYNOPSIS
6#
7#   AX_PROG_PERL_VERSION([VERSION],[ACTION-IF-TRUE],[ACTION-IF-FALSE])
8#
9# DESCRIPTION
10#
11#   Makes sure that perl supports the version indicated. If true the shell
12#   commands in ACTION-IF-TRUE are executed. If not the shell commands in
13#   ACTION-IF-FALSE are run. Note if $PERL is not set (for example by
14#   running AC_CHECK_PROG or AC_PATH_PROG) the macro will fail.
15#
16#   Example:
17#
18#     AC_PATH_PROG([PERL],[perl])
19#     AX_PROG_PERL_VERSION([5.8.0],[ ... ],[ ... ])
20#
21#   This will check to make sure that the perl you have supports at least
22#   version 5.8.0.
23#
24#   NOTE: This macro uses the $PERL variable to perform the check.
25#   AX_WITH_PERL can be used to set that variable prior to running this
26#   macro. The $PERL_VERSION variable will be valorized with the detected
27#   version.
28#
29# LICENSE
30#
31#   Copyright (c) 2009 Francesco Salvestrini <salvestrini@users.sourceforge.net>
32#
33#   Copying and distribution of this file, with or without modification, are
34#   permitted in any medium without royalty provided the copyright notice
35#   and this notice are preserved. This file is offered as-is, without any
36#   warranty.
37
38#serial 13
39
40AC_DEFUN([AX_PROG_PERL_VERSION],[
41    AC_REQUIRE([AC_PROG_SED])
42    AC_REQUIRE([AC_PROG_GREP])
43
44    AS_IF([test -n "$PERL"],[
45        ax_perl_version="$1"
46
47        AC_MSG_CHECKING([for perl version])
48        changequote(<<,>>)
49        perl_version=`$PERL --version 2>&1 \
50          | $SED -n -e '/This is perl/b inspect
51b
52: inspect
53s/.* (\{0,1\}v\([0-9]*\.[0-9]*\.[0-9]*\))\{0,1\} .*/\1/;p'`
54        changequote([,])
55        AC_MSG_RESULT($perl_version)
56
57	AC_SUBST([PERL_VERSION],[$perl_version])
58
59        AX_COMPARE_VERSION([$ax_perl_version],[le],[$perl_version],[
60	    :
61            $2
62        ],[
63	    :
64            $3
65        ])
66    ],[
67        AC_MSG_WARN([could not find the perl interpreter])
68        $3
69    ])
70])
71