3 %bcond_with go # GO plugin
4 %bcond_without ocaml # OCaml plugin (requires ocaml_opt support)
5 %bcond_without perl # Perl plugin
6 %bcond_without python # Python plugin
7 %bcond_with rust # Rust plugin
8 %bcond_with vddk # VMware VDDK plugin [needs proprietary VDDK]
10 %ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9
15 Summary: Toolkit for creating NBD servers
16 Summary(pl.UTF-8): Narzędzia do tworzenia serwerów NBD
21 Group: Applications/System
22 Source0: http://libguestfs.org/download/nbdkit/1.24-stable/%{name}-%{version}.tar.gz
23 # Source0-md5: ba9319e544d5a728ebfee84953968b9e
24 URL: http://libguestfs.org/
25 BuildRequires: autoconf >= 2.50
26 BuildRequires: automake
27 BuildRequires: curl-devel
28 BuildRequires: libguestfs-devel
29 BuildRequires: libtool >= 2:2
30 BuildRequires: libvirt-devel
31 %{?with_ocaml:BuildRequires: ocaml >= 4.02.2}
32 %{?with_perl:BuildRequires: perl-devel}
33 BuildRequires: perl-tools-pod
34 BuildRequires: pkgconfig
35 %{?with_python:BuildRequires: python-devel >= 2}
36 BuildRequires: xz-devel
37 BuildRequires: zlib-devel
38 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40 # depends on symbols from nbdkit binary and ocaml ABI
41 %define skip_post_check_so libnbdkitocaml.so.*
44 NBD is a protocol for accessing Block Devices (hard disks and
45 disk-like things) over a Network.
47 'nbdkit' is a toolkit for creating NBD servers.
49 %description -l pl.UTF-8
50 NBD (Network Block Device) to protokół sieciowego dostępu do urządzeń
51 blokowych (dysków twardych i podobnego osprzętu).
53 nbdkit to zestaw narzędzi do tworzenia serwerów NBD.
56 Summary: curl plugin for nbdkit
57 Summary(pl.UTF-8): Wtyczka curl dla nbdkitu
59 Requires: %{name} = %{version}-%{release}
61 %description plugin-curl
62 curl plugin for nbdkit.
64 %description plugin-curl -l pl.UTF-8
65 Wtyczka curl dla nbdkitu.
67 %package plugin-guestfs
68 Summary: guestfs plugin for nbdkit
69 Summary(pl.UTF-8): Wtyczka guestfs dla nbdkitu
71 Requires: %{name} = %{version}-%{release}
73 %description plugin-guestfs
74 guestfs plugin for nbdkit.
76 %description plugin-guestfs -l pl.UTF-8
77 Wtyczka guestfs dla nbdkitu.
79 %package plugin-libvirt
80 Summary: libvirt plugin for nbdkit
81 Summary(pl.UTF-8): Wtyczka libvirt dla nbdkitu
83 Requires: %{name} = %{version}-%{release}
85 %description plugin-libvirt
86 libvirt plugin for nbdkit.
88 %description plugin-libvirt -l pl.UTF-8
89 Wtyczka libvirt dla nbdkitu.
92 Summary: Go embed plugin for nbdkit
93 Summary(pl.UTF-8): Wtyczka wbudowanego Go dla nbdkitu
95 Requires: %{name} = %{version}-%{release}
97 %description plugin-go
98 Go embed plugin for nbdkit.
100 %description plugin-go -l pl.UTF-8
101 Wtyczka wbudowanego Go dla nbdkitu.
103 %package plugin-ocaml
104 Summary: OCaml embed plugin for nbdkit
105 Summary(pl.UTF-8): Wtyczka wbudowanego OCamla dla nbdkitu
107 Requires: %{name} = %{version}-%{release}
108 Requires: ocaml-runtime
110 %description plugin-ocaml
111 OCaml embed plugin for nbdkit.
113 %description plugin-ocaml -l pl.UTF-8
114 Wtyczka wbudowanego OCamla dla nbdkitu.
117 Summary: Perl embed plugin for nbdkit
118 Summary(pl.UTF-8): Wtyczka wbudowanego Perla dla nbdkitu
120 Requires: %{name} = %{version}-%{release}
122 %description plugin-perl
123 Perl embed plugin for nbdkit.
125 %description plugin-perl -l pl.UTF-8
126 Wtyczka wbudowanego Perla dla nbdkitu.
128 %package plugin-python
129 Summary: Python embed plugin for nbdkit
130 Summary(pl.UTF-8): Wtyczka wbudowanego Pythona dla nbdkitu
132 Requires: %{name} = %{version}-%{release}
134 %description plugin-python
135 Python embed plugin for nbdkit.
137 %description plugin-python -l pl.UTF-8
138 Wtyczka wbudowanego Pythona dla nbdkitu.
141 Summary: VMware VDDK plugin for nbdkit
142 Summary(pl.UTF-8): Wtyczka VMware VDDK dla nbdkitu
144 Requires: %{name} = %{version}-%{release}
146 %description plugin-vddk
147 VMware VDDK plugin for nbdkit.
149 %description plugin-vddk -l pl.UTF-8
150 Wtyczka VMware VDDK dla nbdkitu.
153 Summary: Header file for nbdkit plugins
154 Summary(pl.UTF-8): Plik nagłówkowy dla wtyczek nbdkit
155 Group: Development/Libraries
156 # doesn't require base
159 Header file for nbdkit plugins.
161 %description devel -l pl.UTF-8
162 Plik nagłówkowy dla wtyczek nbdkit.
175 %{!?with_go:--disable-golang} \
176 %{!?with_ocaml:--disable-ocaml} \
177 %{!?with_perl:--disable-perl} \
178 %{!?with_python:--disable-python} \
179 %{!?with_rust:--disable-rust} \
181 %{?with_vddk:--with-vddk}
187 rm -rf $RPM_BUILD_ROOT
190 DESTDIR=$RPM_BUILD_ROOT
192 %{__rm} $RPM_BUILD_ROOT%{_libdir}/nbdkit/filters/*.la
193 %{__rm} $RPM_BUILD_ROOT%{_libdir}/nbdkit/plugins/*.la
196 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libnbdkitocaml.la
200 rm -rf $RPM_BUILD_ROOT
202 %post plugin-ocaml -p /sbin/ldconfig
203 %postun plugin-ocaml -p /sbin/ldconfig
206 %defattr(644,root,root,755)
207 %doc LICENSE README TODO
208 %attr(755,root,root) %{_sbindir}/nbdkit
209 %dir %{_libdir}/nbdkit
210 %dir %{_libdir}/nbdkit/filters
211 %attr(755,root,root) %{_libdir}/nbdkit/filters
212 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-blocksize-filter.so
213 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-cache-filter.so
214 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-cacheextents-filter.so
215 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-checkwrite-filter.so
216 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-cow-filter.so
217 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-ddrescue-filter.so
218 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-delay-filter.so
219 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-error-filter.so
220 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-exitlast-filter.so
221 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-exitwhen-filter.so
222 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-exportname-filter.so
223 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-ext2-filter.so
224 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-extentlist-filter.so
225 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-fua-filter.so
226 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-gzip-filter.so
227 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-ip-filter.so
228 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-limit-filter.so
229 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-log-filter.so
230 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-nocache-filter.so
231 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-noextents-filter.so
232 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-nofilter-filter.so
233 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-noparallel-filter.so
234 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-nozero-filter.so
235 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-offset-filter.so
236 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-partition-filter.so
237 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-pause-filter.so
238 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-rate-filter.so
239 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-readahead-filter.so
240 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-retry-filter.so
241 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-stats-filter.so
242 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-swab-filter.so
243 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-tar-filter.so
244 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-tls-fallback-filter.so
245 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-truncate-filter.so
246 %attr(755,root,root) %{_libdir}/nbdkit/filters/nbdkit-xz-filter.so
247 %dir %{_libdir}/nbdkit/plugins
248 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-S3-plugin
249 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-cc-plugin.so
250 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-cdi-plugin.so
251 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-data-plugin.so
252 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-eval-plugin.so
253 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-example1-plugin.so
254 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-example2-plugin.so
255 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-example3-plugin.so
256 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-example4-plugin
257 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-file-plugin.so
258 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-floppy-plugin.so
259 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-full-plugin.so
260 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-gzip-plugin.so
261 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-info-plugin.so
262 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-iso-plugin.so
263 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-lua-plugin.so
264 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-memory-plugin.so
265 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-null-plugin.so
266 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-ondemand-plugin.so
267 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-partitioning-plugin.so
268 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-pattern-plugin.so
269 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-random-plugin.so
270 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-sh-plugin.so
271 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-sparse-random-plugin.so
272 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-split-plugin.so
273 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-ssh-plugin.so
274 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-streaming-plugin.so
275 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-tar-plugin.so
276 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-tcl-plugin.so
277 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-tmpdisk-plugin.so
278 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-torrent-plugin.so
279 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-vddk-plugin.so
280 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-zero-plugin.so
281 %{_mandir}/man1/nbdkit.1*
282 %{_mandir}/man1/nbdkit-blocksize-filter.1*
283 %{_mandir}/man1/nbdkit-cacheextents-filter.1*
284 %{_mandir}/man1/nbdkit-cache-filter.1*
285 %{_mandir}/man1/nbdkit-captive.1*
286 %{_mandir}/man1/nbdkit-cdi-plugin.1*
287 %{_mandir}/man1/nbdkit-checkwrite-filter.1*
288 %{_mandir}/man1/nbdkit-client.1*
289 %{_mandir}/man1/nbdkit-cow-filter.1*
290 %{_mandir}/man1/nbdkit-data-plugin.1*
291 %{_mandir}/man1/nbdkit-ddrescue-filter.1*
292 %{_mandir}/man1/nbdkit-delay-filter.1*
293 %{_mandir}/man1/nbdkit-error-filter.1*
294 %{_mandir}/man1/nbdkit-eval-plugin.1*
295 %{_mandir}/man1/nbdkit-example1-plugin.1*
296 %{_mandir}/man1/nbdkit-example2-plugin.1*
297 %{_mandir}/man1/nbdkit-example3-plugin.1*
298 %{_mandir}/man1/nbdkit-example4-plugin.1*
299 %{_mandir}/man1/nbdkit-exitlast-filter.1*
300 %{_mandir}/man1/nbdkit-exitwhen-filter.1*
301 %{_mandir}/man1/nbdkit-exportname-filter.1*
302 %{_mandir}/man1/nbdkit-ext2-filter.1*
303 %{_mandir}/man1/nbdkit-extentlist-filter.1*
304 %{_mandir}/man1/nbdkit-file-plugin.1*
305 %{_mandir}/man1/nbdkit-floppy-plugin.1*
306 %{_mandir}/man1/nbdkit-fua-filter.1*
307 %{_mandir}/man1/nbdkit-full-plugin.1*
308 %{_mandir}/man1/nbdkit-gzip-filter.1*
309 %{_mandir}/man1/nbdkit-gzip-plugin.1*
310 %{_mandir}/man1/nbdkit-info-plugin.1*
311 %{_mandir}/man1/nbdkit-ip-filter.1*
312 %{_mandir}/man1/nbdkit-iso-plugin.1*
313 %{_mandir}/man1/nbdkit-limit-filter.1*
314 %{_mandir}/man1/nbdkit-log-filter.1*
315 %{_mandir}/man1/nbdkit-loop.1*
316 %{_mandir}/man1/nbdkit-memory-plugin.1*
317 %{_mandir}/man1/nbdkit-nocache-filter.1*
318 %{_mandir}/man1/nbdkit-noextents-filter.1*
319 %{_mandir}/man1/nbdkit-nofilter-filter.1*
320 %{_mandir}/man1/nbdkit-noparallel-filter.1*
321 %{_mandir}/man1/nbdkit-nozero-filter.1*
322 %{_mandir}/man1/nbdkit-null-plugin.1*
323 %{_mandir}/man1/nbdkit-offset-filter.1*
324 %{_mandir}/man1/nbdkit-ondemand-plugin.1*
325 %{_mandir}/man1/nbdkit-partition-filter.1*
326 %{_mandir}/man1/nbdkit-partitioning-plugin.1*
327 %{_mandir}/man1/nbdkit-pattern-plugin.1*
328 %{_mandir}/man1/nbdkit-pause-filter.1*
329 %{_mandir}/man1/nbdkit-probing.1*
330 %{_mandir}/man1/nbdkit-protocol.1*
331 %{_mandir}/man1/nbdkit-random-plugin.1*
332 %{_mandir}/man1/nbdkit-rate-filter.1*
333 %{_mandir}/man1/nbdkit-readahead-filter.1*
334 %{_mandir}/man1/nbdkit-release-notes-1.10.1*
335 %{_mandir}/man1/nbdkit-release-notes-1.12.1*
336 %{_mandir}/man1/nbdkit-release-notes-1.14.1*
337 %{_mandir}/man1/nbdkit-release-notes-1.16.1*
338 %{_mandir}/man1/nbdkit-release-notes-1.18.1*
339 %{_mandir}/man1/nbdkit-release-notes-1.20.1*
340 %{_mandir}/man1/nbdkit-release-notes-1.22.1*
341 %{_mandir}/man1/nbdkit-release-notes-1.24.1*
342 %{_mandir}/man1/nbdkit-release-notes-1.4.1*
343 %{_mandir}/man1/nbdkit-release-notes-1.6.1*
344 %{_mandir}/man1/nbdkit-release-notes-1.8.1*
345 %{_mandir}/man1/nbdkit-retry-filter.1*
346 %{_mandir}/man1/nbdkit-S3-plugin.1*
347 %{_mandir}/man1/nbdkit-security.1*
348 %{_mandir}/man1/nbdkit-service.1*
349 %{_mandir}/man1/nbdkit-sparse-random-plugin.1*
350 %{_mandir}/man1/nbdkit-split-plugin.1*
351 %{_mandir}/man1/nbdkit-ssh-plugin.1*
352 %{_mandir}/man1/nbdkit-stats-filter.1*
353 %{_mandir}/man1/nbdkit-streaming-plugin.1*
354 %{_mandir}/man1/nbdkit-swab-filter.1*
355 %{_mandir}/man1/nbdkit-tar-filter.1*
356 %{_mandir}/man1/nbdkit-tar-plugin.1*
357 %{_mandir}/man1/nbdkit-tls.1*
358 %{_mandir}/man1/nbdkit-tls-fallback-filter.1*
359 %{_mandir}/man1/nbdkit-tmpdisk-plugin.1*
360 %{_mandir}/man1/nbdkit-torrent-plugin.1*
361 %{_mandir}/man1/nbdkit-truncate-filter.1*
362 %{_mandir}/man1/nbdkit-vddk-plugin.1*
363 %{_mandir}/man1/nbdkit-xz-filter.1*
364 %{_mandir}/man1/nbdkit-zero-plugin.1*
367 %defattr(644,root,root,755)
368 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-curl-plugin.so
369 %{_mandir}/man1/nbdkit-curl-plugin.1*
371 %files plugin-guestfs
372 %defattr(644,root,root,755)
373 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-guestfs-plugin.so
374 %{_mandir}/man1/nbdkit-guestfs-plugin.1*
376 %files plugin-libvirt
377 %defattr(644,root,root,755)
378 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-libvirt-plugin.so
379 %{_mandir}/man1/nbdkit-libvirt-plugin.1*
383 %defattr(644,root,root,755)
384 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-golang-plugin.so
385 %{_mandir}/man3/nbdkit-golang-plugin.3*
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_libdir}/libnbdkitocaml.so.*.*.*
392 %attr(755,root,root) %ghost %{_libdir}/libnbdkitocaml.so.0
393 %attr(755,root,root) %{_libdir}/libnbdkitocaml.so
394 %{_libdir}/ocaml/NBDKit.cm[ix]
395 %{_libdir}/ocaml/NBDKit.mli
396 %{_libdir}/ocaml/NBDKit.o
397 %{_mandir}/man3/nbdkit-ocaml-plugin.3*
402 %defattr(644,root,root,755)
403 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-perl-plugin.so
404 %{_mandir}/man3/nbdkit-perl-plugin.3*
409 %defattr(644,root,root,755)
410 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-python-plugin.so
411 %{_mandir}/man3/nbdkit-python-plugin.3*
416 %defattr(644,root,root,755)
417 %attr(755,root,root) %{_libdir}/nbdkit/plugins/nbdkit-vddk-plugin.so
418 %{_mandir}/man1/nbdkit-vddk-plugin.1*
422 %defattr(644,root,root,755)
423 %{_includedir}/nbdkit-common.h
424 %{_includedir}/nbdkit-filter.h
425 %{_includedir}/nbdkit-plugin.h
426 %{_includedir}/nbdkit-version.h
427 %{_includedir}/nbd-protocol.h
428 %{_mandir}/man3/nbdkit-plugin.3*
429 %{_pkgconfigdir}/nbdkit.pc
430 %{_mandir}/man3/NBDKit.3*
431 %{_mandir}/man3/nbdkit-cc-plugin.3*
432 %{_mandir}/man3/nbdkit-filter.3*
433 %{_mandir}/man3/nbdkit-lua-plugin.3*
434 %{_mandir}/man3/nbdkit-sh-plugin.3*
435 %{_mandir}/man3/nbdkit-tcl-plugin.3*