]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
3923. [bug] Sanity check the xml2-config output. [RT #22246]
authorMark Andrews <marka@isc.org>
Fri, 22 Aug 2014 06:10:43 +0000 (16:10 +1000)
committerMark Andrews <marka@isc.org>
Fri, 22 Aug 2014 06:12:18 +0000 (16:12 +1000)
(cherry picked from commit 53f91cbd80dc353ecb7e8914dae84a6cd85c67c6)

CHANGES
configure
configure.in

diff --git a/CHANGES b/CHANGES
index 7c7d8bf3648d7e4502cb3d257111d951d4d9cf9f..e9b1d932343f7fa1075e4df4982154d5a91547ae 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,5 @@
+3923.  [bug]           Sanity check the xml2-config output. [RT #22246]
+
 3922.  [bug]           When resigning, dnssec-signzone was removing
                        all signatures from delegation nodes. It now
                        retains DS and (if applicable) NSEC signatures.
index 9255f12dfbfcc6fab479d503a617eb47c428e73f..11bccb707b1a0e2cc2a8b62b1f0dae269ee2a637 100755 (executable)
--- a/configure
+++ b/configure
@@ -15105,10 +15105,30 @@ esac
 
 if test "X$libxml2_libs" != "X"
 then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
        CFLAGS="$CFLAGS $libxml2_cflags"
        LIBS="$LIBS $libxml2_libs"
+       #
+       # Sanity check xml2-config output.
+       #
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <libxml/xmlwriter.h>
+int
+main ()
+{
+return(xmlTextWriterStartElement(NULL, NULL));
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  as_fn_error $? "xml2-config returns badness" "$LINENO" 5
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 
 $as_echo "#define HAVE_LIBXML2 1" >>confdefs.h
 
index 5189fc31c5e8927d1e0787ea043ee5c63056361c..be72623a6bf2e646a71b5a71f9468daa2b1b87e1 100644 (file)
@@ -1344,9 +1344,15 @@ esac
 
 if test "X$libxml2_libs" != "X"
 then
-       AC_MSG_RESULT(yes)
        CFLAGS="$CFLAGS $libxml2_cflags"
        LIBS="$LIBS $libxml2_libs"
+       #
+       # Sanity check xml2-config output.
+       #
+       AC_TRY_LINK([#include <libxml/xmlwriter.h>],
+                   [return(xmlTextWriterStartElement(NULL, NULL));],
+                   AC_MSG_RESULT(yes),
+                   AC_MSG_ERROR(xml2-config returns badness))
        AC_DEFINE(HAVE_LIBXML2, 1, [Define if libxml2 was found])
 else
        AC_MSG_RESULT(no)