]> TLD Linux GIT Repositories - packages/libvirt.git/blob - libvirt.spec
- updated to 4.10.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  uml             # UML support
15 %bcond_without  vbox            # VirtualBox support
16 %bcond_without  vmware          # VMware Workstation/Player support
17 %bcond_without  xenapi          # Xen API (Citrix XenServer) support
18 # - storage
19 %bcond_without  ceph            # RADOS BD (Ceph) storage support
20 %bcond_without  glusterfs       # GlusterFS storage support
21 # - storage locking
22 %bcond_without  sanlock         # sanlock storage lock manager
23 # - other
24 %bcond_without  netcf           # host interfaces support
25 %bcond_without  polkit          # PolicyKit support
26 %bcond_without  systemtap       # systemtap/dtrace probes
27 %bcond_with     wireshark       # wireshark dissector module
28 %bcond_without  static_libs     # static libraries build
29
30 # qemu available only on x86 and ppc
31 %ifnarch %{ix86} %{x8664} ppc
32 %undefine       with_qemu
33 %endif
34
35 # Xen is available only on x86 and ia64
36 %ifnarch %{ix86} %{x8664} ia64
37 %undefine       with_xenapi
38 %undefine       with_libxl
39 %endif
40
41 Summary:        Toolkit to interact with virtualization capabilities
42 Summary(pl.UTF-8):      Narzędzia współpracujące z funkcjami wirtualizacji
43 Name:           libvirt
44 Version:        4.10.0
45 Release:        1
46 License:        LGPL v2.1+
47 Group:          Libraries
48 Source0:        http://libvirt.org/sources/libvirt-%{version}.tar.xz
49 # Source0-md5:  f85067e830bd89db08b7b7ffa75db6ef
50 Source1:        libvirtd.init
51 Source2:        virtlockd.init
52 Source3:        virtlogd.init
53 Patch0:         %{name}-sasl.patch
54 Patch1:         %{name}-qemu-acl.patch
55 Patch2:         %{name}-udevadm-settle.patch
56 Patch3:         bashisms.patch
57 Patch4:         %{name}-guests.init.patch
58 Patch5:         %{name}-sysctl-dir.patch
59 URL:            http://www.libvirt.org/
60 BuildRequires:  acl-devel
61 BuildRequires:  attr-devel
62 BuildRequires:  audit-libs-devel
63 BuildRequires:  augeas-devel
64 BuildRequires:  autoconf >= 2.50
65 BuildRequires:  automake
66 BuildRequires:  avahi-devel >= 0.6.0
67 BuildRequires:  bash-completion >= 2.0
68 %{?with_ceph:BuildRequires:     ceph-devel}
69 BuildRequires:  curl-devel >= 7.18.0
70 BuildRequires:  cyrus-sasl-devel
71 BuildRequires:  dbus-devel >= 1.0.0
72 BuildRequires:  device-mapper-devel >= 1.0.0
73 BuildRequires:  gawk
74 BuildRequires:  gcc >= 6:4.4
75 BuildRequires:  gettext-tools >= 0.17
76 %{?with_glusterfs:BuildRequires:        glusterfs-devel >= 3.4.1}
77 BuildRequires:  gnutls-devel >= 2.2.0
78 BuildRequires:  libapparmor-devel
79 BuildRequires:  libblkid-devel >= 2.17
80 BuildRequires:  libcap-ng-devel >= 0.4.0
81 BuildRequires:  libfuse-devel >= 2.8.6
82 BuildRequires:  libgcrypt-devel
83 BuildRequires:  libnl-devel >= 3.2
84 BuildRequires:  libpcap-devel >= 1.0.0
85 BuildRequires:  libselinux-devel >= 2.5
86 BuildRequires:  libssh-devel >= 0.7
87 BuildRequires:  libssh2-devel >= 1.3
88 BuildRequires:  libtool
89 %{?with_xenapi:BuildRequires:   libxenserver-devel}
90 BuildRequires:  libxml2-devel >= 1:2.6.0
91 BuildRequires:  libxslt-devel
92 BuildRequires:  ncurses-devel
93 %{?with_netcf:BuildRequires:    netcf-devel >= 0.2.0}
94 BuildRequires:  numactl-devel
95 %{?with_hyperv:BuildRequires:   openwsman-devel >= 2.2.3}
96 BuildRequires:  parted-devel >= 1.8.0
97 BuildRequires:  pkgconfig
98 %{?with_polkit:BuildRequires:   polkit}
99 %{?with_polkit:BuildRequires:   polkit-devel >= 0.90}
100 BuildRequires:  readline-devel
101 BuildRequires:  rpmbuild(macros) >= 1.627
102 %{?with_sanlock:BuildRequires:  sanlock-devel >= 0.8}
103 %{?with_systemtap:BuildRequires:        systemtap-sdt-devel}
104 BuildRequires:  udev-devel >= 1:218
105 %{?with_wireshark:BuildRequires:        wireshark-devel >= 1.11.3}
106 %{?with_libxl:BuildRequires:    xen-devel >= 4.4}
107 # For disk driver
108 BuildRequires:  xorg-lib-libpciaccess-devel >= 0.10.0
109 Requires:       curl-libs >= 7.18.0
110 Requires:       device-mapper >= 1.0.0
111 Requires:       libcap-ng >= 0.4.0
112 Requires:       libnl >= 3.2
113 Requires:       libpcap >= 1.0.0
114 Requires:       libselinux >= 2.5
115 Requires:       libssh >= 0.7
116 Requires:       libssh2 >= 1.3
117 Requires:       libxml2 >= 1:2.6.0
118 %{?with_hyperv:Requires:        openwsman-libs >= 2.2.3}
119 Obsoletes:      libvirt-daemon-esx
120 Obsoletes:      libvirt-daemon-hyperv
121 Obsoletes:      libvirt-daemon-openvz
122 Obsoletes:      libvirt-daemon-phyp
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 daemon-uml
362 Summary:        Server side driver required to run UML guests
363 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości UML
364 Group:          Libraries
365 Requires:       %{name}-daemon = %{version}-%{release}
366 Provides:       libvirt(hypervisor)
367
368 %description daemon-uml
369 Server side driver required to manage the virtualization capabilities
370 of UML.
371
372 %description daemon-uml -l pl.UTF-8
373 Sterownik wymagany po stronie serwera do zarządzania funkcjami
374 wirtualizacji UML.
375
376 %package client
377 Summary:        Client side utilities of the libvirt library
378 Summary(pl.UTF-8):      Narzędzia klienckie do biblioteki libvirt
379 Group:          Applications/System
380 Requires:       %{name} = %{version}-%{release}
381 Requires:       gettext >= 0.18.1.1-6
382 Requires:       gnutls >= 2.2.0
383 Requires:       netcat-openbsd
384 Requires:       rc-scripts
385 Requires(post,preun):   /sbin/chkconfig
386
387 %description client
388 Client binaries needed to access to the virtualization capabilities of
389 recent versions of Linux (and other OSes).
390
391 %description client -l pl.UTF-8
392 Programy klienckie potrzebne do funkcji wirtualizacji nowych wersji
393 Linuksa (oraz innych systemów operacyjnych).
394
395 %package utils
396 Summary:        Tools to interact with virtualization capabilities (metapackage)
397 Summary(pl.UTF-8):      Narzędzia do współpracy z funkcjami wirtualizacyjnymi (metapakiet)
398 Group:          Applications/System
399 Requires:       %{name}-client = %{version}-%{release}
400 Requires:       %{name}-daemon = %{version}-%{release}
401 %{?with_libxl:Requires: %{name}-daemon-libxl = %{version}-%{release}}
402 Requires:       %{name}-daemon-lxc = %{version}-%{release}
403 Requires:       %{name}-daemon-qemu = %{version}-%{release}
404 %{?with_uml:Requires:   %{name}-daemon-uml = %{version}-%{release}}
405
406 %description utils
407 Libvirt is a C toolkit to interact with the virtualization
408 capabilities of recent versions of Linux.
409
410 This is metapackage gathering all tools for the libvirt library.
411
412 %description utils -l pl.UTF-8
413 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
414 obecnych wersji Linuksa.
415
416 To jest metapakiet zbierający wszystkie narzędzia przeznaczone dla
417 biblioteki libvirt.
418
419 %package -n systemtap-libvirt
420 Summary:        systemtap/dtrace probes for libvirt
421 Summary(pl.UTF-8):      Sondy systemtap/dtrace dla libvirt
422 Group:          Development/Tools
423 Requires:       %{name} = %{version}-%{release}
424 Requires:       systemtap-client
425
426 %description -n systemtap-libvirt
427 systemtap/dtrace probes for libvirt.
428
429 %description -n systemtap-libvirt -l pl.UTF-8
430 Sondy systemtap/dtrace dla libvirt.
431
432 %package -n wireshark-libvirt
433 Summary:        Wireshark dissector module for libvirt packets
434 Summary(pl.UTF-8):      Moduł sekcji Wiresharka do pakietów libvirt
435 Group:          Libraries
436 Requires:       wireshark >= 1.11.3
437
438 %description -n wireshark-libvirt
439 Wireshark dissector module for libvirt packets.
440
441 %description -n wireshark-libvirt -l pl.UTF-8
442 Moduł sekcji Wiresharka do pakietów libvirt.
443
444 %prep
445 %setup -q
446 %patch0 -p1
447 %patch1 -p1
448 %patch2 -p1
449 %patch3 -p1
450 %patch4 -p1
451 %patch5 -p1
452
453 %build
454 %{__libtoolize}
455 %{__aclocal} -I m4
456 %{__autoconf}
457 %{__autoheader}
458 %{__automake}
459
460 %configure \
461         PVCREATE=/sbin/pvcreate \
462         VGCREATE=/sbin/vgcreate \
463         LVCREATE=/sbin/lvcreate \
464         PVREMOVE=/sbin/pvremove \
465         VGREMOVE=/sbin/vgremove \
466         LVREMOVE=/sbin/lvremove \
467         VGCHANGE=/sbin/vgchange \
468         LVCHANGE=/sbin/lvchange \
469           VGSCAN=/sbin/vgscan   \
470              PVS=/sbin/pvs      \
471              VGS=/sbin/vgs      \
472              LVS=/sbin/lvs      \
473               TC=/sbin/tc \
474            BRCTL=/sbin/brctl    \
475         ISCSIADM=/sbin/iscsiadm \
476         SHOWMOUNT=/usr/sbin/showmount \
477         MOUNT=/bin/mount \
478         UMOUNT=/bin/umount \
479         MKFS=/sbin/mkfs \
480         SHOWMOUNT=/usr/sbin/showmount \
481         IPTABLES_PATH=/usr/sbin/iptables \
482         IP6TABLES_PATH=/usr/sbin/ip6tables \
483         EBTABLES_PATH=/usr/sbin/ebtables \
484         ISCSIADM=/sbin/iscsiadm \
485         DNSMASQ=/usr/sbin/dnsmasq \
486         RADVD=/usr/sbin/radvd \
487         UDEVADM=/sbin/udevadm \
488         MODPROBE=/sbin/modprobe \
489         SCRUB=/usr/bin/scrub \
490         OVSVSCTL=/usr/bin/ovs-vsctl \
491         NUMAD=/usr/bin/numad \
492         SHEEPDOGCLI=/usr/sbin/collie \
493         ZFS=/usr/sbin/zfs \
494         ZPOOL=/usr/sbin/zpool \
495         --disable-silent-rules \
496         %{?with_static_libs:--enable-static} \
497         --with-bash-completion \
498         --with-bash-completions-dir=/etc/bash_completion.d \
499         --with-html-dir=%{_gtkdocdir} \
500         --with-html-subdir=%{name} \
501         --with-init-script=redhat \
502         --with-packager="TLD-Linux" \
503         --with-packager-version="%{name}-%{version}-%{release}.%{_target_cpu}" \
504         --with-qemu-user=qemu \
505         --with-qemu-group=qemu \
506         --with-storage-disk \
507         --with-storage-fs \
508         --with-storage-gluster%{!?with_glusterfs:=no} \
509         --with-storage-iscsi \
510         --with-storage-lvm \
511         --with-storage-mpath \
512         --with-storage-rbd%{!?with_ceph:=no} \
513         --with-storage-scsi \
514         --with-storage-sheepdog \
515         --with-apparmor \
516         --with-audit \
517         --with-avahi \
518         %{__with_without systemtap dtrace} \
519         %{__with_without esx} \
520         --with-driver-modules \
521         --without-hal \
522         %{__with_without hyperv} \
523         --with-blkid \
524         --with-ssh2 \
525         %{__with_without libxl} \
526         %{__with_without lxc} \
527         --with-macvtap \
528         %{__with_without netcf} \
529         --with-numactl \
530         --with-numad \
531         %{__with_without openvz} \
532         %{__with_without phyp} \
533         %{__with_without polkit} \
534         %{__with_without qemu} \
535         %{__with_without sanlock} \
536         --with-sasl \
537         --with-selinux \
538         --with-udev \
539         %{__with_without uml} \
540         %{__with_without vbox vbox %{_libdir}/VirtualBox} \
541         --with-virtualport \
542         %{__with_without vmware} \
543         %{!?with_wireshark:--without-wireshark-dissector} \
544         %{__with_without xenapi} \
545         --x-libraries=%{_libdir}
546
547 %{__make} \
548         AWK=gawk
549
550 %install
551 rm -rf $RPM_BUILD_ROOT
552 install -d $RPM_BUILD_ROOT/etc/{sysconfig,sysctl.d,rc.d/init.d}
553
554 %{__make} install \
555         DEVHELP_DIR=%{_gtkdocdir}/%{name}/devhelp \
556         DESTDIR=$RPM_BUILD_ROOT
557
558 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirtd
559 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlockd
560 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlogd
561
562 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
563 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la \
564         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a}
565 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.la \
566         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.a}
567 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.la \
568         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.a}
569
570 %if %{with sanlock}
571 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.la \
572         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a}
573 %endif
574 %if %{with wireshark}
575 %{__rm} $RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/libvirt.la \
576         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/libvirt.a} \
577 %endif
578
579 rm -rf $RPM_BUILD_ROOT/%{_datadir}/locale/{bal,ilo,kw@kkcor,kw@uccor,kw_GB,tw,wba}
580
581 %find_lang %{name}
582
583 %clean
584 rm -rf $RPM_BUILD_ROOT
585
586 %post   -p /sbin/ldconfig
587 %postun -p /sbin/ldconfig
588
589 %post daemon
590 /sbin/chkconfig --add libvirtd
591 %service libvirtd restart
592 /sbin/chkconfig --add virtlockd
593 %service virtlockd restart
594 /sbin/chkconfig --add virtlogd
595 %service virtlogd restart
596
597 %preun daemon
598 if [ "$1" = "0" ]; then
599         %service -q libvirtd stop
600         /sbin/chkconfig --del libvirtd
601         %service -q virtlockd stop
602         /sbin/chkconfig --del virtlockd
603         %service -q virtlogd stop
604         /sbin/chkconfig --del virtlogd
605 fi
606
607 %post client
608 /sbin/chkconfig --add libvirt-guests
609 %service -n libvirt-guests restart
610 NORESTART=1
611
612 %preun client
613 if [ "$1" = "0" ]; then
614         %service -q libvirt-guests stop
615         /sbin/chkconfig --del libvirt-guests
616 fi
617
618 %files -f %{name}.lang
619 %defattr(644,root,root,755)
620 %doc AUTHORS ChangeLog NEWS README.md
621 %dir %{_sysconfdir}/libvirt
622 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt.conf
623 %attr(755,root,root) %{_libdir}/libvirt.so.*.*.*
624 %attr(755,root,root) %ghost %{_libdir}/libvirt.so.0
625 %attr(755,root,root) %{_libdir}/libvirt-admin.so.*.*.*
626 %attr(755,root,root) %ghost %{_libdir}/libvirt-admin.so.0
627 %if %{with lxc}
628 %attr(755,root,root) %{_libdir}/libvirt-lxc.so.*.*.*
629 %attr(755,root,root) %ghost %{_libdir}/libvirt-lxc.so.0
630 %endif
631 %attr(755,root,root) %{_libdir}/libvirt-qemu.so.*.*.*
632 %attr(755,root,root) %ghost %{_libdir}/libvirt-qemu.so.0
633
634 # NSS modules
635 %attr(755,root,root) %{_libdir}/libnss_libvirt.so.2
636 %attr(755,root,root) %{_libdir}/libnss_libvirt_guest.so.2
637
638 %dir %{_libdir}/libvirt
639 %dir %{_datadir}/libvirt
640
641 %files -n bash-completion-%{name}
642 %defattr(644,root,root,755)
643 /etc/bash_completion.d/virsh
644 /etc/bash_completion.d/virt-admin
645 /etc/bash_completion.d/vsh
646
647 %files devel
648 %defattr(644,root,root,755)
649 %attr(755,root,root) %{_libdir}/libvirt.so
650 %attr(755,root,root) %{_libdir}/libvirt-admin.so
651 %{?with_lxc:%attr(755,root,root) %{_libdir}/libvirt-lxc.so}
652 %attr(755,root,root) %{_libdir}/libvirt-qemu.so
653 %{_datadir}/%{name}/api
654 %{_gtkdocdir}/%{name}
655 %{_includedir}/%{name}
656 %{_pkgconfigdir}/libvirt.pc
657 %{_pkgconfigdir}/libvirt-admin.pc
658 %{?with_lxc:%{_pkgconfigdir}/libvirt-lxc.pc}
659 %{_pkgconfigdir}/libvirt-qemu.pc
660 %{_mandir}/man7/virkeycode-*.7*
661 %{_mandir}/man7/virkeyname-*.7*
662
663 %files static
664 %defattr(644,root,root,755)
665 %{_libdir}/libvirt.a
666 %{_libdir}/libvirt-admin.a
667 %{?with_lxc:%{_libdir}/libvirt-lxc.a}
668 %{_libdir}/libvirt-qemu.a
669
670 %if %{with sanlock}
671 %files lock-sanlock
672 %defattr(644,root,root,755)
673 %attr(755,root,root) %{_sbindir}/virt-sanlock-cleanup
674 %attr(755,root,root) %{_libexecdir}/libvirt_sanlock_helper
675 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/sanlock.so
676 %{_datadir}/augeas/lenses/libvirt_sanlock.aug
677 %if %{with qemu}
678 %{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
679 %endif
680 %dir /var/lib/libvirt/sanlock
681 %{_mandir}/man8/virt-sanlock-cleanup.8*
682 %endif
683
684 %files daemon
685 %defattr(644,root,root,755)
686 %doc docs/*.xml
687 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/nwfilter
688 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu
689 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks
690 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks/autostart
691 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirtd.conf
692 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlockd.conf
693 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt-admin.conf
694 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlogd.conf
695 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/default.xml
696 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
697 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/nwfilter/*.xml
698 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/libvirt.conf
699 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirtd
700 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlockd
701 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlogd
702 %attr(754,root,root) /etc/rc.d/init.d/libvirtd
703 %attr(754,root,root) /etc/rc.d/init.d/virtlockd
704 %attr(754,root,root) /etc/rc.d/init.d/virtlogd
705 %config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-libvirtd.conf
706 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd
707 %attr(755,root,root) %{_libexecdir}/libvirt_iohelper
708 %attr(755,root,root) %{_libexecdir}/libvirt_parthelper
709 %attr(755,root,root) %{_libexecdir}/virt-aa-helper
710 %attr(755,root,root) %{_sbindir}/libvirtd
711 %attr(755,root,root) %{_sbindir}/virtlockd
712 %attr(755,root,root) %{_sbindir}/virtlogd
713 %{_datadir}/augeas/lenses/libvirtd.aug
714 %{_datadir}/augeas/lenses/libvirt_lockd.aug
715 %{_datadir}/augeas/lenses/virtlockd.aug
716 %{_datadir}/augeas/lenses/virtlogd.aug
717 %{_datadir}/augeas/lenses/tests/test_libvirtd.aug
718 %{?with_qemu:%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug}
719 %{_datadir}/augeas/lenses/tests/test_virtlockd.aug
720 %{_datadir}/augeas/lenses/tests/test_virtlogd.aug
721 %if %{with polkit}
722 %{_datadir}/polkit-1/actions/org.libvirt.api.policy
723 %{_datadir}/polkit-1/actions/org.libvirt.unix.policy
724 %{_datadir}/polkit-1/rules.d/50-libvirt.rules
725 %endif
726 %{_mandir}/man8/libvirtd.8*
727 %{_mandir}/man8/virtlockd.8*
728 %{_mandir}/man8/virtlogd.8*
729 %dir /var/lib/libvirt
730 %dir /var/lib/libvirt/dnsmasq
731 %attr(711,root,root) %dir /var/lib/libvirt/boot
732 %attr(700,root,root) %dir /var/lib/libvirt/network
733 %attr(711,root,root) %dir /var/lib/libvirt/images
734 %attr(711,root,root) %dir /var/lib/libvirt/filesystems
735 %attr(700,root,root) %dir /var/log/libvirt
736 %attr(711,root,root) %dir /var/cache/libvirt
737 %dir /var/run/libvirt
738 %dir /var/run/libvirt/network
739 %attr(755,root,root) %{_libexecdir}/libvirt_leaseshelper
740 %dir %{_libdir}/libvirt/connection-driver
741 %{_datadir}/libvirt/cpu_map
742 %{?with_netcf:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so}
743 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
744 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
745 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
746 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
747 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
748 %{?with_vbox:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so}
749 %dir %{_libdir}/libvirt/lock-driver
750 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/lockd.so
751 %dir %{_libdir}/libvirt/storage-backend
752 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
753 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
754 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
755 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
756 # mpath requires libdevmapper, but libvirt itself requires it too
757 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
758 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
759 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_sheepdog.so
760 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so
761 %dir %{_libdir}/libvirt/storage-file
762 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
763
764 %if %{with glusterfs}
765 %files daemon-storage-gluster
766 %defattr(644,root,root,755)
767 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_gluster.so
768 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_gluster.so
769 %endif
770
771 %if %{with ceph}
772 %files daemon-storage-rbd
773 %defattr(644,root,root,755)
774 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
775 %endif
776
777 %if %{with libxl}
778 %files daemon-libxl
779 %defattr(644,root,root,755)
780 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl.conf
781 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-lockd.conf
782 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-sanlock.conf}
783 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.libxl
784 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
785 %{_datadir}/augeas/lenses/libvirtd_libxl.aug
786 %{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
787 %attr(700,root,root) %dir /var/lib/libvirt/libxl
788 %attr(700,root,root) %dir /var/run/libvirt/libxl
789 %attr(700,root,root) %dir /var/log/libvirt/libxl
790 %endif
791
792 %if %{with lxc}
793 %files daemon-lxc
794 %defattr(644,root,root,755)
795 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/lxc.conf
796 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.lxc
797 %attr(700,root,root) %dir /var/lib/libvirt/lxc
798 %attr(700,root,root) %dir /var/run/libvirt/lxc
799 %attr(700,root,root) %dir /var/log/libvirt/lxc
800 %{_datadir}/augeas/lenses/libvirtd_lxc.aug
801 %{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
802 %attr(755,root,root) %{_libexecdir}/libvirt_lxc
803 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
804 %endif
805
806 %if %{with qemu}
807 %files daemon-qemu
808 %defattr(644,root,root,755)
809 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu.conf
810 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-lockd.conf
811 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-sanlock.conf}
812 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.qemu
813 %attr(750,qemu,qemu) %dir /var/cache/libvirt/qemu
814 %attr(750,qemu,qemu) %dir /var/lib/libvirt/qemu
815 %attr(700,root,root) %dir /var/log/libvirt/qemu
816 %attr(700,root,root) %dir /var/run/libvirt/qemu
817 %{_datadir}/augeas/lenses/libvirtd_qemu.aug
818 %{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
819 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
820 %endif
821
822 %if %{with uml}
823 %files daemon-uml
824 %defattr(644,root,root,755)
825 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_uml.so
826 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.uml
827 %attr(700,root,root) %dir /var/lib/libvirt/uml
828 %attr(700,root,root) %dir /var/run/libvirt/uml
829 %attr(700,root,root) %dir /var/log/libvirt/uml
830 %endif
831
832 %files client
833 %defattr(644,root,root,755)
834 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirt-guests
835 %attr(754,root,root) /etc/rc.d/init.d/libvirt-guests
836 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virt-login-shell.conf
837 %attr(755,root,root) %{_bindir}/virsh
838 %attr(755,root,root) %{_bindir}/virt-admin
839 %attr(755,root,root) %{_bindir}/virt-host-validate
840 %attr(4755,root,root) %{_bindir}/virt-login-shell
841 %attr(755,root,root) %{_bindir}/virt-xml-validate
842 %attr(755,root,root) %{_bindir}/virt-pki-validate
843 %attr(754,root,root) %{_libexecdir}/libvirt-guests.sh
844 %{_mandir}/man1/virsh.1*
845 %{_mandir}/man1/virt-admin.1*
846 %{_mandir}/man1/virt-host-validate.1*
847 %{_mandir}/man1/virt-login-shell.1*
848 %{_mandir}/man1/virt-xml-validate.1*
849 %{_mandir}/man1/virt-pki-validate.1*
850 %dir %{_datadir}/libvirt/schemas
851 %{_datadir}/libvirt/schemas/basictypes.rng
852 %{_datadir}/libvirt/schemas/capability.rng
853 %{_datadir}/libvirt/schemas/cputypes.rng
854 %{_datadir}/libvirt/schemas/domain.rng
855 %{_datadir}/libvirt/schemas/domaincaps.rng
856 %{_datadir}/libvirt/schemas/domaincommon.rng
857 %{_datadir}/libvirt/schemas/domainsnapshot.rng
858 %{_datadir}/libvirt/schemas/interface.rng
859 %{_datadir}/libvirt/schemas/network.rng
860 %{_datadir}/libvirt/schemas/networkcommon.rng
861 %{_datadir}/libvirt/schemas/nodedev.rng
862 %{_datadir}/libvirt/schemas/nwfilter.rng
863 %{_datadir}/libvirt/schemas/nwfilter_params.rng
864 %{_datadir}/libvirt/schemas/nwfilterbinding.rng
865 %{_datadir}/libvirt/schemas/secret.rng
866 %{_datadir}/libvirt/schemas/storagecommon.rng
867 %{_datadir}/libvirt/schemas/storagepool.rng
868 %{_datadir}/libvirt/schemas/storagevol.rng
869 # for test driver (built into libvirt)
870 %{_datadir}/libvirt/test-screenshot.png
871
872 %files utils
873 %defattr(644,root,root,755)
874
875 %if %{with systemtap}
876 %files -n systemtap-libvirt
877 %defattr(644,root,root,755)
878 %{_datadir}/systemtap/tapset/libvirt_functions.stp
879 %{_datadir}/systemtap/tapset/libvirt_probes.stp
880 %{?with_qemu:%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp}
881 %endif
882
883 %if %{with wireshark}
884 %files -n wireshark-libvirt
885 %defattr(644,root,root,755)
886 %attr(755,root,root) %{_libdir}/wireshark/plugins/*/libvirt.so
887 %endif