1 |
commit: 0ae7306f468ae0443f2b03c4a594913af3d0e32f |
2 |
Author: Jakov Smolic <jakov.smolic <AT> sartura <DOT> hr> |
3 |
AuthorDate: Sun Aug 22 21:53:42 2021 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Aug 22 21:53:42 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ae7306f |
7 |
|
8 |
net-misc/frr: Version bump to 8.0 |
9 |
|
10 |
Closes: https://github.com/gentoo/gentoo/pull/22063 |
11 |
Signed-off-by: Jakov Smolic <jakov.smolic <AT> sartura.hr> |
12 |
Signed-off-by: David Seifert <soap <AT> gentoo.org> |
13 |
|
14 |
net-misc/frr/Manifest | 1 + |
15 |
net-misc/frr/frr-8.0.ebuild | 147 ++++++++++++++++++++++++++++++++++++++++++++ |
16 |
2 files changed, 148 insertions(+) |
17 |
|
18 |
diff --git a/net-misc/frr/Manifest b/net-misc/frr/Manifest |
19 |
index 0edab74ae8d..4d5d97d69a7 100644 |
20 |
--- a/net-misc/frr/Manifest |
21 |
+++ b/net-misc/frr/Manifest |
22 |
@@ -1 +1,2 @@ |
23 |
DIST frr-7.5.1.tar.gz 6746148 BLAKE2B e6a8d38bac1323852d933ca9eaac681df8824407af008bb0170937a01564b3fb9fb081418630b7540f3ccdb899ac0948121d63accfa65ae0fd3fd6933fdafd6d SHA512 cf20316abd39a2d96bb377bd594464ae74c20ad70c60246409fe9f04f0177fcd8891a8da54d83bee962f589a00e71f7b51e78f9729c8680e6265ddd548e0464e |
24 |
+DIST frr-8.0.tar.gz 8195258 BLAKE2B 75d8d4410a5377dae3bf6938c3b095b163ad87776420a16c07d461bb3f635d623de642fa0ae483094788369c9dc6a04d5424107bf60c848ac54756c4bdb20c97 SHA512 fdf1e68c16e266a74221fb194851ef47c888e90324de2e42a4ca68b9dbce1ba6f45d73b9830bdb17774ecdde736111fa562201a5763c49092b6ce1f0a4d4865a |
25 |
|
26 |
diff --git a/net-misc/frr/frr-8.0.ebuild b/net-misc/frr/frr-8.0.ebuild |
27 |
new file mode 100644 |
28 |
index 00000000000..09bbffa7a3c |
29 |
--- /dev/null |
30 |
+++ b/net-misc/frr/frr-8.0.ebuild |
31 |
@@ -0,0 +1,147 @@ |
32 |
+# Copyright 2020-2021 Gentoo Authors |
33 |
+# Distributed under the terms of the GNU General Public License v2 |
34 |
+ |
35 |
+EAPI=7 |
36 |
+ |
37 |
+PYTHON_COMPAT=( python3_{8..10} ) |
38 |
+inherit autotools pam python-single-r1 systemd |
39 |
+ |
40 |
+DESCRIPTION="The FRRouting Protocol Suite" |
41 |
+HOMEPAGE="https://frrouting.org/" |
42 |
+SRC_URI="https://github.com/FRRouting/frr/archive/${P}.tar.gz" |
43 |
+# FRR tarballs have weird format. |
44 |
+S="${WORKDIR}/frr-${P}" |
45 |
+ |
46 |
+LICENSE="GPL-2" |
47 |
+SLOT="0" |
48 |
+KEYWORDS="~amd64 ~arm64 ~x86" |
49 |
+IUSE="doc fpm grpc ipv6 kernel_linux nhrp ospfapi pam rpki snmp systemd test" |
50 |
+REQUIRED_USE="${PYTHON_REQUIRED_USE}" |
51 |
+RESTRICT="!test? ( test )" |
52 |
+ |
53 |
+COMMON_DEPEND=" |
54 |
+ ${PYTHON_DEPS} |
55 |
+ acct-user/frr |
56 |
+ dev-libs/json-c:0= |
57 |
+ >=net-libs/libyang-2.0.0 |
58 |
+ sys-libs/libcap |
59 |
+ sys-libs/readline:0= |
60 |
+ virtual/libcrypt:= |
61 |
+ grpc? ( net-libs/grpc:= ) |
62 |
+ nhrp? ( net-dns/c-ares:0= ) |
63 |
+ pam? ( sys-libs/pam ) |
64 |
+ rpki? ( >=net-libs/rtrlib-0.6.3[ssh] ) |
65 |
+ snmp? ( net-analyzer/net-snmp:= ) |
66 |
+" |
67 |
+BDEPEND=" |
68 |
+ dev-util/clippy |
69 |
+ sys-devel/flex |
70 |
+ virtual/yacc |
71 |
+ doc? ( dev-python/sphinx ) |
72 |
+" |
73 |
+DEPEND=" |
74 |
+ ${COMMON_DEPEND} |
75 |
+ test? ( $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]') ) |
76 |
+" |
77 |
+RDEPEND=" |
78 |
+ ${COMMON_DEPEND} |
79 |
+ $(python_gen_cond_dep 'dev-python/ipaddr[${PYTHON_USEDEP}]') |
80 |
+ !net-misc/quagga |
81 |
+" |
82 |
+ |
83 |
+PATCHES=( "${FILESDIR}"/${PN}-7.5-ipctl-forwarding.patch ) |
84 |
+ |
85 |
+src_prepare() { |
86 |
+ default |
87 |
+ |
88 |
+ python_fix_shebang tools |
89 |
+ eautoreconf |
90 |
+} |
91 |
+ |
92 |
+src_configure() { |
93 |
+ local myconf=( |
94 |
+ --disable-static |
95 |
+ --with-pkg-extra-version="-gentoo" |
96 |
+ --enable-configfile-mask=0640 |
97 |
+ --enable-logfile-mask=0640 |
98 |
+ --prefix="${EPREFIX}"/usr |
99 |
+ --libdir="${EPREFIX}"/usr/lib/frr |
100 |
+ --sbindir="${EPREFIX}"/usr/lib/frr |
101 |
+ --libexecdir="${EPREFIX}"/usr/lib/frr |
102 |
+ --sysconfdir="${EPREFIX}"/etc/frr |
103 |
+ --localstatedir="${EPREFIX}"/run/frr |
104 |
+ --with-moduledir="${EPREFIX}"/usr/lib/frr/modules |
105 |
+ --with-clippy="${BROOT}"/usr/bin/clippy |
106 |
+ --enable-exampledir="${EPREFIX}"/usr/share/doc/${PF}/samples |
107 |
+ --enable-user=frr |
108 |
+ --enable-group=frr |
109 |
+ --enable-vty-group=frr |
110 |
+ --enable-multipath=64 |
111 |
+ $(use_enable doc) |
112 |
+ $(use_enable fpm) |
113 |
+ $(use_enable grpc) |
114 |
+ $(use_enable ipv6 ospf6d) |
115 |
+ $(use_enable ipv6 ripngd) |
116 |
+ $(use_enable ipv6 rtadv) |
117 |
+ $(use_enable kernel_linux realms) |
118 |
+ $(use_enable nhrp nhrpd) |
119 |
+ $(usex ospfapi '--enable-ospfclient' '' '' '') |
120 |
+ $(use_enable rpki) |
121 |
+ $(use_enable snmp) |
122 |
+ $(use_enable systemd) |
123 |
+ ) |
124 |
+ |
125 |
+ econf "${myconf[@]}" |
126 |
+} |
127 |
+ |
128 |
+src_compile() { |
129 |
+ default |
130 |
+ |
131 |
+ use doc && emake -C doc html |
132 |
+} |
133 |
+ |
134 |
+src_install() { |
135 |
+ default |
136 |
+ find "${ED}" -name '*.la' -delete || die |
137 |
+ |
138 |
+ # Install user documentation if asked |
139 |
+ use doc && dodoc -r doc/user/_build/html |
140 |
+ |
141 |
+ # Create configuration directory with correct permissions |
142 |
+ keepdir /etc/frr |
143 |
+ fowners frr:frr /etc/frr |
144 |
+ fperms 775 /etc/frr |
145 |
+ |
146 |
+ # Create logs directory with the correct permissions |
147 |
+ keepdir /var/log/frr |
148 |
+ fowners frr:frr /var/log/frr |
149 |
+ fperms 775 /var/log/frr |
150 |
+ |
151 |
+ # Install the default configuration files |
152 |
+ insinto /etc/frr |
153 |
+ doins tools/etc/frr/vtysh.conf |
154 |
+ doins tools/etc/frr/frr.conf |
155 |
+ doins tools/etc/frr/daemons |
156 |
+ |
157 |
+ # Fix permissions/owners. |
158 |
+ fowners frr:frr /etc/frr/vtysh.conf |
159 |
+ fowners frr:frr /etc/frr/frr.conf |
160 |
+ fowners frr:frr /etc/frr/daemons |
161 |
+ fperms 640 /etc/frr/vtysh.conf |
162 |
+ fperms 640 /etc/frr/frr.conf |
163 |
+ fperms 640 /etc/frr/daemons |
164 |
+ |
165 |
+ # Install logrotate configuration |
166 |
+ insinto /etc/logrotate.d |
167 |
+ newins redhat/frr.logrotate frr |
168 |
+ |
169 |
+ # Install PAM configuration file |
170 |
+ use pam && newpamd "${FILESDIR}"/frr.pam frr |
171 |
+ |
172 |
+ # Install init scripts |
173 |
+ systemd_dounit tools/frr.service |
174 |
+ newinitd "${FILESDIR}"/frr-openrc-v1 frr |
175 |
+ |
176 |
+ # Conflict files, installed by net-libs/libsmi, bug #758383 |
177 |
+ rm "${ED}"/usr/share/yang/ietf-interfaces.yang || die |
178 |
+} |