2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 include $(TOPDIR)/rules.mk
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
17 ftp://ftp.isc.org/isc/bind9/$(PKG_VERSION) \
18 http://www.mirrorservice.org/sites/ftp.isc.org/isc/bind9/$(PKG_VERSION)
19 PKG_MD5SUM:=09b54d35036cb0423b2e618f21766285
22 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
23 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
25 PKG_BUILD_DEPENDS:=libopenssl
27 include $(INCLUDE_DIR)/package.mk
29 define Package/bind/Default
33 URL:=http://www.isc.org/sw/bind/
36 define Package/bind-libs
37 $(call Package/bind/Default)
38 TITLE+= shared libraries
41 define Package/bind-server
42 $(call Package/bind/Default)
46 define Package/bind-client
47 $(call Package/bind/Default)
48 TITLE+= dynamic DNS client
51 define Package/bind-tools
52 $(call Package/bind/Default)
53 TITLE+= administration tools (all)
56 define Package/bind-rndc
57 $(call Package/bind/Default)
58 TITLE+= administration tools (rndc and rndc-confgen only)
61 define Package/bind-check
62 $(call Package/bind/Default)
63 TITLE+= administration tools (named-checkconf and named-checkzone only)
66 define Package/bind-dnssec
67 $(call Package/bind/Default)
68 TITLE+= administration tools (dnssec-keygen and dnssec-signzone only)
71 define Package/bind-host
72 $(call Package/bind/Default)
73 TITLE+= simple DNS client
76 define Package/bind-dig
77 $(call Package/bind/Default)
78 TITLE+= DNS excavation tool
81 export BUILD_CC="$(TARGET_CC)"
87 --with-randomdev="/dev/urandom" \
89 --with-openssl="$(STAGING_DIR)/usr" \
92 BUILD_CC="$(TARGET_CC)" \
95 rm -rf $(PKG_INSTALL_DIR)
96 mkdir -p $(PKG_INSTALL_DIR)
97 $(MAKE) -C $(PKG_BUILD_DIR)/lib/dns \
98 BUILD_CC="$(HOSTCC)" \
103 $(MAKE) -C $(PKG_BUILD_DIR) \
104 DESTDIR="$(PKG_INSTALL_DIR)" \
105 DESTDIR="$(PKG_INSTALL_DIR)" \
109 define Package/bind-libs/install
110 $(INSTALL_DIR) $(1)/usr/lib
111 $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib
114 define Package/bind-server/install
115 $(INSTALL_DIR) $(1)/usr/sbin
116 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/named $(1)/usr/sbin/
117 $(INSTALL_DIR) $(1)/etc
118 $(CP) ./files/bind $(1)/etc/
119 $(INSTALL_DIR) $(1)/etc/init.d
120 $(CP) ./files/named.init $(1)/etc/init.d/named
121 find $(1)/etc/bind/ -name ".svn" | xargs rm -rf
124 define Package/bind-client/install
125 $(INSTALL_DIR) $(1)/usr/bin
126 $(CP) $(PKG_INSTALL_DIR)/usr/bin/nsupdate $(1)/usr/bin/
129 define Package/bind-tools/install
130 $(INSTALL_DIR) $(1)/usr/bin
131 $(CP) $(PKG_INSTALL_DIR)/usr/bin/dig $(1)/usr/bin/
132 $(CP) $(PKG_INSTALL_DIR)/usr/bin/host $(1)/usr/bin/
133 $(INSTALL_DIR) $(1)/usr/sbin
134 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/dnssec-keygen $(1)/usr/sbin/
135 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/dnssec-signzone $(1)/usr/sbin/
136 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/named-checkconf $(1)/usr/sbin/
137 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/named-checkzone $(1)/usr/sbin/
138 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/rndc $(1)/usr/sbin/
139 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/rndc-confgen $(1)/usr/sbin/
142 define Package/bind-rndc/install
143 $(INSTALL_DIR) $(1)/usr/sbin
144 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/rndc $(1)/usr/sbin/
145 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/rndc-confgen $(1)/usr/sbin/
148 define Package/bind-check/install
149 $(INSTALL_DIR) $(1)/usr/sbin
150 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/named-checkconf $(1)/usr/sbin/
151 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/named-checkzone $(1)/usr/sbin/
154 define Package/bind-dnssec/install
155 $(INSTALL_DIR) $(1)/usr/sbin
156 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/dnssec-keygen $(1)/usr/sbin/
157 $(CP) $(PKG_INSTALL_DIR)/usr/sbin/dnssec-signzone $(1)/usr/sbin/
160 define Package/bind-host/install
161 $(INSTALL_DIR) $(1)/usr/bin
162 $(CP) $(PKG_INSTALL_DIR)/usr/bin/host $(1)/usr/bin/
165 define Package/bind-dig/install
166 $(INSTALL_DIR) $(1)/usr/bin
167 $(CP) $(PKG_INSTALL_DIR)/usr/bin/dig $(1)/usr/bin/
170 $(eval $(call BuildPackage,bind-libs))
171 $(eval $(call BuildPackage,bind-server))
172 $(eval $(call BuildPackage,bind-client))
173 $(eval $(call BuildPackage,bind-tools))
174 $(eval $(call BuildPackage,bind-rndc))
175 $(eval $(call BuildPackage,bind-check))
176 $(eval $(call BuildPackage,bind-dnssec))
177 $(eval $(call BuildPackage,bind-host))
178 $(eval $(call BuildPackage,bind-dig))