summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-dns/knot/Manifest1
-rw-r--r--net-dns/knot/knot-2.9.3.ebuild102
2 files changed, 103 insertions, 0 deletions
diff --git a/net-dns/knot/Manifest b/net-dns/knot/Manifest
index c6eec7b1075..d24b5dca32f 100644
--- a/net-dns/knot/Manifest
+++ b/net-dns/knot/Manifest
@@ -1,2 +1,3 @@
DIST knot-2.8.5.tar.xz 1209076 BLAKE2B 7454499745caa04a9454f023bed0ce6d8ccc54fc2c264aada72a842c39b056a91caee908eb1b036fe77b97d8cea4f03b9afcd084a69846a2632e717f7c3591fd SHA512 f45e62816ddc1f534e724d2fa71831100efc01b415ec2ea8301d02cf44d8f104a248deccdb706ebad6853404aee2a209c2bf51b07076aa69340af6812e5a79de
DIST knot-2.9.2.tar.xz 1181860 BLAKE2B 4c4a54624cc0c107517596efb3d4a4dc205dac488e293b594e93f8e73b1face3c0ac4ca94d5def68576f7b801540468a355e5b4bd06d7992edc3bce122952fd3 SHA512 7e09cd6e587342b0a213f7a108704fff7535d02dd47d662e60b96ae5d75d9745d659131622253f964deb1607f28d172d1d46dc3b5f61e2f6c70e5002e746da68
+DIST knot-2.9.3.tar.xz 1214512 BLAKE2B a4545ba32827a1866046fd42a5819963607d5d7d1fd1e73b17b08dca9c3aeb3b8ecbad67ef3293f4a417ac2b25c7540e299cf914d90d6a659bcc58f809f178c7 SHA512 69186b0d83ab548e46a7eed2703b1c3e29de36123c39a7ca461a8728488433bcc27dd5564ff3cb55d8490d4515098cebdd72aa732742fb0b9fceaca27f456e08
diff --git a/net-dns/knot/knot-2.9.3.ebuild b/net-dns/knot/knot-2.9.3.ebuild
new file mode 100644
index 00000000000..2cc9e9753df
--- /dev/null
+++ b/net-dns/knot/knot-2.9.3.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd
+
+DESCRIPTION="High-performance authoritative-only DNS server"
+HOMEPAGE="https://www.knot-dns.cz/"
+SRC_URI="https://secure.nic.cz/files/knot-dns/${P/_/-}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+KNOT_MODULES=(
+ "+cookies"
+ "+dnsproxy"
+ "dnstap"
+ "geoip"
+ "+noudp"
+ "+onlinesign"
+ "+queryacl"
+ "+rrl"
+ "+stats"
+ "+synthrecord"
+ "+whoami"
+)
+IUSE="doc caps +fastparser idn +libidn2 systemd +utils ${KNOT_MODULES[@]}"
+
+RDEPEND="
+ acct-group/knot
+ acct-user/knot
+ dev-db/lmdb
+ dev-libs/libedit
+ dev-libs/userspace-rcu:=
+ dev-python/lmdb
+ net-libs/gnutls:=
+ caps? ( sys-libs/libcap-ng )
+ dnstap? (
+ dev-libs/fstrm
+ dev-libs/protobuf-c:=
+ )
+ geoip? ( dev-libs/libmaxminddb:= )
+ idn? (
+ !libidn2? ( net-dns/libidn:0= !net-dns/libidn2 )
+ libidn2? ( net-dns/libidn2:= )
+ )
+ systemd? ( sys-apps/systemd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${P/_/-}"
+
+src_configure() {
+ local u
+ local my_conf=(
+ --with-storage="${EPREFIX}/var/lib/${PN}"
+ --with-rundir="${EPREFIX}/var/run/${PN}"
+ $(use_enable fastparser)
+ $(use_enable dnstap)
+ $(use_enable doc documentation)
+ $(use_enable utils utilities)
+ --enable-systemd=$(usex systemd)
+ $(use_with idn libidn)
+ )
+
+ for u in "${KNOT_MODULES[@]#+}"; do
+ my_conf+=("$(use_with ${u} module-${u})")
+ done
+
+ econf "${my_conf[@]}"
+}
+
+src_compile() {
+ default
+
+ use doc && emake -C doc html
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( doc/_build/html/{*.html,*.js,_sources,_static} )
+
+ default
+
+ rmdir "${D}/var/run/${PN}" "${D}/var/run/" || die
+
+ newinitd "${FILESDIR}/knot.init" knot
+ if use systemd; then
+ systemd_newunit "${FILESDIR}/knot-1.service" knot.service
+ fi
+
+ find "${D}" -name '*.la' -delete || die
+}