2 # Copyright (C) 2014-2016 CZ.NIC, z.s.p.o. <knot-dns@labs.nic.cz>
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
15 PKG_SOURCE_URL
:=https
://secure.nic.cz
/files
/knot-dns
/
16 PKG_MD5SUM
:=d573ecadedf4f15ec1f02671443520cb
18 PKG_MAINTAINER
:=Daniel Salzman
<daniel.salzman@nic.cz
>
19 PKG_LICENSE
:=GPL-3.0 LGPL-2.0
0BSD MIT OLDAP-2.8
21 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(PKG_VERSION
)
25 include $(INCLUDE_DIR
)/package.mk
27 define Package
/knot-lib
/Default
31 URL
:=https
://www.knot-dns.cz
34 define Package
/knot
/Default
37 SUBMENU
:=IP Addresses and Names
39 URL
:=https
://www.knot-dns.cz
40 USERID
:=knot
=5353:knot
=5353
43 define Package
/knot-libdnssec
44 $(call Package
/knot-lib
/Default
)
45 TITLE
+= DNSSEC library
46 DEPENDS
=+libpthread
+libgnutls
+jansson
49 define Package
/knot-libknot
50 $(call Package
/knot-lib
/Default
)
52 DEPENDS
=+libpthread
+knot-libdnssec
55 define Package
/knot-libzscanner
56 $(call Package
/knot-lib
/Default
)
57 TITLE
+= zone parser library
62 $(call Package
/knot
/Default
)
64 DEPENDS
=+liburcu
+libedit
+knot-libdnssec
+knot-libknot
+knot-libzscanner
67 define Package
/knot-dig
68 $(call Package
/knot
/Default
)
69 TITLE
+= advanced DNS lookup utility
70 DEPENDS
=+knot-libdnssec
+knot-libknot
73 define Package
/knot-host
74 $(call Package
/knot
/Default
)
75 TITLE
+= simple DNS lookup utility
76 DEPENDS
=+knot-libdnssec
+knot-libknot
79 define Package
/knot-nsupdate
80 $(call Package
/knot
/Default
)
81 TITLE
+= dynamic DNS update utility
82 DEPENDS
=+knot-libdnssec
+knot-libknot
+knot-libzscanner
85 define Package
/knot-nsec3hash
86 $(call Package
/knot
/Default
)
87 TITLE
+= simple NSEC3 hash utility
88 DEPENDS
=+knot-libdnssec
91 define Package
/knot-keymgr
92 $(call Package
/knot
/Default
)
93 TITLE
+= DNSSEC key management utility
94 DEPENDS
=+knot-libdnssec
+knot-libzscanner
97 define Package
/knot-tests
98 $(call Package
/knot
/Default
)
100 DEPENDS
=+liburcu
+knot-libdnssec
+knot-libknot
+knot-libzscanner
103 define Package
/knot-libdnssec
/description
104 Knot DNS DNSSEC library.
107 define Package
/knot-libknot
/description
111 define Package
/knot-libdnssec
/description
112 Knot DNS zone parser library.
115 define Package
/knot
/description
116 High-performance authoritative-only DNS server.
119 define Package
/knot-dig
/description
120 Knot DNS advanced DNS lookup utility.
123 define Package
/knot-host
/description
124 Knot DNS simple DNS lookup utility.
127 define Package
/knot-nsupdate
/description
128 Knot DNS dynamic DNS update utility.
131 define Package
/knot-nsec3hash
/description
132 Knot DNS simple NSEC3 hash utility.
135 define Package
/knot-keymgr
/description
136 Knot DNS DNSSEC key management utility.
139 define Package
/knot-tests
/description
140 Unit tests for the Knot DNS server and libraries.
141 Usage
: /usr
/share
/knot
/runtests.sh
145 --enable-recvmmsg
=no \
146 --disable-fastparser \
148 --with-rundir
=/var
/run
/knot \
149 --with-storage
=/var
/lib
/knot \
150 --with-configdir
=/etc
/knot \
151 --with-timer-mapsize
=50 \
152 --with-conf-mapsize
=50
154 TARGET_CFLAGS
+= -DPSELECT_COMPAT
-DNDEBUG
156 define Package
/knot
/conffiles
161 $(MAKE
) -C
$(PKG_BUILD_DIR
)
162 $(MAKE
) -C
$(PKG_BUILD_DIR
)/libtap
check
163 $(MAKE
) -C
$(PKG_BUILD_DIR
)/src
/dnssec
/tests check-compile
164 $(MAKE
) -C
$(PKG_BUILD_DIR
)/tests check-compile
165 $(MAKE
) -C
$(PKG_BUILD_DIR
)/src
/zscanner check-compile
168 define Build
/InstallDev
169 $(INSTALL_DIR
) $(1)/usr
/lib
170 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/*.
{a
,so
*} $(1)/usr
/lib
/
172 $(INSTALL_DIR
) $(1)/usr
/include/libknot
173 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/libknot
/* $(1)/usr
/include/libknot
/
175 $(INSTALL_DIR
) $(1)/usr
/lib
/pkgconfig
176 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/*.
pc $(1)/usr
/lib
/pkgconfig
/
179 define Package
/knot-libdnssec
/install
180 $(INSTALL_DIR
) $(1)/usr
/lib
181 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libdnssec.so.
* $(1)/usr
/lib
/
184 define Package
/knot-libknot
/install
185 $(INSTALL_DIR
) $(1)/usr
/lib
186 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libknot.so.
* $(1)/usr
/lib
/
189 define Package
/knot-libzscanner
/install
190 $(INSTALL_DIR
) $(1)/usr
/lib
191 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libzscanner.so.
* $(1)/usr
/lib
/
194 define Package
/knot
/install
195 $(INSTALL_DIR
) $(1)/usr
/sbin
196 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/knotc
$(1)/usr
/sbin
/
197 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/knotd
$(1)/usr
/sbin
/
199 $(INSTALL_DIR
) $(1)/etc
/knot
200 $(INSTALL_CONF
) $(PKG_INSTALL_DIR
)/etc
/knot
/knot.sample.conf
$(1)/etc
/knot
/knot.conf
202 $(INSTALL_DIR
) $(1)/etc
/init.d
203 $(INSTALL_BIN
) .
/files
/knotd.init
$(1)/etc
/init.d
/knotd
206 define Package
/knot-dig
/install
207 $(INSTALL_DIR
) $(1)/usr
/bin
208 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/kdig
$(1)/usr
/bin
/
211 define Package
/knot-host
/install
212 $(INSTALL_DIR
) $(1)/usr
/bin
213 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/khost
$(1)/usr
/bin
/
216 define Package
/knot-nsupdate
/install
217 $(INSTALL_DIR
) $(1)/usr
/bin
218 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/knsupdate
$(1)/usr
/bin
/
221 define Package
/knot-nsec3hash
/install
222 $(INSTALL_DIR
) $(1)/usr
/bin
223 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/knsec3hash
$(1)/usr
/bin
/
226 define Package
/knot-keymgr
/install
227 $(INSTALL_DIR
) $(1)/usr
/sbin
228 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/keymgr
$(1)/usr
/sbin
/
231 define Package
/knot-tests
/install
232 $(INSTALL_DIR
) $(1)/usr
/share
/knot
233 $(INSTALL_BIN
) .
/files
/runtests.sh
$(1)/usr
/share
/knot
/
235 $(INSTALL_DIR
) $(1)/usr
/share
/knot
/tap
236 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/libtap
/runtests
$(1)/usr
/share
/knot
/tap
/
237 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/libtap
/tap
/libtap.sh
$(1)/usr
/share
/knot
/tap
/
239 $(INSTALL_DIR
) $(1)/usr
/share
/knot
/tests
241 find
$(PKG_BUILD_DIR
)/src
/dnssec
/tests
-maxdepth
1 -executable
-type f | \
242 xargs
-I
{} basename {} | \
243 xargs
-I
{} $(INSTALL_BIN
) -T
$(PKG_BUILD_DIR
)/src
/dnssec
/tests
/{} $(1)/usr
/share
/knot
/tests
/dnssec_test_
{}
245 find
$(PKG_BUILD_DIR
)/tests
/.libs
-maxdepth
1 -executable
-type f | \
246 xargs
-I
{} basename {} | \
247 xargs
-I
{} $(INSTALL_BIN
) -T
$(PKG_BUILD_DIR
)/tests
/.libs
/{} $(1)/usr
/share
/knot
/tests
/test_
{}
249 find
$(PKG_BUILD_DIR
)/tests
/modules
/.libs
-maxdepth
1 -executable
-type f | \
250 xargs
-I
{} basename {} | \
251 xargs
-I
{} $(INSTALL_BIN
) -T
$(PKG_BUILD_DIR
)/tests
/modules
/.libs
/{} $(1)/usr
/share
/knot
/tests
/test_module_
{}
253 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/zscanner
/tests
/.libs
/zscanner-tool
$(1)/usr
/share
/knot
/tests
/
254 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/zscanner
/tests
/unittests
$(1)/usr
/share
/knot
/tests
/test_zscanner
255 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/src
/zscanner
/tests
/TESTS
$(1)/usr
/share
/knot
/tests
/
256 cp
-a
$(PKG_BUILD_DIR
)/src
/zscanner
/tests
/data
$(1)/usr
/share
/knot
/tests
/
259 $(eval
$(call BuildPackage
,knot-libdnssec
))
260 $(eval
$(call BuildPackage
,knot-libknot
))
261 $(eval
$(call BuildPackage
,knot-libzscanner
))
262 $(eval
$(call BuildPackage
,knot
))
263 $(eval
$(call BuildPackage
,knot-dig
))
264 $(eval
$(call BuildPackage
,knot-host
))
265 $(eval
$(call BuildPackage
,knot-nsupdate
))
266 $(eval
$(call BuildPackage
,knot-nsec3hash
))
267 $(eval
$(call BuildPackage
,knot-keymgr
))
268 $(eval
$(call BuildPackage
,knot-tests
))