summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Larson <chris_larson@mentor.com>2016-05-24 09:28:40 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-05-30 09:30:29 +0100
commit16c30d85a8bae3cbebb80c082ccd34e2ab0d2540 (patch)
treec0f807b130eed5747db04d6181c829080cf24ad9
parentd603a6abf5abff2d1ccee902e0eb9f651aeb121e (diff)
downloadopenembedded-core-16c30d85a8bae3cbebb80c082ccd34e2ab0d2540.tar.gz
openembedded-core-16c30d85a8bae3cbebb80c082ccd34e2ab0d2540.tar.bz2
openembedded-core-16c30d85a8bae3cbebb80c082ccd34e2ab0d2540.zip
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. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/recipes-connectivity/dhcp/dhcp/libxml2-configure-argument.patch27
-rw-r--r--meta/recipes-connectivity/dhcp/dhcp_4.3.3.bb4
2 files changed, 31 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/dhcp/dhcp/libxml2-configure-argument.patch b/meta/recipes-connectivity/dhcp/dhcp/libxml2-configure-argument.patch
new file mode 100644
index 0000000000..9d2fbfb292
--- /dev/null
+++ b/meta/recipes-connectivity/dhcp/dhcp/libxml2-configure-argument.patch
@@ -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,
diff --git a/meta/recipes-connectivity/dhcp/dhcp_4.3.3.bb b/meta/recipes-connectivity/dhcp/dhcp_4.3.3.bb
index 4e8cd272b8..97dde1df48 100644
--- a/meta/recipes-connectivity/dhcp/dhcp_4.3.3.bb
+++ b/meta/recipes-connectivity/dhcp/dhcp_4.3.3.bb
@@ -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"