]> git.pld-linux.org Git - packages/iproute2.git/blob - iproute2.spec
- x32 rebuild
[packages/iproute2.git] / iproute2.spec
1 #
2 # TODO:
3 # - fix build @ uClibc
4 # - fix iface_descr patch
5 #
6 # Conditional build
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
12
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
17 Name:           iproute2
18 Version:        4.11.0
19 Release:        2
20 License:        GPL v2+
21 Group:          Networking/Admin
22 Source0:        https://www.kernel.org/pub/linux/utils/net/iproute2/%{name}-%{version}.tar.xz
23 # Source0-md5:  7a9498de88bcca95c305df6108ae197e
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
31 # extensions
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
39 BuildRequires:  bison
40 BuildRequires:  db-devel
41 # libelf
42 BuildRequires:  elfutils-devel
43 BuildRequires:  flex
44 BuildRequires:  iptables-devel >= 0:1.4.5
45 BuildRequires:  libmnl-devel
46 BuildRequires:  libselinux-devel
47 %if %{with atm}
48 BuildRequires:  linux-atm-devel
49 %endif
50 BuildRequires:  linux-libc-headers >= 7:2.6.12.0-15
51 BuildRequires:  pkgconfig
52 BuildRequires:  rpmbuild(macros) >= 1.673
53 %if %{with doc}
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
62 %endif
63 Requires:       iptables-libs >= 0:1.4.5
64 Obsoletes:      ifstat
65 Obsoletes:      iproute
66 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67
68 %define         _sbindir        /sbin
69 %define         _sysconfdir     /etc/iproute2
70
71 %description
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.
75
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.
81
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.
86
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.
92
93 %package devel
94 Summary:        Header file for tc plugins development
95 Summary(pl.UTF-8):      Plik nagłówkowy do tworzenia wtyczek programu tc
96 Group:          Development/Libraries
97 # doesn't require base
98
99 %description devel
100 Header file for tc plugins development.
101
102 %description devel -l pl.UTF-8
103 Plik nagłówkowy do tworzenia wtyczek programu tc.
104
105 %package -n libnetlink-devel
106 Summary:        Library for the netlink interface
107 Summary(pl.UTF-8):      Biblioteka do interfejsu netlink
108 Group:          Development/Libraries
109
110 %description -n libnetlink-devel
111 This library provides an interface for kernel-user netlink interface.
112
113 %description -n libnetlink-devel -l pl.UTF-8
114 Ta biblioteka udostępnia interfejs do interfejsu netlink między jądrem
115 a przestrzenią użytkownika.
116
117 %package doc
118 Summary:        ip and tc documentation with examples
119 Summary(pl.UTF-8):      Dokumentacja do ip i tc z przykładami
120 License:        GPL v2+
121 Group:          Applications/System
122
123 %description doc
124 The iproute documentation contains howtos and examples of settings.
125
126 %description doc -l pl.UTF-8
127 Dokumentacja do iproute zawiera "howto" oraz przykłady ustawień.
128
129 %package -n bash-completion-iproute2
130 Summary:        Bash completion for iproute2 commands
131 Summary(pl.UTF-8):      Bashowe dopełnianie parametrów poleceń iproute2
132 Group:          Applications/Shells
133 Requires:       %{name} = %{version}-%{release}
134 Requires:       bash-completion >= 2.0
135
136 %description -n bash-completion-iproute2
137 Bash completion for iproute2 commands (currently only tc).
138
139 %description -n bash-completion-iproute2 -l pl.UTF-8
140 Bashowe dopełnianie parametrów poleceń iproute2 (obecnie tylko tc).
141
142 %prep
143 %setup -q
144
145 # conflict with atm-vbr patched linux-libc-headers
146 %{__rm} include/linux/atm.h
147 #%{__rm} -r include/linux
148
149 %patch0 -p1
150 %patch1 -p1
151 %patch3 -p1
152 %patch4 -p1
153 %patch5 -p1
154 %patch6 -p1
155 # extensions:
156 %patch10 -p1
157 %patch11 -p1
158 %{?with_iface_descr:%patch12 -p1}
159 %patch13 -p0
160 %patch14 -p1
161 %patch15 -p1
162
163 %build
164 %{__make} \
165 %if %{with uClibc}
166         CC="%{_target_cpu}-uclibc-gcc" \
167         LD="%{_target_cpu}-uclibc-gcc" \
168 %else
169         CC="%{__cc}" \
170         LD="%{__cc}" \
171 %endif
172         HOSTCC="%{__cc}" \
173         CCOPTS="%{rpmcflags} %{rpmcppflags} -Wno-unused-result -DXT_LIB_DIR=\\\"%{_libdir}/xtables\\\"" \
174         LDFLAGS="%{rpmldflags} -Wl,-export-dynamic" \
175         LIBDIR=%{_libdir} \
176         %{!?with_tc:SUBDIRS="lib ip misc"} \
177         V=1
178
179 %{?with_doc:%{__make} -C doc}
180
181 # make sure we don't produce broken ip binary
182 ./ip/ip link add type vlan help 2>&1 | grep -q "VLANID :=" || exit 1
183
184 %install
185 rm -rf $RPM_BUILD_ROOT
186 install -d $RPM_BUILD_ROOT{%{_includedir},/var/run/netns,%{systemdtmpfilesdir}}
187
188 %{__make} install \
189         LIBDIR=%{_libdir} \
190         DESTDIR=$RPM_BUILD_ROOT
191
192 # omitted by make install
193 install -Dp man/man7/tc-hfsc.7 $RPM_BUILD_ROOT%{_mandir}/man7/tc-hfsc.7
194
195 # arpd is not packaged here
196 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/arpd $RPM_BUILD_ROOT%{_mandir}/man8/arpd.8
197
198 cp -p lib/libnetlink.a $RPM_BUILD_ROOT%{_libdir}
199 cp -p include/libnetlink.h $RPM_BUILD_ROOT%{_includedir}
200
201 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
202
203 %if %{with doc}
204 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
205 cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
206 %endif
207
208 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/iproute2
209
210 %clean
211 rm -rf $RPM_BUILD_ROOT
212
213 %files
214 %defattr(644,root,root,755)
215 %doc README README.decnet README.iproute2+tc README.distribution README.lnstat
216 %attr(755,root,root) %{_sbindir}/bridge
217 %attr(755,root,root) %{_sbindir}/ctstat
218 %attr(755,root,root) %{_sbindir}/devlink
219 %attr(755,root,root) %{_sbindir}/genl
220 %attr(755,root,root) %{_sbindir}/ifcfg
221 %attr(755,root,root) %{_sbindir}/ifstat
222 %attr(755,root,root) %{_sbindir}/ip
223 %attr(755,root,root) %{_sbindir}/lnstat
224 %attr(755,root,root) %{_sbindir}/nstat
225 %attr(755,root,root) %{_sbindir}/routef
226 %attr(755,root,root) %{_sbindir}/routel
227 %attr(755,root,root) %{_sbindir}/rtacct
228 %attr(755,root,root) %{_sbindir}/rtmon
229 %attr(755,root,root) %{_sbindir}/rtpr
230 %attr(755,root,root) %{_sbindir}/rtstat
231 %attr(755,root,root) %{_sbindir}/ss
232 %attr(755,root,root) %{_sbindir}/tipc
233 %dir %{_sysconfdir}
234 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bpf_pinning
235 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ematch_map
236 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/group
237 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nl_protos
238 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_dsfield
239 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_protos
240 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_realms
241 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_scopes
242 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_tables
243 %{_mandir}/man8/bridge.8*
244 %{_mandir}/man8/ip.8*
245 %{_mandir}/man8/ip-*.8*
246 %{_mandir}/man8/ctstat.8*
247 %{_mandir}/man8/devlink.8*
248 %{_mandir}/man8/devlink-dev.8*
249 %{_mandir}/man8/devlink-monitor.8*
250 %{_mandir}/man8/devlink-port.8*
251 %{_mandir}/man8/devlink-sb.8*
252 %{_mandir}/man8/ifstat.8*
253 %{_mandir}/man8/lnstat.8*
254 %{_mandir}/man8/nstat.8*
255 %{_mandir}/man8/routef.8*
256 %{_mandir}/man8/routel.8*
257 %{_mandir}/man8/rtacct.8*
258 %{_mandir}/man8/rtmon.8*
259 %{_mandir}/man8/rtpr.8*
260 %{_mandir}/man8/rtstat.8*
261 %{_mandir}/man8/ss.8*
262 %{_mandir}/man8/tipc.8*
263 %{_mandir}/man8/tipc-*.8*
264 %if %{with tc}
265 %attr(755,root,root) %{_sbindir}/tc
266 %dir %{_libdir}/tc
267 %attr(755,root,root) %{_libdir}/tc/*.so
268 %{_libdir}/tc/*.dist
269 %{_mandir}/man7/tc-hfsc.7*
270 %{_mandir}/man8/tc.8*
271 %{_mandir}/man8/tc-*.8*
272 %endif
273 %{systemdtmpfilesdir}/%{name}.conf
274 %dir %attr(750,root,root) /var/run/netns
275
276 %files devel
277 %defattr(644,root,root,755)
278 %{_includedir}/iproute2
279
280 %files -n libnetlink-devel
281 %defattr(644,root,root,755)
282 %{_libdir}/libnetlink.a
283 %{_includedir}/libnetlink.h
284 %{_mandir}/man3/libnetlink.3*
285
286 %if %{with doc}
287 %files doc
288 %defattr(644,root,root,755)
289 %doc doc/*.ps
290 %{_examplesdir}/%{name}-%{version}
291 %endif
292
293 %files -n bash-completion-iproute2
294 %defattr(644,root,root,755)
295 %{bash_compdir}/tc
This page took 0.091305 seconds and 4 git commands to generate.