summaryrefslogtreecommitdiff
path: root/net-misc/frr
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/frr')
-rw-r--r--net-misc/frr/Manifest2
-rw-r--r--net-misc/frr/frr-8.1-r1.ebuild147
2 files changed, 149 insertions, 0 deletions
diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest
index 2ce80a27e6c7..248a2646489e 100644
--- a/net-misc/frr/Manifest
+++ b/net-misc/frr/Manifest
@@ -2,5 +2,7 @@ AUX frr-7.5-ipctl-forwarding.patch 731 BLAKE2B 9c97d7fdc7b7facb59a73f4b693c285eb
AUX frr-openrc-v1 7078 BLAKE2B d5c0276540fa09318f6e92575dd7e03f3bc6ebfce186d062c2d65fa49c502b3b4de0fd32914ce7c4708bb6f6188296f75d387e0384c142381bb77cfb706c7e1c SHA512 8e6f0e58863402f0169b8a7625d049bf85db60bebe40a42dfb450a1bddfcd6f8f436002de6c1ff599c8f848e4ba85a70e4058cb55a9a49fafb1e69a8e7eb9f57
AUX frr.pam 969 BLAKE2B 227dc91f51fab504229fa5489486fed1aa393d33c024849724ea3fb934e3fd78ee6c9147240133d458ec52021f13e8a27a2d8a0b4625415007c4595222b815ee SHA512 9a169d58232eba7481aee83d92b4e104b6c4ca95e5b31befe29117fbcebc187ad87c061f37ec7c571ff5702101a329ae0c113cf714e2d0dcd39ca4212734a9ed
DIST frr-8.0.1.tar.gz 8206852 BLAKE2B ed23f62457877fb3173977e1b7092c808adc5d5bd9b1d83747ac42573117adc38865abd1e722073532800f543978e5d67ba7c88416a4335c72bd6b8a3045ff5a SHA512 d9a9ee3b40bf0271779765447c67da817551b5bf2d5d1e9f8073fb4596c622e013fbf7316ca39087db7b7f478b18d07f1fd06f1778abde2734c83112573d5f8f
+DIST frr-8.1.tar.gz 8514995 BLAKE2B 6b70756909b54af3317b1e97956345206612a471893dcfa4d4a7edaf27ae8d94624b0129eb511bf96ac100cc8c5c5234c2f7031d1692f4a81d5025fe797cfd11 SHA512 dcbee55b48e9d4aba005a455f8c89e63a86d63a230e6bf2e1f691adf99654e0e170efaf2c8759e0bfc33b977659a828bed248370722210e98a6e2abad8f502aa
EBUILD frr-8.0.1.ebuild 3538 BLAKE2B f4c2a6bc1901bc776f0266ece3a0daf04ab716b63a55c32e634f387e2482d18b3c1446785294fab12be08c1d97eb07f56dbcaad22bc20d354befa7c08489fee1 SHA512 4ebdd4c6bbf0770f7c478a1c85a47e8d78237d709240bdeaa7f4bace13ef0b59bc5bf715c899977ba8c712c63a1cf14685fd7e5056cddd2af254fe0e8de8a9d7
+EBUILD frr-8.1-r1.ebuild 3445 BLAKE2B fe86b9e6e3ff80ed9efdb6633c45fdf2103764e9087323f9f755237c3fc2da67827592d74a5a4d3da385043e250dfac09313dfdcc5966583fa11e10bbd7d2c53 SHA512 6fbde4096367c00896662d6226708e397ffd2625a8c215b2ebc5f56b3862fe67ceb9eba44329280fe73a36fd85e3081241d58b9bcc6bf679a392568c7782dac6
MISC metadata.xml 767 BLAKE2B ce7920e238d443a1ede5f38b323c86dc2f4e24d5efeb6603a59e8ec9a0d083cdc8e6162d7d3e9463b29bf786b26e00aac19c549ddf943b16175897fb94265516 SHA512 29dd8aa5ad6706a53e00c14feea8e7a75d10ec453dec715a495a75a0390661c268d5a5fc10acdb26d050a0d804162930de79bf0e41a499b803a4762442b8a108
diff --git a/net-misc/frr/frr-8.1-r1.ebuild b/net-misc/frr/frr-8.1-r1.ebuild
new file mode 100644
index 000000000000..1fcbac9b2687
--- /dev/null
+++ b/net-misc/frr/frr-8.1-r1.ebuild
@@ -0,0 +1,147 @@
+# 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 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-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)
+ )
+
+ 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
+}