2020-03-20 09:29:12 +01:00
|
|
|
# Copyright 2020 Gentoo Authors
|
2019-10-22 12:49:22 +02:00
|
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
|
|
|
|
EAPI=7
|
|
|
|
|
2020-04-12 14:48:22 +02:00
|
|
|
inherit fcaps
|
2020-01-11 19:00:37 +01:00
|
|
|
|
2019-10-22 12:49:22 +02:00
|
|
|
DESCRIPTION="A routing daemon implementing OSPF, RIPv2 & BGP for IPv4 & IPv6"
|
2020-03-20 09:29:12 +01:00
|
|
|
HOMEPAGE="https://bird.network.cz"
|
2019-10-22 12:49:22 +02:00
|
|
|
SRC_URI="ftp://bird.network.cz/pub/${PN}/${P}.tar.gz"
|
|
|
|
LICENSE="GPL-2"
|
|
|
|
|
|
|
|
SLOT="0"
|
|
|
|
KEYWORDS="~amd64 ~arm64 ~x86 ~x64-macos"
|
2019-12-31 14:11:05 +01:00
|
|
|
IUSE="+client debug libssh"
|
2019-10-22 12:49:22 +02:00
|
|
|
|
2020-04-12 14:48:22 +02:00
|
|
|
RDEPEND="
|
|
|
|
client? ( sys-libs/ncurses )
|
2019-12-31 14:11:05 +01:00
|
|
|
client? ( sys-libs/readline )
|
2020-04-12 14:48:22 +02:00
|
|
|
filecaps? (
|
|
|
|
acct-group/bird
|
|
|
|
acct-user/bird
|
|
|
|
)
|
|
|
|
libssh? ( net-libs/libssh )
|
|
|
|
"
|
2019-10-22 12:49:22 +02:00
|
|
|
DEPEND="sys-devel/flex
|
|
|
|
sys-devel/bison
|
|
|
|
sys-devel/m4"
|
|
|
|
|
2020-04-12 14:48:22 +02:00
|
|
|
PATCHES=(
|
2020-05-08 09:56:49 +02:00
|
|
|
"${FILESDIR}/${P}-ipv6-rpki.patch"
|
2020-05-08 10:11:39 +02:00
|
|
|
"${FILESDIR}/${P}-attrs.c.patch"
|
2020-04-12 14:48:22 +02:00
|
|
|
)
|
|
|
|
|
2019-10-22 12:49:22 +02:00
|
|
|
src_configure() {
|
|
|
|
econf \
|
|
|
|
--localstatedir="${EPREFIX}/var" \
|
|
|
|
$(use_enable client) \
|
2019-12-31 14:11:05 +01:00
|
|
|
$(use_enable debug) \
|
|
|
|
$(use_enable libssh)
|
2019-10-22 12:49:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
src_install() {
|
|
|
|
if use client; then
|
|
|
|
dobin birdc
|
|
|
|
fi
|
|
|
|
dobin birdcl
|
|
|
|
dosbin bird
|
2020-04-12 14:48:22 +02:00
|
|
|
newinitd "${FILESDIR}/initd-${PN}-2" ${PN}
|
|
|
|
newconfd "${FILESDIR}/confd-${PN}-2" ${PN}
|
2019-10-22 12:49:22 +02:00
|
|
|
dodoc doc/bird.conf.example
|
|
|
|
}
|
2020-04-12 14:48:22 +02:00
|
|
|
|
|
|
|
FILECAPS=(
|
|
|
|
CAP_NET_ADMIN usr/sbin/bird
|
|
|
|
CAP_NET_BIND_SERVICE usr/sbin/bird
|
|
|
|
CAP_NET_RAW usr/sbin/bird
|
|
|
|
)
|
|
|
|
|
|
|
|
pkg_postinst() {
|
|
|
|
use filecaps && \
|
|
|
|
einfo "If you want to run bird as non-root, edit"
|
|
|
|
einfo "'${EROOT}/etc/conf.d/bird' and set BIRD_GROUP and BIRD_USER with"
|
|
|
|
einfo "the wanted username."
|
|
|
|
}
|