From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id BB67815817D for ; Tue, 18 Jun 2024 22:17:13 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E023D2BC014; Tue, 18 Jun 2024 22:17:12 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B3EB72BC014 for ; Tue, 18 Jun 2024 22:17:12 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 51160335DC2 for ; Tue, 18 Jun 2024 22:17:11 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 61BB31CD8 for ; Tue, 18 Jun 2024 22:17:09 +0000 (UTC) From: "Joshua Kinard" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Joshua Kinard" Message-ID: <1718748722.a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1.kumba@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-dns/nsd/Manifest net-dns/nsd/metadata.xml net-dns/nsd/nsd-4.10.0.ebuild net-dns/nsd/nsd-4.9.1.ebuild net-dns/nsd/nsd-9999.ebuild X-VCS-Directories: net-dns/nsd/ X-VCS-Committer: kumba X-VCS-Committer-Name: Joshua Kinard X-VCS-Revision: a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1 X-VCS-Branch: master Date: Tue, 18 Jun 2024 22:17:09 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 46de091d-4885-4590-9287-d89d17dabe61 X-Archives-Hash: a9a44f8bce23276fb6c7c3e5dba1e51f commit: a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1 Author: Joshua Kinard gentoo org> AuthorDate: Tue Jun 18 22:12:02 2024 +0000 Commit: Joshua Kinard gentoo org> CommitDate: Tue Jun 18 22:12:02 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a72f8d70 net-dns/nsd: Add 4.10.0 ebuild & minor fixes to 4.9.1 Added a new ebuild for nsd-4.10.0, which includes a new local USE flag 'simdzone' for a new zone parser that debuts w/ 4.10.0 that utilizes SIMD insns on x86_64 CPU archs. Also made minor syntax fixes to nsd-4.9.1's ebuild, and updated nsd-9999's ebuild to match 4.10.0's. Signed-off-by: Joshua Kinard gentoo.org> net-dns/nsd/Manifest | 1 + net-dns/nsd/metadata.xml | 1 + .../nsd/{nsd-4.9.1.ebuild => nsd-4.10.0.ebuild} | 26 ++++++++++---- net-dns/nsd/nsd-4.9.1.ebuild | 10 +++--- net-dns/nsd/nsd-9999.ebuild | 40 ++++++++++++++-------- 5 files changed, 52 insertions(+), 26 deletions(-) diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest index 96c7c9e4d347..b9e253e157d6 100644 --- a/net-dns/nsd/Manifest +++ b/net-dns/nsd/Manifest @@ -1,2 +1,3 @@ +DIST nsd-4.10.0.tar.gz 1388963 BLAKE2B 1ae50e2c2756fbbbabe87ecf88e74c2f9e5bf21dfe8f34a279894499ba5434a9249e5424f511ed0b67d21b3b1c98b7a03e38cd20fd6dd0cd2a6ad4b397d352df SHA512 ebf65d9a3d56ba560b587dc3cf91b0b086c9267c67f4c6a6c415cc062a08a9d0deb50cc44189b741d5b7634fe07038f6a234999f5a0ee7df6609fc026127fb09 DIST nsd-4.8.0.tar.gz 1273228 BLAKE2B d1e6a5e8fb158bb32081bc7674d957e3f5a596ed10ee89dd6a5f6af9a79a8c130f2de7070345bee69cb7798e9f373d856a9336a9e9f65f733ff45e15e94833ff SHA512 13c9cffffe6adfcbabf744ee2effebe6ae265d83476345a1edb60dc9c6d7f838a5e239e9b18e667924e5e76b74b2caac63818fcaecf7f0fa651ff21736174a46 DIST nsd-4.9.1.tar.gz 1309953 BLAKE2B 4a43db480be7196c0a177cc6ee2b9cd6eaaaa9af4d0c3dc7b8f07a5b9e24fd4eac816a29f83de870efe012f2f3bbcbb9bdbda903d05bf9d96574bddc97f68547 SHA512 65cd38aa8a41aee57a6950747de448bc4007a2d2c095152f1d22006f85faa7f0732ec4aa0aeae9f46bc69bff17164d8fe384bbc3441d0484364c4af938b511c1 diff --git a/net-dns/nsd/metadata.xml b/net-dns/nsd/metadata.xml index 1afdcd842cc0..0cdd2376e40c 100644 --- a/net-dns/nsd/metadata.xml +++ b/net-dns/nsd/metadata.xml @@ -22,6 +22,7 @@ Enables ratelimiting, based on query name, type and source Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6 Configure NSD as a root server (OBSOLETE: removed in >=4.9.x) + Leverage SIMD instructions in modern CPUs to improve throughput Enable TCP Fast Open Support timestamps after 2038 (glibc only!) diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.10.0.ebuild similarity index 83% copy from net-dns/nsd/nsd-4.9.1.ebuild copy to net-dns/nsd/nsd-4.10.0.ebuild index 53cbc4f1d5f1..da8e10d8e3ac 100644 --- a/net-dns/nsd/nsd-4.9.1.ebuild +++ b/net-dns/nsd/nsd-4.10.0.ebuild @@ -27,7 +27,7 @@ fi LICENSE="BSD" SLOT="0" -IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg ssl systemd +tfo year2038" +IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg +simdzone ssl systemd +tfo year2038" RDEPEND=" acct-group/nsd @@ -49,7 +49,6 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}/${P}-systemd-no-pidfile.patch" "${FILESDIR}/${PN}-munin-gentoo-paths.patch" ) @@ -92,15 +91,28 @@ src_configure() { $(use_with libevent) $(use_with ssl) - --with-dbfile="${EPREFIX}/${NSD_DBDIR}/nsd.db" + --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db" --with-logfile="${EPREFIX}/var/log/nsd.log" --with-pidfile="${EPREFIX}/run/nsd.pid" - --with-xfrdfile="${EPREFIX}/${NSD_DBDIR}/xfrd.state" - --with-xfrdir="${EPREFIX}/${NSD_DBDIR}" - --with-zonelistfile="${EPREFIX}/${NSD_DBDIR}/zone.list" - --with-zonesdir="${EPREFIX}/${NSD_ZNDIR}" + --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state" + --with-xfrdir="${EPREFIX}${NSD_DBDIR}" + --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list" + --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" ) + # NSD 4.10.x introduced a new zone parser, "simdzone", which + # replaces the older parser that used flex & bison: + # https://github.com/NLnetLabs/simdzone + # It leverages SSE4.2 and/or AVX2 instruction sets for faster + # zone parsing on x86_64 architectures. Other CPU archs will + # use a fallback implementation. + if use amd64; then + myconf+=( + $(use_enable simdzone haswell) + $(use_enable simdzone westmere) + ) + fi + # This configure switch is only available on a glibc-based system. if use elibc_glibc; then myconf+=( $(use_enable year2038) ) diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.9.1.ebuild index 53cbc4f1d5f1..8c9ca27a596b 100644 --- a/net-dns/nsd/nsd-4.9.1.ebuild +++ b/net-dns/nsd/nsd-4.9.1.ebuild @@ -92,13 +92,13 @@ src_configure() { $(use_with libevent) $(use_with ssl) - --with-dbfile="${EPREFIX}/${NSD_DBDIR}/nsd.db" + --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db" --with-logfile="${EPREFIX}/var/log/nsd.log" --with-pidfile="${EPREFIX}/run/nsd.pid" - --with-xfrdfile="${EPREFIX}/${NSD_DBDIR}/xfrd.state" - --with-xfrdir="${EPREFIX}/${NSD_DBDIR}" - --with-zonelistfile="${EPREFIX}/${NSD_DBDIR}/zone.list" - --with-zonesdir="${EPREFIX}/${NSD_ZNDIR}" + --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state" + --with-xfrdir="${EPREFIX}${NSD_DBDIR}" + --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list" + --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" ) # This configure switch is only available on a glibc-based system. diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild index 77ea73ae7afc..da8e10d8e3ac 100644 --- a/net-dns/nsd/nsd-9999.ebuild +++ b/net-dns/nsd/nsd-9999.ebuild @@ -27,7 +27,7 @@ fi LICENSE="BSD" SLOT="0" -IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg ssl systemd +tfo year2038" +IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg +simdzone ssl systemd +tfo year2038" RDEPEND=" acct-group/nsd @@ -49,12 +49,12 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}/${P}-systemd-no-pidfile.patch" "${FILESDIR}/${PN}-munin-gentoo-paths.patch" ) -NSD_INITD_VER="2" # Current version of NSD's OpenRC init.d script. -NSD_TMPFILESD_VER="1" # Current version of NSD's tmpfiles.d config. +NSD_CONFD_VER="1" # Cur version of NSD's OpenRC conf.d file. +NSD_INITD_VER="2" # Cur version of NSD's OpenRC init.d script. +NSD_TMPFILESD_VER="1" # Cur version of NSD's tmpfiles.d config. NSD_DBDIR="/var/db/nsd" # Default dir for NSD's databases. NSD_ZNDIR="/var/lib/nsd" # Default dir for NSD's zone files. @@ -91,15 +91,28 @@ src_configure() { $(use_with libevent) $(use_with ssl) - --with-dbfile="${EPREFIX}/${NSD_DBDIR}/nsd.db" + --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db" --with-logfile="${EPREFIX}/var/log/nsd.log" - --with-pidfile="${EPREFIX}/run/nsd/nsd.pid" - --with-xfrdfile="${EPREFIX}/${NSD_DBDIR}/xfrd.state" - --with-xfrdir="${EPREFIX}/${NSD_DBDIR}" - --with-zonelistfile="${EPREFIX}/${NSD_DBDIR}/zone.list" - --with-zonesdir="${EPREFIX}/${NSD_ZNDIR}" + --with-pidfile="${EPREFIX}/run/nsd.pid" + --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state" + --with-xfrdir="${EPREFIX}${NSD_DBDIR}" + --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list" + --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" ) + # NSD 4.10.x introduced a new zone parser, "simdzone", which + # replaces the older parser that used flex & bison: + # https://github.com/NLnetLabs/simdzone + # It leverages SSE4.2 and/or AVX2 instruction sets for faster + # zone parsing on x86_64 architectures. Other CPU archs will + # use a fallback implementation. + if use amd64; then + myconf+=( + $(use_enable simdzone haswell) + $(use_enable simdzone westmere) + ) + fi + # This configure switch is only available on a glibc-based system. if use elibc_glibc; then myconf+=( $(use_enable year2038) ) @@ -112,17 +125,16 @@ src_install() { emake DESTDIR="${D}" install dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} - newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd - - newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r1" nsd.conf + newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd + newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf # Install munin plugin and config, if requested. if use munin ; then exeinto "/usr/libexec/munin/plugins" doexe contrib/nsd_munin_ insinto "/etc/munin/plugin-conf.d" - newins "${FILESDIR}/nsd.munin-conf nsd_munin" + newins "${FILESDIR}/nsd.munin-conf" nsd_munin fi # Use the upstream-provided systemd service file.