1# =========================================================================== 2# https://www.gnu.org/software/autoconf-archive/ax_prog_python_version.html 3# =========================================================================== 4# 5# SYNOPSIS 6# 7# AX_PROG_PYTHON_VERSION([VERSION],[ACTION-IF-TRUE],[ACTION-IF-FALSE]) 8# 9# DESCRIPTION 10# 11# Makes sure that python 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 $PYTHON 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([PYTHON],[python]) 19# AX_PROG_PYTHON_VERSION([2.4.4],[ ... ],[ ... ]) 20# 21# This will check to make sure that the python you have supports at least 22# version 2.4.4. 23# 24# NOTE: This macro uses the $PYTHON variable to perform the check. 25# AX_WITH_PYTHON can be used to set that variable prior to running this 26# macro. The $PYTHON_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 12 39 40AC_DEFUN([AX_PROG_PYTHON_VERSION],[ 41 AC_REQUIRE([AC_PROG_SED]) 42 AC_REQUIRE([AC_PROG_GREP]) 43 44 AS_IF([test -n "$PYTHON"],[ 45 ax_python_version="$1" 46 47 AC_MSG_CHECKING([for python version]) 48 changequote(<<,>>) 49 python_version=`$PYTHON -V 2>&1 | $GREP "^Python " | $SED -e 's/^.* \([0-9]*\.[0-9]*\.[0-9]*\)/\1/'` 50 changequote([,]) 51 AC_MSG_RESULT($python_version) 52 53 AC_SUBST([PYTHON_VERSION],[$python_version]) 54 55 AX_COMPARE_VERSION([$ax_python_version],[le],[$python_version],[ 56 : 57 $2 58 ],[ 59 : 60 $3 61 ]) 62 ],[ 63 AC_MSG_WARN([could not find the python interpreter]) 64 $3 65 ]) 66]) 67