From: Scott MacVicar Date: Mon, 29 Dec 2008 15:27:11 +0000 (+0000) Subject: Fix bug #46959 - Can't disable PCRE in 5.2.x, too much was backported from 5.3. X-Git-Tag: php-5.2.9RC1~191 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9c332b4b9ed1d4b2be682e6e25610ad30924b288;p=php Fix bug #46959 - Can't disable PCRE in 5.2.x, too much was backported from 5.3. --- diff --git a/ext/pcre/config0.m4 b/ext/pcre/config0.m4 index 91de0b9dba..e6bc323277 100644 --- a/ext/pcre/config0.m4 +++ b/ext/pcre/config0.m4 @@ -5,12 +5,17 @@ dnl dnl By default we'll compile and link against the bundled PCRE library dnl if DIR is supplied, we'll use that for linking -PHP_ARG_WITH(pcre-regex,, -[ --with-pcre-regex=DIR Include Perl Compatible Regular Expressions support. - DIR is the PCRE install prefix [BUNDLED]], yes, no) +PHP_ARG_WITH(pcre-regex,for PCRE support, +[ --without-pcre-regex Do not include Perl Compatible Regular Expressions support. + DIR is the PCRE install prefix [BUNDLED]], yes) - if test "$PHP_PCRE_REGEX" != "yes" && test "$PHP_PCRE_REGEX" != "no"; then - AC_MSG_CHECKING([for PCRE headers location]) +if test "$PHP_PCRE_REGEX" != "no"; then + if test "$PHP_PCRE_REGEX" = "yes"; then + PHP_NEW_EXTENSION(pcre, pcrelib/pcre_chartables.c pcrelib/pcre_ucd.c pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_exec.c pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_newline.c pcrelib/pcre_ord2utf8.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_valid_utf8.c pcrelib/pcre_version.c pcrelib/pcre_xclass.c php_pcre.c, $ext_shared,,-I@ext_srcdir@/pcrelib) + PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) + PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h pcrelib/]) + AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + else for i in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/include $PHP_PCRE_REGEX/include/pcre; do test -f $i/pcre.h && PCRE_INCDIR=$i done @@ -18,9 +23,7 @@ PHP_ARG_WITH(pcre-regex,, if test -z "$PCRE_INCDIR"; then AC_MSG_ERROR([Could not find pcre.h in $PHP_PCRE_REGEX]) fi - AC_MSG_RESULT([$PCRE_INCDIR]) - AC_MSG_CHECKING([for PCRE library location]) for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/$PHP_LIBDIR; do test -f $j/libpcre.a || test -f $j/libpcre.$SHLIB_SUFFIX_NAME && PCRE_LIBDIR=$j done @@ -28,7 +31,6 @@ PHP_ARG_WITH(pcre-regex,, if test -z "$PCRE_LIBDIR" ; then AC_MSG_ERROR([Could not find libpcre.(a|$SHLIB_SUFFIX_NAME) in $PHP_PCRE_REGEX]) fi - AC_MSG_RESULT([$PCRE_LIBDIR]) changequote({,}) pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'` @@ -43,24 +45,14 @@ PHP_ARG_WITH(pcre-regex,, AC_MSG_ERROR([The PCRE extension requires PCRE library version >= 6.6]) fi - PHP_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR) + PHP_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR, PCRE_SHARED_LIBADD) AC_DEFINE(HAVE_PCRE, 1, [ ]) PHP_ADD_INCLUDE($PCRE_INCDIR) - PHP_NEW_EXTENSION(pcre, php_pcre.c, no) + PHP_NEW_EXTENSION(pcre, php_pcre.c, $ext_shared) PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h]) - else - AC_MSG_CHECKING([for PCRE library to use]) - AC_MSG_RESULT([bundled]) - pcrelib_sources="pcrelib/pcre_chartables.c pcrelib/pcre_ucd.c \ - pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_exec.c \ - pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c \ - pcrelib/pcre_info.c pcrelib/pcre_maketables.c pcrelib/pcre_newline.c \ - pcrelib/pcre_ord2utf8.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c \ - pcrelib/pcre_tables.c pcrelib/pcre_try_flipped.c pcrelib/pcre_valid_utf8.c \ - pcrelib/pcre_version.c pcrelib/pcre_xclass.c" - PHP_NEW_EXTENSION(pcre, $pcrelib_sources php_pcre.c, no,,-I@ext_srcdir@/pcrelib) - PHP_ADD_BUILD_DIR($ext_builddir/pcrelib) - PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h pcrelib/]) - AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ]) + PHP_SUBST(PCRE_SHARED_LIBADD) fi +else + PHP_PCRE=no +fi