config0.m4 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. dnl $Id$
  2. dnl config.m4 for extension ereg
  3. dnl
  4. dnl Check for regex library type
  5. dnl
  6. PHP_ARG_WITH(regex,,
  7. [ --with-regex=TYPE Regex library type: system, php. [TYPE=php]
  8. WARNING: Do NOT use unless you know what you are doing!], php, no)
  9. case $PHP_REGEX in
  10. system)
  11. if test "$PHP_SAPI" = "apache" || test "$PHP_SAPI" = "apache2filter" || test "$PHP_SAPI" = "apache2handler"; then
  12. REGEX_TYPE=php
  13. else
  14. REGEX_TYPE=system
  15. fi
  16. ;;
  17. yes | php)
  18. REGEX_TYPE=php
  19. ;;
  20. *)
  21. REGEX_TYPE=php
  22. AC_MSG_WARN([Invalid regex library type selected. Using default value: php])
  23. ;;
  24. esac
  25. AC_MSG_CHECKING([which regex library to use])
  26. AC_MSG_RESULT([$REGEX_TYPE])
  27. if test "$REGEX_TYPE" = "php"; then
  28. ereg_regex_sources="regex/regcomp.c regex/regexec.c regex/regerror.c regex/regfree.c"
  29. ereg_regex_headers="regex/"
  30. PHP_EREG_CFLAGS="-Dregexec=php_regexec -Dregerror=php_regerror -Dregfree=php_regfree -Dregcomp=php_regcomp"
  31. fi
  32. PHP_NEW_EXTENSION(ereg, ereg.c $ereg_regex_sources, no,,$PHP_EREG_CFLAGS)
  33. PHP_INSTALL_HEADERS([ext/ereg], [php_ereg.h php_regex.h $ereg_regex_headers])
  34. if test "$REGEX_TYPE" = "php"; then
  35. AC_DEFINE(HAVE_REGEX_T_RE_MAGIC, 1, [ ])
  36. AC_DEFINE(HSREGEX,1,[ ])
  37. AC_DEFINE(REGEX,1,[ ])
  38. PHP_ADD_BUILD_DIR([$ext_builddir/regex], 1)
  39. PHP_ADD_INCLUDE([$ext_srcdir/regex])
  40. elif test "$REGEX_TYPE" = "system"; then
  41. AC_DEFINE(REGEX,0,[ ])
  42. dnl Check if field re_magic exists in struct regex_t
  43. AC_CACHE_CHECK([whether field re_magic exists in struct regex_t], ac_cv_regex_t_re_magic, [
  44. AC_TRY_COMPILE([#include <sys/types.h>
  45. #include <regex.h>], [regex_t rt; rt.re_magic;],
  46. [ac_cv_regex_t_re_magic=yes], [ac_cv_regex_t_re_magic=no])])
  47. if test "$ac_cv_regex_t_re_magic" = "yes"; then
  48. AC_DEFINE([HAVE_REGEX_T_RE_MAGIC], [ ], 1)
  49. fi
  50. fi