php-src/ext/xmlrpc/config.w32
Christoph M. Becker 502b187ae8 Fix #75282: xmlrpc_encode_request() crashes
Since we allow ext/xmlrpc to be built against a system libxmlrpc(-epi),
we must not `efree` memory which has been allocated via `malloc`.  To
distinguish bundled and system libxmlrpc(-epi) we introduce the macro
`HAVE_XMLRPC_BUNDLED` (analogous to how it is done by ext/gd).  We
deliberately keep the ugly `#ifdef`s, instead of tucking them away in
an `XMLRPC_FREE()` macro, to not forget that it is a bad idea to fork
and bundle a library, but to also allow building against an unpatched
system lib.
2018-10-21 12:06:55 +02:00

22 lines
923 B
JavaScript

// $Id$
// vim:ft=javascript
ARG_WITH("xmlrpc", "XMLRPC-EPI support", "no");
if (PHP_XMLRPC != "no") {
if (CHECK_HEADER_ADD_INCLUDE("xmlrpc.h", "CFLAGS_XMLRPC", configure_module_dirname + "/libxmlrpc")
&& CHECK_HEADER_ADD_INCLUDE("iconv.h", "CFLAGS_XMLRPC")
&& CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS_XMLRPC", PHP_PHP_BUILD + "\\include\\libxml2")
&& ADD_EXTENSION_DEP('xmlrpc', 'libxml')
&& ADD_EXTENSION_DEP('xmlrpc', 'xml')) {
EXTENSION('xmlrpc', 'xmlrpc-epi-php.c', PHP_XMLRPC_SHARED, "-DVERSION=\"0.50\"");
ADD_SOURCES(configure_module_dirname + "/libxmlrpc", "base64.c simplestring.c xml_to_dandarpc.c \
xmlrpc_introspection.c encodings.c system_methods.c xml_to_xmlrpc.c \
queue.c xml_element.c xmlrpc.c xml_to_soap.c", "xmlrpc");
AC_DEFINE("HAVE_XMLRPC_BUNDLED", 1);
} else {
WARNING("xmlrpc support can't be enabled, libraries or headers are missing")
PHP_XMLRPC = "no";
}
}