summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas PARLANT <nicolas.parlant@parhuet.fr>2024-12-06 11:48:09 +0000
committerSam James <sam@gentoo.org>2024-12-06 15:35:37 +0000
commitb2bba9a9ce4295ce76e538a9c00abe88ccacf9a5 (patch)
tree41e6256e2762294d48ecc9f7e2a1c94822187316 /net-dns/knot
parentsys-libs/glibc: patchlevel 7, the only change is that the getrandom vDSO is r... (diff)
downloadgentoo-b2bba9a9ce4295ce76e538a9c00abe88ccacf9a5.tar.gz
gentoo-b2bba9a9ce4295ce76e538a9c00abe88ccacf9a5.tar.bz2
gentoo-b2bba9a9ce4295ce76e538a9c00abe88ccacf9a5.zip
net-dns/knot: add 3.4.3
Bug: https://bugs.gentoo.org/879723 Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-dns/knot')
-rw-r--r--net-dns/knot/Manifest1
-rw-r--r--net-dns/knot/knot-3.4.3.ebuild168
2 files changed, 169 insertions, 0 deletions
diff --git a/net-dns/knot/Manifest b/net-dns/knot/Manifest
index d5b54f7bbb8c..62791c3a320c 100644
--- a/net-dns/knot/Manifest
+++ b/net-dns/knot/Manifest
@@ -1,3 +1,4 @@
DIST knot-3.2.2.tar.xz 1632748 BLAKE2B 185567dc883f946570fe60cd7d01d96162c5f13ac84330e5551c293b5011c162401fd25ddbdb43bf9242e13c3cdc8225be107dc579619fe54c05335601cd27ae SHA512 29fadb96c1ea525c6183f9e7552f4ad370579b67d74aec1910a92d561cc2c5656fd7876015f29161d279a07c23643f6584308bf9fa0e74d351b17af54e5e9a7f
DIST knot-3.2.9.tar.xz 1642600 BLAKE2B 2c81b2afa96c6077778c3458b2ddeeb8b47ea99607ba755a904278f9755a32171738418ea442b1e6b4afcebe0db2c86e68845d38f8e78342b8354411d1e34af8 SHA512 baf8da222e38198c85fa62e45e71b29ddac7c90433b811710ace1e0395e6e7b5d63547ce8f3a62792ee11259ec2e36d6ddd8fff999416f9171671444a95086cf
DIST knot-3.4.2.tar.xz 1632976 BLAKE2B 0b633b27b22665db243bc4222f05028a17ee7ec6ba5960ff1cfe503d27bf3d26218f771cb15b70bbf8782898bcc7748bd5c27d55747607a1d93f784cdadddad7 SHA512 d5353fdd51224e20a8009aea7df6fe7503a726756c82041b770d8e90cae00b38ede7ecb2f31178ccb9f472a98b86f90208d4627fa4aaaf3c0383272b451e3015
+DIST knot-3.4.3.tar.xz 1637080 BLAKE2B d5d96a69b2464d75e4f2d3231339c1dedccc1cd95febc8bd5950f68c89a277d002d09a60e629a74b378bc7f765370aaef05bf41fd497e740be6c0a349c27f731 SHA512 c05a214a9e5564d09257aff44c0f42e9d084d47536197c95dff7aa125a8b53ed99e26c90affaa6833779778cd8d37af9cc473f108ab6acf7230c476b5858c03f
diff --git a/net-dns/knot/knot-3.4.3.ebuild b/net-dns/knot/knot-3.4.3.ebuild
new file mode 100644
index 000000000000..4755bdc3913d
--- /dev/null
+++ b/net-dns/knot/knot-3.4.3.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd tmpfiles
+
+# subslot: libknot major.libdnssec major.libzscanner major
+KNOT_SUBSLOT="15.9.4"
+
+DESCRIPTION="High-performance authoritative-only DNS server"
+HOMEPAGE="https://www.knot-dns.cz/ https://gitlab.nic.cz/knot/knot-dns"
+SRC_URI="https://secure.nic.cz/files/knot-dns/${P/_/-}.tar.xz"
+
+S="${WORKDIR}/${P/_/-}"
+
+LICENSE="GPL-3+"
+SLOT="0/${KNOT_SUBSLOT}"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+KNOT_MODULES=(
+ "+authsignal"
+ "+cookies"
+ "+dnsproxy"
+ "dnstap"
+ "geoip"
+ "+noudp"
+ "+onlinesign"
+ "+queryacl"
+ "+rrl"
+ "+stats"
+ "+synthrecord"
+ "+whoami"
+)
+
+IUSE="caps +daemon dbus +doc doh +fastparser +idn pkcs11 quic systemd test +utils xdp ${KNOT_MODULES[@]}"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-libs/libedit
+ dnstap? (
+ dev-libs/fstrm
+ dev-libs/protobuf-c:=
+ )
+ quic? ( net-libs/ngtcp2[gnutls] )
+"
+RDEPEND="
+ dev-db/lmdb:=
+ net-libs/gnutls:=[pkcs11?]
+ daemon? (
+ ${COMMON_DEPEND}
+ acct-group/knot
+ acct-user/knot
+ dev-libs/userspace-rcu:=
+ caps? ( sys-libs/libcap-ng )
+ dbus? ( sys-apps/dbus )
+ geoip? ( dev-libs/libmaxminddb:= )
+ systemd? ( sys-apps/systemd:= )
+ )
+ utils? (
+ ${COMMON_DEPEND}
+ doh? ( net-libs/nghttp2:= )
+ idn? ( net-dns/libidn2:= )
+ )
+ xdp? (
+ >=dev-libs/libbpf-1.0:=
+ net-libs/xdp-tools
+ utils? ( net-libs/libmnl:= )
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? ( dev-python/sphinx )
+ test? (
+ pkcs11? ( dev-libs/softhsm )
+ )
+"
+
+src_prepare() {
+ # https://gitlab.nic.cz/knot/knot-dns/-/issues/946
+ cat > tests/contrib/test_atomic.c <<-_EOF_ || die
+ #include <tap/basic.h>
+ int main(int argc, char *argv[])
+ {
+ skip_all("not supported");
+ return 0;
+ }
+ _EOF_
+ cp tests/contrib/test_{atomic,spinlock}.c
+ default
+}
+
+src_configure() {
+ local u
+ local my_conf=(
+ --with-storage="${EPREFIX}/var/lib/${PN}"
+ --with-rundir="${EPREFIX}/var/run/${PN}"
+ $(use_enable caps cap_ng)
+ $(use_enable daemon)
+ $(use_enable fastparser)
+ $(use_enable dnstap)
+ $(use_enable doc documentation)
+ $(use_with doh libnghttp2)
+ $(use_enable geoip maxminddb)
+ $(use_with idn libidn)
+ $(use_enable quic)
+ $(use_enable systemd)
+ $(use_enable utils utilities)
+ $(use_enable xdp)
+ )
+
+ # modules (except dnstap forced by use_enable if set with utils) are only used by daemon
+ if use daemon; then
+ for u in "${KNOT_MODULES[@]#+}"; do
+ my_conf+=("$(use_with ${u} module-${u})")
+ done
+ else
+ my_conf+=("--disable-modules")
+ fi
+
+ if use !daemon; then
+ my_conf+=("--enable-dbus=no")
+ elif use dbus; then
+ my_conf+=("--enable-dbus=libdbus")
+ elif use !dbus && use !systemd; then
+ my_conf+=("--enable-dbus=no")
+ elif use !dbus && use systemd; then
+ my_conf+=("--enable-dbus=systemd")
+ fi
+
+ if use riscv; then
+ append-libs -latomic
+ fi
+
+ econf "${my_conf[@]}"
+}
+
+src_compile() {
+ default
+
+ use doc && emake -C doc html
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( doc/_build/html/{*.html,*.js,_sources,_static} )
+
+ default
+
+ if use daemon; then
+ rmdir "${D}/var/run/${PN}" "${D}/var/run/" || die
+
+ newinitd "${FILESDIR}"/knot-2.init knot
+ newconfd "${FILESDIR}"/knot.confd knot
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
+
+ use systemd && systemd_newunit distro/common/knot.service knot.service
+ fi
+
+ find "${D}" -name '*.la' -delete || die
+
+ keepdir /var/lib/knot
+}
+
+pkg_postinst() {
+ use daemon && tmpfiles_process ${PN}.conf
+}