diff options
Diffstat (limited to 'm4/ac_pkg_cython.m4')
| -rw-r--r-- | m4/ac_pkg_cython.m4 | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/m4/ac_pkg_cython.m4 b/m4/ac_pkg_cython.m4 new file mode 100644 index 0000000..aeae6a0 --- /dev/null +++ b/m4/ac_pkg_cython.m4 | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | |||
| 2 | AC_DEFUN([AC_PROG_CYTHON],[ | ||
| 3 | AC_PATH_PROG([CYTHON],[cython]) | ||
| 4 | if test -z "$CYTHON" ; then | ||
| 5 | AC_MSG_WARN([cannot find 'cython' program. You should look at http://www.cython.org] or install your distribution specific cython package.) | ||
| 6 | CYTHON=false | ||
| 7 | elif test -n "$1" ; then | ||
| 8 | AC_MSG_CHECKING([for Cython version]) | ||
| 9 | [cython_version=`$CYTHON --version 2>&1 | grep 'Cython version' | sed 's/.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*/\1/g'`] | ||
| 10 | AC_MSG_RESULT([$cython_version]) | ||
| 11 | if test -n "$cython_version" ; then | ||
| 12 | # Calculate the required version number components | ||
| 13 | [required=$1] | ||
| 14 | [required_major=`echo $required | sed 's/[^0-9].*//'`] | ||
| 15 | if test -z "$required_major" ; then | ||
| 16 | [required_major=0] | ||
| 17 | fi | ||
| 18 | [required=`echo $required | sed 's/[0-9]*[^0-9]//'`] | ||
| 19 | [required_minor=`echo $required | sed 's/[^0-9].*//'`] | ||
| 20 | if test -z "$required_minor" ; then | ||
| 21 | [required_minor=0] | ||
| 22 | fi | ||
| 23 | [required=`echo $required | sed 's/[0-9]*[^0-9]//'`] | ||
| 24 | [required_patch=`echo $required | sed 's/[^0-9].*//'`] | ||
| 25 | if test -z "$required_patch" ; then | ||
| 26 | [required_patch=0] | ||
| 27 | fi | ||
| 28 | # Calculate the available version number components | ||
| 29 | [available=$cython_version] | ||
| 30 | [available_major=`echo $available | sed 's/[^0-9].*//'`] | ||
| 31 | if test -z "$available_major" ; then | ||
| 32 | [available_major=0] | ||
| 33 | fi | ||
| 34 | [available=`echo $available | sed 's/[0-9]*[^0-9]//'`] | ||
| 35 | [available_minor=`echo $available | sed 's/[^0-9].*//'`] | ||
| 36 | if test -z "$available_minor" ; then | ||
| 37 | [available_minor=0] | ||
| 38 | fi | ||
| 39 | [available=`echo $available | sed 's/[0-9]*[^0-9]//'`] | ||
| 40 | [available_patch=`echo $available | sed 's/[^0-9].*//'`] | ||
| 41 | if test -z "$available_patch" ; then | ||
| 42 | [available_patch=0] | ||
| 43 | fi | ||
| 44 | if test $available_major -ne $required_major \ | ||
| 45 | -o $available_minor -ne $required_minor \ | ||
| 46 | -o $available_patch -lt $required_patch ; then | ||
| 47 | AC_MSG_WARN([Cython version >= $1 is required. You have $cython_version. You should look at http://www.cython.org]) | ||
| 48 | CYTHON=false | ||
| 49 | fi | ||
| 50 | else | ||
| 51 | AC_MSG_WARN([cannot determine Cython version]) | ||
| 52 | CYTHON=false | ||
| 53 | fi | ||
| 54 | fi | ||
| 55 | AC_SUBST([CYTHON_LIB]) | ||
| 56 | ]) | ||
