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