diff --git a/eclass/eapi8-dosym.eclass b/eclass/eapi8-dosym.eclass index e139b74cfea01..866c98c78d919 100644 --- a/eclass/eapi8-dosym.eclass +++ b/eclass/eapi8-dosym.eclass @@ -31,7 +31,7 @@ esac _dosym8_canonicalize() { local path slash i prev out IFS=/ - read -r -d '' -a path < <(echo -n "$1") + read -r -d '' -a path < <(printf '%s\0' "$1") [[ $1 == /* ]] && slash=/ while true; do @@ -56,7 +56,7 @@ _dosym8_canonicalize() { done out="${slash}${path[*]}" - echo "${out:-.}" + printf "%s\n" "${out:-.}" } # @FUNCTION: dosym8 diff --git a/eclass/tests/eapi8-dosym.sh b/eclass/tests/eapi8-dosym.sh index cae66e3bb2eee..a0f8961d4d96a 100755 --- a/eclass/tests/eapi8-dosym.sh +++ b/eclass/tests/eapi8-dosym.sh @@ -54,6 +54,7 @@ teq foo _dosym8_canonicalize foo/. teq ../foo _dosym8_canonicalize ../foo teq ../baz _dosym8_canonicalize foo/bar/../../../baz teq '*' _dosym8_canonicalize '*' +teq '-e' _dosym8_canonicalize '-e' for f in ref_dosym_r "dosym8 -r"; do teq ../../bin/foo ${f} /bin/foo /usr/bin/foo diff --git a/net-analyzer/sec/Manifest b/net-analyzer/sec/Manifest index 3658065a2cdc2..8f748aa1a964f 100644 --- a/net-analyzer/sec/Manifest +++ b/net-analyzer/sec/Manifest @@ -1 +1,2 @@ DIST sec-2.9.1.tar.gz 153305 BLAKE2B 0bbc70f786badb24153f4f124aaedbf6f34970556630ee3e8763e7854dc1765d0eb8f7d10efce119ca936eade2af8064188f3372e63f7977240a0b10327269a3 SHA512 c6764cf660ad969d260e4993c38809580e448a9d941d1a763c1b70630c5d55a7f215feb6b0fa50cbf23d68fb442e34f0d270d03e1172850d63d64042a689ac90 +DIST sec-2.9.2.tar.gz 153482 BLAKE2B d2f099b034b2ab59b4abdea0d824fc63e2d340d56b4f43324e2e477e0f33b433b5f54e4172c873e1579b544504a2a5f1ba20a3c8468eab43e4587c9efc54446b SHA512 441c543f9abcfff46c5cd86c9be8fd5c57fef988519f2c9f431b715717e0500ce1b89365e16c0d3b6e76369cf5ee5f6d5318b32e4374c614ec0083833021f17c diff --git a/net-analyzer/sec/sec-2.9.2.ebuild b/net-analyzer/sec/sec-2.9.2.ebuild new file mode 100644 index 0000000000000..e6658bf788e6f --- /dev/null +++ b/net-analyzer/sec/sec-2.9.2.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Simple Event Correlator" +HOMEPAGE="https://simple-evcorr.github.io/ https://github.com/simple-evcorr/sec" +SRC_URI="https://github.com/simple-evcorr/sec/releases/download/${PV}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux" + +RDEPEND=" + >=dev-lang/perl-5.8.0 + virtual/perl-JSON-PP +" + +src_install() { + dobin sec + + dodoc ChangeLog README + docinto contrib + dodoc contrib/{itostream.c,convert.pl,swatch2sec.pl} + + newman sec.man sec.1 + + newinitd "${FILESDIR}"/sec.init.d sec + newconfd "${FILESDIR}"/sec.conf.d sec +} diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest index 19af23ce2df2f..eca0f072344b9 100644 --- a/net-dns/nsd/Manifest +++ b/net-dns/nsd/Manifest @@ -1 +1,2 @@ DIST nsd-4.6.1.tar.gz 1281583 BLAKE2B 5eff5560ce16451a57905bb9d979c81918b6b55f72e1f1b89ab8d2e479ac36bf4f95152c77b1f1b3ce0af90bde8f25d2cad7226450c5cbc879f112adea2b3a69 SHA512 cab557a20cf8564cbf6e38405ca28b00baa6e14105527c3b16f49f57fed5e39cdb2bcd62999bad4aff2c69e0967bdba66a1eaa7b73a0d4d99d97535cc5860bfe +DIST nsd-4.7.0.tar.gz 1289477 BLAKE2B d3949c8b65376ea78c700efaeb988acbfac5a5ba338f9bf29035176a7da6730ee8b7a2b6bfc5573ad178db80166ca74d71d313bf3d405acc666bf87f17dac63b SHA512 387e66993517c015ea49fc7a985c1f746623ae30a82bd01f224efbdb7c58d1d2f3e5a5a3574203959047876c632ec464b6682d1644f0e0f157ec0e6fb3f0cdbb diff --git a/net-dns/nsd/nsd-4.7.0.ebuild b/net-dns/nsd/nsd-4.7.0.ebuild new file mode 100644 index 0000000000000..d9028ba457da6 --- /dev/null +++ b/net-dns/nsd/nsd-4.7.0.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools systemd + +DESCRIPTION="An authoritative only, high performance, open source name server" +HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd" + +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git" +else + # version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1 + MY_PV="${PV/_beta/b}" + MY_PV="${MY_PV/_rc/rc}" + MY_P="${PN}-${MY_PV}" + + if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then + SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} + + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="BSD" +SLOT="0" +IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd" + +RDEPEND=" + acct-group/nsd + acct-user/nsd + dnstap? ( + dev-libs/fstrm + dev-libs/protobuf-c + ) + libevent? ( dev-libs/libevent ) + munin? ( net-analyzer/munin ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + sys-devel/flex + app-alternatives/yacc + systemd? ( virtual/pkgconfig ) +" + +PATCHES=( + # Fix the paths in the munin plugin to match our install + "${FILESDIR}"/nsd_munin_.patch +) + +src_prepare() { + default + + # Required to get correct pkg-config macros with USE="systemd" + # See bugs #663618 and #758050 + eautoreconf +} + +src_configure() { + local myeconfargs=( + --enable-ipv6 + --enable-largefile + --enable-pie + --enable-relro-now + --enable-tcp-fastopen + + --with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db + --with-logfile="${EPREFIX}"/var/log/nsd.log + --with-pidfile="${EPREFIX}"/run/nsd/nsd.pid + --with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state + --with-xfrdir="${EPREFIX}"/var/db/nsd + --with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list + --with-zonesdir="${EPREFIX}"/var/lib/nsd + + $(use_enable bind8-stats) + $(use_enable bind8-stats zone-stats) + $(use_enable debug checking) + $(use_enable dnstap) + $(use_enable minimal-responses) + $(use_enable mmap) + $(use_enable nsec3) + $(use_enable ratelimit) + $(use_enable root-server) + $(use_enable systemd) + $(use_with libevent) + $(use_with ssl) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" install + + dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} + + newinitd "${FILESDIR}"/nsd.initd-r1 nsd + + # Install munin plugin and config + 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 + fi + + systemd_dounit "${FILESDIR}"/nsd.service + + # Remove the /run directory that usually resides on tmpfs and is + # being taken care of by the nsd init script anyway (checkpath) + rm -r "${ED}"/run || die "Failed to remove /run" + + keepdir /var/db/${PN} +} + +pkg_postinst() { + # database directory, writable by nsd for database updates and zone transfers + install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd + + # zones directory, writable by nsd for zone file updates (nsd-control write) + install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd +} diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild index 9a17b4f46b26e..d9028ba457da6 100644 --- a/net-dns/nsd/nsd-9999.ebuild +++ b/net-dns/nsd/nsd-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -17,7 +17,7 @@ else MY_PV="${MY_PV/_rc/rc}" MY_P="${PN}-${MY_PV}" - if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then + if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" S="${WORKDIR}"/${MY_P} diff --git a/sys-block/ndctl/Manifest b/sys-block/ndctl/Manifest index f6b9352e67739..34f13ca758fa8 100644 --- a/sys-block/ndctl/Manifest +++ b/sys-block/ndctl/Manifest @@ -1,4 +1,3 @@ DIST ndctl-71.1.tar.gz 330512 BLAKE2B 582f29fb649f33a48b5412bfefc15de2b1f765b27251d1b8a472d8c7705d671acbd6bf646f737baf8556d8fda39db68242f44e11225d7305e95f5d2ec5931f31 SHA512 92fb06ca64455775ce0b89ba0846f70235e02fe3502e2a8a55a858f76f87cb90ae98f5bf01620e5884f667ea78ee2bee2cd9e7a85ffa8f8d9c456e9282ca9ebc -DIST ndctl-72.1.tar.gz 365324 BLAKE2B 2e061bd1357c0b422f728e8624106d93e9eed2f5c7795428b0c61d041ab45569aa8bb6eb52544360ad538be85f3b7f84f8c9ab1037a8ca5498c2e1a13fa22186 SHA512 7304e23121c99457fa6e22a399fb636f6a66d6d07b090463ec41e424687b06e7e8a1a18623ab9dd5783aaccfa09ff964e3477b63aaa4614ac60f6e6050452f12 -DIST ndctl-75.tar.gz 415393 BLAKE2B f9081b09c2f4ad8a6bc9c53e792b8a49992c7089af09e39917efe0fceea800d81665a31bf14c8e2f6f83c57d1dccebb4513b9bb556a3e81c19c75fbc67e1d7e3 SHA512 0af960e43a363711fbdb5152bb670022bd9b2f6a269c153dd88dca4ad2dcc215679c354ebcc758e9376867462f82c21aebe62bc62ca27333dedf3a818f34b272 DIST ndctl-76.1.tar.gz 419651 BLAKE2B 52fdbb382a32005873e3be46d3c9b21c80e9ad53b5852c32d73d0ee966c61890d598d2b8d03fd0aa090970e5746daf52e91e70b9a79b328f1a2137a37bfb61a1 SHA512 76d32599df029969734276f8972f3f4bf701e471117c8a48d1f96b62c87a59ac54d59104ee62d1cbbb518a06a779677ca856df32ce6218d758a8c73daa3e5b06 +DIST ndctl-77.tar.gz 421255 BLAKE2B fcc9ed092d67a8ef86b60a487db5caca51f3ead43216da8df63f083ad016bd34058f0957702055faf3da967e54e70228fdb54fcd0536dc120a46719d7a1dc994 SHA512 cd1e37d015f209df446441da162d41bbca1b740d799b383c1147d3a3b1acc4e6dc4bcc1fda0e868f305e8a1698c969426c08d8a6222d8a0c8f3c94963b0ae36e diff --git a/sys-block/ndctl/files/ndctl-77-iniparser4.patch b/sys-block/ndctl/files/ndctl-77-iniparser4.patch new file mode 100644 index 0000000000000..9df1782d51bdf --- /dev/null +++ b/sys-block/ndctl/files/ndctl-77-iniparser4.patch @@ -0,0 +1,19 @@ +Adapt to dev-libs/iniparser being slotted in Gentoo. +--- a/meson.build ++++ b/meson.build +@@ -179,12 +179,12 @@ iniparser_headers = ['iniparser.h', 'dictionary.h'] + message('Looking for iniparser include headers', iniparser_headers) + + iniparserdir = include_directories(includedir / get_option('iniparserdir'), is_system:true) +-iniparser = cc.find_library('iniparser', required : (get_option('iniparserdir') != '') , ++iniparser = cc.find_library('iniparser4', required : (get_option('iniparserdir') != '') , + has_headers :iniparser_headers ,header_include_directories : iniparserdir) + + if not iniparser.found() +- iniparserdir = include_directories(includedir / 'iniparser', is_system:true) +- iniparser = cc.find_library('iniparser', required : true, has_headers : iniparser_headers, ++ iniparserdir = include_directories(includedir / 'iniparser4', is_system:true) ++ iniparser = cc.find_library('iniparser4', required : true, has_headers : iniparser_headers, + header_include_directories : iniparserdir) + endif + iniparser = declare_dependency(include_directories: iniparserdir, dependencies:iniparser) diff --git a/sys-block/ndctl/metadata.xml b/sys-block/ndctl/metadata.xml index 0c16d62874c00..003cade583fed 100644 --- a/sys-block/ndctl/metadata.xml +++ b/sys-block/ndctl/metadata.xml @@ -8,4 +8,7 @@ Use dev-libs/libtracefs to build cxl-monitor binary + + pmem/ndctl + diff --git a/sys-block/ndctl/ndctl-72.1.ebuild b/sys-block/ndctl/ndctl-72.1.ebuild deleted file mode 100644 index 47d1a8e6a3bcd..0000000000000 --- a/sys-block/ndctl/ndctl-72.1.ebuild +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2021-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit udev autotools bash-completion-r1 - -DESCRIPTION="Helper tools and libraries for managing non-volatile memory on Linux" -HOMEPAGE="https://github.com/pmem/ndctl" -SRC_URI="https://github.com/pmem/ndctl/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-2 LGPL-2.1 MIT CC0-1.0" -SLOT="0/6" -KEYWORDS="~amd64 ~x86" -IUSE="systemd test" - -DEPEND=" - dev-libs/iniparser:0= - dev-libs/json-c:= - sys-apps/keyutils:= - sys-apps/kmod:= - sys-apps/util-linux:= - virtual/libudev:= - systemd? ( sys-apps/systemd:= ) -" -RDEPEND="${DEPEND}" -BDEPEND=" - app-text/asciidoc - app-text/xmlto - sys-devel/libtool - virtual/pkgconfig -" - -RESTRICT="!test? ( test )" - -# tests require root access -RESTRICT+=" test" - -DOCS=( - README.md - CONTRIBUTING.md -) - -PATCHES=( - "${FILESDIR}/ndctl-71.1-bash-completion-configure.patch" -) - -src_prepare() { - default - printf 'm4_define([GIT_VERSION], [%s])' "${PV}" > version.m4 || die - sed -e '/git-version-gen/ d' -i Makefile.am || die - eautoreconf -} - -src_configure() { - econf \ - --with-bash-completion-dir="$(get_bashcompdir)" \ - --with-udevrulesdir=$(get_udevdir)/rules.d \ - $(use_with systemd) \ - --disable-asciidoctor -} - -src_test() { - emake check -} - -src_install() { - default - - find "${ED}" -name '*.la' -delete || die - - bashcomp_alias ndctl daxctl - bashcomp_alias ndctl cxl -} diff --git a/sys-block/ndctl/ndctl-75.ebuild b/sys-block/ndctl/ndctl-77.ebuild similarity index 89% rename from sys-block/ndctl/ndctl-75.ebuild rename to sys-block/ndctl/ndctl-77.ebuild index 6c45f09b498f3..ccdc44d26c19a 100644 --- a/sys-block/ndctl/ndctl-75.ebuild +++ b/sys-block/ndctl/ndctl-77.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/pmem/ndctl/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2 LGPL-2.1 MIT CC0-1.0" SLOT="0/6" KEYWORDS="~amd64 ~x86" -IUSE="doc systemd test" +IUSE="doc libtracefs systemd test" DEPEND=" dev-libs/iniparser:0= @@ -21,6 +21,7 @@ DEPEND=" sys-apps/kmod:= sys-apps/util-linux:= virtual/libudev:= + libtracefs? ( dev-libs/libtracefs:= ) systemd? ( sys-apps/systemd:= ) " RDEPEND="${DEPEND}" @@ -43,9 +44,14 @@ DOCS=( CONTRIBUTING.md ) +PATCHES=( + "${FILESDIR}"/${PN}-77-iniparser4.patch +) + src_configure() { local -a emesonargs=( $(meson_feature systemd) + $(meson_feature libtracefs) $(meson_feature doc docs) -Dasciidoctor=disabled -Dbashcompletiondir="$(get_bashcompdir)"