summaryrefslogtreecommitdiff
path: root/ext/pcre
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pcre')
-rw-r--r--ext/pcre/Makefile.in4
-rw-r--r--ext/pcre/config.m4110
-rw-r--r--ext/pcre/config0.m4110
-rw-r--r--ext/pcre/pcrelib/Makefile.in2
-rw-r--r--ext/pcre/php_pcre.c4
5 files changed, 110 insertions, 120 deletions
diff --git a/ext/pcre/Makefile.in b/ext/pcre/Makefile.in
index aefe85016f..9316a48720 100644
--- a/ext/pcre/Makefile.in
+++ b/ext/pcre/Makefile.in
@@ -2,7 +2,9 @@
LTLIBRARY_NAME = libpcre.la
LTLIBRARY_SOURCES = php_pcre.c
LTLIBRARY_LIBADD = $(PCRE_LIBADD)
+LTLIBRARY_SHARED_NAME = pcre.la
+LTLIBRARY_SHARED_LIBADD = $(PCRE_SHARED_LIBADD)
SUBDIRS = $(PCRE_SUBDIRS)
-include $(top_srcdir)/build/ltlib.mk
+include $(top_srcdir)/build/dynlib.mk
diff --git a/ext/pcre/config.m4 b/ext/pcre/config.m4
index 32eb634a8a..076dde0752 100644
--- a/ext/pcre/config.m4
+++ b/ext/pcre/config.m4
@@ -4,70 +4,62 @@ dnl config.m4 for extension pcre
dnl By default we'll compile and link against the bundled PCRE library
dnl if DIR is supplied, we'll use that for linking
-AC_MSG_CHECKING(whether to include PCRE support)
-AC_ARG_WITH(pcre-regex,
+PHP_ARG_WITH(pcre-regex,whether to include PCRE support,
[ --without-pcre-regex Do not include Perl Compatible Regular Expressions
support. Use --with-pcre-regex=DIR to specify DIR
where PCRE's include and library files are located,
- if not using bundled library.],
-[
- case "$withval" in
- no)
- AC_MSG_RESULT(no)
- ;;
- yes)
- EXTRA_LIBS="-L$abs_builddir/ext/pcre/pcrelib -lpcre $EXTRA_LIBS"
- PCRE_SUBDIR="pcrelib"
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_FAST_OUTPUT(ext/pcre/pcrelib/Makefile)
- ;;
- *)
- test -f $withval/pcre.h && PCRE_INCDIR="$withval"
- test -f $withval/include/pcre.h && PCRE_INCDIR="$withval/include"
+ if not using bundled library.],yes)
- if test -n "$PCRE_INCDIR" ; then
- changequote({,})
- pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
- pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
- changequote([,])
- pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
- if test "$pcre_minor_length" -eq 2 ; then
- pcre_minor="$pcre_minor"0
- fi
- pcre_version=$pcre_major$pcre_minor
- if test "$pcre_version" -ge 208; then
- AC_ADD_INCLUDE($PCRE_INCDIR)
- else
- AC_MSG_ERROR(PCRE extension requires PCRE library version >= 2.08)
- fi
- else
- AC_MSG_ERROR(Could not find pcre.h in $withval)
- fi
+if test "$PHP_PCRE_REGEX" != "no"; then
+ PHP_EXTENSION(pcre, $ext_shared)
+ if test "$PHP_PCRE_REGEX" = "yes"; then
+ PCRE_LIBADD=pcrelib/libpcre.la
+ PCRE_SHARED_LIBADD=pcrelib/libpcre.la
+ PCRE_SUBDIRS=pcrelib
+ PHP_SUBST(PCRE_LIBADD)
+ PHP_SUBST(PCRE_SUBDIRS)
+ AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
+ PHP_FAST_OUTPUT($ext_builddir/pcrelib/Makefile)
+ LIB_BUILD($ext_builddir/pcrelib,$ext_shared,yes)
+ else
+ test -f $PHP_PCRE_REGEX/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX
+ test -f $PHP_PCRE_REGEX/include/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX/include
+
+ if test -z "$PCRE_INCDIR"; then
+ AC_MSG_RESULT(Could not find pcre.h in $PHP_PCRE_REGEX)
+ fi
- test -f $withval/libpcre.a && PCRE_LIBDIR="$withval"
- test -f $withval/lib/libpcre.a && PCRE_LIBDIR="$withval/lib"
- if test -n "$PCRE_LIBDIR" ; then
- AC_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR)
- else
- AC_MSG_ERROR(Could not find libpcre.a in $withval)
- fi
+ changequote({,})
+ pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
+ pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
+ changequote([,])
+ pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
+ if test "$pcre_minor_length" -eq 2 ; then
+ pcre_minor="$pcre_minor"0
+ fi
+ pcre_version=$pcre_major$pcre_minor
+ if test "$pcre_version" -lt 208; then
+ AC_MSG_ERROR(The PCRE extension requires PCRE library version >= 2.08)
+ fi
+
+ test -f $PHP_PCRE_REGEX/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX"
+ test -f $PHP_PCRE_REGEX/lib/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX/lib"
+
+ if test -z "$PCRE_LIBDIR" ; then
+ AC_MSG_ERROR(Could not find libpcre.a in $PHP_PCRE_REGEX)
+ fi
+
+ if test "$ext_shared" = "yes"; then
+ PCRE_SHARED_LIBADD="-R$PCRE_LIBDIR -L$PCRE_LIBDIR -lpcre"
+ else
+ AC_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR)
+ fi
+
+ AC_ADD_INCLUDE($PCRE_INCDIR)
+ AC_DEFINE(HAVE_PCRE, 1, [ ])
+ fi
+fi
+PHP_SUBST(PCRE_SHARED_LIBADD)
- AC_DEFINE(HAVE_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- ;;
- esac
-],[
- PCRE_LIBADD=pcrelib/libpcre.la
- PCRE_SUBDIRS=pcrelib
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_FAST_OUTPUT(ext/pcre/pcrelib/Makefile)
-])
-PHP_SUBST(PCRE_LIBADD)
-PHP_SUBST(PCRE_SUBDIRS)
AC_CHECK_FUNC(memmove, [], [AC_DEFINE(USE_BCOPY, 1, [ ])])
diff --git a/ext/pcre/config0.m4 b/ext/pcre/config0.m4
index 32eb634a8a..076dde0752 100644
--- a/ext/pcre/config0.m4
+++ b/ext/pcre/config0.m4
@@ -4,70 +4,62 @@ dnl config.m4 for extension pcre
dnl By default we'll compile and link against the bundled PCRE library
dnl if DIR is supplied, we'll use that for linking
-AC_MSG_CHECKING(whether to include PCRE support)
-AC_ARG_WITH(pcre-regex,
+PHP_ARG_WITH(pcre-regex,whether to include PCRE support,
[ --without-pcre-regex Do not include Perl Compatible Regular Expressions
support. Use --with-pcre-regex=DIR to specify DIR
where PCRE's include and library files are located,
- if not using bundled library.],
-[
- case "$withval" in
- no)
- AC_MSG_RESULT(no)
- ;;
- yes)
- EXTRA_LIBS="-L$abs_builddir/ext/pcre/pcrelib -lpcre $EXTRA_LIBS"
- PCRE_SUBDIR="pcrelib"
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_FAST_OUTPUT(ext/pcre/pcrelib/Makefile)
- ;;
- *)
- test -f $withval/pcre.h && PCRE_INCDIR="$withval"
- test -f $withval/include/pcre.h && PCRE_INCDIR="$withval/include"
+ if not using bundled library.],yes)
- if test -n "$PCRE_INCDIR" ; then
- changequote({,})
- pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
- pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
- changequote([,])
- pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
- if test "$pcre_minor_length" -eq 2 ; then
- pcre_minor="$pcre_minor"0
- fi
- pcre_version=$pcre_major$pcre_minor
- if test "$pcre_version" -ge 208; then
- AC_ADD_INCLUDE($PCRE_INCDIR)
- else
- AC_MSG_ERROR(PCRE extension requires PCRE library version >= 2.08)
- fi
- else
- AC_MSG_ERROR(Could not find pcre.h in $withval)
- fi
+if test "$PHP_PCRE_REGEX" != "no"; then
+ PHP_EXTENSION(pcre, $ext_shared)
+ if test "$PHP_PCRE_REGEX" = "yes"; then
+ PCRE_LIBADD=pcrelib/libpcre.la
+ PCRE_SHARED_LIBADD=pcrelib/libpcre.la
+ PCRE_SUBDIRS=pcrelib
+ PHP_SUBST(PCRE_LIBADD)
+ PHP_SUBST(PCRE_SUBDIRS)
+ AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
+ PHP_FAST_OUTPUT($ext_builddir/pcrelib/Makefile)
+ LIB_BUILD($ext_builddir/pcrelib,$ext_shared,yes)
+ else
+ test -f $PHP_PCRE_REGEX/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX
+ test -f $PHP_PCRE_REGEX/include/pcre.h && PCRE_INCDIR=$PHP_PCRE_REGEX/include
+
+ if test -z "$PCRE_INCDIR"; then
+ AC_MSG_RESULT(Could not find pcre.h in $PHP_PCRE_REGEX)
+ fi
- test -f $withval/libpcre.a && PCRE_LIBDIR="$withval"
- test -f $withval/lib/libpcre.a && PCRE_LIBDIR="$withval/lib"
- if test -n "$PCRE_LIBDIR" ; then
- AC_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR)
- else
- AC_MSG_ERROR(Could not find libpcre.a in $withval)
- fi
+ changequote({,})
+ pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
+ pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
+ changequote([,])
+ pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
+ if test "$pcre_minor_length" -eq 2 ; then
+ pcre_minor="$pcre_minor"0
+ fi
+ pcre_version=$pcre_major$pcre_minor
+ if test "$pcre_version" -lt 208; then
+ AC_MSG_ERROR(The PCRE extension requires PCRE library version >= 2.08)
+ fi
+
+ test -f $PHP_PCRE_REGEX/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX"
+ test -f $PHP_PCRE_REGEX/lib/libpcre.a && PCRE_LIBDIR="$PHP_PCRE_REGEX/lib"
+
+ if test -z "$PCRE_LIBDIR" ; then
+ AC_MSG_ERROR(Could not find libpcre.a in $PHP_PCRE_REGEX)
+ fi
+
+ if test "$ext_shared" = "yes"; then
+ PCRE_SHARED_LIBADD="-R$PCRE_LIBDIR -L$PCRE_LIBDIR -lpcre"
+ else
+ AC_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR)
+ fi
+
+ AC_ADD_INCLUDE($PCRE_INCDIR)
+ AC_DEFINE(HAVE_PCRE, 1, [ ])
+ fi
+fi
+PHP_SUBST(PCRE_SHARED_LIBADD)
- AC_DEFINE(HAVE_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- ;;
- esac
-],[
- PCRE_LIBADD=pcrelib/libpcre.la
- PCRE_SUBDIRS=pcrelib
- AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
- AC_MSG_RESULT(yes)
- PHP_EXTENSION(pcre)
- PHP_FAST_OUTPUT(ext/pcre/pcrelib/Makefile)
-])
-PHP_SUBST(PCRE_LIBADD)
-PHP_SUBST(PCRE_SUBDIRS)
AC_CHECK_FUNC(memmove, [], [AC_DEFINE(USE_BCOPY, 1, [ ])])
diff --git a/ext/pcre/pcrelib/Makefile.in b/ext/pcre/pcrelib/Makefile.in
index 9f99bb5ba8..5adf8a3f10 100644
--- a/ext/pcre/pcrelib/Makefile.in
+++ b/ext/pcre/pcrelib/Makefile.in
@@ -2,5 +2,5 @@
LTLIBRARY_NAME = libpcre.la
LTLIBRARY_SOURCES = maketables.c get.c study.c pcre.c
-include $(top_srcdir)/build/ltlib.mk
+include $(top_srcdir)/build/dynlib.mk
diff --git a/ext/pcre/php_pcre.c b/ext/pcre/php_pcre.c
index f8a19fb99c..2c5bc262a5 100644
--- a/ext/pcre/php_pcre.c
+++ b/ext/pcre/php_pcre.c
@@ -1210,6 +1210,10 @@ zend_module_entry pcre_module_entry = {
STANDARD_MODULE_PROPERTIES
};
+#ifdef COMPILE_DL_PCRE
+ZEND_DLEXPORT zend_module_entry *get_module(void) { return &pcre_module_entry; }
+#endif
+
/* }}} */