1 # Copyright (C) 2007 OpenWrt.org
2 # Original port by FreeWRT project.
4 # 2007 Alexander Tsvyashchenko Adapted FreeWRT port for OpenWRT (Trac ticket 2497)
5 # 2008 Some Danish guy Created a port for OpenWRT 7.09
6 # 20090403 jhalfmoon Modified and augmented existing packages to work on OpenWRT buildroot (v8.09)
8 # This is free software, licensed under the GNU General Public License v2.
9 # See /LICENSE for more information.
12 include $(TOPDIR)/rules.mk
18 PKG_SOURCE:=${PKG_NAME}-${PKG_VERSION}.tar.gz
19 PKG_SOURCE_URL:=http://cr.yp.to/djbdns/
20 PKG_MD5SUM:=3147c5cd56832aa3b41955c7a51cbeb2
21 PKG_BUILD_DEPENDS:=daemontools ucspi-tcp
23 include $(INCLUDE_DIR)/package.mk
25 define Package/djbdns/Default
28 URL:=http://cr.yp.to/djbdns.html
29 SUBMENU:=IP Addresses and Names
33 define Package/djbdns-base
34 $(call Package/djbdns/Default)
35 TITLE:=djbdns base configuration file
38 define Package/djbdns-dnscache
39 $(call Package/djbdns/Default)
40 TITLE:=Recursive and forwarding caching name server
41 DEPENDS:= +djbdns-base
44 define Package/djbdns-tinydns
45 $(call Package/djbdns/Default)
46 TITLE:=Authoritative name server
47 DEPENDS:= +djbdns-base
50 define Package/djbdns-axfrdns
51 $(call Package/djbdns/Default)
52 TITLE:=Zone transfer server
53 DEPENDS:= +djbdns-base +djbdns-tinydns +ucspi-tcp
56 define Package/djbdns-rbldns
57 $(call Package/djbdns/Default)
58 TITLE:=Real-time Block List name server
59 DEPENDS:= +djbdns-base
62 define Package/djbdns-walldns
63 $(call Package/djbdns/Default)
64 TITLE:=Reverse DNS wall
65 DEPENDS:= +djbdns-base
68 define Package/djbdns-tools
69 $(call Package/djbdns/Default)
70 TITLE:=Tools for testing and debugging DNS issues
73 define Package/djdbns/description
74 djbdns is a collection of Domain Name System tools.
75 It includes software for all the fundamental DNS operations:
76 * DNS server: publishing addresses of Internet hosts.
77 * DNS cache: finding addresses of Internet hosts.
78 * DNS client: talking to a DNS cache.
80 Also included is a DNS client C library, several command-line
81 DNS client utilities, several DNS debugging tools.
84 define Package/djbdns-base/description
85 The shared config file for the djbdns daemons.
88 define Package/djbdns-dnscache/description
89 dnscache is a DNS cache.
90 It accepts recursive DNS queries from local clients such as web
91 browsers and mail transfer agents. It collects responses from
92 remote DNS servers. It caches the responses to save time later.
95 define Package/djbdns-tinydns/description
96 tinydns is a DNS server.
97 It accepts iterative DNS queries from hosts around the Internet
98 and responds with locally configured information.
101 define Package/djbdns-axfrdns/description
102 axfrdns is a DNS zone-transfer server.
103 It reads a zone-transfer request in DNS-over-TCP format
104 from its standard input and responds with locally configured
108 define Package/djbdns-rbldns/description
109 rbldns is an IP-address-listing DNS server.
110 It accepts iterative DNS queries from hosts around the Internet asking
111 about various IP addresses. It provides responses showing whether the
112 addresses are on a locally configured list, such as RBL or DUL.
115 define Package/djbdns-walldns/description
116 walldns is a reverse DNS wall.
117 It accepts iterative DNS queries for in-addr.arpa domains from hosts
118 around the Internet and supplies generic responses that avoid
119 revealing local host information.
122 define Package/djbdns-tools/description
123 Several command-line DNS client utilities and DNS debugging tools.
127 TARGET_CC="$(TARGET_CC)" \
128 TARGET_CFLAGS="$(TARGET_CFLAGS)" \
129 TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \
130 TARGET_RANLIB="$(TARGET_CROSS)ranlib" \
131 $(MAKE) -C $(PKG_BUILD_DIR)
134 define Package/djbdns-base/install
135 $(INSTALL_DIR) $(1)/etc/config
136 $(INSTALL_DATA) ./files/djbdns.conf $(1)/etc/config/djbdns
139 define Package/djbdns-dnscache/install
140 $(INSTALL_DIR) $(1)/usr/bin
141 (cd $(PKG_BUILD_DIR); \
142 $(INSTALL_BIN) dnscache pickdns pickdns-data $(1)/usr/bin)
143 $(INSTALL_DIR) $(1)/etc/init.d
144 $(INSTALL_BIN) ./files/dnscache.init $(1)/etc/init.d/dnscache
145 $(CP) -r ./files/dnscache $(1)/etc/
146 $(CP) $(PKG_BUILD_DIR)/dnsroots.global $(1)/etc/dnscache/
147 $(INSTALL_DIR) $(1)/etc/dnscache/ip
148 $(INSTALL_DIR) $(1)/etc/dnscache/servers
149 $(CP) $(PKG_BUILD_DIR)/dnsroots.global $(1)/etc/dnscache/servers/@
152 define Package/djbdns-tinydns/install
153 $(INSTALL_DIR) $(1)/usr/bin
154 (cd $(PKG_BUILD_DIR); \
155 $(INSTALL_BIN) tinydns tinydns-data tinydns-edit tinydns-get $(1)/usr/bin)
156 $(INSTALL_DIR) $(1)/etc/init.d
157 $(INSTALL_BIN) ./files/tinydns.init $(1)/etc/init.d/tinydns
158 $(CP) -r ./files/tinydns $(1)/etc/
161 define Package/djbdns-axfrdns/install
162 $(INSTALL_DIR) $(1)/usr/bin
163 (cd $(PKG_BUILD_DIR); \
164 $(INSTALL_BIN) axfrdns axfr-get $(1)/usr/bin)
165 $(INSTALL_DIR) $(1)/etc/init.d
166 $(INSTALL_BIN) ./files/axfrdns.init $(1)/etc/init.d/axfrdns
167 $(CP) -r ./files/axfrdns $(1)/etc/
170 define Package/djbdns-rbldns/install
171 $(INSTALL_DIR) $(1)/usr/bin
172 (cd $(PKG_BUILD_DIR); \
173 $(INSTALL_BIN) rbldns rbldns-data $(1)/usr/bin)
174 $(INSTALL_DIR) $(1)/etc/init.d
175 $(INSTALL_BIN) ./files/rbldns.init $(1)/etc/init.d/rbldns
176 $(CP) -r ./files/rbldns $(1)/etc/
179 define Package/djbdns-walldns/install
180 $(INSTALL_DIR) $(1)/usr/bin
181 (cd $(PKG_BUILD_DIR); \
182 $(INSTALL_BIN) walldns $(1)/usr/bin)
183 $(INSTALL_DIR) $(1)/etc/init.d
184 $(INSTALL_BIN) ./files/walldns.init $(1)/etc/init.d/walldns
187 define Package/djbdns-tools/install
188 $(INSTALL_DIR) $(1)/usr/bin
189 (cd $(PKG_BUILD_DIR); \
190 $(INSTALL_BIN) dnsfilter dnsip dnsipq dnsmx dnsname dnsnamex dnsq \
191 dnsqr dnstrace dnstracesort dnstxt random-ip \
193 $(INSTALL_BIN) ./files/dnsroots-update $(1)/usr/bin/
194 $(INSTALL_BIN) ./files/dnsqrx $(1)/usr/bin/
197 $(eval $(call BuildPackage,djbdns-base))
198 $(eval $(call BuildPackage,djbdns-tinydns))
199 $(eval $(call BuildPackage,djbdns-dnscache))
200 $(eval $(call BuildPackage,djbdns-axfrdns))
201 $(eval $(call BuildPackage,djbdns-rbldns))
202 $(eval $(call BuildPackage,djbdns-walldns))
203 $(eval $(call BuildPackage,djbdns-tools))