]> git.pld-linux.org Git - packages/libvirt.git/blob - libvirt.spec
- added tmpfiles config for systemd
[packages/libvirt.git] / libvirt.spec
1 # xenapi (libxenserver), xenlight (libxenlight)?
2 # --with-driver-modules ?
3 #
4 # Conditional build:
5 %bcond_with     xen             # xen
6 %bcond_without  xen_proxy       # Xen proxy
7 %bcond_without  qemu            # Qemu
8 %bcond_without  polkit          # PolicyKit
9 %bcond_with     sanlock         # sanlock storage lock manager
10 %bcond_with     netcf           # host interfaces support
11
12 # qemu available only on x86 and ppc
13 %ifnarch %{ix86} %{x8664} ppc
14 %undefine       with_qemu
15 %endif
16 # Xen is available only on i686 x86_64 ia64
17 %ifnarch %{ix86} %{x8664} ia64
18 %undefine       with_xen
19 %endif
20 %ifarch i386 i486 i586
21 %undefine       with_xen
22 %endif
23 %if %{without xen}
24 %undefine       with_xen_proxy
25 %endif
26
27 Summary:        Toolkit to interact with virtualization capabilities
28 Summary(pl.UTF-8):      Narzędzia współpracujące z funkcjami wirtualizacji
29 Name:           libvirt
30 Version:        0.9.9
31 Release:        3
32 License:        LGPL v2.1+
33 Group:          Base/Kernel
34 Source0:        ftp://ftp.libvirt.org/libvirt/%{name}-%{version}.tar.gz
35 # Source0-md5:  37c4bf8cdd4c76150bc0c1d249945d27
36 Source1:        %{name}.init
37 Source2:        %{name}.tmpfiles
38 Patch0:         %{name}-sasl.patch
39 Patch1:         %{name}-scsi-git.patch
40 Patch2:         %{name}-lxc.patch
41 Patch3:         %{name}-lxc-systemd.patch
42 URL:            http://www.libvirt.org/
43 BuildRequires:  audit-libs-devel
44 BuildRequires:  augeas-devel
45 BuildRequires:  autoconf >= 2.50
46 BuildRequires:  automake
47 BuildRequires:  avahi-devel >= 0.6.0
48 BuildRequires:  curl-devel >= 7.18.0
49 BuildRequires:  cyrus-sasl-devel
50 BuildRequires:  device-mapper-devel >= 1.0.0
51 BuildRequires:  gawk
52 BuildRequires:  gettext-devel >= 0.17
53 BuildRequires:  gnutls-devel >= 1.0.25
54 BuildRequires:  libapparmor-devel
55 BuildRequires:  libblkid-devel >= 2.17
56 BuildRequires:  libcap-ng-devel >= 0.4.0
57 BuildRequires:  libgcrypt-devel
58 BuildRequires:  libnl1-devel >= 1.1
59 BuildRequires:  libpcap-devel >= 1.0.0
60 BuildRequires:  libselinux-devel >= 2.0.82
61 BuildRequires:  libssh2-devel >= 1.0
62 BuildRequires:  libstdc++-devel
63 BuildRequires:  libtool
64 BuildRequires:  libxml2-devel >= 1:2.6.0
65 BuildRequires:  libxslt-devel
66 BuildRequires:  openldap-devel
67 BuildRequires:  openwsman-devel >= 2.2.3
68 BuildRequires:  ncurses-devel
69 %{?with_netcf:BuildRequires:    netcf-devel >= 0.1.4}
70 BuildRequires:  numactl-devel
71 BuildRequires:  parted-devel >= 1.8.0
72 BuildRequires:  perl-tools-pod
73 %{?with_polkit:BuildRequires:   polkit >= 0.90}
74 BuildRequires:  pkgconfig
75 BuildRequires:  python
76 BuildRequires:  python-devel
77 BuildRequires:  readline-devel
78 BuildRequires:  rpm-pythonprov
79 BuildRequires:  rpmbuild(macros) >= 1.219
80 %{?with_sanlock:BuildRequires:  sanlock-devel >= 0.8}
81 BuildRequires:  udev-devel >= 145
82 %{?with_xen:BuildRequires:      xen-devel >= 3.0.4}
83 # For disk driver
84 BuildRequires:  xorg-lib-libpciaccess-devel >= 0.10.0
85 BuildRequires:  yajl-devel
86 Requires:       curl-libs >= 7.18.0
87 Requires:       device-mapper >= 1.0.0
88 Requires:       gnutls >= 1.0.25
89 Requires:       libcap-ng >= 0.4.0
90 Requires:       libnl1 >= 1.1
91 Requires:       libpcap >= 1.0.0
92 Requires:       libselinux >= 2.0.82
93 Requires:       libssh2 >= 1.0
94 Requires:       libxml2 >= 1:2.6.0
95 Requires:       openwsman-libs >= 2.2.3
96 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
97
98 # libxenstore is not versionned properly
99 %define         _noautoreq      devel(libxenstore.*)
100
101 %description
102 Libvirt is a C toolkit to interact with the virtualization
103 capabilities of recent versions of Linux.
104
105 Virtualization of the Linux Operating System means the ability to run
106 multiple instances of Operating Systems concurently on a single
107 hardware system where the basic resources are driven by a Linux
108 instance. The library aim at providing long term stable C API
109 initially for the Xen paravirtualization but should be able to
110 integrate other virtualization mechanisms if needed.
111
112 %description -l pl.UTF-8
113 Libvirt to zestaw narzędzi w C do współpracy z funkcjami
114 wirtualizacji obecnych wersji Linuksa.
115
116 Wirtualizacja w systemie operacyjnym Linux oznacza możliwość
117 jednoczesnego uruchamiania wielu instancji systemu operacyjnego na
118 pojedynczym systemie sprzętowym, którego podstawowe zasoby są
119 zarządzane przez instancję Linuksa. Celem biblioteki jest zapewnienie
120 długotrwale stabilnego API C, początkowo do parawirtualizacji Xen, ale
121 dającej się zintegrować w razie potrzeby z innymi mechanizmami
122 wirtualizacji.
123
124 %package devel
125 Summary:        Development files for programs using libvirt
126 Summary(pl.UTF-8):      Pliki programistyczne do programów wykorzystujących libvirt
127 Group:          Development/Libraries
128 Requires:       %{name} = %{version}-%{release}
129 Requires:       audit-libs-devel
130 Requires:       curl-devel >= 7.18.0
131 Requires:       device-mapper-devel >= 1.0.0
132 Requires:       gnutls-devel >= 1.0.25
133 Requires:       libapparmor-devel
134 Requires:       libcap-ng-devel >= 0.4.0
135 Requires:       libgcrypt-devel
136 Requires:       libnl1-devel >= 1.1
137 Requires:       libpcap-devel >= 1.0.0
138 Requires:       libselinux-devel >= 2.0.82
139 Requires:       libxml2-devel >= 1:2.6.0
140 Requires:       numactl-devel
141 Requires:       openwsman-devel >= 2.2.3
142 %{?with_xen:Requires: xen-devel}
143 Requires:       yajl-devel
144
145 %description devel
146 Libvirt is a C toolkit to interact with the virtualization
147 capabilities of recent versions of Linux.
148
149 This package contains the header files needed for developing programs
150 using the libvirt library.
151
152 %description devel -l pl.UTF-8
153 Libvirt to zestaw narzędzi w C do współpracy z funkcjami
154 wirtualizacji obecnych wersji Linuksa.
155
156 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
157 wykorzystujących bibliotekę libvirt.
158
159 %package static
160 Summary:        Development static libraries for programs using libvirt
161 Summary(pl.UTF-8):      Statyczne biblioteki programistyczne do programów wykorzystujących libvirt
162 Group:          Development/Libraries
163 Requires:       %{name}-devel = %{version}-%{release}
164
165 %description static
166 Libvirt is a C toolkit to interact with the virtualization
167 capabilities of recent versions of Linux.
168
169 This package contains the static libraries for developing programs
170 using the libvirt library.
171
172 %description static -l pl.UTF-8
173 Libvirt to zestaw narzędzi w C do współpracy z funkcjami
174 wirtualizacji obecnych wersji Linuksa.
175
176 Ten pakiet zawiera biblioteki statyczne do tworzenia programów
177 wykorzystujących bibliotekę libvirt.
178
179 %package -n python-%{name}
180 Summary:        Python bindings to interact with virtualization capabilities
181 Summary(pl.UTF-8):      Wiązania Pythona do współpracy z funkcjami wirtualizacji
182 Group:          Development/Languages/Python
183 Requires:       %{name} = %{version}-%{release}
184
185 %description -n python-%{name}
186 Libvirt is a C toolkit to interact with the virtualization
187 capabilities of recent versions of Linux.
188
189 This package contains the Python bindings for the libvirt library.
190
191 %description -n python-%{name} -l pl.UTF-8
192 Libvirt to zestaw narzędzi w C do współpracy z funkcjami
193 wirtualizacji obecnych wersji Linuksa.
194
195 Ten pakiet zawiera wiązania Pythona do biblioteki libvirt.
196
197 %package utils
198 Summary:        Tools to interact with virtualization capabilities
199 Summary(pl.UTF-8):      Narzędzia do współpracy z funkcjami wirtualizacyjnymi
200 Group:          Base/Kernel
201 Requires:       %{name} = %{version}-%{release}
202 Requires:       avahi-libs >= 0.6.0
203 # /etc/init.d/libvirt-guests[37]: .: /usr/bin/gettext.sh: not found, some better split needed
204 Requires:       gettext-devel
205 Requires:       libblkid >= 2.17
206 Requires:       parted-libs >= 1.8.0
207 Requires:       udev-libs >= 145
208 Requires:       xorg-lib-libpciaccess >= 0.10.0
209 Suggests:       iptables
210 Suggests:       bridge-utils
211 Suggests:       dmidecode
212 Suggests:       dnsmasq
213 Suggests:       ebtables
214 Suggests:       gawk
215 Suggests:       iptables
216 Suggests:       lvm2
217 # for management through ssh
218 Suggests:       netcat-openbsd
219 Suggests:       polkit >= 0.90
220
221 %description utils
222 Libvirt is a C toolkit to interact with the virtualization
223 capabilities of recent versions of Linux.
224
225 This package contains tools for the libvirt library.
226
227 %description utils -l pl.UTF-8
228 Libvirt to zestaw narzędzi w C do współpracy z funkcjami
229 wirtualizacji obecnych wersji Linuksa.
230
231 Ten pakiet zawiera narzędzia do biblioteki libvirt.
232
233 %package lock-sanlock
234 Summary:        Sanlock lock manager plugin for libvirt
235 Summary(pl.UTF-8):      Zarządca blokad sanlock dla biblioteki libvirt
236 Group:          Libraries
237 Requires:       %{name} = %{version}-%{release}
238
239 %description lock-sanlock
240 Sanlock lock manager plugin for libvirt.
241
242 %description lock-sanlock -l pl.UTF-8
243 Zarządca blokad sanlock dla biblioteki libvirt.
244
245 %prep
246 %setup -q
247 %patch0 -p1
248 %patch1 -p1
249 %patch2 -p1
250 %patch3 -p1
251
252 # weird translations
253 %{__rm} po/{my,eu_ES}.{po,gmo}
254
255 mv po/vi_VN.po po/vi.po
256 mv po/vi_VN.gmo po/vi.gmo
257
258 %build
259 %{__libtoolize}
260 %{__aclocal} -I gnulib/m4 -I m4
261 %{__autoconf}
262 %{__autoheader}
263 %{__automake}
264
265 %configure \
266         PVCREATE=/sbin/pvcreate \
267         VGCREATE=/sbin/vgcreate \
268         LVCREATE=/sbin/lvcreate \
269         PVREMOVE=/sbin/pvremove \
270         VGREMOVE=/sbin/vgremove \
271         LVREMOVE=/sbin/lvremove \
272         VGCHANGE=/sbin/vgchange \
273         LVCHANGE=/sbin/lvchange \
274           VGSCAN=/sbin/vgscan   \
275              PVS=/sbin/pvs      \
276              VGS=/sbin/vgs      \
277              LVS=/sbin/lvs      \
278               TC=/sbin/tc \
279            BRCTL=/sbin/brctl    \
280         ISCSIADM=/sbin/iscsiadm \
281         SHOWMOUNT=/usr/sbin/showmount \
282         MOUNT=/bin/mount \
283         UMOUNT=/bin/umount \
284         MKFS=/sbin/mkfs \
285         SHOWMOUNT=/usr/sbin/showmount \
286         IPTABLES_PATH=/usr/sbin/iptables \
287         IP6TABLES_PATH=/usr/sbin/ip6tables \
288         EBTABLES_PATH=/usr/sbin/ebtables \
289         ISCSIADM=/sbin/iscsiadm \
290         DNSMASQ=/usr/sbin/dnsmasq \
291         RADVD=/usr/sbin/radvd \
292         UDEVADM=/sbin/udevadm \
293         MODPROBE=/sbin/modprobe \
294         --disable-silent-rules \
295         --with-html-dir=%{_gtkdocdir} \
296         --with-html-subdir=%{name} \
297         --with-init-script=redhat \
298         --with-storage-lvm \
299         --with-udev \
300         --without-hal \
301         %{!?with_netcf:--without-netcf} \
302         %{!?with_sanlock:--without-sanlock} \
303         %{!?with_qemu:--without-qemu} \
304         %{!?with_xen:--without-xen} \
305         --x-libraries=%{_libdir}
306
307 %{__make} \
308         AWK=gawk
309
310 %install
311 rm -rf $RPM_BUILD_ROOT
312 install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d} \
313         $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
314
315 %{__make} install \
316         DEVHELP_DIR=%{_gtkdocdir}/%{name}/devhelp \
317         DESTDIR=$RPM_BUILD_ROOT
318
319 #install qemud/libvirtd.sysconf $RPM_BUILD_ROOT/etc/sysconfig/libvirtd
320 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirtd
321 install %{SOURCE2} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
322
323 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
324 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
325 %py_postclean
326 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.la
327
328 %if %{with sanlock}
329 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.{a,la}
330 %endif
331
332 %find_lang %{name}
333
334 %clean
335 rm -rf $RPM_BUILD_ROOT
336
337 %post   -p /sbin/ldconfig
338 %postun -p /sbin/ldconfig
339
340 %files -f %{name}.lang
341 %defattr(644,root,root,755)
342 %doc ChangeLog README TODO NEWS
343 %attr(755,root,root) %{_libdir}/libvirt.so.*.*.*
344 %attr(755,root,root) %ghost %{_libdir}/libvirt.so.0
345 %attr(755,root,root) %{_libdir}/libvirt-qemu.so.*.*.*
346 %attr(755,root,root) %ghost %{_libdir}/libvirt-qemu.so.0
347 %attr(755,root,root) %{_libdir}/libvirt_lxc
348 %attr(755,root,root) %{_libdir}/libvirt_iohelper
349 %attr(755,root,root) %{_libdir}/virt-aa-helper
350 %dir %{_libdir}/libvirt
351 %if %{with sanlock}
352 %dir %{_libdir}/libvirt/lock-driver
353 %endif
354 %dir %{_datadir}/libvirt
355 %dir %{_datadir}/libvirt/schemas
356 %{_datadir}/libvirt/schemas/basictypes.rng
357 %{_datadir}/libvirt/schemas/capability.rng
358 %{_datadir}/libvirt/schemas/domain.rng
359 %{_datadir}/libvirt/schemas/domaincommon.rng
360 %{_datadir}/libvirt/schemas/domainsnapshot.rng
361 %{_datadir}/libvirt/schemas/interface.rng
362 %{_datadir}/libvirt/schemas/network.rng
363 %{_datadir}/libvirt/schemas/networkcommon.rng
364 %{_datadir}/libvirt/schemas/nodedev.rng
365 %{_datadir}/libvirt/schemas/nwfilter.rng
366 %{_datadir}/libvirt/schemas/secret.rng
367 %{_datadir}/libvirt/schemas/storageencryption.rng
368 %{_datadir}/libvirt/schemas/storagepool.rng
369 %{_datadir}/libvirt/schemas/storagevol.rng
370
371 %if %{with sanlock}
372 %files lock-sanlock
373 %attr(755,root,root) %{_sbindir}/virt-sanlock-cleanup
374 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/sanlock.so
375 %dir /var/lib/libvirt/sanlock
376 %{_mandir}/man8/virt-sanlock-cleanup.8*
377 %endif
378
379 %files devel
380 %defattr(644,root,root,755)
381 %attr(755,root,root) %{_libdir}/libvirt.so
382 %attr(755,root,root) %{_libdir}/libvirt-qemu.so
383 %{_libdir}/libvirt.la
384 %{_libdir}/libvirt-qemu.la
385 %{_gtkdocdir}/%{name}
386 %{_includedir}/%{name}
387 %{_pkgconfigdir}/%{name}.pc
388
389 %files static
390 %defattr(644,root,root,755)
391 %{_libdir}/libvirt.a
392 %{_libdir}/libvirt-qemu.a
393
394 %files -n python-%{name}
395 %defattr(644,root,root,755)
396 %doc %{_docdir}/%{name}-python-%{version}
397 %attr(755,root,root) %{py_sitedir}/libvirtmod.so
398 %attr(755,root,root) %{py_sitedir}/libvirtmod_qemu.so
399 %{py_sitedir}/libvirt.py[co]
400 %{py_sitedir}/libvirt_qemu.py[co]
401
402 %files utils
403 %defattr(644,root,root,755)
404 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt
405 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/libvirt.conf
406 %attr(755,root,root) %{_bindir}/virsh
407 %attr(755,root,root) %{_sbindir}/libvirtd
408 %attr(754,root,root) /etc/rc.d/init.d/libvirtd
409 %attr(754,root,root) /etc/rc.d/init.d/libvirt-guests
410 %attr(755,root,root) %{_bindir}/virt-xml-validate
411 %attr(755,root,root) %{_bindir}/virt-pki-validate
412 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirtd
413 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirt-guests
414 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd
415 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.lxc
416 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.qemu
417 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.uml
418 %attr(755,root,root) %{_libdir}/libvirt_parthelper
419 %{?with_polkit:%{_datadir}/polkit-1/actions/org.libvirt.unix.policy}
420 %{_mandir}/man1/virsh.1*
421 %{_mandir}/man1/virt-xml-validate.1*
422 %{_mandir}/man1/virt-pki-validate.1*
423 %{_mandir}/man8/libvirtd.8*
424 %{_datadir}/%{name}/*.xml
425 %{_datadir}/augeas/lenses/*.aug
426 %{_datadir}/augeas/lenses/tests/*.aug
427 /usr/lib/tmpfiles.d/%{name}.conf
428 %attr(711,root,root) %dir /var/cache/libvirt
429 %dir /var/lib/libvirt
430 %attr(711,root,root) %dir /var/lib/libvirt/boot
431 %dir /var/lib/libvirt/dnsmasq
432 %attr(711,root,root) %dir /var/lib/libvirt/images
433 %attr(700,root,root) %dir /var/lib/libvirt/lxc
434 %attr(700,root,root) %dir /var/lib/libvirt/network
435 %attr(700,root,root) %dir /var/lib/libvirt/uml
436 %dir /var/log/libvirt
437 %attr(700,root,root) %dir /var/log/libvirt/lxc
438 %attr(700,root,root) %dir /var/log/libvirt/uml
439 %dir /var/run/libvirt
440 %attr(700,root,root) %dir /var/run/libvirt/lxc
441 %if %{with qemu}
442 # %attr(750,qemu,qemu) ?
443 %dir /var/cache/libvirt/qemu
444 # %attr(750,qemu,qemu) ?
445 %dir /var/lib/libvirt/qemu
446 %attr(700,root,root) %dir /var/log/libvirt/qemu
447 %attr(700,root,root) %dir /var/run/libvirt/qemu
448 %endif
This page took 0.077488 seconds and 4 git commands to generate.