diff options
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/configure.in b/configure.in index e818ec9150..428c574bf8 100644 --- a/configure.in +++ b/configure.in @@ -787,7 +787,12 @@ if test "$PHP_GCOV" = "yes"; then AC_MSG_ERROR([ccache must be disabled when --enable-gcov option is used. You can disable ccache by setting environment variable CCACHE_DISABLE=1.]) fi - ltp_version_list="1.5 1.6 1.7 1.9 1.10" + dnl min: 1.5 (i.e. 105, major * 100 + minor for easier comparison) + ltp_version_min="105" + dnl non-working versions, e.g. "1.8 1.18"; + dnl remove "none" when introducing the first incompatible LTP version an + dnl separate any following additions by spaces + ltp_version_exclude="1.8" AC_CHECK_PROG(LTP, lcov, lcov) AC_CHECK_PROG(LTP_GENHTML, genhtml, genhtml) @@ -797,21 +802,30 @@ if test "$PHP_GCOV" = "yes"; then if test "$LTP"; then AC_CACHE_CHECK([for ltp version], php_cv_ltp_version, [ php_cv_ltp_version=invalid - ltp_version=`$LTP -v 2>/dev/null | $SED -e 's/^.* //'` - for ltp_check_version in $ltp_version_list; do - if test "$ltp_version" = "$ltp_check_version"; then - php_cv_ltp_version="$ltp_check_version (ok)" + ltp_version_vars=`$LTP -v 2>/dev/null | $SED -e 's/^.* //' -e 's/\./ /g' | tr -d a-z` + if test -n "$ltp_version_vars"; then + set $ltp_version_vars + ltp_version="${1}.${2}" + ltp_version_num="`expr ${1} \* 100 + ${2}`" + if test $ltp_version_num -ge $ltp_version_min; then + php_cv_ltp_version="$ltp_version (ok)" + for ltp_check_version in $ltp_version_exclude; do + if test "$ltp_version" = "$ltp_check_version"; then + php_cv_ltp_version=invalid + break + fi + done fi - done + fi ]) else - ltp_msg="To enable code coverage reporting you must have one of the following LTP versions installed: $ltp_version_list" + ltp_msg="To enable code coverage reporting you must have LTP installed" AC_MSG_ERROR([$ltp_msg]) fi case $php_cv_ltp_version in ""|invalid[)] - ltp_msg="You must have one of the following versions of LTP: $ltp_version_list (found: $ltp_version)." + ltp_msg="This LTP version is not supported (found: $ltp_version, min: $ltp_version_min, excluded: $ltp_version_exclude)." AC_MSG_ERROR([$ltp_msg]) LTP="exit 0;" ;; |