dhcp: fix non-deterministic libxml2 dependency

This dependency was floating, which results in non-deterministic builds. Add
a configure argument and associated PACKAGECONFIG to fix this.

The libxml dep is only needed when bind was built with a dep on libxml due to
its httpstats feature. So, when you enable the httpstats config in bind, and
want to build dhcp, be sure to also enable the bind-httpstats config in dhcp.

(From OE-Core rev: 16c30d85a8bae3cbebb80c082ccd34e2ab0d2540)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Christopher Larson 2016-05-24 09:28:40 -07:00 committed by Richard Purdie
parent a0acd705ba
commit 4d6f027e51
2 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,27 @@
Add configure argument to make the libxml2 dependency explicit and
determinisitic.
Upstream-Status: Pending
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
--- dhcp-4.3.3.orig/configure.ac 2016-03-16 20:25:53.830697637 -0700
+++ dhcp-4.3.3/configure.ac 2016-03-16 20:28:19.415355257 -0700
@@ -631,7 +631,16 @@
# We need to find libxml2 if bind was built with support enabled
# otherwise we'll fail to build omapip/test.c
-AC_SEARCH_LIBS(xmlTextWriterStartElement, [xml2],)
+AC_ARG_WITH(libxml2,
+ AS_HELP_STRING([--with-libxml2], [link against libxml2. this is needed if bind was built with xml2 support enabled]),
+ with_libxml2="$withval", with_libxml2="no")
+
+if test x$with_libxml2 != xno; then
+ AC_SEARCH_LIBS(xmlTextWriterStartElement, [xml2],
+ [if test x$with_libxml2 != xauto; then
+ AC_MSG_FAILURE([*** Cannot find xmlTextWriterStartElement with -lxml2 and libxml2 was requested])
+ fi])
+fi
# OpenLDAP support.
AC_ARG_WITH(ldap,

View File

@ -9,7 +9,11 @@ SRC_URI += "file://dhcp-3.0.3-dhclient-dbus.patch;striplevel=0 \
file://CVE-2015-8605.patch \
file://0001-site.h-enable-gentle-shutdown.patch \
file://CVE-2016-2774.patch \
file://libxml2-configure-argument.patch \
"
SRC_URI[md5sum] = "c5577b09c9017cdd319a11ff6364268e"
SRC_URI[sha256sum] = "553c4945b09b1c1b904c4780f34f72aaefa2fc8c6556715de0bc9d4e3d255ede"
PACKAGECONFIG ?= ""
PACKAGECONFIG[bind-httpstats] = "--with-libxml2,--without-libxml2,libxml2"