]> granicus.if.org Git - php/commitdiff
- Fix phpize build
authorfoobar <sniper@php.net>
Thu, 27 Jul 2006 01:18:41 +0000 (01:18 +0000)
committerfoobar <sniper@php.net>
Thu, 27 Jul 2006 01:18:41 +0000 (01:18 +0000)
ext/wddx/config.m4

index 86b19e62ef0e7be42809ebcdd3420e95606c3bba..2b02a92aa9fc9a7b3c4e67c30637aba3c266c2ff 100644 (file)
@@ -5,11 +5,56 @@ dnl
 PHP_ARG_ENABLE(wddx,whether to enable WDDX support,
 [  --enable-wddx           Enable WDDX support])
 
+if test -z "$PHP_LIBXML_DIR"; then
+  PHP_ARG_WITH(libxml-dir, libxml2 install dir,
+  [  --with-libxml-dir=DIR     WDDX: libxml2 install prefix], no, no)
+fi
+
+PHP_ARG_WITH(libexpat-dir, libexpat dir for WDDX,
+[  --with-libexpat-dir=DIR   WDDX: libexpat dir for XMLRPC-EPI (deprecated)],no,no)
+
 if test "$PHP_WDDX" != "no"; then
-  if test "$ext_shared" != "yes" && (test "$enable_xml" = "no" || test "${enable_xml+set}" != "set"); then
-    AC_MSG_WARN(Activating XML)
-    enable_xml=yes
+
+  dnl
+  dnl Default to libxml2 if --with-libexpat-dir is not used
+  dnl
+  if test "$PHP_LIBEXPAT_DIR" = "no"; then
+    if test "$PHP_LIBXML" = "no"; then
+      AC_MSG_ERROR([WDDX extension requires LIBXML extension, add --enable-libxml])
+    fi
+
+    PHP_SETUP_LIBXML(WDDX_SHARED_LIBADD, [
+      if test "$PHP_XML" = "no"; then
+        PHP_ADD_SOURCES(ext/xml, compat.c)
+        PHP_ADD_BUILD_DIR(ext/xml)
+      fi
+    ], [
+      AC_MSG_ERROR([xml2-config not found. Use --with-libxml-dir=<DIR>])
+    ])
   fi
+
+  dnl
+  dnl Check for expat only if --with-libexpat-dir is used.
+  dnl
+  if test "$PHP_LIBEXPAT_DIR" != "no"; then
+    for i in $PHP_XML $PHP_LIBEXPAT_DIR /usr /usr/local; do
+      if test -f "$i/$PHP_LIBDIR/libexpat.a" || test -f "$i/$PHP_LIBDIR/libexpat.$SHLIB_SUFFIX_NAME"; then
+        EXPAT_DIR=$i
+        break
+      fi
+    done
+
+    if test -z "$EXPAT_DIR"; then
+      AC_MSG_ERROR([not found. Please reinstall the expat distribution.])
+    fi
+
+    PHP_ADD_INCLUDE($EXPAT_DIR/include)
+    PHP_ADD_LIBRARY_WITH_PATH(expat, $EXPAT_DIR/$PHP_LIBDIR, WDDX_SHARED_LIBADD)
+    AC_DEFINE(HAVE_LIBEXPAT, 1, [ ])
+  fi
+
   AC_DEFINE(HAVE_WDDX, 1, [ ])
   PHP_NEW_EXTENSION(wddx, wddx.c, $ext_shared)
+  PHP_ADD_EXTENSION_DEP(wddx, libxml)
+  PHP_SUBST(XMLRPC_SHARED_LIBADD)
 fi