sniper Fri Mar 25 22:13:58 2005 EDT
Modified files:
/php-src/ext/xml compat.c expat_compat.h
/php-src/ext/xmlrpc config.m4
/php-src/ext/xmlrpc/libxmlrpc xml_element.c xmlrpc.c
/php-src/main php_compat.h
Log:
- Made it possible to build ext/xmlrpc with libxml2
http://cvs.php.net/diff.php/php-src/ext/xml/compat.c?r1=1.41&r2=1.42&ty=u
Index: php-src/ext/xml/compat.c
diff -u php-src/ext/xml/compat.c:1.41 php-src/ext/xml/compat.c:1.42
--- php-src/ext/xml/compat.c:1.41 Wed Mar 2 13:13:34 2005
+++ php-src/ext/xml/compat.c Fri Mar 25 22:13:57 2005
@@ -17,7 +17,7 @@
*/
#include "php.h"
-#if defined(HAVE_LIBXML) && defined(HAVE_XML) && !defined(HAVE_LIBEXPAT)
+#if defined(HAVE_LIBXML) && (defined(HAVE_XML) || defined(HAVE_XMLRPC)) &&
!defined(HAVE_LIBEXPAT)
#include "expat_compat.h"
typedef struct _php_xml_ns {
http://cvs.php.net/diff.php/php-src/ext/xml/expat_compat.h?r1=1.16&r2=1.17&ty=u
Index: php-src/ext/xml/expat_compat.h
diff -u php-src/ext/xml/expat_compat.h:1.16 php-src/ext/xml/expat_compat.h:1.17
--- php-src/ext/xml/expat_compat.h:1.16 Sun Feb 22 12:51:01 2004
+++ php-src/ext/xml/expat_compat.h Fri Mar 25 22:13:57 2005
@@ -16,14 +16,23 @@
+----------------------------------------------------------------------+
*/
-/* $Id: expat_compat.h,v 1.16 2004/02/22 17:51:01 chregu Exp $ */
+/* $Id: expat_compat.h,v 1.17 2005/03/26 03:13:57 sniper Exp $ */
#ifndef PHP_EXPAT_COMPAT_H
#define PHP_EXPAT_COMPAT_H
+#ifdef PHP_WIN32
+#include "config.w32.h"
+#elif defined(NETWARE)
+#include "config.nw.h"
+#else
+#include <php_config.h>
+#endif
+
#if !defined(HAVE_LIBEXPAT) && defined(HAVE_LIBXML)
#define LIBXML_EXPAT_COMPAT 1
+#include "php.h"
#include "php_compat.h"
#include <libxml/parser.h>
http://cvs.php.net/diff.php/php-src/ext/xmlrpc/config.m4?r1=1.22&r2=1.23&ty=u
Index: php-src/ext/xmlrpc/config.m4
diff -u php-src/ext/xmlrpc/config.m4:1.22 php-src/ext/xmlrpc/config.m4:1.23
--- php-src/ext/xmlrpc/config.m4:1.22 Wed Nov 3 09:32:52 2004
+++ php-src/ext/xmlrpc/config.m4 Fri Mar 25 22:13:58 2005
@@ -1,5 +1,5 @@
dnl
-dnl $Id: config.m4,v 1.22 2004/11/03 14:32:52 jorton Exp $
+dnl $Id: config.m4,v 1.23 2005/03/26 03:13:58 sniper Exp $
dnl
sinclude(ext/xmlrpc/libxmlrpc/acinclude.m4)
@@ -10,30 +10,52 @@
PHP_ARG_WITH(xmlrpc, for XMLRPC-EPI support,
[ --with-xmlrpc[=DIR] Include XMLRPC-EPI support.])
+if test -z "$PHP_LIBXML_DIR"; then
+ PHP_ARG_WITH(libxml-dir, libxml2 install dir,
+ [ --with-libxml-dir=DIR XMLRPC-EPI: libxml2 install prefix], no, no)
+fi
+
PHP_ARG_WITH(expat-dir, libexpat dir for XMLRPC-EPI,
-[ --with-expat-dir=DIR XMLRPC-EPI: libexpat dir for XMLRPC-EPI.],no,no)
+[ --with-expat-dir=DIR XMLRPC-EPI: libexpat dir for XMLRPC-EPI.
(deprecated)],no,no)
PHP_ARG_WITH(iconv-dir, iconv dir for XMLRPC-EPI,
[ --with-iconv-dir=DIR XMLRPC-EPI: iconv dir for XMLRPC-EPI.],no,no)
if test "$PHP_XMLRPC" != "no"; then
+ PHP_ADD_EXTENSION_DEP(xmlrpc, libxml)
PHP_SUBST(XMLRPC_SHARED_LIBADD)
AC_DEFINE(HAVE_XMLRPC,1,[ ])
- testval=no
- for i in $PHP_EXPAT_DIR $XMLRPC_DIR /usr/local /usr; do
- if test -f $i/$PHP_LIBDIR/libexpat.a -o -f
$i/$PHP_LIBDIR/libexpat.$SHLIB_SUFFIX_NAME; then
- AC_DEFINE(HAVE_LIBEXPAT2,1,[ ])
- PHP_ADD_LIBRARY_WITH_PATH(expat, $i/$PHP_LIBDIR, XMLRPC_SHARED_LIBADD)
- PHP_ADD_INCLUDE($i/include)
- testval=yes
- break
+ dnl
+ dnl Default to libxml2.
+ dnl
+ PHP_SETUP_LIBXML(XMLRPC_SHARED_LIBADD, [
+ if test "$PHP_XML" = "no"; then
+ PHP_ADD_SOURCES(ext/xml, compat.c)
+ PHP_ADD_BUILD_DIR(ext/xml)
+ fi
+ ], [
+ if test "$PHP_EXPAT_DIR" = "no"; then
+ AC_MSG_ERROR([xml2-config not found. Use --with-libxml-dir=<DIR>])
fi
- done
+ ])
- if test "$testval" = "no"; then
- AC_MSG_ERROR(XML-RPC support requires libexpat. Use --with-expat-dir=<DIR>)
+ if test "$PHP_EXPAT_DIR" != "no"; then
+ testval=no
+ for i in $PHP_EXPAT_DIR $XMLRPC_DIR /usr/local /usr; do
+ if test -f $i/$PHP_LIBDIR/libexpat.a -o -f
$i/$PHP_LIBDIR/libexpat.$SHLIB_SUFFIX_NAME; then
+ AC_DEFINE(HAVE_LIBEXPAT,1,[ ])
+ PHP_ADD_LIBRARY_WITH_PATH(expat, $i/$PHP_LIBDIR, XMLRPC_SHARED_LIBADD)
+ PHP_ADD_INCLUDE($i/include)
+ testval=yes
+ break
+ fi
+ done
+
+ if test "$testval" = "no"; then
+ AC_MSG_ERROR(XML-RPC support requires libexpat. Use
--with-expat-dir=<DIR>)
+ fi
fi
if test "$PHP_ICONV_DIR" != "no"; then
@@ -49,7 +71,6 @@
])
fi
-
if test "$PHP_XMLRPC" = "yes"; then
XMLRPC_CHECKS
PHP_NEW_EXTENSION(xmlrpc,xmlrpc-epi-php.c libxmlrpc/base64.c \
@@ -89,5 +110,6 @@
PHP_ADD_INCLUDE($XMLRPC_DIR)
PHP_ADD_LIBRARY_WITH_PATH(xmlrpc, $XMLRPC_DIR/$PHP_LIBDIR,
XMLRPC_SHARED_LIBADD)
+ PHP_NEW_EXTENSION(xmlrpc,xmlrpc-epi-php.c, $ext_shared)
+ XMLRPC_MODULE_TYPE=external
fi
-
http://cvs.php.net/diff.php/php-src/ext/xmlrpc/libxmlrpc/xml_element.c?r1=1.6&r2=1.7&ty=u
Index: php-src/ext/xmlrpc/libxmlrpc/xml_element.c
diff -u php-src/ext/xmlrpc/libxmlrpc/xml_element.c:1.6
php-src/ext/xmlrpc/libxmlrpc/xml_element.c:1.7
--- php-src/ext/xmlrpc/libxmlrpc/xml_element.c:1.6 Tue Jun 1 16:16:06 2004
+++ php-src/ext/xmlrpc/libxmlrpc/xml_element.c Fri Mar 25 22:13:58 2005
@@ -31,7 +31,7 @@
*/
-static const char rcsid[] = "#(@) $Id: xml_element.c,v 1.6 2004/06/01 20:16:06
iliaa Exp $";
+static const char rcsid[] = "#(@) $Id: xml_element.c,v 1.7 2005/03/26 03:13:58
sniper Exp $";
@@ -44,6 +44,9 @@
* 06/2000
* HISTORY
* $Log: xml_element.c,v $
+ * Revision 1.7 2005/03/26 03:13:58 sniper
+ * - Made it possible to build ext/xmlrpc with libxml2
+ *
* Revision 1.6 2004/06/01 20:16:06 iliaa
* Fixed bug #28597 (xmlrpc_encode_request() incorrectly encodes chars in
* 200-210 range).
@@ -110,7 +113,7 @@
#include "xml_element.h"
#include "queue.h"
-#include "expat.h"
+#include "ext/xml/expat_compat.h"
#include "encodings.h"
#define my_free(thing) if(thing) {free(thing); thing = 0;}
@@ -572,7 +575,7 @@
/* expat start of element handler */
-static void startElement(void *userData, const char *name, const char **attrs)
+static void _xmlrpc_startElement(void *userData, const char *name, const char
**attrs)
{
xml_element *c;
xml_elem_data* mydata = (xml_elem_data*)userData;
@@ -600,7 +603,7 @@
}
/* expat end of element handler */
-static void endElement(void *userData, const char *name)
+static void _xmlrpc_endElement(void *userData, const char *name)
{
xml_elem_data* mydata = (xml_elem_data*)userData;
@@ -612,7 +615,7 @@
}
/* expat char data handler */
-static void charHandler(void *userData,
+static void _xmlrpc_charHandler(void *userData,
const char *s,
int len)
{
@@ -685,8 +688,8 @@
mydata.input_options = options;
mydata.needs_enc_conversion = options->encoding &&
strcmp(options->encoding, encoding_utf_8);
- XML_SetElementHandler(parser, startElement, endElement);
- XML_SetCharacterDataHandler(parser, charHandler);
+ XML_SetElementHandler(parser, _xmlrpc_startElement, _xmlrpc_endElement);
+ XML_SetCharacterDataHandler(parser, _xmlrpc_charHandler);
/* pass the xml_elem_data struct along */
XML_SetUserData(parser, (void*)&mydata);
http://cvs.php.net/diff.php/php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c?r1=1.6&r2=1.7&ty=u
Index: php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c
diff -u php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c:1.6
php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c:1.7
--- php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c:1.6 Tue Apr 27 13:33:59 2004
+++ php-src/ext/xmlrpc/libxmlrpc/xmlrpc.c Fri Mar 25 22:13:58 2005
@@ -31,7 +31,7 @@
*/
-static const char rcsid[] = "#(@) $Id: xmlrpc.c,v 1.6 2004/04/27 17:33:59
iliaa Exp $";
+static const char rcsid[] = "#(@) $Id: xmlrpc.c,v 1.7 2005/03/26 03:13:58
sniper Exp $";
/****h* ABOUT/xmlrpc
@@ -43,6 +43,9 @@
* 9/1999 - 10/2000
* HISTORY
* $Log: xmlrpc.c,v $
+ * Revision 1.7 2005/03/26 03:13:58 sniper
+ * - Made it possible to build ext/xmlrpc with libxml2
+ *
* Revision 1.6 2004/04/27 17:33:59 iliaa
* Removed C++ style comments.
*
@@ -132,7 +135,7 @@
#include "queue.h"
#include "xmlrpc.h"
-#include "expat.h"
+#include "ext/xml/expat_compat.h"
#include "base64.h"
#include "xml_to_xmlrpc.h"
http://cvs.php.net/diff.php/php-src/main/php_compat.h?r1=1.23&r2=1.24&ty=u
Index: php-src/main/php_compat.h
diff -u php-src/main/php_compat.h:1.23 php-src/main/php_compat.h:1.24
--- php-src/main/php_compat.h:1.23 Wed Feb 23 05:31:44 2005
+++ php-src/main/php_compat.h Fri Mar 25 22:13:58 2005
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_compat.h,v 1.23 2005/02/23 10:31:44 hyanantha Exp $ */
+/* $Id: php_compat.h,v 1.24 2005/03/26 03:13:58 sniper Exp $ */
#ifndef PHP_COMPAT_H
#define PHP_COMPAT_H
@@ -46,7 +46,7 @@
#define hashTableIterInit php_hashTableIterInit
#define hashTableIterNext php_hashTableIterNext
-#if defined(HAVE_LIBXML) && defined(HAVE_XML) && !defined(HAVE_LIBEXPAT)
+#if defined(HAVE_LIBXML) && (defined(HAVE_XML) || defined(HAVE_XMLRPC)) &&
!defined(HAVE_LIBEXPAT)
#define XML_DefaultCurrent php_XML_DefaultCurrent
#define XML_ErrorString php_XML_ErrorString
#define XML_ExpatVersion php_XML_ExpatVersion
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php