From 0c8dd6ebd656e06cf99a63eb93343715f4853503 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Sun, 3 Apr 2022 12:03:18 +0200 Subject: [PATCH] package/dhcp: use internal bind Use internal bind as dhcp doesn't build since bump of bind to version 9.16.26 in commit 8adeaec8afacbc680edebae91524f6144926ac92 and upstream doesn't plan to fix it any time soon: https://gitlab.isc.org/isc-projects/dhcp/-/issues/233#note_276883 In file included from ../includes/dhcpd.h:91, from ctrace.c:29: ../includes/omapip/isclib.h:51:10: fatal error: isc/boolean.h: No such file or directory 51 | #include | ^~~~~~~~~~~~~~~ Fixes: - http://autobuild.buildroot.org/results/d18b006dce7b46631ce8f4c72fb97eb861993939 Signed-off-by: Fabrice Fontaine Reviewed-by: James Hilliard Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- package/dhcp/Config.in | 1 - package/dhcp/dhcp.mk | 19 ++++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/package/dhcp/Config.in b/package/dhcp/Config.in index 515040c612..e0706efafb 100644 --- a/package/dhcp/Config.in +++ b/package/dhcp/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_DHCP # fork() depends on BR2_USE_MMU depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS - select BR2_PACKAGE_BIND help DHCP relay agent from the ISC DHCP distribution. diff --git a/package/dhcp/dhcp.mk b/package/dhcp/dhcp.mk index 18765a3639..f1e3c22f1c 100644 --- a/package/dhcp/dhcp.mk +++ b/package/dhcp/dhcp.mk @@ -9,8 +9,10 @@ DHCP_SITE = https://ftp.isc.org/isc/dhcp/$(DHCP_VERSION) DHCP_INSTALL_STAGING = YES DHCP_LICENSE = MPL-2.0 DHCP_LICENSE_FILES = LICENSE -DHCP_DEPENDENCIES = bind host-gawk +DHCP_DEPENDENCIES = host-gawk DHCP_CPE_ID_VENDOR = isc +# internal bind does not support parallel builds. +DHCP_MAKE = $(MAKE1) # use libtool-enabled configure.ac define DHCP_LIBTOOL_AUTORECONF @@ -21,11 +23,12 @@ DHCP_CONF_ENV = \ CPPFLAGS='-D_PATH_DHCPD_CONF=\"/etc/dhcp/dhcpd.conf\" \ -D_PATH_DHCLIENT_CONF=\"/etc/dhcp/dhclient.conf\"' \ CFLAGS='$(TARGET_CFLAGS) -DISC_CHECK_NONE=1' +DHCP_BIND_EXTRA_CONFIG = BUILD_CC='$(TARGET_CC)' DHCP_CONF_ENV += ac_cv_prog_AWK=$(HOST_DIR)/bin/gawk DHCP_CONF_OPTS = \ - --with-libbind=$(STAGING_DIR)/usr \ + --with-bind-extra-config="$(DHCP_BIND_EXTRA_CONFIG)" \ --with-randomdev=/dev/random \ --with-srv-lease-file=/var/lib/dhcp/dhcpd.leases \ --with-srv6-lease-file=/var/lib/dhcp/dhcpd6.leases \ @@ -38,8 +41,18 @@ DHCP_CONF_OPTS = \ --with-relay-pid-file=/var/run/dhcrelay.pid \ --with-relay6-pid-file=/var/run/dhcrelay6.pid +ifeq ($(BR2_PACKAGE_ZLIB),y) +DHCP_BIND_EXTRA_CONFIG += --with-zlib +DHCP_DEPENDENCIES += zlib +else +DHCP_BIND_EXTRA_CONFIG += --without-zlib +endif + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +DHCP_CONF_ENV += LIBS=-latomic +endif + ifeq ($(BR2_STATIC_LIBS),y) -DHCP_CONF_ENV += LIBS="`$(STAGING_DIR)/usr/bin/bind9-config --libs bind9`" DHCP_CONF_OPTS += --disable-libtool else DHCP_POST_EXTRACT_HOOKS += DHCP_LIBTOOL_AUTORECONF