diff options
Diffstat (limited to 'net-misc/bird')
-rw-r--r-- | net-misc/bird/Manifest | 2 | ||||
-rw-r--r-- | net-misc/bird/bird-1.6.6.ebuild | 68 | ||||
-rw-r--r-- | net-misc/bird/bird-2.0.4.ebuild | 36 | ||||
-rw-r--r-- | net-misc/bird/files/initd-bird-2 | 51 |
4 files changed, 157 insertions, 0 deletions
diff --git a/net-misc/bird/Manifest b/net-misc/bird/Manifest index 613f07ffcd11..1e7bd719165e 100644 --- a/net-misc/bird/Manifest +++ b/net-misc/bird/Manifest @@ -1,5 +1,7 @@ DIST bird-1.6.3.tar.gz 1337198 BLAKE2B e1a4a5ec4f46980f77f7c69860343da50eadea54129f20b52302aca5cdf63b19370f8cc2642b480af621772ed7b49ed7ed61a38c486f22c055abbe6be210aab9 SHA512 d0f044cbbb3e5fe0624ad8ae58f5fa352ff41a9cd73f37d803431d9d148927bce52d8f2b82e31dd65c753c55b1034aaf8e15739a511e42cd2dd122b5cd1e15df DIST bird-1.6.4.tar.gz 1018874 BLAKE2B f6ef0b952f6b00008fadcaa1c1a32ac31b42a9804e221edb75073e23ff942276bf1beee6d3f4c9d89f90339e99bb82a5953c17ff6963e5ff60d29a50f45e06d4 SHA512 5034d6bdca40ecddaed57bd4ab6e700828b89221bd3ce6d347aa9caa4dca65880c080ee3f276a8c31adde2de16402c8b7e7fd32dc4463d29d63b3f16b833b2eb DIST bird-1.6.5.tar.gz 1114984 BLAKE2B 15b2a432e467a8ce81acc4d3d5cf7dea865cf7d3a8c893ab348916fbf60104a5606a6cbc2fcd647c102f3177f0d04d2f046860da244f26a7357f321285f1e295 SHA512 a86c340f4acd9d90b5babe8f19dbd753b2ad94db2c92181bf969244c1d7b20aa825a0311c13a1e19b019019b91af7827775970fd39e807ab32da690492ce356e +DIST bird-1.6.6.tar.gz 1029505 BLAKE2B 45cd621175962ea22848948e61aaf8b5c4eebbae5f5703bd71571defb2661d0aee646e93a1b42b8d93e6901d256a6e6d91d9bc4573bc01c31d9b359f5184dc5a SHA512 2419e487af2c8e75f613892ee1b1ada00085945bcafe17de972d3196f50a32321a6d18c9a3b58c0c58a5273f348a6d6de8b861505ad559269510a0ba69041fd9 DIST bird-2.0.2.tar.gz 1015224 BLAKE2B 3931c0431dc6511596e7214f6e2099548aafa69c951a44cd628443701eac061e8d95c387d74d81ad889988750c5bdb32a69ed77bfe655b161932017f1a1266a1 SHA512 aef96f246484a52269b44963df033ccc584e62d50d1ae31a97a97b9c7375e576d70d00f61a0f6da336e60cefc4c921945df0cc821d5fd1c737b19f508e65d30b DIST bird-2.0.3.tar.gz 1141917 BLAKE2B 14b51a4195003ddcf848be45755057ebf835edf54f35208f8d80121c22eeb83c9afa0c0c1ab269c376da59f5d07843054b08e1679db873a0b8121aa611b9202b SHA512 c88d0119dbebf4b2224ff7c6555e1ebf516748611e3544e7cfba47adb60c45a996efed7d2dc2b8fd849f15689e5d3c2624c4019c4a9a5a356d551a35db8fa0e2 +DIST bird-2.0.4.tar.gz 1051911 BLAKE2B 12100685e4aad969dbb51eaa567e1038f50e7c030a25a8697bc35d4f33d0f64f9ccbc045e1210acb78f3d8d4a7cc7ef2be7ae50a36679f2322d292e8e6993ed4 SHA512 65092ca6be115b4d0c31c3c4a79d3ee2e196dc2f85454448eab568cc9cc1fe37b7bdfe1ddb74d4f6f147dc479a8570cf7bf702d762cd69414f976678c14c8e2f diff --git a/net-misc/bird/bird-1.6.6.ebuild b/net-misc/bird/bird-1.6.6.ebuild new file mode 100644 index 000000000000..db540658a184 --- /dev/null +++ b/net-misc/bird/bird-1.6.6.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="A routing daemon implementing OSPF, RIPv2 & BGP for IPv4 or IPv6" +HOMEPAGE="http://bird.network.cz" +SRC_URI="ftp://bird.network.cz/pub/${PN}/${P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86 ~x64-macos" +IUSE="+client debug ipv6" + +RDEPEND="client? ( sys-libs/ncurses ) + client? ( sys-libs/readline )" +DEPEND="sys-devel/flex + sys-devel/bison + sys-devel/m4" + +src_prepare() { + eapply_user + mkdir ipv6 + tar c --exclude ipv6 . | tar x -C ipv6 +} + +src_configure() { + econf \ + --disable-ipv6 \ + --localstatedir="${EPREFIX}/var" \ + $(use_enable client) \ + $(use_enable debug) + + if use ipv6; then + cd ipv6 + econf \ + --enable-ipv6 \ + --localstatedir="${EPREFIX}/var" \ + $(use_enable client) \ + $(use_enable debug) + fi +} + +src_compile() { + emake + if use ipv6; then + cd ipv6 + emake + fi +} + +src_install() { + if use ipv6; then + if use client; then + newbin ipv6/birdc birdc6 + fi + newbin ipv6/birdcl birdcl6 + newsbin ipv6/bird bird6 + newinitd "${FILESDIR}/initd-${PN}-2" bird6 + fi + if use client; then + dobin birdc + fi + dobin birdcl + dosbin bird + newinitd "${FILESDIR}/initd-${PN}-2" bird + dodoc doc/bird.conf.example +} diff --git a/net-misc/bird/bird-2.0.4.ebuild b/net-misc/bird/bird-2.0.4.ebuild new file mode 100644 index 000000000000..152c1ad23c3c --- /dev/null +++ b/net-misc/bird/bird-2.0.4.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="A routing daemon implementing OSPF, RIPv2 & BGP for IPv4 & IPv6" +HOMEPAGE="http://bird.network.cz" +SRC_URI="ftp://bird.network.cz/pub/${PN}/${P}.tar.gz" +LICENSE="GPL-2" + +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86 ~x64-macos" +IUSE="+client debug" + +RDEPEND="client? ( sys-libs/ncurses ) + client? ( sys-libs/readline )" +DEPEND="sys-devel/flex + sys-devel/bison + sys-devel/m4" + +src_configure() { + econf \ + --localstatedir="${EPREFIX}/var" \ + $(use_enable client) \ + $(use_enable debug) +} + +src_install() { + if use client; then + dobin birdc + fi + dobin birdcl + dosbin bird + newinitd "${FILESDIR}/initd-${PN}-2" bird + dodoc doc/bird.conf.example +} diff --git a/net-misc/bird/files/initd-bird-2 b/net-misc/bird/files/initd-bird-2 new file mode 100644 index 000000000000..06030d4b3016 --- /dev/null +++ b/net-misc/bird/files/initd-bird-2 @@ -0,0 +1,51 @@ +#!/sbin/openrc-run +# Copyright 1999-2019 Gentoo Authors +# Copyright 2019 Alarig Le Lay <alarig@grifon.fr> +# Distributed under the terms of the GNU General Public License v2 + +extra_started_commands="reload" + +pidfile="/run/${RC_SVCNAME}.pid" +command="/usr/sbin/${RC_SVCNAME}" +retry=15 + +CONF_FILE="/etc/${RC_SVCNAME}.conf" +SOCK="/run/${RC_SVCNAME}.ctl" + +client_args="-s ${SOCK}" +command_args="${client_args} -c ${CONF_FILE} -P ${pidfile}" +client_args="${client_args} -r" + +depend() { + need net + use logger +} + +check_run() { + BIRD_CHECK_CONF="birdc ${client_args} configure check \"${CONF_FILE}\"" + # Check if the bird parser returns what we want + # We can’t use $? because it’s always 0 if the sock works + STATE=$(${BIRD_CHECK_CONF} | grep 'Configuration OK') + + if [ -n "${STATE}" ]; then + return 0 + else + # We remove the first three lines (garbage informations), the + # errors begin after that + eerror "$(${BIRD_CHECK_CONF} | sed '1,3d')" + return 1 + fi +} + +reload() { + check_run || return 1 + ebegin "Reloading BIRD" + start-stop-daemon --signal HUP --pidfile "${pidfile}" + eend $? +} + +stop_pre() { + if [ "${RC_CMD}" = "restart" ] ; then + check_run || return 1 + fi +} |