summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-misc/frr/Manifest1
-rw-r--r--net-misc/frr/frr-10.2.2.ebuild149
2 files changed, 150 insertions, 0 deletions
diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest
index 52eac28f1c1a..0ab5e1f78b37 100644
--- a/net-misc/frr/Manifest
+++ b/net-misc/frr/Manifest
@@ -2,5 +2,6 @@ DIST frr-10.0.3.tar.gz 10968934 BLAKE2B 18ef81af21b9ca2861dd66c7c3d4ec7faa2ba322
DIST frr-10.1.2.tar.gz 11046539 BLAKE2B db983becc4c00256cfc87032252f85f763d9acfdc5eb8488206b32fe8caddfb8e9371808d929cb708b4df1a32d2a2df148d036f3eef98ff432812ae6a865d539 SHA512 257844687c0132819bedf559a527217d4c01abfa6b98c787f18f24e5006a53d9d3e561b22ab36631d691ba53d3f206c1d52d8020cb1b962d7ad117b159f674c6
DIST frr-10.1.3.tar.gz 11054898 BLAKE2B d0315061fddd2fb7d44cc9fd58044203a54778f716a341e3b73f15427f17ac73aaab0887d5d805f2d80c26688e4b49445467e8007d35d1f0aca785e296a2a181 SHA512 90dc1be0ef975b55e4e4442106543ed38b0f51b30dc250a619639d7e37de339801728672ced4f7b197141921b22ad86471a5a2422421daacd6e53f04e1de5179
DIST frr-10.2.1.tar.gz 11178677 BLAKE2B 8bcc8ccf8febee1012d94a9f3de40cc177bec1af464cd935303df8859a72607d03e5f9030f05bed5d56a7a413a0029479f538b3c0b35acc4a66295b4229f6be1 SHA512 8544280a0c536e8688cbf2811d96cdc2fa3413f662013bb1b58cb02d4d56a08d98e870b39e477f6b0294e6aceb5dcc99c5facdeee165ce7597c2150ebb79101e
+DIST frr-10.2.2.tar.gz 11184873 BLAKE2B 610060a8dd352085e084b8d5d367b357a0432525a296af5be2c8333f2a00934291c2b0ce1d2cc46e8eaab41e43fdba2374464d6944e9379d2d521b359beb3ac7 SHA512 992e75438ebb0c337eb00c64d6a1097427ce3279c2b3b5b592dbc52d1e7b978776e86dfa5d3a5062bb29b25b6d1f68d8423cd9e5fa93c04cf1207fc362dcf6a2
DIST frr-9.1.2.tar.gz 10790677 BLAKE2B dfa4967ee0e0bbecea016b9deeb70b1c1b9e409469de145050602608dddd41857be946e8df5c8a594dfaf6a124729af55d7ce4483e6fe6edc41125f09d9dabd2 SHA512 e0ed613090140ece181bff077a7067a00a5fca648ec6627c02d815060087497c68712c1ba244fa1534cdbcef49db92bd9432545d05027dc4b04db4f423726882
DIST frr-9.1.3.tar.gz 10790704 BLAKE2B e8e68aa7bd4c4c9e01d82c2ef2788fb66fad0332000fc61bcc094af22628a09ce4dc28d41891a4a48e8493a6377f9fa02c5b782cf8a989fd7f54484ecb24e0eb SHA512 5f07ae1dcea2bca8de30dba97011de999a08cebdd1b2dd05f1eb24c4dbde2746a51de54867d77a6b5a205c8d13636589e0513c360d453143fd64802d5956a682
diff --git a/net-misc/frr/frr-10.2.2.ebuild b/net-misc/frr/frr-10.2.2.ebuild
new file mode 100644
index 000000000000..6e1d6a35e541
--- /dev/null
+++ b/net-misc/frr/frr-10.2.2.ebuild
@@ -0,0 +1,149 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit 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
+ doc? ( dev-python/sphinx )
+"
+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
+}
+
+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[@]}"
+}
+
+src_compile() {
+ default
+
+ use doc && emake -C doc html
+}
+
+src_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ default
+}
+
+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 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 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
+}