config0.m4 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. dnl
  2. dnl $Id$
  3. dnl
  4. dnl By default we'll compile and link against the bundled PCRE library
  5. dnl if DIR is supplied, we'll use that for linking
  6. PHP_ARG_WITH(pcre-regex,,
  7. [ --with-pcre-regex=DIR Include Perl Compatible Regular Expressions support.
  8. DIR is the PCRE install prefix [BUNDLED]], yes, no)
  9. if test "$PHP_PCRE_REGEX" != "yes" && test "$PHP_PCRE_REGEX" != "no"; then
  10. AC_MSG_CHECKING([for PCRE headers location])
  11. for i in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/include $PHP_PCRE_REGEX/include/pcre $PHP_PCRE_REGEX/local/include; do
  12. test -f $i/pcre.h && PCRE_INCDIR=$i
  13. done
  14. if test -z "$PCRE_INCDIR"; then
  15. AC_MSG_ERROR([Could not find pcre.h in $PHP_PCRE_REGEX])
  16. fi
  17. AC_MSG_RESULT([$PCRE_INCDIR])
  18. AC_MSG_CHECKING([for PCRE library location])
  19. for j in $PHP_PCRE_REGEX $PHP_PCRE_REGEX/$PHP_LIBDIR; do
  20. test -f $j/libpcre.a || test -f $j/libpcre.$SHLIB_SUFFIX_NAME && PCRE_LIBDIR=$j
  21. done
  22. if test -z "$PCRE_LIBDIR" ; then
  23. AC_MSG_ERROR([Could not find libpcre.(a|$SHLIB_SUFFIX_NAME) in $PHP_PCRE_REGEX])
  24. fi
  25. AC_MSG_RESULT([$PCRE_LIBDIR])
  26. changequote({,})
  27. pcre_major=`grep PCRE_MAJOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
  28. pcre_minor=`grep PCRE_MINOR $PCRE_INCDIR/pcre.h | sed -e 's/[^0-9]//g'`
  29. changequote([,])
  30. pcre_minor_length=`echo "$pcre_minor" | wc -c | sed -e 's/[^0-9]//g'`
  31. if test "$pcre_minor_length" -eq 2 ; then
  32. pcre_minor="$pcre_minor"0
  33. fi
  34. pcre_version=$pcre_major$pcre_minor
  35. if test "$pcre_version" -lt 660; then
  36. AC_MSG_ERROR([The PCRE extension requires PCRE library version >= 6.6])
  37. fi
  38. PHP_ADD_LIBRARY_WITH_PATH(pcre, $PCRE_LIBDIR)
  39. AC_DEFINE(HAVE_PCRE, 1, [ ])
  40. PHP_ADD_INCLUDE($PCRE_INCDIR)
  41. PHP_NEW_EXTENSION(pcre, php_pcre.c, no)
  42. PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h])
  43. else
  44. AC_MSG_CHECKING([for PCRE library to use])
  45. AC_MSG_RESULT([bundled])
  46. pcrelib_sources="pcrelib/pcre_chartables.c pcrelib/pcre_ucd.c \
  47. pcrelib/pcre_compile.c pcrelib/pcre_config.c pcrelib/pcre_exec.c \
  48. pcrelib/pcre_fullinfo.c pcrelib/pcre_get.c pcrelib/pcre_globals.c \
  49. pcrelib/pcre_maketables.c pcrelib/pcre_newline.c \
  50. pcrelib/pcre_ord2utf8.c pcrelib/pcre_refcount.c pcrelib/pcre_study.c \
  51. pcrelib/pcre_tables.c pcrelib/pcre_valid_utf8.c \
  52. pcrelib/pcre_version.c pcrelib/pcre_xclass.c \
  53. pcrelib/pcre_jit_compile.c"
  54. PHP_PCRE_CFLAGS="-DHAVE_CONFIG_H -I@ext_srcdir@/pcrelib"
  55. PHP_NEW_EXTENSION(pcre, $pcrelib_sources php_pcre.c, no,,$PHP_PCRE_CFLAGS)
  56. PHP_ADD_BUILD_DIR($ext_builddir/pcrelib)
  57. PHP_INSTALL_HEADERS([ext/pcre], [php_pcre.h pcrelib/])
  58. AC_DEFINE(HAVE_BUNDLED_PCRE, 1, [ ])
  59. fi