1// vim:ft=javascript 2 3ARG_WITH("libxml", "LibXML support", "yes"); 4 5if (PHP_LIBXML == "yes") { 6 if (CHECK_LIB("libxml2_a_dll.lib;libxml2_a.lib", "libxml") && 7 ((PHP_ICONV != "no" && !PHP_ICONV_SHARED) || CHECK_LIB("libiconv_a.lib;iconv_a.lib;libiconv.lib;iconv.lib", "libxml")) && 8 CHECK_HEADER_ADD_INCLUDE("libxml/parser.h", "CFLAGS_LIBXML", PHP_PHP_BUILD + "\\include\\libxml2") && 9 CHECK_HEADER_ADD_INCLUDE("libxml/tree.h", "CFLAGS_LIBXML", PHP_PHP_BUILD + "\\include\\libxml2")) { 10 11 if (GREP_HEADER("libxml/xmlversion.h", "#define\\s+LIBXML_VERSION\\s+(\\d+)", PHP_PHP_BUILD + "\\include\\libxml2") && 12 +RegExp.$1 >= 20904) { 13 14 EXTENSION("libxml", "libxml.c mime_sniff.c", false /* never shared */, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"); 15 AC_DEFINE("HAVE_LIBXML", 1, "Define to 1 if the PHP extension 'libxml' is available."); 16 ADD_FLAG("CFLAGS_LIBXML", "/D LIBXML_STATIC /D LIBXML_STATIC_FOR_DLL /D HAVE_WIN32_THREADS "); 17 if (!PHP_LIBXML_SHARED) { 18 ADD_DEF_FILE("ext\\libxml\\php_libxml2.def"); 19 } 20 PHP_INSTALL_HEADERS("ext/libxml", "php_libxml.h"); 21 } else { 22 WARNING("libxml support can't be enabled, libxml version >= 2.9.4 required"); 23 } 24 } else { 25 WARNING("libxml support can't be enabled, iconv or libxml are missing") 26 PHP_LIBXML = "no" 27 } 28} 29