]> git.pld-linux.org Git - packages/iproute2.git/blob - iproute2.spec
946517ab80fc4a54be8b73f40d5ad5fc7ee4691f
[packages/iproute2.git] / iproute2.spec
1 #
2 # TODO:
3 # - fix build @ uClibc
4 # - fix iface_descr patch
5 #
6 # Conditional build
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
11
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
16 Name:           iproute2
17 Version:        5.7.0
18 Release:        1
19 License:        GPL v2+
20 Group:          Networking/Admin
21 Source0:        https://www.kernel.org/pub/linux/utils/net/iproute2/%{name}-%{version}.tar.xz
22 # Source0-md5:  da22ab8562eda56ae232872fa72e4870
23 Source1:        %{name}.tmpfiles
24 Patch0:         %{name}-link.patch
25 Patch3:         %{name}-LDFLAGS.patch
26
27 Patch5:         %{name}-build.patch
28 Patch6:         %{name}-print_cache_route_entries.patch
29 # extensions
30 Patch10:        %{name}-2.2.4-wrr.patch
31 Patch11:        esfq-%{name}.patch
32 Patch12:        001-net-dev-iface-descr-0.1.diff
33 Patch13:        %{name}-q_atm_c.patch
34 Patch14:        %{name}-q_srr.v0.4.patch
35 Patch15:        %{name}-ip_route_get.patch
36 URL:            https://wiki.linuxfoundation.org/networking/iproute2
37 BuildRequires:  bison
38 BuildRequires:  db-devel
39 # libelf
40 BuildRequires:  elfutils-devel
41 BuildRequires:  flex
42 BuildRequires:  iptables-devel >= 0:1.4.5
43 BuildRequires:  libbsd-devel
44 BuildRequires:  libcap-devel
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 BuildRequires:  tar >= 1:1.22
54 BuildRequires:  xz
55 Requires:       iptables-libs >= 0:1.4.5
56 Obsoletes:      ifstat
57 Obsoletes:      iproute
58 Obsoletes:      iproute2-doc < 4.14.1
59 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
60
61 %define         _sbindir        /sbin
62 %define         _sysconfdir     /etc/iproute2
63
64 %description
65 The iproute package contains networking utilities (ip, tc and rtmon,
66 for example) which are designed to use the advanced networking
67 capabilities of the Linux 2.4.x and 2.6.x kernel.
68
69 %description -l es.UTF-8
70 Linux mantiene compatibilidad con los utilitarios estándares de
71 configuración de la red, pero se necesitan nuevos utilitarios para
72 usar los recursos y características del nuevo núcleo. Este paquete
73 incluye los nuevos utilitarios.
74
75 %description -l pl.UTF-8
76 Ten pakiet zawiera programy (m.in. ip, tc, rtmon) pozwalające na
77 kontrolę routingu i innych aspektów dotyczących sieci z wykorzystaniem
78 zaawansowanych możliwości jąder Linuksa 2.4.x i 2.6.x.
79
80 %description -l pt_BR.UTF-8
81 O Linux mantém compatibilidade com os utilitários padrão de
82 configuração da rede, mas novos utilitários são necessários para fazer
83 uso das características e recursos da nova kernel. This package
84 includes the new utilities.
85
86 %package devel
87 Summary:        Header file for tc plugins development
88 Summary(pl.UTF-8):      Plik nagłówkowy do tworzenia wtyczek programu tc
89 Group:          Development/Libraries
90 # doesn't require base
91
92 %description devel
93 Header file for tc plugins development.
94
95 %description devel -l pl.UTF-8
96 Plik nagłówkowy do tworzenia wtyczek programu tc.
97
98 %package -n libnetlink-devel
99 Summary:        Library for the netlink interface
100 Summary(pl.UTF-8):      Biblioteka do interfejsu netlink
101 Group:          Development/Libraries
102
103 %description -n libnetlink-devel
104 This library provides an interface for kernel-user netlink interface.
105
106 %description -n libnetlink-devel -l pl.UTF-8
107 Ta biblioteka udostępnia interfejs do interfejsu netlink między jądrem
108 a przestrzenią użytkownika.
109
110 %package -n bash-completion-iproute2
111 Summary:        Bash completion for iproute2 commands
112 Summary(pl.UTF-8):      Bashowe dopełnianie parametrów poleceń iproute2
113 Group:          Applications/Shells
114 Requires:       %{name} = %{version}-%{release}
115 Requires:       bash-completion >= 2.0
116
117 %description -n bash-completion-iproute2
118 Bash completion for iproute2 commands (currently devlink and tc).
119
120 %description -n bash-completion-iproute2 -l pl.UTF-8
121 Bashowe dopełnianie parametrów poleceń iproute2 (obecnie devlink i
122 tc).
123
124 %prep
125 %setup -q
126
127 # conflict with atm-vbr patched linux-libc-headers
128 %{__rm} include/uapi/linux/atm.h
129 #%{__rm} -r include/linux
130
131 %patch0 -p1
132 %patch3 -p1
133
134 %patch5 -p1
135 %patch6 -p1
136 # extensions:
137 %patch10 -p1
138 %patch11 -p1
139 %{?with_iface_descr:%patch12 -p1}
140 %patch13 -p0
141 %patch14 -p1
142 %patch15 -p1
143
144 %build
145 %{__make} \
146 %if %{with uClibc}
147         CC="%{_target_cpu}-uclibc-gcc" \
148         LD="%{_target_cpu}-uclibc-gcc" \
149 %else
150         CC="%{__cc}" \
151         LD="%{__cc}" \
152 %endif
153         HOSTCC="%{__cc}" \
154         CCOPTS="%{rpmcflags} %{rpmcppflags} -Wno-unused-result -DXT_LIB_DIR=\\\"%{_libdir}/xtables\\\"" \
155         LDFLAGS="%{rpmldflags} -Wl,-export-dynamic" \
156         LIBDIR=%{_libdir} \
157         %{!?with_tc:SUBDIRS="lib ip misc"} \
158         V=1
159
160 # make sure we don't produce broken ip binary
161 ./ip/ip link add type vlan help 2>&1 | grep -q "VLANID :=" || exit 1
162
163 %install
164 rm -rf $RPM_BUILD_ROOT
165 install -d $RPM_BUILD_ROOT{%{_includedir},/var/run/netns,%{systemdtmpfilesdir}}
166
167 %{__make} install \
168         LIBDIR=%{_libdir} \
169         DESTDIR=$RPM_BUILD_ROOT
170
171 # omitted by make install
172 install -Dp man/man7/tc-hfsc.7 $RPM_BUILD_ROOT%{_mandir}/man7/tc-hfsc.7
173
174 # arpd is not packaged here
175 %{__rm} $RPM_BUILD_ROOT%{_sbindir}/arpd $RPM_BUILD_ROOT%{_mandir}/man8/arpd.8
176
177 cp -p lib/libnetlink.a $RPM_BUILD_ROOT%{_libdir}
178 cp -p include/libnetlink.h $RPM_BUILD_ROOT%{_includedir}
179
180 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
181
182 %clean
183 rm -rf $RPM_BUILD_ROOT
184
185 %files
186 %defattr(644,root,root,755)
187 %doc README doc/actions examples
188 %attr(755,root,root) %{_sbindir}/bridge
189 %attr(755,root,root) %{_sbindir}/ctstat
190 %attr(755,root,root) %{_sbindir}/devlink
191 %attr(755,root,root) %{_sbindir}/genl
192 %attr(755,root,root) %{_sbindir}/ifcfg
193 %attr(755,root,root) %{_sbindir}/ifstat
194 %attr(755,root,root) %{_sbindir}/ip
195 %attr(755,root,root) %{_sbindir}/lnstat
196 %attr(755,root,root) %{_sbindir}/nstat
197 %attr(755,root,root) %{_sbindir}/rdma
198 %attr(755,root,root) %{_sbindir}/routef
199 %attr(755,root,root) %{_sbindir}/routel
200 %attr(755,root,root) %{_sbindir}/rtacct
201 %attr(755,root,root) %{_sbindir}/rtmon
202 %attr(755,root,root) %{_sbindir}/rtpr
203 %attr(755,root,root) %{_sbindir}/rtstat
204 %attr(755,root,root) %{_sbindir}/ss
205 %attr(755,root,root) %{_sbindir}/tipc
206 %dir %{_sysconfdir}
207 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bpf_pinning
208 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ematch_map
209 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/group
210 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nl_protos
211 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_dsfield
212 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_protos
213 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_realms
214 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_scopes
215 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rt_tables
216 %{_mandir}/man8/bridge.8*
217 %{_mandir}/man8/ctstat.8*
218 %{_mandir}/man8/devlink.8*
219 %{_mandir}/man8/devlink-dev.8*
220 %{_mandir}/man8/devlink-dpipe.8*
221 %{_mandir}/man8/devlink-health.8*
222 %{_mandir}/man8/devlink-monitor.8*
223 %{_mandir}/man8/devlink-port.8*
224 %{_mandir}/man8/devlink-region.8*
225 %{_mandir}/man8/devlink-resource.8*
226 %{_mandir}/man8/devlink-sb.8*
227 %{_mandir}/man8/devlink-trap.8*
228 %{_mandir}/man8/genl.8*
229 %{_mandir}/man8/ifcfg.8*
230 %{_mandir}/man8/ifstat.8*
231 %{_mandir}/man8/ip.8*
232 %{_mandir}/man8/ip-*.8*
233 %{_mandir}/man8/lnstat.8*
234 %{_mandir}/man8/nstat.8*
235 %{_mandir}/man8/rdma.8*
236 %{_mandir}/man8/rdma-dev.8*
237 %{_mandir}/man8/rdma-link.8*
238 %{_mandir}/man8/rdma-resource.8*
239 %{_mandir}/man8/rdma-statistic.8*
240 %{_mandir}/man8/rdma-system.8*
241 %{_mandir}/man8/routef.8*
242 %{_mandir}/man8/routel.8*
243 %{_mandir}/man8/rtacct.8*
244 %{_mandir}/man8/rtmon.8*
245 %{_mandir}/man8/rtpr.8*
246 %{_mandir}/man8/rtstat.8*
247 %{_mandir}/man8/ss.8*
248 %{_mandir}/man8/tipc.8*
249 %{_mandir}/man8/tipc-*.8*
250 %if %{with tc}
251 %attr(755,root,root) %{_sbindir}/tc
252 %dir %{_libdir}/tc
253 %attr(755,root,root) %{_libdir}/tc/*.so
254 %{_libdir}/tc/*.dist
255 %{_mandir}/man7/tc-hfsc.7*
256 %{_mandir}/man8/tc.8*
257 %{_mandir}/man8/tc-*.8*
258 %endif
259 %{systemdtmpfilesdir}/%{name}.conf
260 %dir %attr(750,root,root) /var/run/netns
261
262 %files devel
263 %defattr(644,root,root,755)
264 %{_includedir}/iproute2
265
266 %files -n libnetlink-devel
267 %defattr(644,root,root,755)
268 %{_libdir}/libnetlink.a
269 %{_includedir}/libnetlink.h
270 %{_mandir}/man3/libnetlink.3*
271
272 %files -n bash-completion-iproute2
273 %defattr(644,root,root,755)
274 %{bash_compdir}/devlink
275 %{bash_compdir}/tc
This page took 0.070157 seconds and 2 git commands to generate.