4 # - fix iface_descr patch
7 %bcond_without tc # don't build tc program (it breaks static linkage)
8 %bcond_without atm # disable ATM support for tc
9 %bcond_with uClibc # do some hacks to build with uClibc
10 %bcond_with iface_descr # build with interface description support
12 Summary: Advanced IP routing and network device configuration tools
13 Summary(es.UTF-8): Herramientas para encaminamiento avanzado y configuración de interfaces de red
14 Summary(pl.UTF-8): Narzędzie do konfigurowania sieci
15 Summary(pt_BR.UTF-8): Ferramentas para roteamento avançado e configuração de interfaces de rede
20 Group: Networking/Admin
21 Source0: https://www.kernel.org/pub/linux/utils/net/iproute2/%{name}-%{version}.tar.xz
22 # Source0-md5: 1075423d7029e02a8f23ed4f42b7e372
23 Source1: %{name}.tmpfiles
24 Patch0: %{name}-arp.patch
26 Patch3: %{name}-LDFLAGS.patch
27 Patch4: fix-bashisms.patch
28 Patch5: %{name}-build.patch
29 Patch6: %{name}-print_cache_route_entries.patch
31 Patch10: %{name}-2.2.4-wrr.patch
32 Patch11: esfq-%{name}.patch
33 Patch12: 001-net-dev-iface-descr-0.1.diff
34 Patch13: %{name}-q_atm_c.patch
35 Patch14: %{name}-q_srr.v0.4.patch
36 Patch15: %{name}-ip_route_get.patch
37 Patch16: %{name}-fou_show.patch
38 URL: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2
40 BuildRequires: db-devel
42 BuildRequires: elfutils-devel
44 BuildRequires: iptables-devel >= 0:1.4.5
45 BuildRequires: libmnl-devel
46 BuildRequires: libselinux-devel
48 BuildRequires: linux-atm-devel
50 BuildRequires: linux-libc-headers >= 7:2.6.12.0-15
51 BuildRequires: pkgconfig
52 BuildRequires: rpmbuild(macros) >= 1.673
53 Requires: iptables-libs >= 0:1.4.5
56 Obsoletes: iproute2-doc < 4.14.1
57 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59 %define _sbindir /sbin
60 %define _sysconfdir /etc/iproute2
63 The iproute package contains networking utilities (ip, tc and rtmon,
64 for example) which are designed to use the advanced networking
65 capabilities of the Linux 2.4.x and 2.6.x kernel.
67 %description -l es.UTF-8
68 Linux mantiene compatibilidad con los utilitarios estándares de
69 configuración de la red, pero se necesitan nuevos utilitarios para
70 usar los recursos y características del nuevo núcleo. Este paquete
71 incluye los nuevos utilitarios.
73 %description -l pl.UTF-8
74 Ten pakiet zawiera programy (m.in. ip, tc, rtmon) pozwalające na
75 kontrolę routingu i innych aspektów dotyczących sieci z wykorzystaniem
76 zaawansowanych możliwości jąder Linuksa 2.4.x i 2.6.x.
78 %description -l pt_BR.UTF-8
79 O Linux mantém compatibilidade com os utilitários padrão de
80 configuração da rede, mas novos utilitários são necessários para fazer
81 uso das características e recursos da nova kernel. This package
82 includes the new utilities.
85 Summary: Header file for tc plugins development
86 Summary(pl.UTF-8): Plik nagłówkowy do tworzenia wtyczek programu tc
87 Group: Development/Libraries
88 # doesn't require base
91 Header file for tc plugins development.
93 %description devel -l pl.UTF-8
94 Plik nagłówkowy do tworzenia wtyczek programu tc.
96 %package -n libnetlink-devel
97 Summary: Library for the netlink interface
98 Summary(pl.UTF-8): Biblioteka do interfejsu netlink
99 Group: Development/Libraries
101 %description -n libnetlink-devel
102 This library provides an interface for kernel-user netlink interface.
104 %description -n libnetlink-devel -l pl.UTF-8
105 Ta biblioteka udostępnia interfejs do interfejsu netlink między jądrem
106 a przestrzenią użytkownika.
108 %package -n bash-completion-iproute2
109 Summary: Bash completion for iproute2 commands
110 Summary(pl.UTF-8): Bashowe dopełnianie parametrów poleceń iproute2
111 Group: Applications/Shells
112 Requires: %{name} = %{version}-%{release}
113 Requires: bash-completion >= 2.0
115 %description -n bash-completion-iproute2
116 Bash completion for iproute2 commands (currently only tc).
118 %description -n bash-completion-iproute2 -l pl.UTF-8
119 Bashowe dopełnianie parametrów poleceń iproute2 (obecnie tylko tc).
124 # conflict with atm-vbr patched linux-libc-headers
125 %{__rm} include/uapi/linux/atm.h
126 #%{__rm} -r include/linux
137 %{?with_iface_descr:%patch12 -p1}
146 CC="%{_target_cpu}-uclibc-gcc" \
147 LD="%{_target_cpu}-uclibc-gcc" \
153 CCOPTS="%{rpmcflags} %{rpmcppflags} -Wno-unused-result -DXT_LIB_DIR=\\\"%{_libdir}/xtables\\\"" \
154 LDFLAGS="%{rpmldflags} -Wl,-export-dynamic" \
156 %{!?with_tc:SUBDIRS="lib ip misc"} \
159 # make sure we don't produce broken ip binary
160 ./ip/ip link add type vlan help 2>&1 | grep -q "VLANID :=" || exit 1
163 rm -rf $RPM_BUILD_ROOT
164 install -d $RPM_BUILD_ROOT{%{_includedir},/var/run/netns,%{systemdtmpfilesdir}}
168 DESTDIR=$RPM_BUILD_ROOT
170 # omitted by make install
171 install -Dp man/man7/tc-hfsc.7 $RPM_BUILD_ROOT%{_mandir}/man7/tc-hfsc.7
173 # arpd is not packaged here
174 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/arpd $RPM_BUILD_ROOT%{_mandir}/man8/arpd.8
176 cp -p lib/libnetlink.a $RPM_BUILD_ROOT%{_libdir}
177 cp -p include/libnetlink.h $RPM_BUILD_ROOT%{_includedir}
179 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
181 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/iproute2
184 rm -rf $RPM_BUILD_ROOT
187 %defattr(644,root,root,755)
188 %doc README README.decnet README.iproute2+tc README.distribution README.lnstat examples
189 %attr(755,root,root) %{_sbindir}/bridge
190 %attr(755,root,root) %{_sbindir}/ctstat
191 %attr(755,root,root) %{_sbindir}/devlink
192 %attr(755,root,root) %{_sbindir}/genl
193 %attr(755,root,root) %{_sbindir}/ifcfg
194 %attr(755,root,root) %{_sbindir}/ifstat
195 %attr(755,root,root) %{_sbindir}/ip
196 %attr(755,root,root) %{_sbindir}/lnstat
197 %attr(755,root,root) %{_sbindir}/nstat
198 %attr(755,root,root) %{_sbindir}/rdma
199 %attr(755,root,root) %{_sbindir}/routef
200 %attr(755,root,root) %{_sbindir}/routel
201 %attr(755,root,root) %{_sbindir}/rtacct
202 %attr(755,root,root) %{_sbindir}/rtmon
203 %attr(755,root,root) %{_sbindir}/rtpr
204 %attr(755,root,root) %{_sbindir}/rtstat
205 %attr(755,root,root) %{_sbindir}/ss
206 %attr(755,root,root) %{_sbindir}/tipc
208 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bpf_pinning
209 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ematch_map
210 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/group
211 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nl_protos
212 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_dsfield
213 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_protos
214 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_realms
215 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_scopes
216 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_tables
217 %{_mandir}/man8/bridge.8*
218 %{_mandir}/man8/genl.8*
219 %{_mandir}/man8/ifcfg.8*
220 %{_mandir}/man8/ip.8*
221 %{_mandir}/man8/ip-*.8*
222 %{_mandir}/man8/ctstat.8*
223 %{_mandir}/man8/devlink.8*
224 %{_mandir}/man8/devlink-dev.8*
225 %{_mandir}/man8/devlink-monitor.8*
226 %{_mandir}/man8/devlink-port.8*
227 %{_mandir}/man8/devlink-sb.8*
228 %{_mandir}/man8/ifstat.8*
229 %{_mandir}/man8/lnstat.8*
230 %{_mandir}/man8/nstat.8*
231 %{_mandir}/man8/rdma-dev.8*
232 %{_mandir}/man8/rdma-link.8*
233 %{_mandir}/man8/rdma.8*
234 %{_mandir}/man8/routef.8*
235 %{_mandir}/man8/routel.8*
236 %{_mandir}/man8/rtacct.8*
237 %{_mandir}/man8/rtmon.8*
238 %{_mandir}/man8/rtpr.8*
239 %{_mandir}/man8/rtstat.8*
240 %{_mandir}/man8/ss.8*
241 %{_mandir}/man8/tipc.8*
242 %{_mandir}/man8/tipc-*.8*
244 %attr(755,root,root) %{_sbindir}/tc
246 %attr(755,root,root) %{_libdir}/tc/*.so
248 %{_mandir}/man7/tc-hfsc.7*
249 %{_mandir}/man8/tc.8*
250 %{_mandir}/man8/tc-*.8*
252 %{systemdtmpfilesdir}/%{name}.conf
253 %dir %attr(750,root,root) /var/run/netns
256 %defattr(644,root,root,755)
257 %{_includedir}/iproute2
259 %files -n libnetlink-devel
260 %defattr(644,root,root,755)
261 %{_libdir}/libnetlink.a
262 %{_includedir}/libnetlink.h
263 %{_mandir}/man3/libnetlink.3*
265 %files -n bash-completion-iproute2
266 %defattr(644,root,root,755)