forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: portage-2.3.3
- Loading branch information
Showing
4 changed files
with
154 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST ht-20040304-classless-bgp.patch 1581 SHA256 39993890f9e31d662ed0564c732fb22392a901beb45b64261ffeadd9edf27887 SHA512 3df102d8ab88aaee1f109a2310602d6f734f2268252e5e42df752df7db7abeac526e969289481c4abfe905dcd41c35dee65196c48ac320fe9d083305451476e8 WHIRLPOOL cef99d64d52ab8c28bd672fb93dfbd8d716a31c76a5403496a6d104a5ff39531d6085134124d41fe4ff7adf895fa001cbe77b6e42846d849d6c108c81583d04e | ||
DIST quagga-1.1.1.tar.gz 2871705 SHA256 b5a94e5bdad3062e04595a5692b8cc435f0a85102f75dfdca0a06d093b4ef63f SHA512 51eb64ada07b42c663705cedf56be5b8b54143a5543b472e3dc7c703a4ab0542f39cfbeed64d1c33ceee6a15ea8d25ef84616fa40b6bf9cc32023f7241c18c58 WHIRLPOOL 795aa54b7930c441cbbc40a67db75865ccecada523164c906dd4a1b385b51820bff061ca58265fc67d1a814c8162d8b6e6758a4aab47ba54dab58cf846cb28be | ||
DIST quagga-1.2.0.tar.gz 2948778 SHA256 1043644d37975d9f920b76c593368cbe36ca43e27eb57cff316ee80ccb31dce3 SHA512 0ad28b828c2e52ad486189bd68e21041fe7c4affada7e3f12ba83a95f3532e0b012ba6b4271f9d0de63d4f5b15e80c706977b3afa54b57a3a5ec02400227d5ae WHIRLPOOL b4c73c4f7c99c971d762fbde79d5c6776b11b36d8a9b58e9c7cb5d322818ef8b6d90ca5c3f4c55f9b3353ae65042a99b41d39049b0a2f254bbd8904e5136ecce |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
[Unit] | ||
Description=NHRP daemon | ||
Documentation=man:nhrpd(8) man:zebra(8) | ||
BindTo=zebra.service | ||
After=network.target zebra.service | ||
ConditionPathExists=/etc/quagga/nhrpd.conf | ||
|
||
[Service] | ||
Type=forking | ||
PIDFile=/run/quagga/nhrpd.pid | ||
ExecStart=/usr/sbin/nhrpd -d | ||
ExecReload=/bin/kill -HUP $MAINPID | ||
Restart=on-abort | ||
|
||
[Install] | ||
WantedBy=multi-user.target |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
CLASSLESS_BGP_PATCH=ht-20040304-classless-bgp.patch | ||
|
||
inherit autotools eutils flag-o-matic multilib pam readme.gentoo-r1 systemd user | ||
|
||
DESCRIPTION="A free routing daemon replacing Zebra supporting RIP, OSPF and BGP" | ||
HOMEPAGE="http://quagga.net/" | ||
SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz | ||
bgpclassless? ( http://hasso.linux.ee/stuff/patches/quagga/${CLASSLESS_BGP_PATCH} )" | ||
|
||
LICENSE="GPL-2" | ||
SLOT="0" | ||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~s390 ~sparc ~x86" | ||
|
||
IUSE="bgpclassless caps fpm doc elibc_glibc ipv6 multipath ospfapi pam protobuf +readline snmp tcp-zebra" | ||
|
||
COMMON_DEPEND=" | ||
caps? ( sys-libs/libcap ) | ||
protobuf? ( dev-libs/protobuf-c:0= ) | ||
readline? ( | ||
sys-libs/readline:0= | ||
pam? ( sys-libs/pam ) | ||
) | ||
snmp? ( net-analyzer/net-snmp ) | ||
!elibc_glibc? ( dev-libs/libpcre )" | ||
DEPEND="${COMMON_DEPEND} | ||
sys-apps/gawk | ||
sys-devel/libtool:2" | ||
RDEPEND="${COMMON_DEPEND} | ||
sys-apps/iproute2" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/${PN}-0.99.22.4-ipctl-forwarding.patch" | ||
) | ||
|
||
DISABLE_AUTOFORMATTING=1 | ||
DOC_CONTENTS="Sample configuration files can be found in /usr/share/doc/${PF}/samples | ||
You have to create config files in /etc/quagga before | ||
starting one of the daemons. | ||
You can pass additional options to the daemon by setting the EXTRA_OPTS | ||
variable in their respective file in /etc/conf.d" | ||
|
||
pkg_setup() { | ||
enewgroup quagga | ||
enewuser quagga -1 -1 /var/empty quagga | ||
} | ||
|
||
src_prepare() { | ||
# Classless prefixes for BGP | ||
# http://hasso.linux.ee/doku.php/english:network:quagga | ||
use bgpclassless && eapply -p0 "${DISTDIR}/${CLASSLESS_BGP_PATCH}" | ||
|
||
eapply "${PATCHES[@]}" | ||
eapply_user | ||
eautoreconf | ||
} | ||
|
||
src_configure() { | ||
append-flags -fno-strict-aliasing | ||
|
||
# do not build PDF docs | ||
export ac_cv_prog_PDFLATEX=no | ||
export ac_cv_prog_LATEXMK=no | ||
|
||
econf \ | ||
--enable-exampledir=/usr/share/doc/${PF}/samples \ | ||
--enable-irdp \ | ||
--enable-isisd \ | ||
--enable-isis-topology \ | ||
--enable-pimd \ | ||
--enable-user=quagga \ | ||
--enable-group=quagga \ | ||
--enable-vty-group=quagga \ | ||
--with-cflags="${CFLAGS}" \ | ||
--with-pkg-extra-version="-gentoo" \ | ||
--sysconfdir=/etc/quagga \ | ||
--localstatedir=/run/quagga \ | ||
--disable-static \ | ||
$(use_enable caps capabilities) \ | ||
$(usex snmp '--enable-snmp' '' '' '') \ | ||
$(use_enable !elibc_glibc pcreposix) \ | ||
$(use_enable fpm) \ | ||
$(use_enable tcp-zebra) \ | ||
$(use_enable doc) \ | ||
$(usex multipath $(use_enable multipath) '' '=0' '') \ | ||
$(usex ospfapi '--enable-opaque-lsa --enable-ospf-te --enable-ospfclient' '' '' '') \ | ||
$(use_enable readline vtysh) \ | ||
$(use_with pam libpam) \ | ||
$(use_enable protobuf) \ | ||
$(use_enable ipv6 ripngd) \ | ||
$(use_enable ipv6 ospf6d) \ | ||
$(use_enable ipv6 rtadv) | ||
} | ||
|
||
src_install() { | ||
default | ||
prune_libtool_files | ||
readme.gentoo_create_doc | ||
|
||
keepdir /etc/quagga | ||
fowners root:quagga /etc/quagga | ||
fperms 0770 /etc/quagga | ||
|
||
# Path for PIDs before first reboot should be created here, bug #558194 | ||
dodir /run/quagga | ||
fowners quagga:quagga /run/quagga | ||
fperms 0770 /run/quagga | ||
|
||
# Install systemd-related stuff, bug #553136 | ||
systemd_dotmpfilesd "${FILESDIR}/systemd/quagga.conf" | ||
systemd_dounit "${FILESDIR}/systemd/zebra.service" | ||
|
||
# install zebra as a file, symlink the rest | ||
newinitd "${FILESDIR}"/quagga-services.init.3 zebra | ||
|
||
for service in bgpd isisd nhrpd ospfd pimd ripd $(use ipv6 && echo ospf6d ripngd); do | ||
dosym zebra /etc/init.d/${service} | ||
systemd_dounit "${FILESDIR}/systemd/${service}.service" | ||
done | ||
|
||
use readline && use pam && newpamd "${FILESDIR}/quagga.pam" quagga | ||
|
||
insinto /etc/logrotate.d | ||
newins redhat/quagga.logrotate quagga | ||
} | ||
|
||
pkg_postinst() { | ||
readme.gentoo_print_elog | ||
} |