]> TLD Linux GIT Repositories - packages/libvirt.git/blob - libvirt.spec
- updated to 5.1.0
[packages/libvirt.git] / libvirt.spec
1 # TODO:
2 # - parallels-sdk >= 7.0.22?
3 # - virtuozzo storage?
4 #
5 # Conditional build:
6 # - virtualization
7 %bcond_without  esx             # VMware ESX support
8 %bcond_without  hyperv          # Hyper-V support
9 %bcond_without  libxl           # libxenlight support
10 %bcond_without  lxc             # LXC support
11 %bcond_without  openvz          # OpenVZ support
12 %bcond_without  phyp            # PHYP support
13 %bcond_without  qemu            # Qemu support
14 %bcond_without  vbox            # VirtualBox support
15 %bcond_without  vmware          # VMware Workstation/Player support
16 %bcond_without  xenapi          # Xen API (Citrix XenServer) support
17 # - storage
18 %bcond_without  ceph            # RADOS BD (Ceph) storage support
19 %bcond_without  glusterfs       # GlusterFS storage support
20 # - storage locking
21 %bcond_without  sanlock         # sanlock storage lock manager
22 # - other
23 %bcond_without  netcf           # host interfaces support
24 %bcond_without  polkit          # PolicyKit support
25 %bcond_without  systemtap       # systemtap/dtrace probes
26 %bcond_with     wireshark       # wireshark dissector module
27 %bcond_without  static_libs     # static libraries build
28
29 # qemu available only on x86 and ppc
30 %ifnarch %{ix86} %{x8664} ppc
31 %undefine       with_qemu
32 %endif
33
34 # Xen is available only on x86 and ia64
35 %ifnarch %{ix86} %{x8664} ia64
36 %undefine       with_xenapi
37 %undefine       with_libxl
38 %endif
39
40 Summary:        Toolkit to interact with virtualization capabilities
41 Summary(pl.UTF-8):      Narzędzia współpracujące z funkcjami wirtualizacji
42 Name:           libvirt
43 Version:        5.1.0
44 Release:        1
45 License:        LGPL v2.1+
46 Group:          Libraries
47 Source0:        http://libvirt.org/sources/libvirt-%{version}.tar.xz
48 # Source0-md5:  74c6c2e90ca9c94d9255eec338615a0c
49 Source1:        libvirtd.init
50 Source2:        virtlockd.init
51 Source3:        virtlogd.init
52 Patch0:         %{name}-sasl.patch
53 Patch1:         %{name}-qemu-acl.patch
54 Patch2:         %{name}-udevadm-settle.patch
55 Patch3:         bashisms.patch
56 Patch4:         %{name}-guests.init.patch
57 Patch5:         %{name}-sysctl-dir.patch
58 URL:            http://www.libvirt.org/
59 BuildRequires:  acl-devel
60 BuildRequires:  attr-devel
61 BuildRequires:  audit-libs-devel
62 BuildRequires:  augeas-devel
63 BuildRequires:  autoconf >= 2.50
64 BuildRequires:  automake
65 BuildRequires:  avahi-devel >= 0.6.0
66 BuildRequires:  bash-completion >= 2.0
67 %{?with_ceph:BuildRequires:     ceph-devel}
68 BuildRequires:  curl-devel >= 7.18.0
69 BuildRequires:  cyrus-sasl-devel
70 BuildRequires:  dbus-devel >= 1.0.0
71 BuildRequires:  device-mapper-devel >= 1.0.0
72 BuildRequires:  gawk
73 BuildRequires:  gcc >= 6:4.4
74 BuildRequires:  gettext-tools >= 0.17
75 %{?with_glusterfs:BuildRequires:        glusterfs-devel >= 3.4.1}
76 BuildRequires:  gnutls-devel >= 2.2.0
77 BuildRequires:  libapparmor-devel
78 BuildRequires:  libblkid-devel >= 2.17
79 BuildRequires:  libcap-ng-devel >= 0.4.0
80 BuildRequires:  libfuse-devel >= 2.8.6
81 BuildRequires:  libgcrypt-devel
82 BuildRequires:  libnl-devel >= 3.2
83 BuildRequires:  libpcap-devel >= 1.0.0
84 BuildRequires:  libselinux-devel >= 2.5
85 BuildRequires:  libssh-devel >= 0.7
86 BuildRequires:  libssh2-devel >= 1.3
87 BuildRequires:  libtool
88 %{?with_xenapi:BuildRequires:   libxenserver-devel}
89 BuildRequires:  libxml2-devel >= 1:2.6.0
90 BuildRequires:  libxslt-devel
91 BuildRequires:  ncurses-devel
92 %{?with_netcf:BuildRequires:    netcf-devel >= 0.2.0}
93 BuildRequires:  numactl-devel
94 %{?with_hyperv:BuildRequires:   openwsman-devel >= 2.2.3}
95 BuildRequires:  parted-devel >= 1.8.0
96 BuildRequires:  pkgconfig
97 %{?with_polkit:BuildRequires:   polkit}
98 %{?with_polkit:BuildRequires:   polkit-devel >= 0.90}
99 BuildRequires:  readline-devel
100 BuildRequires:  rpmbuild(macros) >= 1.627
101 %{?with_sanlock:BuildRequires:  sanlock-devel >= 0.8}
102 %{?with_systemtap:BuildRequires:        systemtap-sdt-devel}
103 BuildRequires:  udev-devel >= 1:218
104 %{?with_wireshark:BuildRequires:        wireshark-devel >= 1.11.3}
105 %{?with_libxl:BuildRequires:    xen-devel >= 4.4}
106 # For disk driver
107 BuildRequires:  xorg-lib-libpciaccess-devel >= 0.10.0
108 Requires:       curl-libs >= 7.18.0
109 Requires:       device-mapper >= 1.0.0
110 Requires:       libcap-ng >= 0.4.0
111 Requires:       libnl >= 3.2
112 Requires:       libpcap >= 1.0.0
113 Requires:       libselinux >= 2.5
114 Requires:       libssh >= 0.7
115 Requires:       libssh2 >= 1.3
116 Requires:       libxml2 >= 1:2.6.0
117 %{?with_hyperv:Requires:        openwsman-libs >= 2.2.3}
118 Obsoletes:      libvirt-daemon-esx
119 Obsoletes:      libvirt-daemon-hyperv
120 Obsoletes:      libvirt-daemon-openvz
121 Obsoletes:      libvirt-daemon-phyp
122 Obsoletes:      libvirt-daemon-uml
123 Obsoletes:      libvirt-daemon-vbox
124 Obsoletes:      libvirt-daemon-vmware
125 Obsoletes:      libvirt-daemon-xen
126 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
127
128 %description
129 Libvirt is a C toolkit to interact with the virtualization
130 capabilities of recent versions of Linux.
131
132 Virtualization of the Linux Operating System means the ability to run
133 multiple instances of Operating Systems concurently on a single
134 hardware system where the basic resources are driven by a Linux
135 instance. The library aim at providing long term stable C API
136 initially for the Xen paravirtualization but should be able to
137 integrate other virtualization mechanisms if needed.
138
139 This package contains the base libraries and configuration file.
140
141 %description -l pl.UTF-8
142 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
143 obecnych wersji Linuksa.
144
145 Wirtualizacja w systemie operacyjnym Linux oznacza możliwość
146 jednoczesnego uruchamiania wielu instancji systemu operacyjnego na
147 pojedynczym systemie sprzętowym, którego podstawowe zasoby są
148 zarządzane przez instancję Linuksa. Celem biblioteki jest zapewnienie
149 długotrwale stabilnego API C, początkowo do parawirtualizacji Xen, ale
150 dającej się zintegrować w razie potrzeby z innymi mechanizmami
151 wirtualizacji.
152
153 Ten pakiet zawiera podstawowe biblioteki oraz plik konfiguracyjny.
154
155 %package -n bash-completion-%{name}
156 Summary:        bash-completion for libvirt
157 Group:          Applications/Shells
158 Requires:       bash-completion
159 %if "%{_rpmversion}" >= "5"
160 BuildArch:      noarch
161 %endif
162
163 %description -n bash-completion-%{name}
164 This package provides bash-completion for libvirt.
165
166 %package devel
167 Summary:        Development files for programs using libvirt
168 Summary(pl.UTF-8):      Pliki programistyczne do programów wykorzystujących libvirt
169 Group:          Development/Libraries
170 Requires:       %{name} = %{version}-%{release}
171 Requires:       audit-libs-devel
172 Requires:       curl-devel >= 7.18.0
173 Requires:       dbus-devel >= 1.0.0
174 Requires:       device-mapper-devel >= 1.0.0
175 Requires:       gnutls-devel >= 2.2.0
176 Requires:       libapparmor-devel
177 Requires:       libcap-ng-devel >= 0.4.0
178 Requires:       libgcrypt-devel
179 Requires:       libnl-devel >= 3.2
180 Requires:       libpcap-devel >= 1.0.0
181 Requires:       libselinux-devel >= 2.5
182 Requires:       libxml2-devel >= 1:2.6.0
183 Requires:       numactl-devel
184 %{?with_hyperv:Requires:        openwsman-devel >= 2.2.3}
185
186 %description devel
187 Libvirt is a C toolkit to interact with the virtualization
188 capabilities of recent versions of Linux.
189
190 This package contains the header files needed for developing programs
191 using the libvirt library.
192
193 %description devel -l pl.UTF-8
194 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
195 obecnych wersji Linuksa.
196
197 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
198 wykorzystujących bibliotekę libvirt.
199
200 %package static
201 Summary:        Development static libraries for programs using libvirt
202 Summary(pl.UTF-8):      Statyczne biblioteki programistyczne do programów wykorzystujących libvirt
203 Group:          Development/Libraries
204 Requires:       %{name}-devel = %{version}-%{release}
205
206 %description static
207 Libvirt is a C toolkit to interact with the virtualization
208 capabilities of recent versions of Linux.
209
210 This package contains the static libraries for developing programs
211 using the libvirt library.
212
213 %description static -l pl.UTF-8
214 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
215 obecnych wersji Linuksa.
216
217 Ten pakiet zawiera biblioteki statyczne do tworzenia programów
218 wykorzystujących bibliotekę libvirt.
219
220 %package lock-sanlock
221 Summary:        Sanlock lock manager plugin for libvirt
222 Summary(pl.UTF-8):      Zarządca blokad sanlock dla biblioteki libvirt
223 Group:          Libraries
224 Requires:       %{name}-daemon = %{version}-%{release}
225
226 %description lock-sanlock
227 Sanlock lock manager plugin for libvirt.
228
229 %description lock-sanlock -l pl.UTF-8
230 Zarządca blokad sanlock dla biblioteki libvirt.
231
232 %package daemon
233 Summary:        Server side daemon and supporting files for libvirt library
234 Summary(pl.UTF-8):      Demon działający po stronie serwera oraz pliki wspierające dla biblioteki libvirt
235 Group:          Applications/System
236 Requires:       %{name} = %{version}-%{release}
237 Requires:       avahi-libs >= 0.6.0
238 Requires:       iproute2
239 Requires:       libblkid >= 2.17
240 %{?with_netcf:Requires: netcf >= 0.2.0}
241 Requires:       parted-libs >= 1.8.0
242 Requires:       rc-scripts
243 # Needed for probing the power management features of the host.
244 Requires:       pm-utils
245 Requires:       udev-libs >= 1:218
246 Requires:       util-linux
247 Requires:       virtual(module-tools)
248 Requires:       xorg-lib-libpciaccess >= 0.10.0
249 Requires(post,preun):   /sbin/chkconfig
250 Suggests:       bridge-utils
251 Suggests:       cyrus-sasl
252 Suggests:       cyrus-sasl-digest-md5
253 Suggests:       dmidecode
254 Suggests:       dnsmasq >= 2.41
255 Suggests:       ebtables
256 Suggests:       gawk
257 Suggests:       glusterfs-client >= 2.0.1
258 Suggests:       iptables
259 Suggests:       iptables
260 Suggests:       libcgroup
261 Suggests:       lvm2
262 Suggests:       numad
263 Suggests:       open-iscsi
264 Suggests:       parted >= 1.8.0
265 Suggests:       polkit >= 0.93
266 #Suggests:      radvd
267 Suggests:       scrub
268 #Suggests:      sheepdog
269 Provides:       libvirt(hypervisor)
270
271 %description daemon
272 Server side daemon required to manage the virtualization capabilities
273 of recent versions of Linux. Requires a hypervisor specific sub-RPM
274 for specific drivers.
275
276 %description daemon -l pl.UTF-8
277 Demon działający po stronie serwera wymagany do zarządzania funkcjami
278 wirtualizacji nowych wersji Linuksa. Wymaga podpakietu specyficznego
279 dla hipernadzorcy.
280
281 %package daemon-storage-gluster
282 Summary:        Storage driver plugin for GlusterFS
283 Summary(pl.UTF-8):      Wtyczka składowania danych wykorzystująca GlusterFS
284 Group:          Libraries
285 Requires:       %{name}-daemon = %{version}-%{release}
286 Requires:       glusterfs-libs >= 3.4.1
287
288 %description daemon-storage-gluster
289 Storage driver plugin for GlusterFS.
290
291 %description daemon-storage-gluster -l pl.UTF-8
292 Wtyczka składowania danych wykorzystująca system plików GlusterFS.
293
294 %package daemon-storage-rbd
295 Summary:        Storage driver plugin for Ceph RADOS Block Device
296 Summary(pl.UTF-8):      Wtyczka składowania danych wykorzystująca urządzenie blokowe RADOS (Ceph)
297 Group:          Libraries
298 Requires:       %{name}-daemon = %{version}-%{release}
299
300 %description daemon-storage-rbd
301 Storage driver plugin for Ceph RADOS Block Device.
302
303 %description daemon-storage-rbd -l pl.UTF-8
304 Wtyczka składowania danych wykorzystująca urządzenie blokowe RADOS
305 (system plików Ceph).
306
307 %package daemon-libxl
308 Summary:        Server side driver required to run XEN guests (xenlight)
309 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości XEN (xenlight)
310 Group:          Libraries
311 Requires:       %{name}-daemon = %{version}-%{release}
312 Requires:       /usr/sbin/qcow-create
313 Requires:       xen >= 4.4
314 Provides:       libvirt(hypervisor)
315
316 %description daemon-libxl
317 Server side driver required to manage the virtualization capabilities
318 of XEN via xenlight interface.
319
320 %description daemon-libxl -l pl.UTF-8
321 Sterownik wymagany po stronie serwera do zarządzania funkcjami
322 wirtualizacji XEN poprzez interfejs xenlight.
323
324 %package daemon-lxc
325 Summary:        Server side driver required to run LXC guests
326 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości LXC
327 Group:          Libraries
328 Requires:       %{name}-daemon = %{version}-%{release}
329 Requires:       libfuse >= 2.8.6
330 Provides:       libvirt(hypervisor)
331
332 %description daemon-lxc
333 Server side driver required to manage the virtualization capabilities
334 of LXC.
335
336 %description daemon-lxc -l pl.UTF-8
337 Sterownik wymagany po stronie serwera do zarządzania funkcjami
338 wirtualizacji LXC.
339
340 %package daemon-qemu
341 Summary:        Server side driver required to run QEMU guests
342 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości QEMU
343 Group:          Libraries
344 Requires:       %{name}-daemon = %{version}-%{release}
345 Requires:       /usr/bin/qemu-img
346 Requires:       bzip2
347 Requires:       gzip
348 Requires:       lzop
349 Requires:       qemu-system-x86
350 Requires:       xz
351 Provides:       libvirt(hypervisor)
352
353 %description daemon-qemu
354 Server side driver required to manage the virtualization capabilities
355 of the QEMU emulators.
356
357 %description daemon-qemu -l pl.UTF-8
358 Sterownik wymagany po stronie serwera do zarządzania funkcjami
359 wirtualizacji emulatora QEMU.
360
361 %package client
362 Summary:        Client side utilities of the libvirt library
363 Summary(pl.UTF-8):      Narzędzia klienckie do biblioteki libvirt
364 Group:          Applications/System
365 Requires:       %{name} = %{version}-%{release}
366 Requires:       gettext >= 0.18.1.1-6
367 Requires:       gnutls >= 2.2.0
368 Requires:       netcat-openbsd
369 Requires:       rc-scripts
370 Requires(post,preun):   /sbin/chkconfig
371
372 %description client
373 Client binaries needed to access to the virtualization capabilities of
374 recent versions of Linux (and other OSes).
375
376 %description client -l pl.UTF-8
377 Programy klienckie potrzebne do funkcji wirtualizacji nowych wersji
378 Linuksa (oraz innych systemów operacyjnych).
379
380 %package utils
381 Summary:        Tools to interact with virtualization capabilities (metapackage)
382 Summary(pl.UTF-8):      Narzędzia do współpracy z funkcjami wirtualizacyjnymi (metapakiet)
383 Group:          Applications/System
384 Requires:       %{name}-client = %{version}-%{release}
385 Requires:       %{name}-daemon = %{version}-%{release}
386 %{?with_libxl:Requires: %{name}-daemon-libxl = %{version}-%{release}}
387 Requires:       %{name}-daemon-lxc = %{version}-%{release}
388 Requires:       %{name}-daemon-qemu = %{version}-%{release}
389
390 %description utils
391 Libvirt is a C toolkit to interact with the virtualization
392 capabilities of recent versions of Linux.
393
394 This is metapackage gathering all tools for the libvirt library.
395
396 %description utils -l pl.UTF-8
397 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
398 obecnych wersji Linuksa.
399
400 To jest metapakiet zbierający wszystkie narzędzia przeznaczone dla
401 biblioteki libvirt.
402
403 %package -n systemtap-libvirt
404 Summary:        systemtap/dtrace probes for libvirt
405 Summary(pl.UTF-8):      Sondy systemtap/dtrace dla libvirt
406 Group:          Development/Tools
407 Requires:       %{name} = %{version}-%{release}
408 Requires:       systemtap-client
409
410 %description -n systemtap-libvirt
411 systemtap/dtrace probes for libvirt.
412
413 %description -n systemtap-libvirt -l pl.UTF-8
414 Sondy systemtap/dtrace dla libvirt.
415
416 %package -n wireshark-libvirt
417 Summary:        Wireshark dissector module for libvirt packets
418 Summary(pl.UTF-8):      Moduł sekcji Wiresharka do pakietów libvirt
419 Group:          Libraries
420 Requires:       wireshark >= 1.11.3
421
422 %description -n wireshark-libvirt
423 Wireshark dissector module for libvirt packets.
424
425 %description -n wireshark-libvirt -l pl.UTF-8
426 Moduł sekcji Wiresharka do pakietów libvirt.
427
428 %prep
429 %setup -q
430 %patch0 -p1
431 %patch1 -p1
432 %patch2 -p1
433 %patch3 -p1
434 %patch4 -p1
435 %patch5 -p1
436
437 %build
438 %{__libtoolize}
439 %{__aclocal} -I m4
440 %{__autoconf}
441 %{__autoheader}
442 %{__automake}
443
444 %configure \
445         PVCREATE=/sbin/pvcreate \
446         VGCREATE=/sbin/vgcreate \
447         LVCREATE=/sbin/lvcreate \
448         PVREMOVE=/sbin/pvremove \
449         VGREMOVE=/sbin/vgremove \
450         LVREMOVE=/sbin/lvremove \
451         VGCHANGE=/sbin/vgchange \
452         LVCHANGE=/sbin/lvchange \
453           VGSCAN=/sbin/vgscan   \
454              PVS=/sbin/pvs      \
455              VGS=/sbin/vgs      \
456              LVS=/sbin/lvs      \
457               TC=/sbin/tc \
458            BRCTL=/sbin/brctl    \
459         ISCSIADM=/sbin/iscsiadm \
460         SHOWMOUNT=/usr/sbin/showmount \
461         MOUNT=/bin/mount \
462         UMOUNT=/bin/umount \
463         MKFS=/sbin/mkfs \
464         SHOWMOUNT=/usr/sbin/showmount \
465         IPTABLES_PATH=/usr/sbin/iptables \
466         IP6TABLES_PATH=/usr/sbin/ip6tables \
467         EBTABLES_PATH=/usr/sbin/ebtables \
468         ISCSIADM=/sbin/iscsiadm \
469         DNSMASQ=/usr/sbin/dnsmasq \
470         RADVD=/usr/sbin/radvd \
471         UDEVADM=/sbin/udevadm \
472         MODPROBE=/sbin/modprobe \
473         SCRUB=/usr/bin/scrub \
474         OVSVSCTL=/usr/bin/ovs-vsctl \
475         NUMAD=/usr/bin/numad \
476         SHEEPDOGCLI=/usr/sbin/collie \
477         ZFS=/usr/sbin/zfs \
478         ZPOOL=/usr/sbin/zpool \
479         --disable-silent-rules \
480         %{?with_static_libs:--enable-static} \
481         --with-bash-completion \
482         --with-bash-completions-dir=/etc/bash_completion.d \
483         --with-html-dir=%{_gtkdocdir} \
484         --with-html-subdir=%{name} \
485         --with-init-script=redhat \
486         --with-packager="TLD-Linux" \
487         --with-packager-version="%{name}-%{version}-%{release}.%{_target_cpu}" \
488         --with-qemu-user=qemu \
489         --with-qemu-group=qemu \
490         --with-storage-disk \
491         --with-storage-fs \
492         --with-storage-gluster%{!?with_glusterfs:=no} \
493         --with-storage-iscsi \
494         --with-storage-lvm \
495         --with-storage-mpath \
496         --with-storage-rbd%{!?with_ceph:=no} \
497         --with-storage-scsi \
498         --with-storage-sheepdog \
499         --with-apparmor \
500         --with-audit \
501         --with-avahi \
502         %{__with_without systemtap dtrace} \
503         %{__with_without esx} \
504         --with-driver-modules \
505         --without-hal \
506         %{__with_without hyperv} \
507         --with-blkid \
508         --with-ssh2 \
509         %{__with_without libxl} \
510         %{__with_without lxc} \
511         --with-macvtap \
512         %{__with_without netcf} \
513         --with-numactl \
514         --with-numad \
515         %{__with_without openvz} \
516         %{__with_without phyp} \
517         %{__with_without polkit} \
518         %{__with_without qemu} \
519         %{__with_without sanlock} \
520         --with-sasl \
521         --with-selinux \
522         --with-udev \
523         %{__with_without vbox vbox %{_libdir}/VirtualBox} \
524         --with-virtualport \
525         %{__with_without vmware} \
526         %{!?with_wireshark:--without-wireshark-dissector} \
527         %{__with_without xenapi} \
528         --x-libraries=%{_libdir}
529
530 %{__make} \
531         AWK=gawk
532
533 %install
534 rm -rf $RPM_BUILD_ROOT
535 install -d $RPM_BUILD_ROOT/etc/{sysconfig,sysctl.d,rc.d/init.d}
536
537 %{__make} install \
538         DEVHELP_DIR=%{_gtkdocdir}/%{name}/devhelp \
539         DESTDIR=$RPM_BUILD_ROOT
540
541 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirtd
542 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlockd
543 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlogd
544
545 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
546 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la \
547         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a}
548 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.la \
549         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.a}
550 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.la \
551         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.a}
552
553 %if %{with sanlock}
554 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.la \
555         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a}
556 %endif
557 %if %{with wireshark}
558 %{__rm} $RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/epan/libvirt.la \
559         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/epan/libvirt.a} \
560 %endif
561
562 rm -rf $RPM_BUILD_ROOT/%{_datadir}/locale/{bal,ilo,kw@kkcor,kw@uccor,kw_GB,tw,wba}
563
564 %find_lang %{name}
565
566 %clean
567 rm -rf $RPM_BUILD_ROOT
568
569 %post   -p /sbin/ldconfig
570 %postun -p /sbin/ldconfig
571
572 %post daemon
573 /sbin/chkconfig --add libvirtd
574 %service libvirtd restart
575 /sbin/chkconfig --add virtlockd
576 %service virtlockd restart
577 /sbin/chkconfig --add virtlogd
578 %service virtlogd restart
579
580 %preun daemon
581 if [ "$1" = "0" ]; then
582         %service -q libvirtd stop
583         /sbin/chkconfig --del libvirtd
584         %service -q virtlockd stop
585         /sbin/chkconfig --del virtlockd
586         %service -q virtlogd stop
587         /sbin/chkconfig --del virtlogd
588 fi
589
590 %post client
591 /sbin/chkconfig --add libvirt-guests
592 %service -n libvirt-guests restart
593 NORESTART=1
594
595 %preun client
596 if [ "$1" = "0" ]; then
597         %service -q libvirt-guests stop
598         /sbin/chkconfig --del libvirt-guests
599 fi
600
601 %files -f %{name}.lang
602 %defattr(644,root,root,755)
603 %doc AUTHORS ChangeLog NEWS README.md
604 %dir %{_sysconfdir}/libvirt
605 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt.conf
606 %attr(755,root,root) %{_libdir}/libvirt.so.*.*.*
607 %attr(755,root,root) %ghost %{_libdir}/libvirt.so.0
608 %attr(755,root,root) %{_libdir}/libvirt-admin.so.*.*.*
609 %attr(755,root,root) %ghost %{_libdir}/libvirt-admin.so.0
610 %if %{with lxc}
611 %attr(755,root,root) %{_libdir}/libvirt-lxc.so.*.*.*
612 %attr(755,root,root) %ghost %{_libdir}/libvirt-lxc.so.0
613 %endif
614 %attr(755,root,root) %{_libdir}/libvirt-qemu.so.*.*.*
615 %attr(755,root,root) %ghost %{_libdir}/libvirt-qemu.so.0
616
617 # NSS modules
618 %attr(755,root,root) %{_libdir}/libnss_libvirt.so.2
619 %attr(755,root,root) %{_libdir}/libnss_libvirt_guest.so.2
620
621 %dir %{_libdir}/libvirt
622 %dir %{_datadir}/libvirt
623
624 %files -n bash-completion-%{name}
625 %defattr(644,root,root,755)
626 /etc/bash_completion.d/virsh
627 /etc/bash_completion.d/virt-admin
628 /etc/bash_completion.d/vsh
629
630 %files devel
631 %defattr(644,root,root,755)
632 %attr(755,root,root) %{_libdir}/libvirt.so
633 %attr(755,root,root) %{_libdir}/libvirt-admin.so
634 %{?with_lxc:%attr(755,root,root) %{_libdir}/libvirt-lxc.so}
635 %attr(755,root,root) %{_libdir}/libvirt-qemu.so
636 %{_datadir}/%{name}/api
637 %{_gtkdocdir}/%{name}
638 %{_includedir}/%{name}
639 %{_pkgconfigdir}/libvirt.pc
640 %{_pkgconfigdir}/libvirt-admin.pc
641 %{?with_lxc:%{_pkgconfigdir}/libvirt-lxc.pc}
642 %{_pkgconfigdir}/libvirt-qemu.pc
643 %{_mandir}/man7/virkeycode-*.7*
644 %{_mandir}/man7/virkeyname-*.7*
645
646 %files static
647 %defattr(644,root,root,755)
648 %{_libdir}/libvirt.a
649 %{_libdir}/libvirt-admin.a
650 %{?with_lxc:%{_libdir}/libvirt-lxc.a}
651 %{_libdir}/libvirt-qemu.a
652
653 %if %{with sanlock}
654 %files lock-sanlock
655 %defattr(644,root,root,755)
656 %attr(755,root,root) %{_sbindir}/virt-sanlock-cleanup
657 %attr(755,root,root) %{_libexecdir}/libvirt_sanlock_helper
658 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/sanlock.so
659 %{_datadir}/augeas/lenses/libvirt_sanlock.aug
660 %if %{with qemu}
661 %{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
662 %endif
663 %dir /var/lib/libvirt/sanlock
664 %{_mandir}/man8/virt-sanlock-cleanup.8*
665 %endif
666
667 %files daemon
668 %defattr(644,root,root,755)
669 %doc docs/*.xml
670 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/nwfilter
671 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu
672 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks
673 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks/autostart
674 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirtd.conf
675 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlockd.conf
676 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt-admin.conf
677 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlogd.conf
678 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/default.xml
679 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
680 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/nwfilter/*.xml
681 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/libvirt.conf
682 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirtd
683 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlockd
684 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlogd
685 %attr(754,root,root) /etc/rc.d/init.d/libvirtd
686 %attr(754,root,root) /etc/rc.d/init.d/virtlockd
687 %attr(754,root,root) /etc/rc.d/init.d/virtlogd
688 %config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-libvirtd.conf
689 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd
690 %attr(755,root,root) %{_libexecdir}/libvirt_iohelper
691 %attr(755,root,root) %{_libexecdir}/libvirt_parthelper
692 %attr(755,root,root) %{_libexecdir}/virt-aa-helper
693 %attr(755,root,root) %{_sbindir}/libvirtd
694 %attr(755,root,root) %{_sbindir}/virtlockd
695 %attr(755,root,root) %{_sbindir}/virtlogd
696 %{_datadir}/augeas/lenses/libvirtd.aug
697 %{_datadir}/augeas/lenses/libvirt_lockd.aug
698 %{_datadir}/augeas/lenses/virtlockd.aug
699 %{_datadir}/augeas/lenses/virtlogd.aug
700 %{_datadir}/augeas/lenses/tests/test_libvirtd.aug
701 %{?with_qemu:%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug}
702 %{_datadir}/augeas/lenses/tests/test_virtlockd.aug
703 %{_datadir}/augeas/lenses/tests/test_virtlogd.aug
704 %if %{with polkit}
705 %{_datadir}/polkit-1/actions/org.libvirt.api.policy
706 %{_datadir}/polkit-1/actions/org.libvirt.unix.policy
707 %{_datadir}/polkit-1/rules.d/50-libvirt.rules
708 %endif
709 %{_mandir}/man8/libvirtd.8*
710 %{_mandir}/man8/virtlockd.8*
711 %{_mandir}/man8/virtlogd.8*
712 %dir /var/lib/libvirt
713 %dir /var/lib/libvirt/dnsmasq
714 %attr(711,root,root) %dir /var/lib/libvirt/boot
715 %attr(700,root,root) %dir /var/lib/libvirt/network
716 %attr(711,root,root) %dir /var/lib/libvirt/images
717 %attr(711,root,root) %dir /var/lib/libvirt/filesystems
718 %attr(700,root,root) %dir /var/log/libvirt
719 %attr(711,root,root) %dir /var/cache/libvirt
720 %dir /var/run/libvirt
721 %dir /var/run/libvirt/network
722 %attr(755,root,root) %{_libexecdir}/libvirt_leaseshelper
723 %dir %{_libdir}/libvirt/connection-driver
724 %{_datadir}/libvirt/cpu_map
725 %{?with_netcf:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so}
726 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
727 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
728 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
729 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
730 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
731 %{?with_vbox:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so}
732 %dir %{_libdir}/libvirt/lock-driver
733 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/lockd.so
734 %dir %{_libdir}/libvirt/storage-backend
735 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
736 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
737 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
738 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
739 # mpath requires libdevmapper, but libvirt itself requires it too
740 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
741 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
742 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_sheepdog.so
743 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so
744 %dir %{_libdir}/libvirt/storage-file
745 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
746
747 %if %{with glusterfs}
748 %files daemon-storage-gluster
749 %defattr(644,root,root,755)
750 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_gluster.so
751 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_gluster.so
752 %endif
753
754 %if %{with ceph}
755 %files daemon-storage-rbd
756 %defattr(644,root,root,755)
757 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
758 %endif
759
760 %if %{with libxl}
761 %files daemon-libxl
762 %defattr(644,root,root,755)
763 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl.conf
764 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-lockd.conf
765 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-sanlock.conf}
766 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.libxl
767 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
768 %{_datadir}/augeas/lenses/libvirtd_libxl.aug
769 %{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
770 %attr(700,root,root) %dir /var/lib/libvirt/libxl
771 %attr(700,root,root) %dir /var/run/libvirt/libxl
772 %attr(700,root,root) %dir /var/log/libvirt/libxl
773 %endif
774
775 %if %{with lxc}
776 %files daemon-lxc
777 %defattr(644,root,root,755)
778 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/lxc.conf
779 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.lxc
780 %attr(700,root,root) %dir /var/lib/libvirt/lxc
781 %attr(700,root,root) %dir /var/run/libvirt/lxc
782 %attr(700,root,root) %dir /var/log/libvirt/lxc
783 %{_datadir}/augeas/lenses/libvirtd_lxc.aug
784 %{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
785 %attr(755,root,root) %{_libexecdir}/libvirt_lxc
786 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
787 %endif
788
789 %if %{with qemu}
790 %files daemon-qemu
791 %defattr(644,root,root,755)
792 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu.conf
793 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-lockd.conf
794 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-sanlock.conf}
795 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.qemu
796 %attr(750,qemu,qemu) %dir /var/cache/libvirt/qemu
797 %attr(750,qemu,qemu) %dir /var/lib/libvirt/qemu
798 %attr(700,root,root) %dir /var/log/libvirt/qemu
799 %attr(700,root,root) %dir /var/run/libvirt/qemu
800 %{_datadir}/augeas/lenses/libvirtd_qemu.aug
801 %{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
802 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
803 %endif
804
805 %files client
806 %defattr(644,root,root,755)
807 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirt-guests
808 %attr(754,root,root) /etc/rc.d/init.d/libvirt-guests
809 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virt-login-shell.conf
810 %attr(755,root,root) %{_bindir}/virsh
811 %attr(755,root,root) %{_bindir}/virt-admin
812 %attr(755,root,root) %{_bindir}/virt-host-validate
813 %attr(4755,root,root) %{_bindir}/virt-login-shell
814 %attr(755,root,root) %{_bindir}/virt-xml-validate
815 %attr(755,root,root) %{_bindir}/virt-pki-validate
816 %attr(754,root,root) %{_libexecdir}/libvirt-guests.sh
817 %{_mandir}/man1/virsh.1*
818 %{_mandir}/man1/virt-admin.1*
819 %{_mandir}/man1/virt-host-validate.1*
820 %{_mandir}/man1/virt-login-shell.1*
821 %{_mandir}/man1/virt-xml-validate.1*
822 %{_mandir}/man1/virt-pki-validate.1*
823 %dir %{_datadir}/libvirt/schemas
824 %{_datadir}/libvirt/schemas/basictypes.rng
825 %{_datadir}/libvirt/schemas/capability.rng
826 %{_datadir}/libvirt/schemas/cputypes.rng
827 %{_datadir}/libvirt/schemas/domain.rng
828 %{_datadir}/libvirt/schemas/domaincaps.rng
829 %{_datadir}/libvirt/schemas/domaincommon.rng
830 %{_datadir}/libvirt/schemas/domainsnapshot.rng
831 %{_datadir}/libvirt/schemas/interface.rng
832 %{_datadir}/libvirt/schemas/network.rng
833 %{_datadir}/libvirt/schemas/networkcommon.rng
834 %{_datadir}/libvirt/schemas/nodedev.rng
835 %{_datadir}/libvirt/schemas/nwfilter.rng
836 %{_datadir}/libvirt/schemas/nwfilter_params.rng
837 %{_datadir}/libvirt/schemas/nwfilterbinding.rng
838 %{_datadir}/libvirt/schemas/secret.rng
839 %{_datadir}/libvirt/schemas/storagecommon.rng
840 %{_datadir}/libvirt/schemas/storagepool.rng
841 %{_datadir}/libvirt/schemas/storagevol.rng
842 # for test driver (built into libvirt)
843 %{_datadir}/libvirt/test-screenshot.png
844
845 %files utils
846 %defattr(644,root,root,755)
847
848 %if %{with systemtap}
849 %files -n systemtap-libvirt
850 %defattr(644,root,root,755)
851 %{_datadir}/systemtap/tapset/libvirt_functions.stp
852 %{_datadir}/systemtap/tapset/libvirt_probes.stp
853 %{?with_qemu:%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp}
854 %endif
855
856 %if %{with wireshark}
857 %files -n wireshark-libvirt
858 %defattr(644,root,root,755)
859 %attr(755,root,root) %{_libdir}/wireshark/plugins/*/epan/libvirt.so
860 %endif