commit:     bd1ef183ef98cdbbe1d848c91ab82d831a01aca5
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 11 10:47:37 2021 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Thu Nov 11 10:56:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd1ef183

net-misc/frr: add 8.1

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 net-misc/frr/Manifest       |   1 +
 net-misc/frr/frr-8.1.ebuild | 149 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 150 insertions(+)

diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest
index e9a0e78de4d..85e2cbf0397 100644
--- a/net-misc/frr/Manifest
+++ b/net-misc/frr/Manifest
@@ -1 +1,2 @@
 DIST frr-8.0.1.tar.gz 8206852 BLAKE2B 
ed23f62457877fb3173977e1b7092c808adc5d5bd9b1d83747ac42573117adc38865abd1e722073532800f543978e5d67ba7c88416a4335c72bd6b8a3045ff5a
 SHA512 
d9a9ee3b40bf0271779765447c67da817551b5bf2d5d1e9f8073fb4596c622e013fbf7316ca39087db7b7f478b18d07f1fd06f1778abde2734c83112573d5f8f
+DIST frr-8.1.tar.gz 8514995 BLAKE2B 
6b70756909b54af3317b1e97956345206612a471893dcfa4d4a7edaf27ae8d94624b0129eb511bf96ac100cc8c5c5234c2f7031d1692f4a81d5025fe797cfd11
 SHA512 
dcbee55b48e9d4aba005a455f8c89e63a86d63a230e6bf2e1f691adf99654e0e170efaf2c8759e0bfc33b977659a828bed248370722210e98a6e2abad8f502aa

diff --git a/net-misc/frr/frr-8.1.ebuild b/net-misc/frr/frr-8.1.ebuild
new file mode 100644
index 00000000000..2f581241e3e
--- /dev/null
+++ b/net-misc/frr/frr-8.1.ebuild
@@ -0,0 +1,149 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+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"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc fpm grpc ipv6 kernel_linux nhrp ospfapi pam rpki snmp systemd test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+       ${PYTHON_DEPS}
+       acct-user/frr
+       dev-libs/json-c:0=
+       >=net-libs/libyang-2.0.0
+       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.6.3[ssh] )
+       snmp? ( net-analyzer/net-snmp:= )
+"
+BDEPEND="
+       ~dev-util/clippy-${PV}
+       sys-devel/flex
+       virtual/yacc
+       doc? ( dev-python/sphinx )
+"
+DEPEND="
+       ${COMMON_DEPEND}
+       test? ( $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]') )
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+       $(python_gen_cond_dep 'dev-python/ipaddr[${PYTHON_USEDEP}]')
+       !net-misc/quagga
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-7.5-ipctl-forwarding.patch
+)
+
+src_prepare() {
+       default
+
+       python_fix_shebang tools
+       eautoreconf
+}
+
+src_configure() {
+       local myconf=(
+               --disable-static
+               --with-pkg-extra-version="-gentoo"
+               --enable-configfile-mask=0640
+               --enable-logfile-mask=0640
+               --prefix="${EPREFIX}"/usr
+               --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
+               --with-clippy="${BROOT}"/usr/bin/clippy
+               --enable-exampledir="${EPREFIX}"/usr/share/doc/${PF}/samples
+               --enable-user=frr
+               --enable-group=frr
+               --enable-vty-group=frr
+               --enable-multipath=64
+               $(use_enable doc)
+               $(use_enable fpm)
+               $(use_enable grpc)
+               $(use_enable ipv6 ospf6d)
+               $(use_enable ipv6 ripngd)
+               $(use_enable ipv6 rtadv)
+               $(use_enable kernel_linux realms)
+               $(use_enable nhrp nhrpd)
+               $(usex ospfapi '--enable-ospfclient' '' '' '')
+               $(use_enable rpki)
+               $(use_enable snmp)
+               $(use_enable systemd)
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_compile() {
+       default
+
+       use doc && emake -C doc html
+}
+
+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
+       keepdir /etc/frr
+       fowners frr:frr /etc/frr
+       fperms 775 /etc/frr
+
+       # Create logs directory with the correct permissions
+       keepdir /var/log/frr
+       fowners frr:frr /var/log/frr
+       fperms 775 /var/log/frr
+
+       # Install the default configuration files
+       insinto /etc/frr
+       doins tools/etc/frr/vtysh.conf
+       doins tools/etc/frr/frr.conf
+       doins tools/etc/frr/daemons
+
+       # Fix permissions/owners.
+       fowners frr:frr /etc/frr/vtysh.conf
+       fowners frr:frr /etc/frr/frr.conf
+       fowners frr:frr /etc/frr/daemons
+       fperms 640 /etc/frr/vtysh.conf
+       fperms 640 /etc/frr/frr.conf
+       fperms 640 /etc/frr/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-v1 frr
+
+       # Conflict files, installed by net-libs/libsmi, bug #758383
+       rm "${ED}"/usr/share/yang/ietf-interfaces.yang || die
+}

Reply via email to