From: Pierre Joye Date: Tue, 15 Jul 2008 16:47:40 +0000 (+0000) Subject: - MFB: do not enable libxml or dom when a dep/header/lib is missing X-Git-Tag: BEFORE_HEAD_NS_CHANGE~1249 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0ccf442868e062b93fe8f3a700a2327fcb9feb3d;p=php - MFB: do not enable libxml or dom when a dep/header/lib is missing --- diff --git a/ext/dom/config.w32 b/ext/dom/config.w32 index 382587ff6e..edc2fc267e 100644 --- a/ext/dom/config.w32 +++ b/ext/dom/config.w32 @@ -4,19 +4,23 @@ ARG_WITH("dom", "DOM support", "yes"); if (PHP_DOM == "yes" && PHP_LIBXML == "yes") { - EXTENSION("dom", "php_dom.c attr.c document.c domerrorhandler.c \ - domstringlist.c domexception.c namelist.c processinginstruction.c \ - cdatasection.c documentfragment.c domimplementation.c element.c \ - node.c string_extend.c characterdata.c documenttype.c \ - domimplementationlist.c entity.c nodelist.c text.c comment.c \ - domconfiguration.c domimplementationsource.c entityreference.c \ - notation.c xpath.c dom_iterators.c typeinfo.c domerror.c \ - domlocator.c namednodemap.c userdatahandler.c"); - AC_DEFINE("HAVE_DOM", 1, "DOM support"); - if (!PHP_DOM_SHARED) { - ADD_FLAG("CFLAGS_DOM", "/D LIBXML_STATIC "); + if (PHP_LIBXML == "yes" && ADD_EXTENSION_DEP('dom', 'libxml')) { + EXTENSION("dom", "php_dom.c attr.c document.c domerrorhandler.c \ + domstringlist.c domexception.c namelist.c processinginstruction.c \ + cdatasection.c documentfragment.c domimplementation.c element.c \ + node.c string_extend.c characterdata.c documenttype.c \ + domimplementationlist.c entity.c nodelist.c text.c comment.c \ + domconfiguration.c domimplementationsource.c entityreference.c \ + notation.c xpath.c dom_iterators.c typeinfo.c domerror.c \ + domlocator.c namednodemap.c userdatahandler.c"); + AC_DEFINE("HAVE_DOM", 1, "DOM support"); + if (!PHP_DOM_SHARED) { + ADD_FLAG("CFLAGS_DOM", "/D LIBXML_STATIC "); + } + } else { + WARNING("dom support can't be enabled, libxml is not enabled") + PHP_DOM = "no" } - ADD_EXTENSION_DEP('dom', 'libxml'); } diff --git a/ext/libxml/config.w32 b/ext/libxml/config.w32 index bfac5c839a..6996374312 100644 --- a/ext/libxml/config.w32 +++ b/ext/libxml/config.w32 @@ -6,7 +6,8 @@ ARG_WITH("libxml", "LibXML support", "yes"); if (PHP_LIBXML == "yes") { if (CHECK_LIB("libxml2_a_dll.lib;libxml2_a.lib", "libxml") && CHECK_LIB("libiconv_a.lib;iconv_a.lib;libiconv.lib;iconv.lib", "libxml") && - CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS")) { + CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS_LIBXML") && + ADD_EXTENSION_DEP('libxml', 'iconv')) { EXTENSION("libxml", "libxml.c", false /* never shared */); AC_DEFINE("HAVE_LIBXML", 1, "LibXML support"); @@ -14,7 +15,9 @@ if (PHP_LIBXML == "yes") { if (!PHP_LIBXML_SHARED) { ADD_DEF_FILE("ext\\libxml\\php_libxml2.def"); } - ADD_EXTENSION_DEP('libxml', 'iconv'); + } else { + WARNING("libxml support can't be enabled, iconv or libxml are missing") + PHP_LIBXML = "no" } }