diff options
Diffstat (limited to 'net-misc/frr')
-rw-r--r-- | net-misc/frr/Manifest | 2 | ||||
-rw-r--r-- | net-misc/frr/frr-7.5.1-r1.ebuild | 140 |
2 files changed, 142 insertions, 0 deletions
diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest index 9bd543432ae4..b1ce793ea894 100644 --- a/net-misc/frr/Manifest +++ b/net-misc/frr/Manifest @@ -1,6 +1,8 @@ AUX frr-7.5-ipctl-forwarding.patch 731 BLAKE2B 9c97d7fdc7b7facb59a73f4b693c285ebd91cb0ba8f7fea0ef49d5eddd8660100315ca7d74ece8d553cdd8ad79a9a0b1a4c173c6dedf90e0be2bdc72d948b2be SHA512 56bdeb8a1f350fea3ad8ed0cdba28964b00384878853e584746d8ce80c6f9ea5ca5adc4539e314f7fd82203c08d5f2ce6adeec61dac9a7a28282131d0d371447 AUX frr-openrc-v1 7068 BLAKE2B c790c783ea9c289110b1e85aa23a1adccba36122524cde36798f26c31f82e5381eefb3e5e16b497e84a5aa2faf5bf1f59d12fe8f9b7b3c5d0f504c26ce13fb86 SHA512 34e371bb9bb34e494536091a811084d543c18b302489ce0a56ec3e69c805c22d84d7a928e24e17eba5d4fe6d4e33ac847060da95ded5a02975ba2a2e5a568243 AUX frr.pam 969 BLAKE2B 227dc91f51fab504229fa5489486fed1aa393d33c024849724ea3fb934e3fd78ee6c9147240133d458ec52021f13e8a27a2d8a0b4625415007c4595222b815ee SHA512 9a169d58232eba7481aee83d92b4e104b6c4ca95e5b31befe29117fbcebc187ad87c061f37ec7c571ff5702101a329ae0c113cf714e2d0dcd39ca4212734a9ed +DIST frr-7.5.1.tar.gz 6746148 BLAKE2B e6a8d38bac1323852d933ca9eaac681df8824407af008bb0170937a01564b3fb9fb081418630b7540f3ccdb899ac0948121d63accfa65ae0fd3fd6933fdafd6d SHA512 cf20316abd39a2d96bb377bd594464ae74c20ad70c60246409fe9f04f0177fcd8891a8da54d83bee962f589a00e71f7b51e78f9729c8680e6265ddd548e0464e DIST frr-7.5.tar.gz 6730659 BLAKE2B 12c915e7564b8f0157b20b0714b1efd8c2ad0c51dbaeb1eb3ef2d5ea50406c297d7f4bd854d9246b515d42f3fa326b2b3c7a30d83f35b64c374947b26709f6fe SHA512 d0d3c0bc0d30e2ebb93e20906768a996d21db23b23118c8e3c50d238e7bfdee7a789b4a90c9d7dbdc842d857f60bd44f0922b01b0c2c8b289ac860f008a430a9 +EBUILD frr-7.5.1-r1.ebuild 3463 BLAKE2B 9d673b775da6f15b9557a771a05f118d2756bf8cd885d3d4865a702310fab07a0f1d784e2b7004c79b3788c3c5c031361357b475bc39b0f26502eb6e116714e5 SHA512 6aff90a4fa99f636d4cd9e1d6d8651a69f0e30070a076f1d2626ee72002594efdf48ae5aad856cfab633ad02eabb9330adfceed24f8b2efc5c11764249273ecc EBUILD frr-7.5.ebuild 3371 BLAKE2B 4540d279f5b9816cd9abfe404928d335e6792df572e154a10302d53fb661892ea068c04ab160c841d7d6b8a3faa2de3bf39e6acfac50816c9d787a1f7dddd83c SHA512 fbe577b9cacd4e29ced2c035c3d26d627c2cd969c110717577cec59371fcd3f4de84879a49b45f84b422c28c7bf150fd1cfb1ded85580f1f8cc6ce7195128dde MISC metadata.xml 701 BLAKE2B 69812cc3ccd29487acd06afe28dbc936c671ee20741790045e39546720c1745311cae6dbba2bf612311e7ae27a708039006f0f92f04f512b724d291ebb33398a SHA512 4979d8ec46e7a874f9cff76f5b06b98692db749764d649bcbd8a06a51265cacdd466004ca4b7c5f7cabc7a4969908eb4840da2b85fd1dde3ee19815819b4a66a diff --git a/net-misc/frr/frr-7.5.1-r1.ebuild b/net-misc/frr/frr-7.5.1-r1.ebuild new file mode 100644 index 000000000000..899edf8f2bda --- /dev/null +++ b/net-misc/frr/frr-7.5.1-r1.ebuild @@ -0,0 +1,140 @@ +# Copyright 2020-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +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 ~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-1.0.184 + sys-libs/libcap + sys-libs/readline:0= + 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=" + 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() { + econf \ + --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 \ + --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) +} + +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 +} |