commit:     e156b2b22fb2349a87ecfaeeabd883e4f0706848
Author:     Jaco Kroon <jkroon <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 11 07:16:14 2025 +0000
Commit:     Jaco Kroon <jkroon <AT> gentoo <DOT> org>
CommitDate: Tue Nov 11 07:29:00 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e156b2b2

net-misc/frr: add 10.5.0

Signed-off-by: Jaco Kroon <jkroon <AT> gentoo.org>

 net-misc/frr/Manifest          |   1 +
 net-misc/frr/frr-10.5.0.ebuild | 151 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 152 insertions(+)

diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest
index 60f406ef3800..1d23b87cd420 100644
--- a/net-misc/frr/Manifest
+++ b/net-misc/frr/Manifest
@@ -5,3 +5,4 @@ DIST frr-10.2.3.tar.gz 11191641 BLAKE2B 
d1ece2ead664e1e06b4080c48c895ab730b08a6f
 DIST frr-10.3.1.tar.gz 11379856 BLAKE2B 
aeeaa15bcd102ec322672106e1fdd98f2d124ac79514be6ee1ac63648a336519a95b1f1dc5fbee348b92796e6e79e2a9f857b959af5838b2c2b4afb2dc68de0a
 SHA512 
a39ef9995c13f6e5c7fab683a8fce78640c5d40c580ea1978af3af46d393f5da6a2209b49e6609f197a603202943926def035be271b54e79d50b4e68b277c31b
 DIST frr-10.3.tar.gz 11374042 BLAKE2B 
85f4d29b390497df3e730b7114fd0ddf6f083571d21315d4760c87d5e792e3db6d415a407126de8ef6252266bb3bbfd8c29285e3b1aeb850f6e3458167f6c7fd
 SHA512 
1c78f688bd143b12bb2135da10d4937ad25ccdb0c5cfe046e966f1b4a889c5b177da59fb8bc7b8956c71c95a05147af2af4f14cdd4b4fc48c57e0581411158b1
 DIST frr-10.4.1.tar.gz 11564121 BLAKE2B 
1270fe6bb82e9e0ea718bab72658ad8b82c936f06f2c5e3686a66f3e9baeedf10e181bbf6c9cd05713194518f7bc6ab561b9baeaf609716fe182240e8abccdce
 SHA512 
c2903e4ddba0ff484872c0378c64dfbe5a92620d62d918c0a1330302d798ad04b7ce81e10f2dc693b37b8d651ad0c76d3f0a2c57db4c5676ff221610173b10c3
+DIST frr-10.5.0.tar.gz 11650715 BLAKE2B 
2690c6cfa8a44f8a9315cc3ef6920ebed36a793d60bb0aa3b6f3b686c654e940ed453960c67fc811422099ce17c7e0e8b509dd81e8c69a3ec99dee5557eda744
 SHA512 
b44367c966e7f8337056b269dab301c91db99f954c47b48997443570b210870f87113ca04e84de4483c9a79845d0b8dec1a311b0d22696f542301084bdadc2e8

diff --git a/net-misc/frr/frr-10.5.0.ebuild b/net-misc/frr/frr-10.5.0.ebuild
new file mode 100644
index 000000000000..4248ea77bb89
--- /dev/null
+++ b/net-misc/frr/frr-10.5.0.ebuild
@@ -0,0 +1,151 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+inherit out-of-source autotools pam python-single-r1 systemd
+
+DESCRIPTION="The FRRouting Protocol Suite"
+HOMEPAGE="https://frrouting.org/";
+SRC_URI="https://github.com/FRRouting/frr/archive/${P}.tar.gz";
+# FRR tarballs have weird format.
+S="${WORKDIR}/frr-${P}"
+
+LICENSE="GPL-2+"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc fpm grpc nhrp ospfapi pam rpki snmp test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+       ${PYTHON_DEPS}
+       acct-user/frr
+       dev-libs/json-c:0=
+       dev-libs/protobuf-c:0=
+       >=net-libs/libyang-2.1.128
+       sys-libs/libcap
+       sys-libs/readline:0=
+       virtual/libcrypt:=
+       grpc? ( net-libs/grpc:= )
+       nhrp? ( net-dns/c-ares:0= )
+       pam? ( sys-libs/pam )
+       rpki? ( >=net-libs/rtrlib-0.8.0[ssh] )
+       snmp? ( net-analyzer/net-snmp:= )
+"
+BDEPEND="
+       sys-devel/flex
+       app-alternatives/yacc
+       dev-libs/elfutils
+       doc? ( dev-python/sphinx )
+       grpc? ( sys-apps/which )
+"
+DEPEND="
+       ${COMMON_DEPEND}
+       elibc_musl? ( sys-libs/queue-standalone )
+       test? (
+               $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+               dev-util/cunit
+       )
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-7.5-ipctl-forwarding.patch
+       "${FILESDIR}"/${PN}-8.4.1-logrotate.patch
+       "${FILESDIR}"/${PN}-9.1-mimic-gnu-basename-api-for-non-glibc.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+       mallinfo # No functional impact.
+       mallinfo2
+)
+
+src_prepare() {
+       default
+
+       python_fix_shebang tools
+       eautoreconf
+}
+
+my_src_configure() {
+       local myconf=(
+               LEX=flex
+               --with-pkg-extra-version="-gentoo"
+               --enable-configfile-mask=0640
+               --enable-logfile-mask=0640
+               --libdir="${EPREFIX}"/usr/lib/frr
+               --sbindir="${EPREFIX}"/usr/lib/frr
+               --libexecdir="${EPREFIX}"/usr/lib/frr
+               --sysconfdir="${EPREFIX}"/etc/frr
+               --localstatedir="${EPREFIX}"/run/frr
+               --with-moduledir="${EPREFIX}"/usr/lib/frr/modules
+               --enable-user=frr
+               --enable-group=frr
+               --enable-vty-group=frr
+               --enable-multipath=64
+               $(use_enable doc)
+               $(use_enable fpm)
+               $(use_enable grpc)
+               $(use_enable kernel_linux realms)
+               $(use_enable nhrp nhrpd)
+               $(usex ospfapi '--enable-ospfclient' '' '' '')
+               $(use_enable rpki)
+               $(use_enable snmp)
+       )
+
+       econf "${myconf[@]}"
+}
+
+my_src_compile() {
+       default
+
+       use doc && emake -C doc html
+}
+
+my_src_test() {
+       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+       default
+}
+
+my_src_install() {
+       default
+       find "${ED}" -name '*.la' -delete || die
+
+       # Install user documentation if asked
+       use doc && dodoc -r doc/user/_build/html
+
+       # Create configuration directory with correct permissions
+       # Create logs directory with the correct permissions
+       diropts -ofrr -gfrr -m0775
+       keepdir /var/log/frr /etc/frr
+
+       # Install the default configuration files
+       insinto /etc/frr
+       doins "${S}"/tools/etc/frr/{vtysh.conf,frr.conf,daemons}
+
+       # Fix permissions/owners.
+       fowners frr:frr /etc/frr/{vtysh.conf,frr.conf,daemons}
+       fperms 640 /etc/frr/{vtysh.conf,frr.conf,daemons}
+
+       # Install logrotate configuration
+       insinto /etc/logrotate.d
+       newins "${S}"/redhat/frr.logrotate frr
+
+       # Install PAM configuration file
+       use pam && newpamd "${FILESDIR}"/frr.pam frr
+
+       # Install init scripts
+       systemd_dounit tools/frr.service
+       newinitd "${FILESDIR}"/frr-openrc-v2 frr
+
+       # Conflict files, installed by net-libs/libsmi, bug #758383
+       # Files from frr seems to be newer.
+       rm "${ED}"/usr/share/yang/ietf-interfaces.yang || die
+       rm "${ED}"/usr/share/yang/ietf-netconf.yang || die
+       rm "${ED}"/usr/share/yang/ietf-netconf-with-defaults.yang || die
+       rm "${ED}"/usr/share/yang/ietf-netconf-acm.yang || die
+}

Reply via email to