]> 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:11:03 +0000 (16:11 +1000)
(cherry picked from commit 53f91cbd80dc353ecb7e8914dae84a6cd85c67c6)

CHANGES
configure
configure.in

diff --git a/CHANGES b/CHANGES
index 7a4c13f5f54bb534d9ef65b7fcf3768c96329a70..144ed7ba3a315ef70806c8429309ce2ebcc46ac6 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 25f560cd3d1c2c68385bc9a5cced2a7b601f20b9..30c78fc249d98b8c460d0d94c7a46032f8b0d011 100755 (executable)
--- a/configure
+++ b/configure
@@ -16458,10 +16458,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 d065a7ded61414d073bb5f432a159093c0a6d517..21e7a6d43bb57d83ac49fc6ac30d95ddc78de2a4 100644 (file)
@@ -2085,9 +2085,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)