Mercurial > mm7
diff lib/swig/swigwin-2.0.11/Tools/config/ac_compare_version.m4 @ 1899:b3009adc0e2f
Adding swig, gitignore, hgignore
author | Nomad |
---|---|
date | Mon, 21 Oct 2013 10:42:27 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lib/swig/swigwin-2.0.11/Tools/config/ac_compare_version.m4 Mon Oct 21 10:42:27 2013 +0200 @@ -0,0 +1,40 @@ +dnl @synopsis AC_COMPARE_VERSION\ +dnl (version-a, version-b, action-if-greater, action-if-equal, action-if-less) +dnl +dnl This macro compares two version numbers and executes the indicated action +dnl based on whether they're equal or one is greater than the other. +dnl It's needed to determine whether ocaml is new enough that the incompatible +dnl change 'loc' -> '_loc' is present in this version of camlp4. +dnl +dnl It's implemented from scratch just for SWIG by arty. +dnl +dnl @category Misc +dnl @author arty +dnl @version 2006-11-02 +dnl @license GPLWithACException + +AC_DEFUN([AC_COMPARE_VERSION], [ + # Split the version into units. + ver_a="[$1]" + ver_b="[$2]" + nodots_a=`echo $ver_a | sed -e 's/\./ /g'` + condition="equal" + isolate_b_regex='\([[0-9]]\+\).*' + for ver_part in $nodots_a ; do + b_ver_part=`echo "$ver_b" | sed -e 's/'"$isolate_b_regex"'/\1/'` + if test \( "$ver_part" -lt "$b_ver_part" \) -a \( "x$condition" = "xequal" \) ; then + condition=less + elif test \( "$ver_part" -gt "$b_ver_part" \) -a \( "x$condition" = "xequal" \) ; then + condition=greater + fi + isolate_b_regex='[[0-9]]\+\.'"$isolate_b_regex" + done + + if test "x$condition" = "xequal" ; then + [$4] + elif test "x$condition" = "xless" ; then + [$3] + elif test "x$condition" = "xgreater" ; then + [$5] + fi +])