summaryrefslogtreecommitdiff
path: root/ext/fileinfo/config.m4
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2014-04-15 10:26:49 -0700
committerAnatol Belski <ab@php.net>2014-04-15 10:26:49 -0700
commitaaf197180a47d3fe9dfc8a25acdf89c0a7bca059 (patch)
treeafda7b2870aa7e8553e8156bd2a2d33ed091f5a5 /ext/fileinfo/config.m4
parentbfbb409b32493d7510a943c1201caa89484a0f65 (diff)
downloadphp-git-aaf197180a47d3fe9dfc8a25acdf89c0a7bca059.tar.gz
Fixed bug #66907 Solaris 10 is missing strcasestr and needs substitute
Diffstat (limited to 'ext/fileinfo/config.m4')
-rw-r--r--ext/fileinfo/config.m435
1 files changed, 35 insertions, 0 deletions
diff --git a/ext/fileinfo/config.m4 b/ext/fileinfo/config.m4
index 4f34041259..a11dbf8dac 100644
--- a/ext/fileinfo/config.m4
+++ b/ext/fileinfo/config.m4
@@ -13,6 +13,41 @@ if test "$PHP_FILEINFO" != "no"; then
libmagic/is_tar.c libmagic/magic.c libmagic/print.c \
libmagic/readcdf.c libmagic/readelf.c libmagic/softmagic.c"
+ AC_MSG_CHECKING([for strcasestr])
+ AC_TRY_RUN([
+#include <string.h>
+#include <strings.h>
+#include <stdlib.h>
+
+int main(void)
+{
+ char *s0, *s1, *ret;
+
+ s0 = (char *) malloc(42);
+ s1 = (char *) malloc(8);
+
+ memset(s0, 'X', 42);
+ s0[24] = 'Y';
+ s0[26] = 'Z';
+ s0[41] = '\0';
+ memset(s1, 'x', 8);
+ s1[0] = 'y';
+ s1[2] = 'Z';
+ s1[7] = '\0';
+
+ ret = strcasestr(s0, s1);
+
+ return !(NULL != ret);
+}
+ ],[
+ dnl using the platform implementation
+ AC_MSG_RESULT(yes)
+ ],[
+ AC_MSG_RESULT(no)
+ AC_MSG_NOTICE(using libmagic strcasestr implementation)
+ libmagic_sources="$libmagic_sources libmagic/strcasestr.c"
+ ])
+
PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic)
PHP_ADD_BUILD_DIR($ext_builddir/libmagic)