diff --git a/community/bird/PKGBUILD b/community/bird/PKGBUILD new file mode 100644 index 000000000..401e89b17 --- /dev/null +++ b/community/bird/PKGBUILD @@ -0,0 +1,95 @@ +# $Id$ +# Maintainer: Sébastien Luttringer + +# ALARM: Kevin Mihelich <kevin@archlinuxarm.org> +# - Use -fno-strict-aliasing in flags + +pkgbase=bird +pkgname=('bird' 'bird6') +pkgver=1.3.11 +pkgrel=2.1 +arch=('i686' 'x86_64') +url='http://bird.network.cz/' +license=('GPL2') +depends=('readline' 'ncurses') +source=("ftp://bird.network.cz/pub/bird/${pkgname}-${pkgver}.tar.gz" + 'bird.service' + 'bird6.service') +md5sums=('8ad2eb997fb8251bc5b24cf32619571b' + '69221e063a3f07dcad519d5eeacaae75' + '5b172bd052b523efd95ee018e891e181') + +build() { + cd $pkgbase-$pkgver + [[ -e _build4 ]] && rm -rf _build4 + [[ -e _build6 ]] && rm -rf _build6 + mkdir _build4 _build6 + + CFLAGS="${CFLAGS} -fno-strict-aliasing" + CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing" + + # build ipv4 bird + cd _build4 + ../configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --docdir=/usr/share/doc/$pkgname + make + + # build ipv6 bird + cd ../_build6 + ../configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --docdir=/usr/share/doc/$pkgname \ + --enable-ipv6 + make +} + +package_bird () { + pkgdesc='RIP, OSPFv2 and BGP daemon (ipv4 version)' + backup=('etc/bird.conf') + + cd $pkgbase-$pkgver/_build4 + make \ + prefix="$pkgdir/usr" \ + sysconfdir="$pkgdir/etc" \ + sbindir="$pkgdir/usr/bin" \ + localstatedir="$pkgdir/var" \ + docdir="$pkgdir/usr/share/doc/$pkgname" \ + install + #make docdir="$pkgdir/usr/share/doc/$pkgname" install-docs + + # no /var inside pkg + rm -r "$pkgdir/var" + + # systemd + install -D -m 644 "$srcdir/bird.service" "$pkgdir/usr/lib/systemd/system/bird.service" +} + +package_bird6 () { + pkgdesc='RIP, OSPFv3, RADV and BGP daemon (ipv6 version)' + backup=('etc/bird6.conf') + + cd $pkgbase-$pkgver/_build6 + make \ + prefix="$pkgdir/usr" \ + sysconfdir="$pkgdir/etc" \ + sbindir="$pkgdir/usr/bin" \ + localstatedir="$pkgdir/var" \ + docdir="$pkgdir/usr/share/doc/$pkgname" \ + install + #make docdir="$pkgdir/usr/share/doc/$pkgname" install-docs + + # no /var inside pkg + rm -r "$pkgdir/var" + + # systemd + install -D -m 644 "$srcdir/bird6.service" "$pkgdir/usr/lib/systemd/system/bird6.service" +} + +# vim:set ts=2 sw=2 et: diff --git a/community/bird/bird.service b/community/bird/bird.service new file mode 100644 index 000000000..c2e2572bf --- /dev/null +++ b/community/bird/bird.service @@ -0,0 +1,12 @@ +[Unit] +Description=BIRD routing daemon +After=network.target + +[Service] +Type=forking +ExecStart=/usr/bin/bird +ExecReload=/usr/bin/birdc configure +ExecStop=/usr/bin/birdc down + +[Install] +WantedBy=multi-user.target diff --git a/community/bird/bird6.service b/community/bird/bird6.service new file mode 100644 index 000000000..b7fed8637 --- /dev/null +++ b/community/bird/bird6.service @@ -0,0 +1,12 @@ +[Unit] +Description=BIRD IPv6 routing daemon +After=network.target + +[Service] +Type=forking +ExecStart=/usr/bin/bird6 +ExecReload=/usr/bin/birdc6 configure +ExecStop=/usr/bin/birdc6 down + +[Install] +WantedBy=multi-user.target