Commit:    3e41201a6fec870f89c1129d1c5b3544fd3f2ac0
Author:    Michael Wallner <m...@php.net>         Thu, 8 Aug 2013 14:27:32 +0200
Parents:   d8344c18a8d39d293fd8e37ec6d577624a1b0238
Branches:  master

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=3e41201a6fec870f89c1129d1c5b3544fd3f2ac0

Log:
make the bison version check a blacklist

Let the bison version be checked by a blacklist (where no version
is blacklisted yet) and require at least bison 2.4

Changed paths:
  M  Zend/acinclude.m4


Diff:
diff --git a/Zend/acinclude.m4 b/Zend/acinclude.m4
index 454513f..11cdbf7 100644
--- a/Zend/acinclude.m4
+++ b/Zend/acinclude.m4
@@ -3,8 +3,9 @@ dnl
 dnl This file contains local autoconf functions.
 
 AC_DEFUN([LIBZEND_BISON_CHECK],[
-  # we only support certain bison versions
-  bison_version_list="2.4 2.4.1 2.4.2 2.4.3 2.5 2.5.1 2.6 2.6.1 2.6.2 2.6.3 
2.6.4 2.6.5 2.7"
+  # we only support certain bison versions, min: 2.4
+  bison_version_min="204"
+  bison_version_exclude=""
 
   # for standalone build of Zend Engine
   test -z "$SED" && SED=sed
@@ -12,23 +13,27 @@ AC_DEFUN([LIBZEND_BISON_CHECK],[
   bison_version=none
   if test "$YACC"; then
     AC_CACHE_CHECK([for bison version], php_cv_bison_version, [
-      bison_version_vars=`bison --version 2> /dev/null | grep 'GNU Bison' | 
cut -d ' ' -f 4 | $SED -e 's/\./ /' | tr -d a-z`
+      bison_version_vars=`bison --version 2> /dev/null | grep 'GNU Bison' | 
cut -d ' ' -f 4 | $SED -e 's/\./ /g' | tr -d a-z`
       php_cv_bison_version=invalid
       if test -n "$bison_version_vars"; then
         set $bison_version_vars
         bison_version="${1}.${2}"
-        for bison_check_version in $bison_version_list; do
-          if test "$bison_version" = "$bison_check_version"; then
-            php_cv_bison_version="$bison_check_version (ok)"
-            break
-          fi
-        done
+        bison_version_num="`expr ${1} \* 100 + ${2}`"
+        if test $bison_version_num -ge $bison_version_min; then
+          php_cv_bison_version="$bison_version (ok)"
+          for bison_check_version in $bison_version_exclude; do
+            if test "$bison_version" = "$bison_check_version"; then
+              php_cv_bison_version=invalid
+              break
+            fi
+          done
+        fi
       fi
     ])
   fi
   case $php_cv_bison_version in
     ""|invalid[)]
-      bison_msg="bison versions supported for regeneration of the Zend/PHP 
parsers: $bison_version_list (found: $bison_version)."
+      bison_msg="This bison version is not supported for regeneration of the 
Zend/PHP parsers (found: $bison_version, min: $bison_version_min, excluded: 
$bison_version_exclude)."
       AC_MSG_WARN([$bison_msg])
       YACC="exit 0;"
       ;;


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to