commit:     5913210b36d4318268e86f408fc358ce9fda9195
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Wed Jan 22 11:10:50 2025 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Feb  4 13:49:16 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5913210b

net-dns/knot: Bump to 3.4.4

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 net-dns/knot/Manifest          |   1 +
 net-dns/knot/knot-3.4.4.ebuild | 190 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 191 insertions(+)

diff --git a/net-dns/knot/Manifest b/net-dns/knot/Manifest
index 1d465d5607a3..1495fb4a2220 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.3.tar.xz 1637080 BLAKE2B 
d5d96a69b2464d75e4f2d3231339c1dedccc1cd95febc8bd5950f68c89a277d002d09a60e629a74b378bc7f765370aaef05bf41fd497e740be6c0a349c27f731
 SHA512 
c05a214a9e5564d09257aff44c0f42e9d084d47536197c95dff7aa125a8b53ed99e26c90affaa6833779778cd8d37af9cc473f108ab6acf7230c476b5858c03f
+DIST knot-3.4.4.tar.xz 1641460 BLAKE2B 
d477a4a368b0c6d6c1003a52041403d17bab4e3ecb6e532130b633894d4ee88711038b94e1d4cf12406eb281b800d701c00e40414d458b7bdefb1d632a779821
 SHA512 
bf8e80d430336934083c1f7c304306de78b254fba5d3b9dd8b44065a0f1527cd78b74d498d994822ed2d364b66091ad967d3cd991bde380fbba67ea34a1ee33f

diff --git a/net-dns/knot/knot-3.4.4.ebuild b/net-dns/knot/knot-3.4.4.ebuild
new file mode 100644
index 000000000000..313d56e7e1b5
--- /dev/null
+++ b/net-dns/knot/knot-3.4.4.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit python-single-r1 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://knot-dns.nic.cz/release/${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 prometheus python 
quic systemd test +utils xdp ${KNOT_MODULES[@]}"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+       prometheus? ( python )
+       python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+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:= )
+       )
+       python? ( ${PYTHON_DEPS} )
+       prometheus? (
+               $(python_gen_cond_dep '
+                       dev-python/prometheus-client[${PYTHON_USEDEP}]
+                       dev-python/psutil[${PYTHON_USEDEP}]
+               ')
+       )
+       xdp? (
+               >=dev-libs/libbpf-1.0:=
+               net-libs/xdp-tools
+               utils? ( net-libs/libmnl:= )
+       )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       virtual/pkgconfig
+       doc? ( dev-python/sphinx )
+       python? (
+               ${PYTHON_DEPS}
+       )
+       test? (
+               pkcs11? ( dev-libs/softhsm )
+       )
+"
+
+# Used to check cpuset_t in sched.h with NetBSD.
+# False positive because linux have sched.h too but with cpu_set_t
+QA_CONFIG_IMPL_DECL_SKIP=( cpuset_create cpuset_destroy )
+
+pkg_setup() {
+       use python && python-single-r1_pkg_setup
+}
+
+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} )
+
+       if use python; then
+               python_domodule python/libknot/libknot
+               newdoc python/libknot/README.md README.python.md
+       fi
+
+       if use prometheus; then
+               python_domodule python/knot_exporter/knot_exporter
+               python_scriptinto /usr/sbin
+               python_newscript 
python/knot_exporter/knot_exporter/knot_exporter.py knot-exporter
+               newdoc python/knot_exporter/README.md README.knot_exporter.md
+       fi
+
+       default
+
+       if use daemon; then
+               rmdir "${D}/var/run/${PN}" "${D}/var/run/" || die
+
+               newinitd "${FILESDIR}"/knot-3.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
+}

Reply via email to