package/bind: enable static build

Static build has been disabled in 2014 with commit
6045904752b06a8b8e52ba8fc2e49a8548964e8d however bind can be built
statically thanks to --without-dlopen so enable it back

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2019-04-26 18:56:10 +02:00 committed by Thomas Petazzoni
parent 753bfec583
commit 05cbc9a184
3 changed files with 42 additions and 5 deletions

View File

@ -0,0 +1,28 @@
From 92b738a0fe8a7d65346de9e6dd7a8f135ee29765 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Tue, 23 Apr 2019 22:45:25 +0200
Subject: [PATCH] dlz_open_driver.c: fix build without dlfcn.h
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://gitlab.isc.org/isc-projects/bind9/issues/995]
---
bin/named/unix/dlz_dlopen_driver.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/bin/named/unix/dlz_dlopen_driver.c b/bin/named/unix/dlz_dlopen_driver.c
index 74d29ffa09..ab8a5c9493 100644
--- a/bin/named/unix/dlz_dlopen_driver.c
+++ b/bin/named/unix/dlz_dlopen_driver.c
@@ -14,7 +14,9 @@
#include <inttypes.h>
#include <stdlib.h>
#include <string.h>
+#if HAVE_DLFCN_H
#include <dlfcn.h>
+#endif
#include <dns/log.h>
#include <dns/result.h>
--
2.20.1

View File

@ -2,7 +2,6 @@ config BR2_PACKAGE_BIND
bool "bind" bool "bind"
depends on BR2_USE_MMU # fork() depends on BR2_USE_MMU # fork()
depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
help help
BIND (Berkeley Internet Name Domain) is an BIND (Berkeley Internet Name Domain) is an
implementation of the Domain Name System (DNS) protocols implementation of the Domain Name System (DNS) protocols
@ -41,6 +40,6 @@ config BR2_PACKAGE_BIND_TOOLS
endif endif
comment "bind needs a toolchain w/ threads, dynamic library" comment "bind needs a toolchain w/ threads"
depends on BR2_USE_MMU depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on !BR2_TOOLCHAIN_HAS_THREADS

View File

@ -28,7 +28,6 @@ BIND_CONF_OPTS = \
--with-libjson=no \ --with-libjson=no \
--with-randomdev=/dev/urandom \ --with-randomdev=/dev/urandom \
--enable-epoll \ --enable-epoll \
--with-libtool \
--with-gssapi=no \ --with-gssapi=no \
--enable-filter-aaaa --enable-filter-aaaa
@ -54,12 +53,13 @@ BIND_CONF_OPTS += --with-libxml2=no
endif endif
ifeq ($(BR2_PACKAGE_OPENSSL),y) ifeq ($(BR2_PACKAGE_OPENSSL),y)
BIND_DEPENDENCIES += openssl BIND_DEPENDENCIES += host-pkgconf openssl
BIND_CONF_OPTS += \ BIND_CONF_OPTS += \
--with-openssl=$(STAGING_DIR)/usr \ --with-openssl=$(STAGING_DIR)/usr \
--with-ecdsa=yes \ --with-ecdsa=yes \
--with-eddsa=no \ --with-eddsa=no \
--with-aes=yes --with-aes=yes
BIND_CONF_ENV += LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl`
# GOST cipher support requires openssl extra engines # GOST cipher support requires openssl extra engines
ifeq ($(BR2_PACKAGE_OPENSSL_ENGINES),y) ifeq ($(BR2_PACKAGE_OPENSSL_ENGINES),y)
BIND_CONF_OPTS += --with-gost=yes BIND_CONF_OPTS += --with-gost=yes
@ -84,6 +84,16 @@ else
BIND_CONF_OPTS += --with-readline=no BIND_CONF_OPTS += --with-readline=no
endif endif
ifeq ($(BR2_STATIC_LIBS),y)
BIND_CONF_OPTS += \
--without-dlopen \
--without-libtool
else
BIND_CONF_OPTS += \
--with-dlopen \
--with-libtool
endif
define BIND_TARGET_REMOVE_SERVER define BIND_TARGET_REMOVE_SERVER
rm -rf $(addprefix $(TARGET_DIR)/usr/sbin/, $(BIND_TARGET_SERVER_SBIN)) rm -rf $(addprefix $(TARGET_DIR)/usr/sbin/, $(BIND_TARGET_SERVER_SBIN))
endef endef