]> git.pld-linux.org Git - packages/libguestfs.git/blame - libguestfs.spec
- separated -tools (some of them require ocaml or perl bindings)
[packages/libguestfs.git] / libguestfs.spec
CommitLineData
828f7f73 1#
7eea6f71 2# TODO: ruby and haskell bindings
828f7f73
AF
3#
4# Conditional build:
5%bcond_with static_libs # build static libraries
3eebe7b8
JB
6%bcond_with haskell # Haskell (GHC) binding
7%bcond_without java # Java binding
8%bcond_without ocaml # OCaml binding and tools
9%bcond_without perl # Perl binding
10%bcond_without perltools # Perl tools
11%bcond_without php # PHP binding
12%bcond_without python # Python binding
13%bcond_with ruby # Ruby binding
828f7f73
AF
14#
15%include /usr/lib/rpm/macros.perl
16%include /usr/lib/rpm/macros.java
3eebe7b8
JB
17Summary: Library and tools for accessing and modifying virtual machine disk images
18Summary(pl.UTF-8): Biblioteka i narzędzia do dostępu i modyfikacji obrazów dysków maszyn wirtualnych
828f7f73 19Name: libguestfs
7eea6f71 20Version: 1.12.11
5b767bbf 21Release: 5
828f7f73
AF
22License: LGPL v2+
23Group: Libraries
24Source0: http://libguestfs.org/download/1.12-stable/%{name}-%{version}.tar.gz
7eea6f71 25# Source0-md5: e8aeab7dcedda08d73828e7387cd6cc0
828f7f73 26Patch0: ncurses.patch
475fb908 27Patch1: augeas-libxml2.patch
828f7f73
AF
28URL: http://libguestfs.org/
29BuildRequires: attr-devel
30BuildRequires: augeas-devel
3eebe7b8 31BuildRequires: autoconf >= 2.50
828f7f73
AF
32BuildRequires: automake
33BuildRequires: cdrkit-mkisofs
3eebe7b8 34BuildRequires: cpio
828f7f73
AF
35BuildRequires: db-utils
36#BuildRequires: febootstrap
37BuildRequires: gettext-devel
3eebe7b8 38%{?with_haskell:BuildRequires: ghc}
828f7f73
AF
39BuildRequires: gperf
40BuildRequires: hivex-devel
3eebe7b8 41%{?with_java:BuildRequires: jdk}
828f7f73 42BuildRequires: libconfig-devel
7eea6f71 43BuildRequires: libfuse-devel
828f7f73
AF
44BuildRequires: libmagic-devel
45BuildRequires: libselinux-devel
46BuildRequires: libtool
47BuildRequires: libvirt-devel
3eebe7b8 48BuildRequires: libxml2-devel >= 2.0
828f7f73
AF
49BuildRequires: libxml2-progs
50BuildRequires: ncurses-devel
3eebe7b8 51%if %{with ocaml}
828f7f73 52BuildRequires: ocaml
3eebe7b8
JB
53BuildRequires: ocaml-findlib
54#-devel
828f7f73 55BuildRequires: ocaml-pcre-devel
3eebe7b8 56%endif
828f7f73 57BuildRequires: pcre-devel
3eebe7b8
JB
58BuildRequires: perl-base
59BuildRequires: perl-tools-pod
60%if %{with perl}
61BuildRequires: perl-ExtUtils-MakeMaker
62BuildRequires: perl-Test-Simple
63%endif
64%if %{with perltools}
65BuildRequires: perl-String-ShellQuote
66BuildRequires: perl-Sys-Virt
67BuildRequires: perl-hivex
68BuildRequires: perl-libintl
69BuildRequires: perl-modules
828f7f73 70BuildRequires: perl(Data::Dumper)
828f7f73
AF
71BuildRequires: perl(Getopt::Long)
72BuildRequires: perl(Locale::TextDomain)
73BuildRequires: perl(Pod::Usage)
3eebe7b8
JB
74%endif
75%{?with_php:BuildRequires: php-devel}
76BuildRequires: pkgconfig
828f7f73 77BuildRequires: po4a
3eebe7b8 78%if %{with python}
828f7f73
AF
79BuildRequires: python
80BuildRequires: python-devel
3eebe7b8 81%endif
828f7f73 82BuildRequires: readline-devel
3eebe7b8
JB
83BuildRequires: rpmbuild(macros) >= 1.219
84%if %{with ruby}
85BuildRequires: ruby
86BuildRequires: ruby-devel
87BuildRequires: ruby-rake
88%endif
f19b40ea 89Requires: qemu-common
828f7f73
AF
90BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
91
92%description
3eebe7b8
JB
93libguestfs is a library and set of tools for accessing and modifying
94virtual machine (VM) disk images. You can use this for viewing and
95editing files inside guests, scripting changes to VMs, monitoring disk
828f7f73
AF
96used/free statistics, P2V, V2V, performing partial backups, cloning
97VMs, and much else besides.
98
99abc14f 99%description -l pl.UTF-8
3eebe7b8
JB
100libguestfs to biblioteka oraz zestaw narzędzi do dostępu oraz
101modyfikowania obrazów dysków maszyn wirtualnych (VM). Można je
102wykorzystywać do oglądania i edycji plików wewnątrz gości, zmian
103skryptowych w VM-ach, monitorowania statystyk używanego/dostępnego
104miejsca na dyskach, P2V, V2V, wykonywania częściowych kopii
105zapasowych, klonowania VM-ów i wielu podobnych operacji.
99abc14f 106
828f7f73
AF
107%package devel
108Summary: Header files for libguestfs library
109Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libguestfs
110Group: Development/Libraries
111Requires: %{name} = %{version}-%{release}
112
113%description devel
114Header files for libguestfs library.
115
116%description devel -l pl.UTF-8
117Pliki nagłówkowe biblioteki libguestfs.
118
119%package static
120Summary: Static libguestfs library
121Summary(pl.UTF-8): Statyczna biblioteka libguestfs
122Group: Development/Libraries
123Requires: %{name}-devel = %{version}-%{release}
124
125%description static
126Static libguestfs library.
127
128%description static -l pl.UTF-8
129Statyczna biblioteka libguestfs.
130
3eebe7b8
JB
131%package tools
132Summary: libguestfs tools for accessing and modifying virtual machine disk images
133Summary(pl.UTF-8): Narzędzia libguestfs do dostępu i modyfikacji obrazów dysków maszyn wirtualnych
134Group: Applications/System
135Requires: %{name} = %{version}-%{release}
136%{?with_ocaml:Requires: ocaml-libguestfs = %{version}-%{release}}
137%{?with_perltools:Requires: perl-libguestfs = %{version}-%{release}}
138
139%description tools
140libguestfs tools for accessing and modifying virtual machine (VM) disk
141images. You can use this for viewing and editing files inside guests,
142scripting changes to VMs, monitoring disk used/free statistics, P2V,
143V2V, performing partial backups, cloning VMs, and much else besides.
144
145%description tools -l pl.UTF-8
146Zestaw narzędzi libguestfs do dostępu oraz modyfikowania obrazów
147dysków maszyn wirtualnych (VM). Można je wykorzystywać do oglądania i
148edycji plików wewnątrz gości, zmian skryptowych w VM-ach,
149monitorowania statystyk używanego/dostępnego miejsca na dyskach, P2V,
150V2V, wykonywania częściowych kopii zapasowych, klonowania VM-ów i
151wielu podobnych operacji.
152
828f7f73
AF
153%package -n java-libguestfs
154Summary: Java bindings for libguestfs
99abc14f 155Summary(pl.UTF-8): Wiązania Javy do libguestfs
828f7f73
AF
156Group: Libraries/Java
157Requires: %{name} = %{version}-%{release}
158
159%description -n java-libguestfs
160Java bindings for libguestfs.
161
99abc14f
JB
162%description -n java-libguestfs -l pl.UTF-8
163Wiązania Javy do libguestfs.
164
828f7f73
AF
165%package -n java-libguestfs-javadoc
166Summary: Java bindings for libguestfs - documentation
99abc14f 167Summary(pl.UTF-8): Wiązania Javy do libguestfs - dokumentacja
828f7f73
AF
168Group: Documentation
169
170%description -n java-libguestfs-javadoc
171Java bindings for libguestfs - documentation.
172
99abc14f
JB
173%description -n java-libguestfs-javadoc -l pl.UTF-8
174Wiązania Javy do libguestfs - dokumentacja.
175
828f7f73
AF
176%package -n ocaml-libguestfs
177Summary: OCaml bindings for libguestfs
99abc14f 178Summary(pl.UTF-8): Wiązania OCamla do libguestfs
828f7f73
AF
179Group: Libraries
180Requires: %{name} = %{version}-%{release}
181
182%description -n ocaml-libguestfs
183OCaml bindings for libguestfs.
184
99abc14f
JB
185%description -n ocaml-libguestfs -l pl.UTF-8
186Wiązania OCamla do libguestfs.
187
828f7f73 188%package -n ocaml-libguestfs-devel
99abc14f
JB
189Summary: Development files OCaml libguestfs bindings
190Summary(pl.UTF-8): Pliki programistyczne wiązań OCamla do libguestfs
828f7f73
AF
191Group: Development/Libraries
192Requires: ocaml-%{name} = %{version}-%{release}
193
194%description -n ocaml-libguestfs-devel
99abc14f 195Development files OCaml libguestfs bindings.
828f7f73
AF
196
197%description -n ocaml-libguestfs-devel -l pl.UTF-8
99abc14f 198Pliki programistyczne wiązań OCamla do libguestfs.
828f7f73 199
99abc14f
JB
200%package -n perl-libguestfs
201Summary: Perl bindings for libguestfs
202Summary(pl.UTF-8): Wiązania Perla do libguestfs
203Group: Development/Languages/Perl
828f7f73 204Requires: %{name} = %{version}-%{release}
3eebe7b8
JB
205Suggests: perl-Sys-Virt
206Suggests: perl-XML-XPath
207Suggests: perl-hivex
828f7f73 208
99abc14f
JB
209%description -n perl-libguestfs
210Perl bindings for libguestfs.
211
212%description -n perl-libguestfs -l pl.UTF-8
213Wiązania Perla do libguestfs.
828f7f73 214
7eea6f71 215%package -n php-guestfs
216Summary: PHP bindings for libguestfs
99abc14f 217Summary(pl.UTF-8): Wiązania PHP do libguestfs
7eea6f71 218Group: Development/Languages/PHP
219Requires: %{name} = %{version}-%{release}
220
221%description -n php-guestfs
222PHP bindings for libguestfs.
223
99abc14f
JB
224%description -n php-guestfs -l pl.UTF-8
225Wiązania PHP do libguestfs.
226
227%package -n python-libguestfs
228Summary: Python bindings for libguestfs
229Summary(pl.UTF-8): Wiązania Pythona do libguestfs
230Group: Development/Languages/Python
231Requires: %{name} = %{version}-%{release}
232
233%description -n python-libguestfs
234Python bindings for libguestfs.
235
236%description -n python-libguestfs -l pl.UTF-8
237Wiązania Pythona do libguestfs.
238
828f7f73
AF
239%package -n bash-completion-libguestfs
240Summary: bash-completion for libguestfs tools
99abc14f 241Summary(pl.UTF-8): Bashowe uzupełnianie argumentów dla narzędzi libguestfs
828f7f73
AF
242Group: Applications/Shells
243Requires: bash-completion
244
245%description -n bash-completion-libguestfs
246bash-completion for guestfish tool.
247
99abc14f
JB
248%description -n bash-completion-libguestfs -l pl.UTF-8
249Bashowe uzupełnianie argumentów dla narzędzi libguestfs.
250
828f7f73
AF
251%prep
252%setup -q
253%patch0 -p1
475fb908 254%patch1 -p1
828f7f73
AF
255
256%build
475fb908 257%{__libtoolize}
671fd6ca 258%{__aclocal} -I m4
475fb908
JR
259%{__autoconf}
260%{__autoheader}
261%{__automake}
2664f538
JR
262cd daemon
263%{__libtoolize}
264%{__aclocal} -I m4
265%{__autoconf}
266%{__autoheader}
267%{__automake}
268cd ..
828f7f73
AF
269%configure \
270 vmchannel_test=no \
73480eb3 271 QEMU=%{_bindir}/qemu \
3eebe7b8 272 --with-java-home=%{?with_java:%{java_home}}%{!?with_java:no} \
73480eb3 273 --with-qemu=qemu \
96e43ae7 274 --enable-install-daemon \
828f7f73 275 --disable-appliance \
3eebe7b8
JB
276 %{!?with_haskell:--disable-haskell} \
277 %{!?with_ocaml:--disable-ocaml} \
278 %{!?with_perl:--disable-perl} \
279 %{!?with_php:--disable-php} \
280 %{!?with_python:--disable-python} \
281 %{!?with_ruby:--disable-ruby} \
282 --disable-silent-rules \
283 %{__enable_disable static_libs static}
828f7f73
AF
284
285%{__make} \
286 INSTALLDIRS=vendor
287
288%install
289rm -rf $RPM_BUILD_ROOT
290
291%{__make} install \
292 INSTALLDIRS=vendor \
7eea6f71 293 DESTDIR=$RPM_BUILD_ROOT \
294 phpdir=%{_sysconfdir}/php/conf.d
828f7f73
AF
295
296%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la \
297 $RPM_BUILD_ROOT%{py_sitedir}/*.la
298
3eebe7b8
JB
299%py_comp $RPM_BUILD_ROOT%{py_sitedir}
300%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
301%py_postclean
302
828f7f73
AF
303%find_lang %{name}
304
305%clean
306rm -rf $RPM_BUILD_ROOT
307
308%post -p /sbin/ldconfig
309%postun -p /sbin/ldconfig
310
311%files -f %{name}.lang
312%defattr(644,root,root,755)
313%doc AUTHORS BUGS ChangeLog README RELEASE-NOTES ROADMAP TODO
3eebe7b8
JB
314%attr(755,root,root) %{_libdir}/libguestfs.so.*.*.*
315%attr(755,root,root) %ghost %{_libdir}/libguestfs.so.0
316
317%files devel
318%defattr(644,root,root,755)
319%attr(755,root,root) %{_libdir}/libguestfs.so
320%{_includedir}/guestfs.h
321%{_pkgconfigdir}/libguestfs.pc
322%{_mandir}/man3/guestfs-examples.3*
323%{_mandir}/man3/guestfs.3*
324%{_mandir}/man3/libguestfs.3*
325%{_mandir}/ja/man3/guestfs.3*
326%{_mandir}/uk/man3/guestfs.3*
327
328%if %{with static_libs}
329%files static
330%defattr(644,root,root,755)
331%{_libdir}/libguestfs.a
332%endif
333
334%files tools
335%defattr(644,root,root,755)
828f7f73
AF
336%attr(755,root,root) %{_bindir}/guestfish
337%attr(755,root,root) %{_bindir}/guestmount
338%attr(755,root,root) %{_bindir}/libguestfs-test-tool
339%attr(755,root,root) %{_bindir}/virt-cat
340%attr(755,root,root) %{_bindir}/virt-copy-in
341%attr(755,root,root) %{_bindir}/virt-copy-out
342%attr(755,root,root) %{_bindir}/virt-df
343%attr(755,root,root) %{_bindir}/virt-edit
344%attr(755,root,root) %{_bindir}/virt-filesystems
345%attr(755,root,root) %{_bindir}/virt-inspector
828f7f73 346%attr(755,root,root) %{_bindir}/virt-ls
828f7f73 347%attr(755,root,root) %{_bindir}/virt-rescue
828f7f73
AF
348%attr(755,root,root) %{_bindir}/virt-tar-in
349%attr(755,root,root) %{_bindir}/virt-tar-out
3eebe7b8
JB
350%attr(755,root,root) %{_sbindir}/guestfsd
351%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libguestfs-tools.conf
828f7f73
AF
352%{_mandir}/man1/guestfish.1*
353%{_mandir}/man1/guestfs-recipes.1*
354%{_mandir}/man1/guestmount.1*
355%{_mandir}/man1/libguestfs-test-tool.1*
356%{_mandir}/man1/virt-cat.1*
357%{_mandir}/man1/virt-copy-in.1*
358%{_mandir}/man1/virt-copy-out.1*
359%{_mandir}/man1/virt-df.1*
360%{_mandir}/man1/virt-edit.1*
361%{_mandir}/man1/virt-filesystems.1*
362%{_mandir}/man1/virt-inspector.1*
828f7f73 363%{_mandir}/man1/virt-ls.1*
828f7f73 364%{_mandir}/man1/virt-rescue.1*
828f7f73
AF
365%{_mandir}/man1/virt-tar-in.1*
366%{_mandir}/man1/virt-tar-out.1*
828f7f73
AF
367%lang(ja) %{_mandir}/ja/man1/guestfish.1*
368%lang(ja) %{_mandir}/ja/man1/guestmount.1*
369%lang(ja) %{_mandir}/ja/man1/virt-cat.1*
370%lang(ja) %{_mandir}/ja/man1/virt-copy-in.1*
371%lang(ja) %{_mandir}/ja/man1/virt-copy-out.1*
372%lang(ja) %{_mandir}/ja/man1/virt-df.1*
373%lang(ja) %{_mandir}/ja/man1/virt-edit.1*
374%lang(ja) %{_mandir}/ja/man1/virt-filesystems.1*
375%lang(ja) %{_mandir}/ja/man1/virt-inspector.1*
828f7f73 376%lang(ja) %{_mandir}/ja/man1/virt-ls.1*
828f7f73 377%lang(ja) %{_mandir}/ja/man1/virt-rescue.1*
828f7f73
AF
378%lang(ja) %{_mandir}/ja/man1/virt-tar-in.1*
379%lang(ja) %{_mandir}/ja/man1/virt-tar-out.1*
828f7f73
AF
380%lang(uk) %{_mandir}/uk/man1/guestfish.1*
381%lang(uk) %{_mandir}/uk/man1/guestmount.1*
382%lang(uk) %{_mandir}/uk/man1/virt-cat.1*
383%lang(uk) %{_mandir}/uk/man1/virt-copy-in.1*
384%lang(uk) %{_mandir}/uk/man1/virt-copy-out.1*
385%lang(uk) %{_mandir}/uk/man1/virt-df.1*
386%lang(uk) %{_mandir}/uk/man1/virt-edit.1*
387%lang(uk) %{_mandir}/uk/man1/virt-filesystems.1*
388%lang(uk) %{_mandir}/uk/man1/virt-inspector.1*
828f7f73 389%lang(uk) %{_mandir}/uk/man1/virt-ls.1*
828f7f73 390%lang(uk) %{_mandir}/uk/man1/virt-rescue.1*
828f7f73
AF
391%lang(uk) %{_mandir}/uk/man1/virt-tar-in.1*
392%lang(uk) %{_mandir}/uk/man1/virt-tar-out.1*
3eebe7b8
JB
393%if %{with ocaml}
394%attr(755,root,root) %{_bindir}/virt-resize
395%{_mandir}/man1/virt-resize.1*
396%lang(ja) %{_mandir}/ja/man1/virt-resize.1*
397%lang(uk) %{_mandir}/uk/man1/virt-resize.1*
398%endif
399%if %{with perltools}
400%attr(755,root,root) %{_bindir}/virt-list-filesystems
401%attr(755,root,root) %{_bindir}/virt-list-partitions
402%attr(755,root,root) %{_bindir}/virt-make-fs
403%attr(755,root,root) %{_bindir}/virt-tar
404%attr(755,root,root) %{_bindir}/virt-win-reg
405%{_mandir}/man1/virt-list-filesystems.1*
406%{_mandir}/man1/virt-list-partitions.1*
407%{_mandir}/man1/virt-make-fs.1*
408%{_mandir}/man1/virt-tar.1*
409%{_mandir}/man1/virt-win-reg.1*
410%lang(ja) %{_mandir}/ja/man1/virt-list-filesystems.1*
411%lang(ja) %{_mandir}/ja/man1/virt-list-partitions.1*
412%lang(ja) %{_mandir}/ja/man1/virt-make-fs.1*
413%lang(ja) %{_mandir}/ja/man1/virt-tar.1*
414%lang(ja) %{_mandir}/ja/man1/virt-win-reg.1*
415%lang(uk) %{_mandir}/uk/man1/virt-list-filesystems.1*
416%lang(uk) %{_mandir}/uk/man1/virt-list-partitions.1*
417%lang(uk) %{_mandir}/uk/man1/virt-make-fs.1*
828f7f73
AF
418%lang(uk) %{_mandir}/uk/man1/virt-tar.1*
419%lang(uk) %{_mandir}/uk/man1/virt-win-reg.1*
828f7f73
AF
420%endif
421
3eebe7b8 422%if %{with java}
828f7f73
AF
423%files -n java-libguestfs
424%defattr(644,root,root,755)
7eea6f71 425%attr(755,root,root) %{_libdir}/libguestfs_jni.so.1.12.11
3eebe7b8
JB
426%attr(755,root,root) %{_libdir}/libguestfs_jni.so.1
427%attr(755,root,root) %{_libdir}/libguestfs_jni.so
7eea6f71 428%{_javadir}/libguestfs-1.12.11.jar
828f7f73
AF
429%{_mandir}/man3/guestfs-java.3*
430
431%files -n java-libguestfs-javadoc
432%defattr(644,root,root,755)
7eea6f71 433%{_javadocdir}/libguestfs-java-1.12.11
3eebe7b8 434%endif
828f7f73 435
3eebe7b8 436%if %{with ocaml}
828f7f73
AF
437%files -n ocaml-libguestfs
438%defattr(644,root,root,755)
084d2444 439%attr(755,root,root) %{_libdir}/ocaml/stublibs/dllmlguestfs.so
828f7f73 440%{_libdir}/ocaml/stublibs/dllmlguestfs.so.owner
828f7f73
AF
441
442%files -n ocaml-libguestfs-devel
443%defattr(644,root,root,755)
084d2444 444%dir %{_libdir}/ocaml/guestfs
828f7f73
AF
445%{_libdir}/ocaml/guestfs/META
446%{_libdir}/ocaml/guestfs/bindtests.cmi
447%{_libdir}/ocaml/guestfs/bindtests.cmx
448%{_libdir}/ocaml/guestfs/guestfs.cmi
449%{_libdir}/ocaml/guestfs/guestfs.cmx
450%{_libdir}/ocaml/guestfs/guestfs.mli
451%{_libdir}/ocaml/guestfs/libmlguestfs.a
452%{_libdir}/ocaml/guestfs/mlguestfs.a
453%{_libdir}/ocaml/guestfs/mlguestfs.cma
454%{_libdir}/ocaml/guestfs/mlguestfs.cmxa
3eebe7b8
JB
455%{_mandir}/man3/guestfs-ocaml.3*
456%endif
828f7f73 457
3eebe7b8
JB
458%if %{with perl}
459%files -n perl-libguestfs
828f7f73 460%defattr(644,root,root,755)
3eebe7b8
JB
461%{perl_vendorarch}/Sys/Guestfs.pm
462%dir %{perl_vendorarch}/Sys/Guestfs
463%{perl_vendorarch}/Sys/Guestfs/Lib.pm
464%{perl_vendorarch}/Sys/bindtests.pl
465%dir %{perl_vendorarch}/auto/Sys/Guestfs
466%{perl_vendorarch}/auto/Sys/Guestfs/Guestfs.bs
467%attr(755,root,root) %{perl_vendorarch}/auto/Sys/Guestfs/Guestfs.so
468%{_mandir}/man3/guestfs-perl.3*
469%{_mandir}/man3/Sys::Guestfs.3pm*
470%{_mandir}/man3/Sys::Guestfs::Lib.3pm*
471%endif
828f7f73 472
7eea6f71 473%files -n php-guestfs
474%defattr(644,root,root,755)
475%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/php/conf.d/guestfs_php.ini
476%attr(755,root,root) %{_libdir}/php/guestfs_php.so
477
3eebe7b8
JB
478%if %{with python}
479%files -n python-libguestfs
480%defattr(644,root,root,755)
481%attr(755,root,root) %{py_sitedir}/libguestfsmod.so
482%{py_sitedir}/guestfs.py[co]
483%{_mandir}/man3/guestfs-python.3*
484%endif
485
828f7f73
AF
486%files -n bash-completion-libguestfs
487%defattr(644,root,root,755)
488%attr(755,root,root) /etc/bash_completion.d/guestfish-bash-completion.sh
This page took 0.182813 seconds and 4 git commands to generate.