From: "Joshua Kinard" <kumba@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/
Date: Tue, 18 Jun 2024 22:17:09 +0000 (UTC) [thread overview]
Message-ID: <1718748722.a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1.kumba@gentoo> (raw)
commit: a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1
Author: Joshua Kinard <kumba <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 18 22:12:02 2024 +0000
Commit: Joshua Kinard <kumba <AT> gentoo <DOT> 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 <kumba <AT> 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 @@
<flag name="ratelimit">Enables ratelimiting, based on query name, type and source</flag>
<flag name="recvmmsg">Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6</flag>
<flag name="root-server">Configure NSD as a root server (OBSOLETE: removed in >=4.9.x)</flag>
+ <flag name="simdzone">Leverage SIMD instructions in modern CPUs to improve throughput</flag>
<flag name="tfo">Enable TCP Fast Open</flag>
<flag name="year2038">Support timestamps after 2038 (glibc only!)</flag>
</use>
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.
next reply other threads:[~2024-06-18 22:17 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-18 22:17 Joshua Kinard [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-01-20 21:32 [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/ Joshua Kinard
2024-10-06 13:30 Jakov Smolić
2024-10-06 13:30 Jakov Smolić
2024-08-04 11:52 Joshua Kinard
2024-07-15 1:57 Sam James
2024-07-15 1:41 Sam James
2024-06-05 4:25 Joshua Kinard
2024-04-17 22:01 Sam James
2024-04-17 6:54 Sam James
2024-02-25 2:52 Jakov Smolić
2024-02-25 2:52 Jakov Smolić
2024-02-25 0:01 Joshua Kinard
2023-12-08 8:35 Sam James
2023-07-14 17:07 Arthur Zamarin
2023-07-14 16:02 Arthur Zamarin
2023-06-07 9:10 Sam James
2022-12-28 15:00 Sam James
2022-12-21 22:47 Sam James
2022-12-21 20:03 Arthur Zamarin
2022-12-18 20:24 Arthur Zamarin
2022-11-10 9:03 Sam James
2022-11-10 9:03 Sam James
2022-11-10 8:45 Sam James
2022-07-01 8:41 Sam James
2022-06-30 7:03 Agostino Sarubbo
2022-06-30 7:01 Agostino Sarubbo
2022-06-29 17:49 Sam James
2022-05-14 12:01 Lars Wendler
2022-02-18 13:43 Lars Wendler
2022-01-28 15:46 Lars Wendler
2021-12-09 20:24 Lars Wendler
2021-12-09 20:24 Lars Wendler
2021-12-09 20:24 Lars Wendler
2021-10-12 19:45 Lars Wendler
2021-10-12 19:45 Lars Wendler
2021-10-12 19:45 Lars Wendler
2021-07-22 18:25 Lars Wendler
2021-07-22 18:25 Lars Wendler
2021-07-22 18:25 Lars Wendler
2021-05-02 16:40 Mikle Kolyada
2021-04-07 7:49 Lars Wendler
2021-02-07 1:12 Sam James
2021-01-26 16:06 Lars Wendler
2020-12-08 7:32 Lars Wendler
2020-12-08 7:32 Lars Wendler
2020-12-02 14:05 Lars Wendler
2020-12-01 23:36 Lars Wendler
2020-12-01 23:36 Lars Wendler
2020-10-08 15:51 Lars Wendler
2020-10-08 15:51 Lars Wendler
2020-07-15 8:10 Lars Wendler
2020-07-15 8:10 Lars Wendler
2020-04-17 7:34 Lars Wendler
2020-03-22 0:53 Lars Wendler
2020-03-22 0:53 Lars Wendler
2020-03-22 0:53 Lars Wendler
2019-12-11 9:00 Lars Wendler
2019-12-05 9:16 Lars Wendler
2019-11-21 17:21 Lars Wendler
2019-10-07 8:04 Lars Wendler
2019-08-23 21:21 Lars Wendler
2019-08-23 21:21 Lars Wendler
2019-08-13 16:40 Lars Wendler
2019-07-10 7:59 Lars Wendler
2019-06-12 10:45 Lars Wendler
2019-06-12 10:45 Lars Wendler
2019-03-25 19:08 Lars Wendler
2019-03-25 19:08 Lars Wendler
2019-03-25 19:08 Lars Wendler
2018-12-05 10:15 Lars Wendler
2018-12-05 10:15 Lars Wendler
2018-12-05 10:15 Lars Wendler
2018-12-05 10:15 Lars Wendler
2018-09-26 7:59 Lars Wendler
2018-09-26 7:59 Lars Wendler
2018-09-26 7:59 Lars Wendler
2018-08-16 19:55 Lars Wendler
2018-08-14 12:44 Lars Wendler
2018-07-31 8:44 Lars Wendler
2018-07-31 8:44 Lars Wendler
2018-06-12 8:03 Lars Wendler
2018-06-12 8:03 Lars Wendler
2018-06-12 8:03 Lars Wendler
2018-05-15 5:23 Lars Wendler
2018-02-21 8:45 Lars Wendler
2018-02-21 8:45 Lars Wendler
2018-02-21 8:43 Lars Wendler
2018-01-09 11:55 Lars Wendler
2018-01-09 11:55 Lars Wendler
2017-12-12 14:46 Lars Wendler
2017-12-12 14:46 Lars Wendler
2017-11-30 19:05 Lars Wendler
2017-07-21 21:59 Lars Wendler
2017-07-21 21:59 Lars Wendler
2017-07-21 21:59 Lars Wendler
2017-04-26 17:27 Lars Wendler
2017-02-16 23:49 Lars Wendler
2017-01-02 15:15 Agostino Sarubbo
2017-01-02 11:36 Lars Wendler
2017-01-02 8:56 Lars Wendler
2017-01-02 8:55 Lars Wendler
2016-12-08 20:52 Lars Wendler
2016-12-08 20:52 Lars Wendler
2016-09-27 22:34 Lars Wendler
2016-09-07 9:36 Lars Wendler
2016-09-06 18:19 Lars Wendler
2016-09-06 18:19 Lars Wendler
2016-08-24 16:00 Lars Wendler
2016-08-23 13:18 Lars Wendler
2016-08-23 13:18 Lars Wendler
2016-08-06 16:51 Michał Górny
2016-04-07 14:37 Lars Wendler
2015-12-14 10:41 Lars Wendler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1718748722.a72f8d7023487bf4f9f0f3e583f7c3760bbfddc1.kumba@gentoo \
--to=kumba@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox