config.m4 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. dnl $Id$
  2. dnl config.m4 for extension fileinfo
  3. PHP_ARG_ENABLE(fileinfo, for fileinfo support,
  4. [ --disable-fileinfo Disable fileinfo support], yes)
  5. if test "$PHP_FILEINFO" != "no"; then
  6. libmagic_sources=" \
  7. libmagic/apprentice.c libmagic/apptype.c libmagic/ascmagic.c \
  8. libmagic/cdf.c libmagic/cdf_time.c libmagic/compress.c \
  9. libmagic/encoding.c libmagic/fsmagic.c libmagic/funcs.c \
  10. libmagic/is_tar.c libmagic/magic.c libmagic/print.c \
  11. libmagic/readcdf.c libmagic/softmagic.c"
  12. AC_MSG_CHECKING([for strcasestr])
  13. AC_TRY_RUN([
  14. #include <string.h>
  15. #include <strings.h>
  16. #include <stdlib.h>
  17. int main(void)
  18. {
  19. char *s0, *s1, *ret;
  20. s0 = (char *) malloc(42);
  21. s1 = (char *) malloc(8);
  22. memset(s0, 'X', 42);
  23. s0[24] = 'Y';
  24. s0[26] = 'Z';
  25. s0[41] = '\0';
  26. memset(s1, 'x', 8);
  27. s1[0] = 'y';
  28. s1[2] = 'Z';
  29. s1[7] = '\0';
  30. ret = strcasestr(s0, s1);
  31. return !(NULL != ret);
  32. }
  33. ],[
  34. dnl using the platform implementation
  35. AC_MSG_RESULT(yes)
  36. ],[
  37. AC_MSG_RESULT(no)
  38. AC_MSG_NOTICE(using libmagic strcasestr implementation)
  39. libmagic_sources="$libmagic_sources libmagic/strcasestr.c"
  40. ])
  41. PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic)
  42. PHP_ADD_BUILD_DIR($ext_builddir/libmagic)
  43. AC_CHECK_FUNCS([utimes strndup])
  44. PHP_ADD_MAKEFILE_FRAGMENT
  45. fi