You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.6 KiB

  1. #
  2. # Copyright (C) 2015-2021 CZ.NIC, z. s. p. o. (https://www.nic.cz/)
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. PKG_RELRO_FULL:=0
  8. include $(TOPDIR)/rules.mk
  9. PKG_NAME:=knot-resolver
  10. PKG_VERSION:=5.4.0
  11. PKG_RELEASE:=1
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
  13. PKG_SOURCE_URL:=https://secure.nic.cz/files/knot-resolver
  14. PKG_HASH:=534af671b98433b23b57039acc9d7d3c100a4888a8cf9aeba36161774ca0815e
  15. PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>
  16. PKG_LICENSE:=GPL-3.0-later
  17. PKG_LICENSE_FILES:=COPYING
  18. PKG_BUILD_DEPENDS:=meson/host
  19. PKG_INSTALL:=1
  20. include $(INCLUDE_DIR)/package.mk
  21. include ../../devel/meson/meson.mk
  22. define Package/knot-resolver
  23. SECTION:=net
  24. CATEGORY:=Network
  25. SUBMENU:=IP Addresses and Names
  26. TITLE:=Knot DNS Resolver
  27. URL:=https://www.knot-resolver.cz
  28. DEPENDS=\
  29. +knot-libs \
  30. +knot-libzscanner \
  31. +libuv \
  32. +luajit \
  33. +luasec \
  34. +luasocket \
  35. +libstdcpp \
  36. +libnghttp2 \
  37. +lmdb \
  38. PACKAGE_knot-resolver_dnstap:libfstrm \
  39. PACKAGE_knot-resolver_dnstap:libprotobuf-c
  40. USERID:=kresd=3536:kresd=3536
  41. endef
  42. define Package/knot-resolver/description
  43. The Knot Resolver is a caching full resolver
  44. implementation, including both a resolver library and a daemon.
  45. endef
  46. define Package/knot-resolver/config
  47. source "$(SOURCE)/Config.in"
  48. endef
  49. # kres_gen_test breaks on cross, fix is already upstream
  50. MESON_ARGS+= \
  51. $(if $(CONFIG_PACKAGE_knot-resolver_dnstap), -Ddnstap=enabled,-Ddnstap=disabled) \
  52. -Dcapng=disabled \
  53. -Dclient=disabled \
  54. -Dconfig_tests=disabled \
  55. -Ddnstap=disabled \
  56. -Ddoc=disabled \
  57. -Dinstall_kresd_conf=disabled \
  58. -Dinstall_root_keys=disabled \
  59. -Dkeyfile_default=/etc/knot-resolver/root.keys \
  60. -Dprefix=/usr \
  61. -Dunit_tests=disabled \
  62. -Dkres_gen_test=false \
  63. -Dutils=disabled
  64. define Package/knot-resolver/install
  65. $(INSTALL_DIR) $(1)/usr/sbin
  66. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kresd $(1)/usr/sbin/
  67. $(INSTALL_DIR) $(1)/usr/lib/knot-resolver
  68. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  69. $(CP) $(PKG_INSTALL_DIR)/usr/lib/knot-resolver/{*.lua,*.so} $(1)/usr/lib/knot-resolver/
  70. $(INSTALL_DIR) $(1)/usr/lib/knot-resolver/kres_modules
  71. $(CP) $(PKG_INSTALL_DIR)/usr/lib/knot-resolver/kres_modules/{*.lua,*.so} $(1)/usr/lib/knot-resolver/kres_modules/
  72. $(INSTALL_DIR) $(1)/etc/init.d
  73. $(INSTALL_BIN) ./files/kresd.init $(1)/etc/init.d/kresd
  74. $(INSTALL_DIR) $(1)/etc/knot-resolver
  75. $(CP) $(PKG_INSTALL_DIR)/etc/knot-resolver/root.hints $(1)/etc/knot-resolver/
  76. $(CP) ./files/root.keys $(1)/etc/knot-resolver
  77. endef
  78. $(eval $(call BuildPackage,knot-resolver))