1 ################################################################################
5 ################################################################################
8 BIND_SITE = ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION)
9 BIND_INSTALL_STAGING = YES
10 BIND_CONFIG_SCRIPTS = bind9-config isc-config.sh
12 BIND_LICENSE_FILES = COPYRIGHT
13 BIND_TARGET_SERVER_SBIN = arpaname ddns-confgen dnssec-checkds dnssec-coverage
14 BIND_TARGET_SERVER_SBIN += dnssec-importkey dnssec-keygen dnssec-revoke
15 BIND_TARGET_SERVER_SBIN += dnssec-settime dnssec-verify genrandom
16 BIND_TARGET_SERVER_SBIN += isc-hmac-fixup named-journalprint nsec3hash
17 BIND_TARGET_SERVER_SBIN += lwresd named named-checkconf named-checkzone
18 BIND_TARGET_SERVER_SBIN += named-compilezone rndc rndc-confgen dnssec-dsfromkey
19 BIND_TARGET_SERVER_SBIN += dnssec-keyfromlabel dnssec-signzone
20 BIND_TARGET_TOOLS_BIN = dig host nslookup nsupdate
22 BUILD_CC="$(TARGET_CC)" \
23 BUILD_CFLAGS="$(TARGET_CFLAGS)"
25 --with-randomdev=/dev/urandom \
31 ifeq ($(BR2_PACKAGE_LIBCAP),y)
32 BIND_CONF_OPTS += --enable-linux-caps
33 BIND_DEPENDENCIES += libcap
35 BIND_CONF_OPTS += --disable-linux-caps
38 ifeq ($(BR2_PACKAGE_LIBXML2),y)
39 BIND_CONF_OPTS += --with-libxml2=$(STAGING_DIR)/usr --enable-newstats
40 BIND_DEPENDENCIES += libxml2
42 BIND_CONF_OPTS += --with-libxml2=no
45 ifeq ($(BR2_PACKAGE_OPENSSL),y)
46 BIND_DEPENDENCIES += openssl
48 ac_cv_func_EVP_sha256=yes \
49 ac_cv_func_EVP_sha384=yes \
50 ac_cv_func_EVP_sha512=yes
52 --with-openssl=$(STAGING_DIR)/usr LIBS="-lz" \
54 # GOST cipher support requires openssl extra engines
55 ifeq ($(BR2_PACKAGE_OPENSSL_ENGINES),y)
56 BIND_CONF_OPTS += --with-gost=yes
58 BIND_CONF_OPTS += --with-gost=no
61 BIND_CONF_OPTS += --with-openssl=no
64 # Used by dnssec-checkds and dnssec-coverage
65 ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),)
66 BIND_CONF_OPTS += --with-python=no
69 ifeq ($(BR2_PACKAGE_READLINE),y)
70 BIND_DEPENDENCIES += readline
72 BIND_CONF_OPTS += --with-readline=no
75 define BIND_TARGET_REMOVE_SERVER
76 rm -rf $(addprefix $(TARGET_DIR)/usr/sbin/, $(BIND_TARGET_SERVER_SBIN))
79 define BIND_TARGET_REMOVE_TOOLS
80 rm -rf $(addprefix $(TARGET_DIR)/usr/bin/, $(BIND_TARGET_TOOLS_BIN))
83 ifeq ($(BR2_PACKAGE_BIND_SERVER),y)
84 define BIND_INSTALL_INIT_SYSV
85 $(INSTALL) -m 0755 -D package/bind/S81named \
86 $(TARGET_DIR)/etc/init.d/S81named
88 define BIND_INSTALL_INIT_SYSTEMD
89 $(INSTALL) -D -m 644 package/bind/named.service \
90 $(TARGET_DIR)/usr/lib/systemd/system/named.service
92 mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
94 ln -sf /usr/lib/systemd/system/named.service \
95 $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/named.service
98 BIND_POST_INSTALL_TARGET_HOOKS += BIND_TARGET_REMOVE_SERVER
101 ifeq ($(BR2_PACKAGE_BIND_TOOLS),)
102 BIND_POST_INSTALL_TARGET_HOOKS += BIND_TARGET_REMOVE_TOOLS
106 named -1 named -1 * /etc/bind - - BIND daemon
109 $(eval $(autotools-package))