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