4 # - fix iface_descr patch
7 %bcond_without doc # don't build documentation
8 %bcond_without tc # don't build tc program (it breaks static linkage)
9 %bcond_without atm # disable ATM support for tc
10 %bcond_with uClibc # do some hacks to build with uClibc
11 %bcond_with iface_descr # build with interface description support
13 Summary: Advanced IP routing and network device configuration tools
14 Summary(es.UTF-8): Herramientas para encaminamiento avanzado y configuración de interfaces de red
15 Summary(pl.UTF-8): Narzędzie do konfigurowania sieci
16 Summary(pt_BR.UTF-8): Ferramentas para roteamento avançado e configuração de interfaces de rede
21 Group: Networking/Admin
22 Source0: https://www.kernel.org/pub/linux/utils/net/iproute2/%{name}-%{version}.tar.xz
23 # Source0-md5: d4b205830cdc2702f8a0cbd6232129cd
24 Source1: %{name}.tmpfiles
25 Patch0: %{name}-arp.patch
26 Patch1: %{name}-old-hyperref.patch
27 Patch3: %{name}-LDFLAGS.patch
28 Patch4: fix-bashisms.patch
29 Patch5: %{name}-build.patch
30 Patch6: %{name}-print_cache_route_entries.patch
32 Patch10: %{name}-2.2.4-wrr.patch
33 Patch11: esfq-%{name}.patch
34 Patch12: 001-net-dev-iface-descr-0.1.diff
35 Patch13: %{name}-q_atm_c.patch
36 Patch14: %{name}-q_srr.v0.4.patch
37 Patch15: %{name}-ip_route_get.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
54 BuildRequires: psutils
55 BuildRequires: sgml-tools
56 BuildRequires: texlive-dvips
57 BuildRequires: texlive-fonts-cmsuper
58 BuildRequires: texlive-fonts-jknappen
59 BuildRequires: texlive-latex
60 BuildRequires: texlive-latex-booktabs
61 BuildRequires: texlive-tex-babel
63 Requires: iptables-libs >= 0:1.4.5
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
68 %define _sbindir /sbin
69 %define _sysconfdir /etc/iproute2
72 The iproute package contains networking utilities (ip, tc and rtmon,
73 for example) which are designed to use the advanced networking
74 capabilities of the Linux 2.4.x and 2.6.x kernel.
76 %description -l es.UTF-8
77 Linux mantiene compatibilidad con los utilitarios estándares de
78 configuración de la red, pero se necesitan nuevos utilitarios para
79 usar los recursos y características del nuevo núcleo. Este paquete
80 incluye los nuevos utilitarios.
82 %description -l pl.UTF-8
83 Ten pakiet zawiera programy (m.in. ip, tc, rtmon) pozwalające na
84 kontrolę routingu i innych aspektów dotyczących sieci z wykorzystaniem
85 zaawansowanych możliwości jąder Linuksa 2.4.x i 2.6.x.
87 %description -l pt_BR.UTF-8
88 O Linux mantém compatibilidade com os utilitários padrão de
89 configuração da rede, mas novos utilitários são necessários para fazer
90 uso das características e recursos da nova kernel. This package
91 includes the new utilities.
93 %package -n libnetlink-devel
94 Summary: Library for the netlink interface
95 Summary(pl.UTF-8): Biblioteka do interfejsu netlink
96 Group: Development/Libraries
98 %description -n libnetlink-devel
99 This library provides an interface for kernel-user netlink interface.
101 %description -n libnetlink-devel -l pl.UTF-8
102 Ta biblioteka udostępnia interfejs do interfejsu netlink między jądrem
103 a przestrzenią użytkownika.
106 Summary: ip and tc documentation with examples
107 Summary(pl.UTF-8): Dokumentacja do ip i tc z przykładami
109 Group: Applications/System
112 The iproute documentation contains howtos and examples of settings.
114 %description doc -l pl.UTF-8
115 Dokumentacja do iproute zawiera "howto" oraz przykłady ustawień.
117 %package -n bash-completion-iproute2
118 Summary: Bash completion for iproute2 commands
119 Summary(pl.UTF-8): Bashowe dopełnianie parametrów poleceń iproute2
120 Group: Applications/Shells
121 Requires: %{name} = %{version}-%{release}
122 Requires: bash-completion >= 2.0
124 %description -n bash-completion-iproute2
125 Bash completion for iproute2 commands (currently only tc).
127 %description -n bash-completion-iproute2 -l pl.UTF-8
128 Bashowe dopełnianie parametrów poleceń iproute2 (obecnie tylko tc).
133 # conflict with atm-vbr patched linux-libc-headers
134 %{__rm} include/linux/atm.h
135 #%{__rm} -r include/linux
146 %{?with_iface_descr:%patch12 -p1}
154 CC="%{_target_cpu}-uclibc-gcc" \
155 LD="%{_target_cpu}-uclibc-gcc" \
161 CCOPTS="%{rpmcflags} %{rpmcppflags} -Wno-unused-result -DXT_LIB_DIR=\\\"%{_libdir}/xtables\\\"" \
162 LDFLAGS="%{rpmldflags} -Wl,-export-dynamic" \
164 %{!?with_tc:SUBDIRS="lib ip misc"} \
167 %{?with_doc:%{__make} -C doc}
169 # make sure we don't produce broken ip binary
170 ./ip/ip link add type vlan help 2>&1 | grep -q "VLANID :=" || exit 1
173 rm -rf $RPM_BUILD_ROOT
174 install -d $RPM_BUILD_ROOT{%{_includedir},/var/run/netns,%{systemdtmpfilesdir}}
178 DESTDIR=$RPM_BUILD_ROOT
180 # omitted by make install
181 install -Dp man/man7/tc-hfsc.7 $RPM_BUILD_ROOT%{_mandir}/man7/tc-hfsc.7
183 # arpd is not packaged here
184 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/arpd $RPM_BUILD_ROOT%{_mandir}/man8/arpd.8
186 cp -p lib/libnetlink.a $RPM_BUILD_ROOT%{_libdir}
187 cp -p include/libnetlink.h $RPM_BUILD_ROOT%{_includedir}
189 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
192 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
193 cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
196 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/iproute2
199 rm -rf $RPM_BUILD_ROOT
202 %defattr(644,root,root,755)
203 %doc README README.decnet README.iproute2+tc README.distribution README.lnstat
204 %attr(755,root,root) %{_sbindir}/bridge
205 %attr(755,root,root) %{_sbindir}/ctstat
206 %attr(755,root,root) %{_sbindir}/devlink
207 %attr(755,root,root) %{_sbindir}/genl
208 %attr(755,root,root) %{_sbindir}/ifcfg
209 %attr(755,root,root) %{_sbindir}/ifstat
210 %attr(755,root,root) %{_sbindir}/ip
211 %attr(755,root,root) %{_sbindir}/lnstat
212 %attr(755,root,root) %{_sbindir}/nstat
213 %attr(755,root,root) %{_sbindir}/routef
214 %attr(755,root,root) %{_sbindir}/routel
215 %attr(755,root,root) %{_sbindir}/rtacct
216 %attr(755,root,root) %{_sbindir}/rtmon
217 %attr(755,root,root) %{_sbindir}/rtpr
218 %attr(755,root,root) %{_sbindir}/rtstat
219 %attr(755,root,root) %{_sbindir}/ss
220 %attr(755,root,root) %{_sbindir}/tipc
222 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bpf_pinning
223 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ematch_map
224 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/group
225 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nl_protos
226 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_dsfield
227 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_protos
228 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_realms
229 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_scopes
230 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_tables
231 %{_mandir}/man8/bridge.8*
232 %{_mandir}/man8/ip.8*
233 %{_mandir}/man8/ip-*.8*
234 %{_mandir}/man8/ctstat.8*
235 %{_mandir}/man8/devlink.8*
236 %{_mandir}/man8/devlink-dev.8*
237 %{_mandir}/man8/devlink-monitor.8*
238 %{_mandir}/man8/devlink-port.8*
239 %{_mandir}/man8/devlink-sb.8*
240 %{_mandir}/man8/lnstat.8*
241 %{_mandir}/man8/nstat.8*
242 %{_mandir}/man8/routef.8*
243 %{_mandir}/man8/routel.8*
244 %{_mandir}/man8/rtacct.8*
245 %{_mandir}/man8/rtmon.8*
246 %{_mandir}/man8/rtpr.8*
247 %{_mandir}/man8/rtstat.8*
248 %{_mandir}/man8/ss.8*
249 %{_mandir}/man8/tipc.8*
250 %{_mandir}/man8/tipc-*.8*
252 %attr(755,root,root) %{_sbindir}/tc
254 %attr(755,root,root) %{_libdir}/tc/*.so
256 %{_mandir}/man7/tc-hfsc.7*
257 %{_mandir}/man8/tc.8*
258 %{_mandir}/man8/tc-*.8*
260 %{systemdtmpfilesdir}/%{name}.conf
261 %dir %attr(750,root,root) /var/run/netns
263 %files -n libnetlink-devel
264 %defattr(644,root,root,755)
265 %{_libdir}/libnetlink.a
266 %{_includedir}/libnetlink.h
267 %{_mandir}/man3/libnetlink.3*
271 %defattr(644,root,root,755)
273 %{_examplesdir}/%{name}-%{version}
276 %files -n bash-completion-iproute2
277 %defattr(644,root,root,755)