diff --git a/net-misc/bird/Manifest b/net-misc/bird/Manifest index 9e33279082053..7936f993c00c7 100644 --- a/net-misc/bird/Manifest +++ b/net-misc/bird/Manifest @@ -2,6 +2,8 @@ DIST bird-2.17.2.tar.gz 1499113 BLAKE2B d8f1ed7f701ced4e59fc161ddd7d5fda4b6bebd2 DIST bird-2.17.3.tar.gz 1504596 BLAKE2B bd0659ca0394288d781ea9343d68123c6208f8c95017e1b17cf7cf83210be36b1fe5f8bf3197905e8811421dc00db730395abc74f5d2ae85758cc2accc95c3a5 SHA512 932090ddb8d298929832629c5d571c733798d3eb1cfb0f31267010a4ef325c9dca986584c5dec6e68e1b8546d7ffc5264f40468e7d76d247f8b2e5dc59bf7b3c DIST bird-2.17.4.tar.gz 1499020 BLAKE2B c562c34b600f91507ccb8e08cdb575fe73cd6c5a809fb3ef63743ad1a362ef13892d54e31cb35ff10175c9297d540c3b7945e14249548b3014b5bc6123944514 SHA512 4afbd9869f5dd3db8ba3388be7fb3f26c4df6d764b5b8c8276c89e5a1194e3676d0b0a3297e88b03e15a440f11d32aa7327415b3a70fd16843d0301c91e90ef7 DIST bird-2.18.1.tar.gz 1510621 BLAKE2B deddc5879f82150d3ba41e85225524cc83c67ea94d7f039430e1b9941b1720313e010f4b812f5305f61987e281462f75131223fce7976cfc402be0d527dd26e2 SHA512 b15ef96c016f6ce6d08cd991528e3b757df1b75fa0f1874efb1f5da1a9477b5b57af3c2ca67bd39fae41ea41ccae6e307a97788c14d4dea18e86536d441a6ea2 +DIST bird-2.19.0.tar.gz 1553158 BLAKE2B ab6dff30a80847b81eed566507632b1713d6dc346e0da756f66eb44b690904d2bf229fe72431633f89d65c4d0cd9e2673be0aa3cbd39c4a1e6212caca5a65e0f SHA512 65bbb691722750bd953a25449b9202a9fb938d43ca22b4b4580e76a12821d23ec184734639d772b441626847908e585724c6ee5275722acd2df1f00b5b49c136 DIST bird-3.1.5.tar.gz 2745193 BLAKE2B 8a580d0abacd0c4fd1a1e629f9f0c45cd3ddf24b3b5de921a4f4ed4bbdc7d45724a4e1dfd5c32921811d822c5417f363c36d06dc1621aba1c7c895dfe58cba3c SHA512 ec619ff4ee3f67dea0e9de9431149ffe68c430d4af38ba1c43c73ae2b8d1ff74855ca8a940655a217a4aadba598b095260b77097a2f95aa4dd1aa9a6a591840c DIST bird-3.1.6.tar.gz 2736816 BLAKE2B 0813aaef2745a2f2e461d51994e4a00b474fbb63b427589e42fdfadbdf14da348742728f23c4c4aff995d01c00c55085feda772c67b63bf4d64d1dc35fa984f6 SHA512 2c5ef588695ab25e4866b8133ceec1d7cdf5a185a48ab26e1693cfdf776695cd9bfc0298880bb65be512bb6a2537d53e613ab395ef2f516e7af9dd2ef1ffd662 DIST bird-3.2.1.tar.gz 2759143 BLAKE2B c0f0912dc0bf92cf41747bcfe41bf491b211df8d7b30a6c842e8c3cfa4cf3d5dec19f359e9c88ab5afcc5f5a356a0134e185662e8f5a34928bc309c8ef67b06a SHA512 e7f5f18a387b7e37c801630e4fd49ca5dcad18d9123dc9badb78811ea95dfe0e2ad2963b709b0a44658ffb17ebbe89eacfb24705594f46dead815bc4c3a6e220 +DIST bird-3.3.0.tar.gz 2854616 BLAKE2B f3db04b0e55dd81d5f3ef84dcb1dab24f2b202eaf28c3a7b20142eae3ee4e0aad6cae7cd65dd6083cf589f451344ababf7cce6f0a542bdb9e04d38a819e9c757 SHA512 afaad7c3d3b00db587c31817fffa12a92290c5e19c7817f93480264a6b920fc18847c073fad5beb212deceb2479633055f94fd8ccf2f80bbdbd9edacd5cc3068 diff --git a/net-misc/bird/bird-2.19.0.ebuild b/net-misc/bird/bird-2.19.0.ebuild new file mode 100644 index 0000000000000..56e7d95accc2c --- /dev/null +++ b/net-misc/bird/bird-2.19.0.ebuild @@ -0,0 +1,85 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit fcaps + +DESCRIPTION="A routing daemon implementing OSPF, RIPv2 & BGP for IPv4 & IPv6" +HOMEPAGE="https://bird.nic.cz" +SRC_URI="https://bird.nic.cz/download/${P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~loong ~x86 ~x64-macos" +IUSE="+client custom-cflags debug libssh selinux" + +RDEPEND=" + client? ( + sys-libs/ncurses:= + sys-libs/readline:= + ) + filecaps? ( + acct-group/bird + acct-user/bird + ) + libssh? ( net-libs/libssh:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + sys-devel/m4 +" +RDEPEND+=" selinux? ( sec-policy/selinux-bird )" + +FILECAPS=( + CAP_NET_ADMIN usr/sbin/bird + CAP_NET_BIND_SERVICE usr/sbin/bird + CAP_NET_RAW usr/sbin/bird +) + +src_configure() { + # This export makes compilation and test phases verbose + export VERBOSE=1 + + local myargs=( + --localstatedir="${EPREFIX}/var" + $(use_enable client) + $(use_enable debug) + $(use_enable libssh) + ) + + # lto must be enabled by default as bird is mono-threaded and use several + # optimisations to be fast, as it may very likely be exposed to several + # thounsand BGP updates per seconds + # Although, we make it possible to deactivate it if wanted + # We force the value of the whole cflags var instead of only lto because of + # upstream commit 404e8261 (configure.ac: properly evaluate ac_test_CFLAGS) + use custom-cflags && myargs+=( bird_cflags_default=no ) || \ + myargs+=( bird_cflags_default=yes ) + + econf "${myargs[@]}" +} + +src_install() { + if use client; then + dobin birdc + fi + + dobin birdcl + dosbin bird + + newinitd "${FILESDIR}/initd-${PN}-3" ${PN} + newconfd "${FILESDIR}/confd-${PN}-2" ${PN} + + dodoc doc/bird.conf.example +} + +pkg_postinst() { + if use filecaps; then + 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." + fi +} diff --git a/net-misc/bird/bird-3.3.0.ebuild b/net-misc/bird/bird-3.3.0.ebuild new file mode 100644 index 0000000000000..4a5c6611a61c1 --- /dev/null +++ b/net-misc/bird/bird-3.3.0.ebuild @@ -0,0 +1,82 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit fcaps + +DESCRIPTION="A routing daemon implementing OSPF, RIPv2 & BGP for IPv4 & IPv6" +HOMEPAGE="https://bird.nic.cz/" +SRC_URI="https://bird.nic.cz/download/${P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~x86 ~x64-macos" +IUSE="+client custom-cflags debug libssh selinux" + +RDEPEND=" + client? ( + sys-libs/ncurses:= + sys-libs/readline:= + ) + filecaps? ( + acct-group/bird + acct-user/bird + ) + libssh? ( net-libs/libssh:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + sys-devel/m4 +" +RDEPEND+=" selinux? ( sec-policy/selinux-bird )" + +FILECAPS=( + CAP_NET_ADMIN usr/sbin/bird + CAP_NET_BIND_SERVICE usr/sbin/bird + CAP_NET_RAW usr/sbin/bird +) + +src_configure() { + # This export makes compilation and test phases verbose + export VERBOSE=1 + + local myargs=( + --localstatedir="${EPREFIX}/var" + $(use_enable client) + $(use_enable debug) + $(use_enable libssh) + ) + + # lto must be enabled by default as bird is mono-threaded and use several + # optimisations to be fast, as it may very likely be exposed to several + # thounsand BGP updates per seconds + # Although, we make it possible to deactivate it if wanted + use custom-cflags && myargs+=( bird_cflags_default=no ) || \ + myargs+=( bird_cflags_default=yes ) + + econf "${myargs[@]}" +} + +src_install() { + if use client; then + dobin birdc + fi + + dobin birdcl + dosbin bird + + newinitd "${FILESDIR}/initd-${PN}-3" ${PN} + newconfd "${FILESDIR}/confd-${PN}-2" ${PN} + + dodoc doc/bird.conf.example +} + +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." +}