Daniel Veillard 5c1d88
# -*- rpm-spec -*-
Daniel Veillard 5c1d88
Daniel P. Berrange a97245
# This spec file assumes you are building on a Fedora or RHEL version
Daniel P. Berrange 0ca715
# that's still supported by the vendor. It may work on other distros
Daniel P. Berrange 0ca715
# or versions, but no effort will be made to ensure that going forward.
Daniel P. Berrange 0ca715
%define min_rhel 6
Daniel P. Berrange 0ca715
%define min_fedora 26
Daniel P. Berrange 0ca715
Daniel P. Berrange 0ca715
%if (0%{?fedora} && 0%{?fedora} >= %{min_fedora}) || (0%{?rhel} && 0%{?rhel} >= %{min_rhel})
Daniel P. Berrange 47ca46
    %define supported_platform 1
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define supported_platform 0
Daniel Veillard ed6c49
%endif
Daniel Veillard ed6c49
Daniel P. Berrange f99eeb
# Default to skipping autoreconf.  Distros can change just this one line
Daniel P. Berrange f99eeb
# (or provide a command-line override) if they backport any patches that
Daniel P. Berrange f99eeb
# touch configure.ac or Makefile.am.
Daniel P. Berrange a4bf27
%{!?enable_autotools:%global enable_autotools 0}
Daniel P. Berrange f99eeb
Daniel P. Berrange 47ca46
# The hypervisor drivers that run in libvirtd
Daniel P. Berrange 47ca46
%define with_qemu          0%{!?_without_qemu:1}
Daniel P. Berrange 47ca46
%define with_lxc           0%{!?_without_lxc:1}
Daniel P. Berrange 47ca46
%define with_uml           0%{!?_without_uml:1}
Daniel P. Berrange 47ca46
%define with_libxl         0%{!?_without_libxl:1}
Daniel P. Berrange 47ca46
%define with_vbox          0%{!?_without_vbox:1}
Mark McLoughlin 86abd5
Daniel P. Berrange e6d978
%define with_qemu_tcg      %{with_qemu}
9f9eae
9f9eae
%define qemu_kvm_arches %{ix86} x86_64
9f9eae
9f9eae
%if 0%{?fedora}
Daniel P. Berrange 47ca46
    %define qemu_kvm_arches %{ix86} x86_64 %{power64} s390x %{arm} aarch64
9f9eae
%endif
9f9eae
9f9eae
%if 0%{?rhel}
9f9eae
    %define with_qemu_tcg 0
9f9eae
    %define qemu_kvm_arches x86_64
611b2e
    %if 0%{?rhel} >= 7
Daniel P. Berrange 89c3fa
        %define qemu_kvm_arches x86_64 %{power64} aarch64 s390x
611b2e
    %endif
Daniel Veillard f5ff4a
%endif
Daniel Veillard f5ff4a
Daniel Veillard f5ff4a
%ifarch %{qemu_kvm_arches}
Daniel P. Berrange 350081
    %define with_qemu_kvm      %{with_qemu}
Daniel P. Berrange e6d978
%else
Daniel P. Berrange 350081
    %define with_qemu_kvm      0
Daniel P. Berrange e6d978
%endif
Daniel P. Berrange e6d978
9f9eae
%if ! %{with_qemu_tcg} && ! %{with_qemu_kvm}
9f9eae
    %define with_qemu 0
9f9eae
%endif
9f9eae
Daniel P. Berrange afe729
# Then the hypervisor drivers that run outside libvirtd, in libvirt.so
Daniel P. Berrange afe729
%define with_openvz        0%{!?_without_openvz:1}
Daniel P. Berrange afe729
%define with_vmware        0%{!?_without_vmware:1}
Mark McLoughlin 86abd5
%define with_phyp          0%{!?_without_phyp:1}
Mark McLoughlin 86abd5
%define with_esx           0%{!?_without_esx:1}
Daniel Veillard a6831c
%define with_hyperv        0%{!?_without_hyperv:1}
Daniel Veillard 3cf75c
Daniel P. Berrange afe729
# Then the secondary host drivers, which run inside libvirtd
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 7335ed
    %define with_storage_rbd      0%{!?_without_storage_rbd:1}
Daniel Veillard 544ad4
%else
Daniel P. Berrange 350081
    %define with_storage_rbd      0
Daniel Veillard 544ad4
%endif
Daniel P. Berrange 47ca46
%if 0%{?fedora}
Daniel P. Berrange 47ca46
    %define with_storage_sheepdog 0%{!?_without_storage_sheepdog:1}
Daniel Veillard f46359
%else
Daniel P. Berrange 350081
    %define with_storage_sheepdog 0
Daniel Veillard f46359
%endif
Daniel P. Berrange 47ca46
%define with_storage_gluster 0%{!?_without_storage_gluster:1}
Daniel P. Berrange 47ca46
%define with_numactl          0%{!?_without_numactl:1}
Daniel P. Berrange 11755d
Daniel P. Berrange 7335ed
# F25+ has zfs-fuse
Daniel P. Berrangé 48941c
%if 0%{?fedora}
Daniel P. Berrange 7335ed
    %define with_storage_zfs      0%{!?_without_storage_zfs:1}
Daniel P. Berrange 7335ed
%else
Daniel P. Berrange 7335ed
    %define with_storage_zfs      0
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange 7335ed
Daniel Veillard 3cf75c
# A few optional bits off by default, we enable later
Daniel Veillard f5ff4a
%define with_fuse          0%{!?_without_fuse:0}
Daniel Veillard ed9e42
%define with_cgconfig      0%{!?_without_cgconfig:0}
Daniel Veillard e79d30
%define with_sanlock       0%{!?_without_sanlock:0}
Daniel Veillard 7069f7
%define with_systemd       0%{!?_without_systemd:0}
Daniel P. Berrange 24e912
%define with_numad         0%{!?_without_numad:0}
Daniel Veillard 7b5483
%define with_firewalld     0%{!?_without_firewalld:0}
Daniel P. Berrange 350081
%define with_libssh2       0%{!?_without_libssh2:0}
Daniel P. Berrange 1b8b75
%define with_wireshark     0%{!?_without_wireshark:0}
Daniel P. Berrange 0b1a01
%define with_libssh        0%{!?_without_libssh:0}
Daniel P. Berrange 0ca715
%define with_bash_completion  0%{!?_without_bash_completion:0}
Daniel P. Berrange f40b46
%define with_pm_utils      1
Mark McLoughlin 2e7812
Daniel Veillard 3cf75c
# Finally set the OS / architecture specific special cases
Daniel Veillard 3cf75c
Mark McLoughlin 67a2f2
# Xen is available only on i386 x86_64 ia64
Peter Robinson 79ae80
%ifnarch %{ix86} x86_64 ia64
Daniel P. Berrange 350081
    %define with_libxl 0
Mark McLoughlin 67a2f2
%endif
Mark McLoughlin 67a2f2
Daniel P. Berrange e80c83
# vbox is available only on i386 x86_64
Daniel P. Berrange e80c83
%ifnarch %{ix86} x86_64
Daniel P. Berrange e80c83
    %define with_vbox 0
Daniel P. Berrange e80c83
%endif
Daniel P. Berrange e80c83
Peter Robinson 459eb4
# Numactl is not available on s390[x] and ARM
Peter Robinson 459eb4
%ifarch s390 s390x %{arm}
Daniel P. Berrange 350081
    %define with_numactl 0
Daniel P. Berrange e29f71
%endif
Daniel Veillard 3cf75c
Daniel P. Berrange 1b8b75
# libgfapi is built only on x86_64 on rhel
Daniel P. Berrange 1b8b75
%ifnarch x86_64
Daniel P. Berrange 47ca46
    %if 0%{?rhel}
Daniel P. Berrange 1b8b75
        %define with_storage_gluster 0
Daniel P. Berrange 1b8b75
    %endif
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
c0a04c
# librados and librbd are built only on x86_64 on rhel
c0a04c
%ifnarch x86_64
c0a04c
    %if 0%{?rhel} >= 7
c0a04c
        %define with_storage_rbd 0
c0a04c
    %endif
c0a04c
%endif
c0a04c
Daniel P. Berrange 7335ed
# zfs-fuse is not available on some architectures
Daniel P. Berrange 7335ed
%ifarch s390 s390x aarch64
Daniel P. Berrange 7335ed
    %define with_storage_zfs 0
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange 7335ed
Daniel P. Berrange 7335ed
Daniel Veillard ed6c49
# RHEL doesn't ship OpenVZ, VBox, UML, PowerHypervisor,
Daniel P. Berrange 4c65f0
# VMware, libxenserver (xenapi), libxenlight (Xen 4.1 and newer),
Laine Stump 38c4b7
# or HyperV.
Daniel Veillard 3cf75c
%if 0%{?rhel}
Daniel P. Berrange 350081
    %define with_openvz 0
Daniel P. Berrange 350081
    %define with_vbox 0
Daniel P. Berrange 350081
    %define with_uml 0
Daniel P. Berrange 350081
    %define with_phyp 0
Daniel P. Berrange 350081
    %define with_vmware 0
Daniel P. Berrange 350081
    %define with_xenapi 0
Daniel P. Berrange 350081
    %define with_libxl 0
Daniel P. Berrange 350081
    %define with_hyperv 0
ee3bf3
    %define with_vz 0
Daniel P. Berrangé 48941c
Daniel P. Berrangé 48941c
    %if 0%{?rhel} > 7
Daniel P. Berrangé 48941c
        %define with_lxc 0
Daniel P. Berrangé 48941c
    %endif
Daniel Veillard 3cf75c
%endif
Daniel Veillard 3cf75c
Daniel Veillard 544ad4
# Fedora 17 / RHEL-7 are first where we use systemd. Although earlier
Daniel Veillard 544ad4
# Fedora has systemd, libvirt still used sysvinit there.
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 350081
    %define with_systemd 1
Daniel P. Berrange f40b46
    %define with_pm_utils 0
Daniel Veillard 7069f7
%endif
Daniel Veillard 7069f7
Daniel Veillard 7b5483
# Fedora 18 / RHEL-7 are first where firewalld support is enabled
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 350081
    %define with_firewalld 1
Daniel Veillard 7b5483
%endif
Daniel Veillard 7b5483
Daniel Veillard f5ff4a
# fuse is used to provide virtualized /proc for LXC
Daniel P. Berrangé 48941c
%if %{with_lxc} && 0%{?rhel} != 6
Daniel P. Berrange 350081
    %define with_fuse      0%{!?_without_fuse:1}
Daniel Veillard f5ff4a
%endif
Daniel Veillard f5ff4a
Daniel Veillard e79d30
# Enable sanlock library for lock management with QEMU
9f9eae
# Sanlock is available only on arches where kvm is available for RHEL
Daniel P. Berrange 47ca46
%if 0%{?fedora}
Daniel P. Berrange 47ca46
    %define with_sanlock 0%{!?_without_sanlock:1}
Daniel Veillard 7069f7
%endif
Daniel P. Berrange 47ca46
%if 0%{?rhel}
9f9eae
    %ifarch %{qemu_kvm_arches}
Daniel P. Berrange 47ca46
        %define with_sanlock 0%{!?_without_sanlock:1}
Daniel P. Berrange 11755d
    %endif
Daniel P. Berrange 11755d
%endif
Daniel Veillard e79d30
Daniel P. Berrange 8cc508
# Enable libssh2 transport for new enough distros
Daniel P. Berrange 47ca46
%if 0%{?fedora}
Daniel P. Berrange 350081
    %define with_libssh2 0%{!?_without_libssh2:1}
Daniel P. Berrange 8cc508
%endif
Daniel P. Berrange 8cc508
Daniel P. Berrange 1b8b75
# Enable wireshark plugins for all distros shipping libvirt 1.2.2 or newer
Daniel P. Berrange a97245
%if 0%{?fedora}
Daniel P. Berrange 2427f8
    %define with_wireshark 0%{!?_without_wireshark:1}
Daniel P. Berrange 2427f8
%endif
Daniel P. Berrangé a88867
%if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrangé a88867
    %define wireshark_plugindir %(pkg-config --variable plugindir wireshark)
Daniel P. Berrangé a88867
%else
Daniel P. Berrangé a88867
    %define wireshark_plugindir %{_libdir}/wireshark/plugins
Daniel P. Berrangé a88867
%endif
Daniel P. Berrange 1b8b75
Daniel P. Berrange 0b1a01
# Enable libssh transport for new enough distros
Daniel P. Berrangé 061231
%if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrange 0b1a01
    %define with_libssh 0%{!?_without_libssh:1}
Daniel P. Berrange 0b1a01
%endif
Daniel P. Berrange 0b1a01
Daniel P. Berrange 0ca715
# Enable bash-completion for new enough distros
Daniel P. Berrange 0ca715
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 0ca715
    %define with_bash_completion  0%{!?_without_bash_completion:1}
Daniel P. Berrange 0ca715
%endif
Daniel P. Berrange 0ca715
Daniel P. Berrangé 6210c4
# Use Python 3 when possible, Python 2 otherwise
Daniel P. Berrangé 6210c4
%if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrangé 6210c4
    %define python python3
Daniel P. Berrangé 6210c4
%else
Daniel P. Berrangé 6210c4
    %define python python2
Daniel P. Berrangé 6210c4
%endif
Daniel P. Berrangé 6210c4
Daniel Veillard c363c7
Daniel P. Berrange e6d978
%if %{with_qemu} || %{with_lxc} || %{with_uml}
Daniel Veillard 8f1637
# numad is used to manage the CPU and memory placement dynamically,
Daniel P. Berrange 24e912
# it's not available on s390[x] and ARM.
Daniel P. Berrange 47ca46
    %ifnarch s390 s390x %{arm}
Daniel P. Berrange 47ca46
        %define with_numad    0%{!?_without_numad:1}
Daniel P. Berrange 350081
    %endif
Daniel Veillard 7e9981
%endif
Daniel Veillard 7e9981
Daniel Veillard ed9e42
# Pull in cgroups config system
Daniel P. Berrange 47ca46
%if %{with_qemu} || %{with_lxc}
Daniel P. Berrange 47ca46
    %define with_cgconfig 0%{!?_without_cgconfig:1}
Daniel Veillard 544ad4
%endif
Daniel Veillard 544ad4
Daniel Veillard 3cf75c
# Force QEMU to run as non-root
Daniel P. Berrange 47ca46
%define qemu_user  qemu
Daniel P. Berrange 47ca46
%define qemu_group  qemu
Daniel Veillard a3e1cc
Daniel Veillard 3cf75c
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 350081
    %define with_systemd_macros 1
Daniel Veillard f5ff4a
%else
Daniel P. Berrange 350081
    %define with_systemd_macros 0
Daniel Veillard f5ff4a
%endif
Daniel Veillard f5ff4a
Daniel Veillard f5ff4a
Daniel P. Berrange 11755d
# RHEL releases provide stable tool chains and so it is safe to turn
Daniel P. Berrange 11755d
# compiler warning into errors without being worried about frequent
Daniel P. Berrange 11755d
# changes in reported warnings
Daniel P. Berrange 11755d
%if 0%{?rhel}
Daniel P. Berrange 11755d
    %define enable_werror --enable-werror
Daniel P. Berrange 9e1193
%else
Daniel P. Berrange 9e1193
    %define enable_werror --disable-werror
Daniel P. Berrange 11755d
%endif
Daniel P. Berrange 11755d
Daniel P. Berrangé 48941c
%if 0%{?fedora}
Daniel P. Berrange fc2ebb
    %define tls_priority "@LIBVIRT,SYSTEM"
Daniel P. Berrange a4bf27
%else
Daniel P. Berrangé 48941c
    %define tls_priority "NORMAL"
Daniel P. Berrange a4bf27
%endif
Daniel P. Berrange a4bf27
Daniel P. Berrange 11755d
Daniel Veillard ed9e42
Summary: Library providing a simple virtualization API
Daniel Veillard e2b90f
Name: libvirt
Daniel P. Berrangé 061231
Version: 4.4.0
Daniel P. Berrangé 6210c4
Release: 1%{?dist}%{?extra_release}
Tom Callaway af1116
License: LGPLv2+
Daniel P. Berrange b73e50
URL: https://libvirt.org/
Daniel Veillard ed6c49
Daniel P. Berrange b73e50
%if %(echo %{version} | grep -q "\.0$"; echo $?) == 1
Daniel P. Berrange 350081
    %define mainturl stable_updates/
Daniel Veillard 8f1637
%endif
Daniel P. Berrange b73e50
Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz
404e58
Daniel P. Berrange 44699d
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange 44699d
Requires: libvirt-daemon-config-network = %{version}-%{release}
Daniel P. Berrange 44699d
Requires: libvirt-daemon-config-nwfilter = %{version}-%{release}
Daniel P. Berrange 47ca46
%if %{with_libxl}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-uml = %{version}-%{release}
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 65efaa
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard f46359
Daniel Veillard f46359
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard f46359
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel P. Berrange 44699d
Requires: libvirt-client = %{version}-%{release}
Daniel P. Berrange b1ac7b
Requires: libvirt-libs = %{version}-%{release}
Daniel Veillard ed6c49
Daniel P. Berrange 44699d
# All build-time requirements. Run-time requirements are
Daniel P. Berrange 44699d
# listed against each sub-RPM
Daniel P. Berrange f99eeb
%if 0%{?enable_autotools}
Daniel P. Berrange f99eeb
BuildRequires: autoconf
Daniel P. Berrange f99eeb
BuildRequires: automake
Daniel Veillard 4e460d
BuildRequires: gettext-devel
Daniel P. Berrange f99eeb
BuildRequires: libtool
Daniel Veillard 4aa9c4
BuildRequires: /usr/bin/pod2man
Daniel P. Berrange f99eeb
%endif
Daniel P. Berrangé 6210c4
BuildRequires: gcc
Daniel P. Berrange a4075e
BuildRequires: git
Daniel P. Berrangé 48941c
%if 0%{?fedora} >= 27 || 0%{?rhel} > 7
Petr Písař a27ace
BuildRequires: perl-interpreter
Daniel P. Berrange 2a9c28
%else
Daniel P. Berrange 2a9c28
BuildRequires: perl
Daniel P. Berrange 2a9c28
%endif
Daniel P. Berrangé 6210c4
BuildRequires: %{python}
Daniel Veillard 7069f7
%if %{with_systemd}
Daniel Veillard 7069f7
BuildRequires: systemd-units
Daniel Veillard 7069f7
%endif
Daniel P. Berrangé 4fd635
%if %{with_libxl}
Daniel Veillard 313e00
BuildRequires: xen-devel
Daniel Veillard 7069f7
%endif
Daniel Veillard ba3d2d
BuildRequires: libxml2-devel
Daniel Veillard ed6c49
BuildRequires: libxslt
Daniel Veillard d55c7f
BuildRequires: readline-devel
Daniel P. Berrange 0ca715
%if %{with_bash_completion}
Daniel P. Berrange 0ca715
BuildRequires: bash-completion >= 2.0
Daniel P. Berrange 0ca715
%endif
Daniel Veillard 609ab7
BuildRequires: ncurses-devel
Daniel Veillard 5c1d88
BuildRequires: gettext
Daniel Veillard c363c7
BuildRequires: libtasn1-devel
Daniel P. Berrange 47ca46
%if (0%{?rhel} && 0%{?rhel} < 7)
Daniel Veillard 000a32
BuildRequires: libgcrypt-devel
Daniel P. Berrange 11755d
%endif
Daniel Veillard c70baa
BuildRequires: gnutls-devel
Daniel P. Berrange 350081
BuildRequires: libattr-devel
Daniel Veillard 4aa9c4
# For pool-build probing for existing pools
Daniel Veillard 4aa9c4
BuildRequires: libblkid-devel >= 2.17
Daniel Veillard ed6c49
# for augparse, optionally used in testing
Daniel Veillard ed6c49
BuildRequires: augeas
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel Veillard 544ad4
BuildRequires: systemd-devel >= 185
Daniel P. Berrange 47ca46
%else
Daniel Veillard ee0273
BuildRequires: libudev-devel >= 145
Daniel Veillard ee0273
%endif
Daniel P. Berrange 47ca46
BuildRequires: libpciaccess-devel >= 0.10.9
Justin M. Forbes 2cac7d
BuildRequires: yajl-devel
Daniel Veillard e79d30
%if %{with_sanlock}
Daniel P. Berrange 8cc508
BuildRequires: sanlock-devel >= 2.4
Daniel P. Berrange 8cc508
%endif
Daniel Veillard 36cab8
BuildRequires: libpcap-devel
Daniel P. Berrange a4bf27
%if 0%{?rhel} && 0%{?rhel} < 7
Daniel P. Berrange a4bf27
BuildRequires: libnl-devel
Daniel P. Berrange a4bf27
%else
Daniel Veillard 4b6ea9
BuildRequires: libnl3-devel
Daniel P. Berrange a4bf27
%endif
Daniel Veillard 5ad8bc
BuildRequires: avahi-devel
Daniel Veillard bf744f
BuildRequires: libselinux-devel
Daniel P. Berrange e8394a
BuildRequires: dnsmasq >= 2.41
Daniel Veillard ed6c49
BuildRequires: iptables
Daniel P. Berrange 47ca46
%if 0%{?rhel} && 0%{?rhel} < 7
Daniel Veillard ed6c49
BuildRequires: iptables-ipv6
Daniel Veillard ed6c49
%endif
Daniel P. Berrange 47ca46
BuildRequires: radvd
Daniel Veillard ed6c49
BuildRequires: ebtables
Daniel Veillard ed6c49
BuildRequires: module-init-tools
Daniel Veillard 4f6679
BuildRequires: cyrus-sasl-devel
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
8ded6f
BuildRequires: polkit >= 0.112
Daniel P. Berrange 47ca46
%else
Daniel P. Berrangé 6210c4
BuildRequires: polkit >= 0.93
Daniel P. Berrange c476c8
%endif
Daniel Veillard bf744f
# For mount/umount in FS driver
Daniel Veillard bf744f
BuildRequires: util-linux
Daniel Veillard bf744f
%if %{with_qemu}
Daniel P. Berrange a74ea3
# For managing ACLs
Daniel P. Berrange a74ea3
BuildRequires: libacl-devel
Daniel Veillard bf744f
# From QEMU RPMs
Daniel Veillard bf744f
BuildRequires: /usr/bin/qemu-img
Daniel Veillard 2b9efc
%endif
Daniel Veillard bf744f
# For LVM drivers
Daniel Veillard bf744f
BuildRequires: lvm2
Daniel Veillard bf744f
# For ISCSI driver
Daniel Veillard bf744f
BuildRequires: iscsi-initiator-utils
Daniel Veillard bf744f
# For disk driver
Daniel Veillard bf744f
BuildRequires: parted-devel
Mark McLoughlin 897506
# For Multipath support
Mark McLoughlin 897506
BuildRequires: device-mapper-devel
Daniel P. Berrange 1b8b75
%if %{with_storage_rbd}
Daniel P. Berrange b73e50
    %if 0%{?fedora} || 0%{?rhel} >= 7
c0a04c
BuildRequires: librados2-devel
c0a04c
BuildRequires: librbd1-devel
c0a04c
    %else
Daniel Veillard 544ad4
BuildRequires: ceph-devel
c0a04c
    %endif
Daniel Veillard 3cf75c
%endif
Daniel P. Berrange 8c9e40
%if %{with_storage_gluster}
Daniel P. Berrange 8c9e40
BuildRequires: glusterfs-api-devel >= 3.4.1
Daniel P. Berrange 8c9e40
BuildRequires: glusterfs-devel >= 3.4.1
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_storage_sheepdog}
Daniel P. Berrange 47ca46
BuildRequires: sheepdog
Daniel P. Berrange 8c9e40
%endif
Daniel P. Berrange 7335ed
%if %{with_storage_zfs}
Daniel P. Berrange 7335ed
# Support any conforming implementation of zfs. On stock Fedora
Daniel P. Berrange 7335ed
# this is zfs-fuse, but could be zfsonlinux upstream RPMs
Daniel P. Berrange 7335ed
BuildRequires: /sbin/zfs
Daniel P. Berrange 7335ed
BuildRequires: /sbin/zpool
Daniel P. Berrange 7335ed
%endif
Daniel Veillard f5edf7
%if %{with_numactl}
Daniel Veillard 958f1c
# For QEMU/LXC numa info
Daniel Veillard 958f1c
BuildRequires: numactl-devel
Daniel Veillard f5edf7
%endif
Daniel Veillard 705fd2
BuildRequires: libcap-ng-devel >= 0.5.0
Daniel Veillard f5ff4a
%if %{with_fuse}
Daniel Veillard f5ff4a
BuildRequires: fuse-devel >= 2.8.6
Daniel Veillard f5ff4a
%endif
Daniel P. Berrange 350081
%if %{with_phyp} || %{with_libssh2}
Daniel P. Berrange 8cc508
BuildRequires: libssh2-devel >= 1.3.0
Daniel P. Berrange 8cc508
%endif
Daniel Veillard 4b6ea9
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel Veillard 4b6ea9
BuildRequires: netcf-devel >= 0.2.2
Daniel P. Berrange 47ca46
%else
Laine Stump ee9521
BuildRequires: netcf-devel >= 0.1.8
Daniel Veillard 4b6ea9
%endif
Daniel Veillard 7e9981
%if %{with_esx}
Daniel Veillard 7e9981
BuildRequires: libcurl-devel
Daniel Veillard 7e9981
%endif
Daniel Veillard a6831c
%if %{with_hyperv}
Daniel Veillard a6831c
BuildRequires: libwsman-devel >= 2.2.3
Daniel Veillard a6831c
%endif
Daniel Veillard fca1fc
BuildRequires: audit-libs-devel
Daniel Veillard ed9e42
# we need /usr/sbin/dtrace
Daniel Veillard ed9e42
BuildRequires: systemtap-sdt-devel
Daniel Veillard ed9e42
Daniel Veillard ed6c49
# For mount/umount in FS driver
Daniel Veillard ed6c49
BuildRequires: util-linux
Daniel Veillard ed6c49
# For showmount in FS driver (netfs discovery)
Daniel Veillard ed6c49
BuildRequires: nfs-utils
Daniel P. Berrange 36d558
Daniel P. Berrange 50e253
# Communication with the firewall and polkit daemons use DBus
Daniel Veillard 963754
BuildRequires: dbus-devel
Daniel Veillard 963754
Daniel Veillard 31802d
# Fedora build root suckage
Daniel Veillard 31802d
BuildRequires: gawk
Daniel Veillard 31802d
Daniel P. Berrange 336a93
# For storage wiping with different algorithms
Daniel P. Berrange 336a93
BuildRequires: scrub
Daniel P. Berrange 336a93
Daniel P. Berrange 24e912
%if %{with_numad}
Daniel P. Berrange 24e912
BuildRequires: numad
Daniel P. Berrange 24e912
%endif
Daniel P. Berrange 24e912
Daniel P. Berrange 1b8b75
%if %{with_wireshark}
Daniel P. Berrange b1ac7b
BuildRequires: wireshark-devel >= 2.1.0
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
Daniel P. Berrange 0b1a01
%if %{with_libssh}
Daniel P. Berrange 0b1a01
BuildRequires: libssh-devel >= 0.7.0
Daniel P. Berrange 0b1a01
%endif
Daniel P. Berrange 0b1a01
Daniel P. Berrange 34da93
%if 0%{?fedora} > 27 || 0%{?rhel} > 7
Daniel P. Berrange 208f50
BuildRequires: rpcgen
Daniel P. Berrange 3f19d4
BuildRequires: libtirpc-devel
Daniel P. Berrange 208f50
%endif
Daniel P. Berrange 208f50
Daniel Veillard 544ad4
Provides: bundled(gnulib)
Daniel Veillard 544ad4
Daniel Veillard e2b90f
%description
Daniel Veillard bf744f
Libvirt is a C toolkit to interact with the virtualization capabilities
Daniel Veillard a3e1cc
of recent versions of Linux (and other OSes). The main package includes
Daniel Veillard a3e1cc
the libvirtd server exporting the virtualization support.
Daniel Veillard a3e1cc
Daniel P. Berrange 96a520
%package docs
Daniel P. Berrange 96a520
Summary: API reference and website documentation
Daniel P. Berrange 96a520
Daniel P. Berrange 96a520
%description docs
Daniel P. Berrange 96a520
Includes the API reference for the libvirt C library, and a complete
Daniel P. Berrange 96a520
copy of the libvirt.org website documentation.
Daniel P. Berrange 96a520
Daniel P. Berrange 44699d
%package daemon
Daniel P. Berrange 44699d
Summary: Server side daemon and supporting files for libvirt library
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
# All runtime requirements for the libvirt package (runtime requrements
Daniel P. Berrange 44699d
# for subpackages are listed later in those subpackages)
Daniel P. Berrange 44699d
Daniel P. Berrange b1ac7b
# The client side, i.e. shared libs are in a subpackage
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
# for modprobe of pci devices
Daniel P. Berrange 44699d
Requires: module-init-tools
Daniel P. Berrangé 061231
Daniel P. Berrange 44699d
# for /sbin/ip & /sbin/tc
Daniel P. Berrange 44699d
Requires: iproute
Daniel P. Berrangé 061231
# tc is provided by iproute-tc since at least Fedora 26
Daniel P. Berrangé 061231
%if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrangé 061231
Requires: iproute-tc
Daniel P. Berrangé 061231
%endif
Daniel P. Berrangé 061231
Daniel P. Berrange 44699d
Requires: avahi-libs
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
9f9eae
Requires: polkit >= 0.112
Daniel P. Berrange 47ca46
%else
9f9eae
Requires: polkit >= 0.93
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_cgconfig}
Daniel P. Berrange 44699d
Requires: libcgroup
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%ifarch %{ix86} x86_64 ia64
Daniel P. Berrange 44699d
# For virConnectGetSysinfo
Daniel P. Berrange 44699d
Requires: dmidecode
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 44699d
# For service management
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel P. Berrange 44699d
Requires(post): systemd-units
Daniel P. Berrange 44699d
Requires(post): systemd-sysv
Daniel P. Berrange 44699d
Requires(preun): systemd-units
Daniel P. Berrange 44699d
Requires(postun): systemd-units
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
%if %{with_numad}
Daniel P. Berrange 44699d
Requires: numad
Daniel P. Berrange 47ca46
%endif
Daniel Veillard f5ff4a
# libvirtd depends on 'messagebus' service
Daniel Veillard f5ff4a
Requires: dbus
660e01
# For uid creation during pre
660e01
Requires(pre): shadow-utils
f7763b
Daniel P. Berrange 44699d
%description daemon
Daniel P. Berrange 44699d
Server side daemon required to manage the virtualization capabilities
Daniel P. Berrange 44699d
of recent versions of Linux. Requires a hypervisor specific sub-RPM
Daniel P. Berrange 44699d
for specific drivers.
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
%package daemon-config-network
Daniel P. Berrange 44699d
Summary: Default configuration files for the libvirtd daemon
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange 1b8b75
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
%description daemon-config-network
Daniel P. Berrange 44699d
Default configuration files for setting up NAT based networking
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
%package daemon-config-nwfilter
Daniel P. Berrange 44699d
Summary: Network filter configuration files for the libvirtd daemon
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange 1b8b75
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
%description daemon-config-nwfilter
Daniel P. Berrange 44699d
Network filter configuration files for cleaning guest traffic
Daniel P. Berrange e6d978
Daniel Veillard 544ad4
%package daemon-driver-network
Daniel Veillard 544ad4
Summary: Network driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard c5c28b
Requires: dnsmasq >= 2.41
Daniel Veillard c5c28b
Requires: radvd
Daniel Veillard c5c28b
Requires: iptables
Daniel P. Berrange 47ca46
%if 0%{?rhel} && 0%{?rhel} < 7
Daniel Veillard c5c28b
Requires: iptables-ipv6
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-network
Daniel Veillard 544ad4
The network driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the virtual network APIs using the Linux
Daniel Veillard 544ad4
bridge capabilities.
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%package daemon-driver-nwfilter
Daniel Veillard 544ad4
Summary: Nwfilter driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard c5c28b
Requires: iptables
Daniel P. Berrange 47ca46
%if 0%{?rhel} && 0%{?rhel} < 7
Daniel Veillard c5c28b
Requires: iptables-ipv6
Daniel P. Berrange 47ca46
%endif
Daniel Veillard c5c28b
Requires: ebtables
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-nwfilter
Daniel Veillard 544ad4
The nwfilter driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the firewall APIs using the ebtables,
Daniel Veillard 544ad4
iptables and ip6tables capabilities
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%package daemon-driver-nodedev
Daniel Veillard 544ad4
Summary: Nodedev driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard c5c28b
# needed for device enumeration
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel Veillard c5c28b
Requires: systemd >= 185
Daniel P. Berrange 47ca46
%else
Daniel Veillard c5c28b
Requires: udev >= 145
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-nodedev
Daniel Veillard 544ad4
The nodedev driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the node device APIs using the udev
Daniel Veillard 544ad4
capabilities.
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%package daemon-driver-interface
Daniel Veillard 544ad4
Summary: Interface driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange 47ca46
%if (0%{?fedora} || 0%{?rhel} >= 7)
Daniel Veillard c5c28b
Requires: netcf-libs >= 0.2.2
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-interface
Daniel Veillard 544ad4
The interface driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the network interface APIs using the
Daniel Veillard 544ad4
netcf library
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%package daemon-driver-secret
Daniel Veillard 544ad4
Summary: Secret driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-secret
Daniel Veillard 544ad4
The secret driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the secret key APIs.
Daniel Veillard 544ad4
Daniel P. Berrange a74ea3
%package daemon-driver-storage-core
Daniel P. Berrange a74ea3
Summary: Storage driver plugin including base backends for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard c5c28b
Requires: nfs-utils
Daniel Veillard c5c28b
# For mkfs
Daniel Veillard c5c28b
Requires: util-linux
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel Veillard c5c28b
# From QEMU RPMs
Daniel Veillard c5c28b
Requires: /usr/bin/qemu-img
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel P. Berrange a74ea3
%description daemon-driver-storage-core
Daniel P. Berrange a74ea3
The storage driver plugin for the libvirtd daemon, providing
Daniel P. Berrange a74ea3
an implementation of the storage APIs using files, local disks, LVM, SCSI,
Daniel P. Berrange a74ea3
iSCSI, and multipath storage.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%package daemon-driver-storage-logical
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for lvm volumes
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: lvm2
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-logical
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for block
Daniel P. Berrange a74ea3
volumes using lvm.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%package daemon-driver-storage-disk
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for disk
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: parted
Daniel P. Berrange a74ea3
Requires: device-mapper
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-disk
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for block
Daniel P. Berrange a74ea3
volumes using the host disks.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%package daemon-driver-storage-scsi
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for local scsi devices
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-scsi
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for scsi
Daniel P. Berrange a74ea3
host devices.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%package daemon-driver-storage-iscsi
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for iscsi
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: iscsi-initiator-utils
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-iscsi
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for iscsi
Daniel P. Berrange a74ea3
volumes using the host iscsi stack.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%package daemon-driver-storage-mpath
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for multipath volumes
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: device-mapper
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-mpath
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for
Daniel P. Berrange a74ea3
multipath storage using device mapper.
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_gluster}
Daniel P. Berrange a74ea3
%package daemon-driver-storage-gluster
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for gluster
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
    %if 0%{?fedora}
Daniel P. Berrange a74ea3
Requires: glusterfs-client >= 2.0.1
Daniel P. Berrange a74ea3
    %endif
Daniel P. Berrange a74ea3
    %if (0%{?fedora} || 0%{?with_storage_gluster})
Daniel P. Berrange a74ea3
Requires: /usr/sbin/gluster
Daniel P. Berrange a74ea3
    %endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-gluster
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for gluster
Daniel P. Berrange a74ea3
volumes using libgfapi.
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_rbd}
Daniel P. Berrange a74ea3
%package daemon-driver-storage-rbd
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for rbd
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-rbd
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for rbd
Daniel P. Berrange a74ea3
volumes using the ceph protocol.
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_sheepdog}
Daniel P. Berrange a74ea3
%package daemon-driver-storage-sheepdog
Daniel P. Berrange a74ea3
Summary: Storage driver plugin for sheepdog
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: sheepdog
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%description daemon-driver-storage-sheepdog
Daniel P. Berrange a74ea3
The storage driver backend adding implementation of the storage APIs for
Daniel P. Berrange a74ea3
sheepdog volumes using.
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
Daniel P. Berrange 7335ed
%if %{with_storage_zfs}
Daniel P. Berrange 7335ed
%package daemon-driver-storage-zfs
Daniel P. Berrange 7335ed
Summary: Storage driver plugin for ZFS
Daniel P. Berrange 7335ed
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange 7335ed
# Support any conforming implementation of zfs
Daniel P. Berrange 7335ed
Requires: /sbin/zfs
Daniel P. Berrange 7335ed
Requires: /sbin/zpool
Daniel P. Berrange 7335ed
Daniel P. Berrange 7335ed
%description daemon-driver-storage-zfs
Daniel P. Berrange 7335ed
The storage driver backend adding implementation of the storage APIs for
Daniel P. Berrange 7335ed
ZFS volumes.
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange 7335ed
Daniel P. Berrange 7335ed
Daniel P. Berrange a74ea3
%package daemon-driver-storage
Daniel P. Berrange a74ea3
Summary: Storage driver plugin including all backends for the libvirtd daemon
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-disk = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-logical = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-scsi = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-iscsi = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-mpath = %{version}-%{release}
Daniel P. Berrange a74ea3
%if %{with_storage_gluster}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-gluster = %{version}-%{release}
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
%if %{with_storage_rbd}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-rbd = %{version}-%{release}
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
%if %{with_storage_sheepdog}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-sheepdog = %{version}-%{release}
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange 7335ed
%if %{with_storage_zfs}
Daniel P. Berrange 7335ed
Requires: libvirt-daemon-driver-storage-zfs = %{version}-%{release}
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange a74ea3
Daniel Veillard 544ad4
%description daemon-driver-storage
Daniel Veillard 544ad4
The storage driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the storage APIs using LVM, iSCSI,
Daniel Veillard 544ad4
parted and more.
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel Veillard 544ad4
%package daemon-driver-qemu
Daniel P. Berrange 04cb28
Summary: QEMU driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
# There really is a hard cross-driver dependency here
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel P. Berrange a74ea3
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Daniel Veillard c5c28b
Requires: /usr/bin/qemu-img
Daniel Veillard c5c28b
# For image compression
Daniel Veillard c5c28b
Requires: gzip
Daniel Veillard c5c28b
Requires: bzip2
Daniel Veillard c5c28b
Requires: lzop
Daniel Veillard c5c28b
Requires: xz
Daniel P. Berrangé 48941c
    %if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrange 4e2aab
Requires: systemd-container
Daniel P. Berrange b1ac7b
    %endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-qemu
Daniel Veillard 544ad4
The qemu driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the hypervisor driver APIs using
Daniel Veillard 544ad4
QEMU
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel Veillard 544ad4
%package daemon-driver-lxc
Daniel Veillard 544ad4
Summary: LXC driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
# There really is a hard cross-driver dependency here
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel P. Berrangé 48941c
    %if 0%{?fedora} || 0%{?rhel} > 7
Daniel P. Berrange 4e2aab
Requires: systemd-container
Daniel P. Berrange b1ac7b
    %endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-lxc
Daniel Veillard 544ad4
The LXC driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the hypervisor driver APIs using
Daniel Veillard 544ad4
the Linux kernel
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel Veillard 544ad4
%package daemon-driver-uml
Daniel Veillard 544ad4
Summary: Uml driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-uml
Daniel Veillard 544ad4
The UML driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the hypervisor driver APIs using
Daniel Veillard 544ad4
User Mode Linux
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange e80c83
%package daemon-driver-vbox
Daniel P. Berrange e80c83
Summary: VirtualBox driver plugin for the libvirtd daemon
Daniel P. Berrange e80c83
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange e80c83
Daniel P. Berrange e80c83
%description daemon-driver-vbox
Daniel P. Berrange e80c83
The vbox driver plugin for the libvirtd daemon, providing
Daniel P. Berrange e80c83
an implementation of the hypervisor driver APIs using
Daniel P. Berrange e80c83
VirtualBox
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e80c83
Daniel P. Berrange e80c83
Daniel P. Berrange 47ca46
%if %{with_libxl}
Daniel Veillard 544ad4
%package daemon-driver-libxl
Daniel Veillard 544ad4
Summary: Libxl driver plugin for the libvirtd daemon
Daniel Veillard 544ad4
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrangé 4fd635
Obsoletes: libvirt-daemon-driver-xen < 4.3.0
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%description daemon-driver-libxl
Daniel Veillard 544ad4
The Libxl driver plugin for the libvirtd daemon, providing
Daniel Veillard 544ad4
an implementation of the hypervisor driver APIs using
Daniel Veillard 544ad4
Libxl
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel Veillard 544ad4
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_qemu_tcg}
Daniel P. Berrange e6d978
%package daemon-qemu
Daniel P. Berrange e6d978
Summary: Server side daemon & driver required to run QEMU guests
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e6d978
Requires: qemu
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
%description daemon-qemu
Daniel P. Berrange e6d978
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e6d978
capabilities of the QEMU TCG emulators
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_qemu_kvm}
Daniel P. Berrange e6d978
%package daemon-kvm
Daniel P. Berrange e6d978
Summary: Server side daemon & driver required to run KVM guests
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e6d978
Requires: qemu-kvm
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
%description daemon-kvm
Daniel P. Berrange e6d978
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e6d978
capabilities of the KVM hypervisor
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel P. Berrange e6d978
%package daemon-lxc
Daniel P. Berrange e6d978
Summary: Server side daemon & driver required to run LXC guests
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
%description daemon-lxc
Daniel P. Berrange e6d978
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e6d978
capabilities of LXC
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel P. Berrange e6d978
%package daemon-uml
Daniel P. Berrange e6d978
Summary: Server side daemon & driver required to run UML guests
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Requires: libvirt-daemon = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-uml = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e6d978
# There are no UML kernel RPMs in Fedora/RHEL to depend on.
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
%description daemon-uml
Daniel P. Berrange e6d978
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e6d978
capabilities of UML
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Daniel P. Berrangé 4fd635
%if %{with_libxl}
Daniel P. Berrange e6d978
%package daemon-xen
Daniel P. Berrange e6d978
Summary: Server side daemon & driver required to run XEN guests
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange 47ca46
    %if %{with_libxl}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
Daniel P. Berrange 47ca46
    %endif
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel Veillard 544ad4
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e6d978
Requires: xen
Daniel P. Berrange e6d978
Daniel P. Berrange e6d978
%description daemon-xen
Daniel P. Berrange e6d978
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e6d978
capabilities of XEN
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e80c83
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange e80c83
%package daemon-vbox
Daniel P. Berrange e80c83
Summary: Server side daemon & driver required to run VirtualBox guests
Daniel P. Berrange e80c83
Daniel P. Berrange e80c83
Requires: libvirt-daemon = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Daniel P. Berrange e80c83
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Daniel P. Berrange e80c83
Daniel P. Berrange e80c83
%description daemon-vbox
Daniel P. Berrange e80c83
Server side daemon and driver required to manage the virtualization
Daniel P. Berrange e80c83
capabilities of VirtualBox
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 44699d
Daniel Veillard a3e1cc
%package client
Daniel P. Berrange b1ac7b
Summary: Client side utilities of the libvirt library
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel Veillard a3e1cc
Requires: readline
Daniel Veillard a3e1cc
Requires: ncurses
Daniel P. Berrange e80c83
# Needed by /usr/libexec/libvirt-guests.sh script.
Daniel Veillard ed6c49
Requires: gettext
Daniel Veillard ed6c49
# Needed by virt-pki-validate script.
Daniel Veillard ed6c49
Requires: gnutls-utils
Daniel P. Berrange f40b46
%if %{with_pm_utils}
Daniel Veillard 7069f7
# Needed for probing the power management features of the host.
Daniel Veillard 7069f7
Requires: pm-utils
Daniel P. Berrange f40b46
%endif
Daniel P. Berrangé 48941c
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
Requires: %{name}-bash-completion = %{version}-%{release}
Daniel P. Berrangé 48941c
%endif
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%description client
Daniel P. Berrange b1ac7b
The client binaries needed to access the virtualization
Daniel P. Berrange b1ac7b
capabilities of recent versions of Linux (and other OSes).
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%package libs
Daniel P. Berrange b1ac7b
Summary: Client side libraries
Daniel P. Berrange b1ac7b
# So remote clients can access libvirt over SSH tunnel
Daniel P. Berrange b1ac7b
# (client invokes 'nc' against the UNIX socket on the server)
Daniel P. Berrange b1ac7b
Requires: nc
Daniel Veillard a3e1cc
Requires: cyrus-sasl
Daniel P. Berrange 04cb28
# Needed by default sasl.conf - no onerous extra deps, since
Daniel P. Berrange 04cb28
# 100's of other things on a system already pull in krb5-libs
Daniel P. Berrange 04cb28
Requires: cyrus-sasl-gssapi
Daniel Veillard a3e1cc
Daniel P. Berrange b1ac7b
%description libs
Daniel P. Berrange b1ac7b
Shared libraries for accessing the libvirt daemon.
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%package admin
Daniel P. Berrange b1ac7b
Summary: Set of tools to control libvirt daemon
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel P. Berrange b1ac7b
Requires: readline
Daniel P. Berrangé 48941c
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
Requires: %{name}-bash-completion = %{version}-%{release}
Daniel P. Berrangé 48941c
%endif
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%description admin
Daniel P. Berrange b1ac7b
The client side utilities to control the libvirt daemon.
Daniel Veillard a3e1cc
Daniel P. Berrangé 48941c
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
%package bash-completion
Daniel P. Berrangé 48941c
Summary: Bash completion script
Daniel P. Berrangé 48941c
Daniel P. Berrangé 48941c
%description bash-completion
Daniel P. Berrangé 48941c
Bash completion script stub.
Daniel P. Berrangé 48941c
%endif
Daniel P. Berrangé 48941c
Daniel P. Berrange 1b8b75
%if %{with_wireshark}
Daniel P. Berrange 1b8b75
%package wireshark
Daniel P. Berrange 1b8b75
Summary: Wireshark dissector plugin for libvirt RPC transactions
Daniel P. Berrange 281508
Requires: wireshark >= 1.12.6-4
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel P. Berrange 1b8b75
Daniel P. Berrange 1b8b75
%description wireshark
Daniel P. Berrange 1b8b75
Wireshark dissector plugin for better analysis of libvirt RPC traffic.
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
Daniel Veillard c5c28b
%if %{with_lxc}
Daniel Veillard c5c28b
%package login-shell
Daniel Veillard c5c28b
Summary: Login shell for connecting users to an LXC container
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel Veillard c5c28b
Daniel Veillard c5c28b
%description login-shell
Daniel Veillard c5c28b
Provides the set-uid virt-login-shell binary that is used to
Daniel Veillard c5c28b
connect a user to an LXC container when they login, by switching
Daniel Veillard c5c28b
namespaces.
Daniel Veillard c5c28b
%endif
Daniel Veillard c5c28b
Daniel Veillard e2b90f
%package devel
Daniel Veillard e2b90f
Summary: Libraries, includes, etc. to compile with the libvirt library
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel Veillard 68efef
Requires: pkgconfig
Daniel Veillard e2b90f
Daniel Veillard e2b90f
%description devel
Daniel P. Berrange 96a520
Include header files & development libraries for the libvirt C library.
Daniel Veillard e2b90f
Daniel Veillard e79d30
%if %{with_sanlock}
Daniel Veillard e79d30
%package lock-sanlock
Daniel Veillard e79d30
Summary: Sanlock lock manager plugin for QEMU driver
Daniel P. Berrange 8cc508
Requires: sanlock >= 2.4
Daniel Veillard a6831c
#for virt-sanlock-cleanup require augeas
Daniel Veillard a6831c
Requires: augeas
Daniel Veillard 544ad4
Requires: %{name}-daemon = %{version}-%{release}
Daniel P. Berrange b1ac7b
Requires: %{name}-libs = %{version}-%{release}
Daniel Veillard e79d30
Daniel Veillard e79d30
%description lock-sanlock
Daniel Veillard e79d30
Includes the Sanlock lock manager plugin for the QEMU
Daniel Veillard e79d30
driver
Daniel Veillard e79d30
%endif
Daniel Veillard e79d30
0debbf
%package nss
0debbf
Summary: Libvirt plugin for Name Service Switch
0debbf
Requires: libvirt-daemon-driver-network = %{version}-%{release}
0debbf
0debbf
%description nss
0debbf
Libvirt plugin for NSS for translating domain names into IP addresses.
0debbf
ee3bf3
Daniel Veillard e2b90f
%prep
Daniel P. Berrange 47ca46
Daniel Veillard e2b90f
%setup -q
f4e752
Daniel P. Berrange a4075e
# Patches have to be stored in a temporary file because RPM has
Daniel P. Berrange a4075e
# a limit on the length of the result of any macro expansion;
Daniel P. Berrange a4075e
# if the string is longer, it's silently cropped
Daniel P. Berrange a4075e
%{lua:
Daniel P. Berrange a4075e
    tmp = os.tmpname();
Daniel P. Berrange a4075e
    f = io.open(tmp, "w+");
Daniel P. Berrange a4075e
    count = 0;
Daniel P. Berrange a4075e
    for i, p in ipairs(patches) do
Daniel P. Berrange a4075e
        f:write(p.."\n");
Daniel P. Berrange a4075e
        count = count + 1;
Daniel P. Berrange a4075e
    end;
Daniel P. Berrange a4075e
    f:close();
Daniel P. Berrange a4075e
    print("PATCHCOUNT="..count.."\n")
Daniel P. Berrange a4075e
    print("PATCHLIST="..tmp.."\n")
Daniel P. Berrange a4075e
}
Daniel P. Berrange a4075e
Daniel P. Berrange a4075e
git init -q
Daniel P. Berrange a4075e
git config user.name rpm-build
Daniel P. Berrange a4075e
git config user.email rpm-build
Daniel P. Berrange a4075e
git config gc.auto 0
Daniel P. Berrange a4075e
git add .
Daniel P. Berrange a4075e
git commit -q -a --author 'rpm-build <rpm-build>' \
Daniel P. Berrange a4075e
           -m '%{name}-%{version} base'
Daniel P. Berrange a4075e
Daniel P. Berrange a4075e
COUNT=$(grep '\.patch$' $PATCHLIST | wc -l)
Daniel P. Berrange a4075e
if [ $COUNT -ne $PATCHCOUNT ]; then
Daniel P. Berrange a4075e
    echo "Found $COUNT patches in $PATCHLIST, expected $PATCHCOUNT"
Daniel P. Berrange a4075e
    exit 1
Daniel P. Berrange a4075e
fi
Daniel P. Berrange a4075e
if [ $COUNT -gt 0 ]; then
Daniel P. Berrange a4075e
    xargs git am <$PATCHLIST || exit 1
Daniel P. Berrange a4075e
fi
Daniel P. Berrange a4075e
echo "Applied $COUNT patches"
Daniel P. Berrange a4075e
rm -f $PATCHLIST
Daniel P. Berrange 281508
rm -rf .git
e73cc6
Daniel Veillard e2b90f
%build
Daniel P. Berrange 051644
%if ! %{supported_platform}
Daniel P. Berrange 0ca715
echo "This RPM requires either Fedora >= %{min_fedora} or RHEL >= %{min_rhel}"
Daniel P. Berrange 051644
exit 1
Daniel P. Berrange 051644
%endif
Daniel P. Berrange 051644
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel P. Berrange 47ca46
    %define arg_qemu --with-qemu
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_qemu --without-qemu
Daniel P. Berrange 8c9e40
%endif
Daniel P. Berrange 8c9e40
Daniel P. Berrange 47ca46
%if %{with_openvz}
Daniel P. Berrange 47ca46
    %define arg_openvz --with-openvz
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_openvz --without-openvz
Daniel Veillard f5edf7
%endif
Daniel Veillard f5edf7
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel P. Berrange 47ca46
    %define arg_lxc --with-lxc
Daniel P. Berrangé 48941c
    %define arg_login_shell --with-login-shell
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_lxc --without-lxc
Daniel P. Berrangé 48941c
    %define arg_login_shell --without-login-shell
Daniel P. Berrange 24e912
%endif
Daniel P. Berrange 24e912
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange 47ca46
    %define arg_vbox --with-vbox
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_vbox --without-vbox
Mark McLoughlin ccafc8
%endif
Mark McLoughlin ccafc8
Daniel P. Berrange 47ca46
%if %{with_libxl}
Daniel P. Berrange 47ca46
    %define arg_libxl --with-libxl
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_libxl --without-libxl
Daniel Veillard f5ff4a
%endif
Daniel Veillard f5ff4a
Daniel P. Berrange 47ca46
%if %{with_phyp}
Daniel P. Berrange 47ca46
    %define arg_phyp --with-phyp
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_phyp --without-phyp
Mark McLoughlin 635912
%endif
Mark McLoughlin 635912
Daniel P. Berrange 47ca46
%if %{with_esx}
Daniel P. Berrange 47ca46
    %define arg_esx --with-esx
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_esx --without-esx
Daniel Veillard 3cf75c
%endif
Daniel Veillard 3cf75c
Daniel P. Berrange 47ca46
%if %{with_hyperv}
Daniel P. Berrange 47ca46
    %define arg_hyperv --with-hyperv
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_hyperv --without-hyperv
Daniel P. Berrange 11755d
%endif
Daniel P. Berrange 11755d
Daniel P. Berrange 47ca46
%if %{with_vmware}
Daniel P. Berrange 47ca46
    %define arg_vmware --with-vmware
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_vmware --without-vmware
Daniel Veillard 3cf75c
%endif
Daniel Veillard 3cf75c
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel P. Berrange 47ca46
    %define arg_uml --with-uml
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_uml --without-uml
Daniel Veillard ee0273
%endif
Daniel Veillard ee0273
Daniel P. Berrange 47ca46
%if %{with_storage_rbd}
Daniel P. Berrange 47ca46
    %define arg_storage_rbd --with-storage-rbd
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_storage_rbd --without-storage-rbd
Daniel Veillard 4717aa
%endif
Daniel Veillard 4717aa
Daniel P. Berrange 47ca46
%if %{with_storage_sheepdog}
Daniel P. Berrange 47ca46
    %define arg_storage_sheepdog --with-storage-sheepdog
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_storage_sheepdog --without-storage-sheepdog
Daniel Veillard e79d30
%endif
Daniel Veillard e79d30
Daniel P. Berrange 47ca46
%if %{with_storage_gluster}
Daniel P. Berrange 47ca46
    %define arg_storage_gluster --with-storage-gluster
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_storage_gluster --without-storage-gluster
Daniel Veillard 7e9981
%endif
Daniel Veillard 7e9981
Daniel P. Berrange 7335ed
%if %{with_storage_zfs}
Daniel P. Berrange 7335ed
    %define arg_storage_zfs --with-storage-zfs
Daniel P. Berrange 7335ed
%else
Daniel P. Berrange 7335ed
    %define arg_storage_zfs --without-storage-zfs
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange 7335ed
Daniel P. Berrange 47ca46
%if %{with_numactl}
Daniel P. Berrange 47ca46
    %define arg_numactl --with-numactl
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_numactl --without-numactl
Daniel Veillard 7e9981
%endif
Daniel Veillard 7e9981
Daniel P. Berrange 47ca46
%if %{with_numad}
Daniel P. Berrange 47ca46
    %define arg_numad --with-numad
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_numad --without-numad
Daniel Veillard fca1fc
%endif
Daniel Veillard fca1fc
Daniel P. Berrange 47ca46
%if %{with_fuse}
Daniel P. Berrange 47ca46
    %define arg_fuse --with-fuse
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_fuse --without-fuse
Daniel Veillard fca1fc
%endif
Daniel Veillard fca1fc
Daniel P. Berrange 47ca46
%if %{with_sanlock}
Daniel P. Berrange 47ca46
    %define arg_sanlock --with-sanlock
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_sanlock --without-sanlock
Daniel Veillard 544ad4
%endif
Daniel Veillard 544ad4
Daniel Veillard 7b5483
%if %{with_firewalld}
Daniel P. Berrange 47ca46
    %define arg_firewalld --with-firewalld
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_firewalld --without-firewalld
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
Daniel P. Berrange 47ca46
%if %{with_wireshark}
Daniel P. Berrange 47ca46
    %define arg_wireshark --with-wireshark-dissector
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_wireshark --without-wireshark-dissector
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
Daniel P. Berrange 47ca46
%if %{with_pm_utils}
Daniel P. Berrange 47ca46
    %define arg_pm_utils --with-pm-utils
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_pm_utils --without-pm-utils
0debbf
%endif
0debbf
Daniel Veillard f13fb1
%define when  %(date +"%%F-%%T")
Daniel Veillard f13fb1
%define where %(hostname)
Daniel Veillard f13fb1
%define who   %{?packager}%{!?packager:Unknown}
Daniel P. Berrange 47ca46
%define arg_packager --with-packager="%{who}, %{when}, %{where}"
Daniel P. Berrange 47ca46
%define arg_packager_version --with-packager-version="%{release}"
Daniel Veillard f13fb1
Daniel Veillard 7069f7
%if %{with_systemd}
Daniel P. Berrange 47ca46
    %define arg_init_script --with-init-script=systemd
Daniel Veillard 7069f7
%else
Daniel P. Berrange 47ca46
    %define arg_init_script --with-init-script=redhat
Daniel Veillard 7069f7
%endif
Daniel Veillard f13fb1
Daniel P. Berrange 47ca46
%if 0%{?fedora} || 0%{?rhel} >= 7
Daniel P. Berrange 47ca46
    %define arg_selinux_mount --with-selinux-mount="/sys/fs/selinux"
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %define arg_selinux_mount --with-selinux-mount="/selinux"
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 47ca46
Daniel P. Berrange 47ca46
%if 0%{?fedora}
Daniel P. Berrange 47ca46
    # Nightly firmware repo x86/OVMF
Daniel P. Berrange 47ca46
    LOADERS="/usr/share/edk2.git/ovmf-x64/OVMF_CODE-pure-efi.fd:/usr/share/edk2.git/ovmf-x64/OVMF_VARS-pure-efi.fd"
Daniel P. Berrange 47ca46
    # Nightly firmware repo aarch64/AAVMF
Daniel P. Berrange 47ca46
    LOADERS="$LOADERS:/usr/share/edk2.git/aarch64/QEMU_EFI-pflash.raw:/usr/share/edk2.git/aarch64/vars-template-pflash.raw"
Daniel P. Berrange 47ca46
    # Fedora official x86/OVMF
Daniel P. Berrange 47ca46
    LOADERS="$LOADERS:/usr/share/edk2/ovmf/OVMF_CODE.fd:/usr/share/edk2/ovmf/OVMF_VARS.fd"
Daniel P. Berrange 47ca46
    # Fedora official aarch64/AAVMF
Daniel P. Berrange 47ca46
    LOADERS="$LOADERS:/usr/share/edk2/aarch64/QEMU_EFI-pflash.raw:/usr/share/edk2/aarch64/vars-template-pflash.raw"
Daniel P. Berrange 47ca46
    %define arg_loader_nvram --with-loader-nvram="$LOADERS"
Daniel Veillard f1867a
%endif
Daniel Veillard f1867a
Daniel P. Berrange 11755d
# place macros above and build commands below this comment
Daniel P. Berrange 11755d
Daniel P. Berrange a56bcb
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
Daniel P. Berrange a56bcb
Daniel P. Berrange 11755d
%if 0%{?enable_autotools}
Daniel P. Berrange 11755d
 autoreconf -if
Daniel P. Berrange 11755d
%endif
Daniel P. Berrange 11755d
0223d5
rm -f po/stamp-po
Daniel P. Berrangé 4fd635
%configure %{?arg_qemu} \
Daniel P. Berrange 47ca46
           %{?arg_openvz} \
Daniel P. Berrange 47ca46
           %{?arg_lxc} \
Daniel P. Berrange 47ca46
           %{?arg_vbox} \
Daniel P. Berrange 47ca46
           %{?arg_libxl} \
Daniel P. Berrange 47ca46
           --with-sasl \
Daniel P. Berrange 47ca46
           --with-avahi \
Daniel P. Berrange 47ca46
           --with-polkit \
Daniel P. Berrange 47ca46
           --with-libvirtd \
Daniel P. Berrange 47ca46
           %{?arg_uml} \
Daniel P. Berrange 47ca46
           %{?arg_phyp} \
Daniel P. Berrange 47ca46
           %{?arg_esx} \
Daniel P. Berrange 47ca46
           %{?arg_hyperv} \
Daniel P. Berrange 47ca46
           %{?arg_vmware} \
Daniel P. Berrange 47ca46
           --without-xenapi \
Daniel P. Berrange 47ca46
           --without-vz \
Daniel P. Berrange 1b8b75
           --without-bhyve \
Daniel P. Berrange 47ca46
           --with-interface \
Daniel P. Berrange 47ca46
           --with-network \
Daniel P. Berrange 47ca46
           --with-storage-fs \
Daniel P. Berrange 47ca46
           --with-storage-lvm \
Daniel P. Berrange 47ca46
           --with-storage-iscsi \
Daniel P. Berrange a74ea3
           --with-storage-scsi \
Daniel P. Berrange 47ca46
           --with-storage-disk \
Daniel P. Berrange 47ca46
           --with-storage-mpath \
Daniel P. Berrange 47ca46
           %{?arg_storage_rbd} \
Daniel P. Berrange 47ca46
           %{?arg_storage_sheepdog} \
Daniel P. Berrange 47ca46
           %{?arg_storage_gluster} \
Daniel P. Berrange 7335ed
           %{?arg_storage_zfs} \
Daniel P. Berrange a74ea3
           --without-storage-vstorage \
Daniel P. Berrange 47ca46
           %{?arg_numactl} \
Daniel P. Berrange 47ca46
           %{?arg_numad} \
Daniel P. Berrange 47ca46
           --with-capng \
Daniel P. Berrange 47ca46
           %{?arg_fuse} \
Daniel P. Berrange 47ca46
           --with-netcf \
Daniel P. Berrange 47ca46
           --with-selinux \
Daniel P. Berrange 47ca46
           %{?arg_selinux_mount} \
Daniel P. Berrange 47ca46
           --without-apparmor \
Daniel P. Berrange 47ca46
           --without-hal \
Daniel P. Berrange 47ca46
           --with-udev \
Daniel P. Berrange 47ca46
           --with-yajl \
Daniel P. Berrange 47ca46
           %{?arg_sanlock} \
Daniel P. Berrange 47ca46
           --with-libpcap \
Daniel P. Berrange 47ca46
           --with-macvtap \
Daniel P. Berrange 47ca46
           --with-audit \
Daniel P. Berrange 47ca46
           --with-dtrace \
Daniel P. Berrange 47ca46
           --with-driver-modules \
Daniel P. Berrange 47ca46
           %{?arg_firewalld} \
Daniel P. Berrange 47ca46
           %{?arg_wireshark} \
Daniel P. Berrange 47ca46
           %{?arg_pm_utils} \
Daniel P. Berrange 47ca46
           --with-nss-plugin \
Daniel P. Berrange 47ca46
           %{arg_packager} \
Daniel P. Berrange 47ca46
           %{arg_packager_version} \
Mark McLoughlin 593255
           --with-qemu-user=%{qemu_user} \
Mark McLoughlin 593255
           --with-qemu-group=%{qemu_group} \
Daniel P. Berrange a4bf27
           --with-tls-priority=%{tls_priority} \
Daniel P. Berrange 47ca46
           %{?arg_loader_nvram} \
Daniel P. Berrange 11755d
           %{?enable_werror} \
Daniel P. Berrange 11755d
           --enable-expensive-tests \
Daniel P. Berrangé 48941c
           %{arg_init_script} \
Daniel P. Berrangé 48941c
           %{?arg_login_shell}
Daniel P. Berrange a56bcb
make %{?_smp_mflags} V=1
Daniel Veillard a3e1cc
gzip -9 ChangeLog
Daniel Veillard e2b90f
Daniel Veillard e2b90f
%install
Mark McLoughlin a38fb9
rm -fr %{buildroot}
Daniel Veillard e2b90f
Daniel P. Berrange a56bcb
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
Daniel P. Berrange a56bcb
Daniel P. Berrange 350081
# Avoid using makeinstall macro as it changes prefixes rather than setting
Daniel P. Berrange 350081
# DESTDIR. Newer make_install macro would be better but it's not available
Daniel P. Berrange 350081
# on RHEL 5, thus we need to expand it here.
Daniel P. Berrange a56bcb
make %{?_smp_mflags} install DESTDIR=%{?buildroot} SYSTEMD_UNIT_DIR=%{_unitdir} V=1
Daniel P. Berrange 350081
Daniel P. Berrange a56bcb
make %{?_smp_mflags} -C examples distclean V=1
Daniel P. Berrange 50e253
Daniel Veillard e2b90f
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
Daniel Veillard e2b90f
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
Daniel Veillard e79d30
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.la
Daniel Veillard e79d30
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a
Daniel Veillard 544ad4
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la
Daniel Veillard 544ad4
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a
Daniel P. Berrange a74ea3
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.la
Daniel P. Berrange a74ea3
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.a
Daniel P. Berrangé 061231
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.la
Daniel P. Berrangé 061231
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.a
Daniel P. Berrange 1b8b75
%if %{with_wireshark}
Daniel P. Berrangé a88867
rm -f $RPM_BUILD_ROOT%{wireshark_plugindir}/libvirt.la
Daniel P. Berrange 1b8b75
%endif
Daniel Veillard 7a6f07
Daniel Veillard a160d7
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/lib/libvirt/dnsmasq/
Daniel Veillard 7a6f07
# We don't want to install /etc/libvirt/qemu/networks in the main %files list
Daniel Veillard 7a6f07
# because if the admin wants to delete the default network completely, we don't
Daniel Veillard 7a6f07
# want to end up re-incarnating it on every RPM upgrade.
Daniel Veillard 7a6f07
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/
Daniel Veillard 7a6f07
cp $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/default.xml \
Daniel Veillard 7a6f07
   $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/default.xml
Daniel Veillard 7a6f07
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/default.xml
Daniel Veillard 7a6f07
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
Daniel P. Berrange b23ff9
Daniel P. Berrange b23ff9
# nwfilter files are installed in /usr/share/libvirt and copied to /etc in %post
Daniel P. Berrange b23ff9
# to avoid verification errors on changed files in /etc
Daniel P. Berrange b23ff9
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/libvirt/nwfilter/
Daniel P. Berrange b23ff9
cp -a $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml \
Daniel P. Berrange b23ff9
    $RPM_BUILD_ROOT%{_datadir}/libvirt/nwfilter/
Daniel P. Berrangé 061231
# libvirt saves these files with mode 600
Daniel P. Berrangé 061231
chmod 600 $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml
Daniel P. Berrange b23ff9
Daniel Veillard 7a6f07
# Strip auto-generated UUID - we need it generated per-install
Daniel Veillard 7a6f07
sed -i -e "/<uuid>/d" $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/default.xml
Daniel Veillard 3cf75c
%if ! %{with_qemu}
Daniel Veillard fe0909
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_qemu.aug
Daniel Veillard fe0909
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
Daniel Veillard f294b4
%endif
Daniel Veillard 5c1d88
%find_lang %{name}
Daniel Veillard e2b90f
Daniel Veillard 544ad4
%if ! %{with_sanlock}
Daniel Veillard 544ad4
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirt_sanlock.aug
Daniel Veillard 544ad4
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
Daniel Veillard 544ad4
%endif
Daniel Veillard 544ad4
Daniel Veillard 6383d6
%if ! %{with_lxc}
Daniel Veillard 6383d6
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug
Daniel Veillard 6383d6
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
Daniel Veillard 6383d6
%endif
Daniel Veillard 6383d6
Daniel Veillard f294b4
%if ! %{with_qemu}
Daniel Veillard f294b4
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
Daniel Veillard 36cab8
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.qemu
Daniel Veillard f294b4
%endif
Daniel Veillard 6383d6
%if ! %{with_lxc}
Daniel Veillard 6383d6
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/lxc.conf
Daniel Veillard a160d7
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.lxc
Daniel Veillard 36cab8
%endif
5f1a42
%if ! %{with_libxl}
5f1a42
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/libxl.conf
Daniel P. Berrange c81949
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.libxl
5f1a42
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_libxl.aug
5f1a42
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
5f1a42
%endif
Daniel Veillard 36cab8
%if ! %{with_uml}
Daniel Veillard 36cab8
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.uml
Daniel Veillard 6383d6
%endif
Daniel Veillard f294b4
Daniel P. Berrange 8c9e40
# Copied into libvirt-docs subpackage eventually
Daniel P. Berrange 8c9e40
mv $RPM_BUILD_ROOT%{_datadir}/doc/libvirt-%{version} libvirt-docs
Daniel P. Berrange 96a520
Daniel P. Berrange 47ca46
%ifarch %{power64} s390x x86_64 ia64 alpha sparc64
96b1b1
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes.stp \
96b1b1
   $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes-64.stp
Daniel P. Berrangé 061231
Daniel P. Berrangé 061231
    %if %{with_qemu}
96b1b1
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp \
96b1b1
   $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes-64.stp
Daniel P. Berrangé 061231
    %endif
96b1b1
%endif
96b1b1
Daniel Veillard a160d7
%check
Daniel Veillard a160d7
cd tests
Daniel Veillard f46359
# These tests don't current work in a mock build root
Daniel P. Berrange 2a9c28
for i in nodeinfotest seclabeltest
Daniel Veillard a160d7
do
Daniel Veillard a160d7
  rm -f $i
Daniel Veillard 7b5483
  printf 'int main(void) { return 0; }' > $i.c
Daniel Veillard f46359
  printf '#!/bin/sh\nexit 0\n' > $i
Daniel Veillard a160d7
  chmod +x $i
Daniel Veillard a160d7
done
Daniel P. Berrange 0b1a01
if ! make %{?_smp_mflags} check VIR_TEST_DEBUG=1
Daniel P. Berrange f40b46
then
Daniel P. Berrange f40b46
  cat test-suite.log || true
Daniel P. Berrange dbe615
  exit 1
Daniel P. Berrange f40b46
fi
Daniel Veillard a160d7
Daniel P. Berrange c81949
%pre daemon
Daniel P. Berrange c81949
# 'libvirt' group is just to allow password-less polkit access to
Daniel P. Berrange c81949
# libvirtd. The uid number is irrelevant, so we use dynamic allocation
Daniel P. Berrange c81949
# described at the above link.
Daniel P. Berrange c81949
getent group libvirt >/dev/null || groupadd -r libvirt
Daniel P. Berrange c81949
Daniel P. Berrange c81949
exit 0
Daniel P. Berrange c81949
Daniel P. Berrange 44699d
%post daemon
Daniel Veillard e2b90f
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel P. Berrange 47ca46
    %if %{with_systemd_macros}
Daniel P. Berrangé e7a3ca
        %systemd_post virtlockd.socket virtlockd-admin.socket
Daniel P. Berrangé e7a3ca
        %systemd_post virtlogd.socket virtlogd-admin.socket
Daniel P. Berrangé e7a3ca
        %systemd_post libvirtd.service
Daniel P. Berrange 47ca46
    %else
Daniel Veillard 7069f7
if [ $1 -eq 1 ] ; then
Daniel Veillard 7069f7
    # Initial installation
Daniel P. Berrange fefbae
    /bin/systemctl enable \
Daniel P. Berrange fefbae
        virtlockd.socket \
Daniel P. Berrangé 48941c
        virtlockd-admin.socket \
Daniel P. Berrange 4a9c74
        virtlogd.socket \
Daniel P. Berrangé 48941c
        virtlogd-admin.socket \
Daniel P. Berrange fefbae
        libvirtd.service >/dev/null 2>&1 || :
Daniel Veillard 7069f7
fi
Daniel P. Berrange 47ca46
    %endif
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 47ca46
    %if %{with_cgconfig}
Daniel Veillard 544ad4
# Starting with Fedora 16/RHEL-7, systemd automounts all cgroups,
Daniel Veillard 544ad4
# and cgconfig is no longer a necessary service.
Daniel P. Berrange 47ca46
        %if 0%{?rhel} && 0%{?rhel} < 7
Daniel Veillard ed9e42
if [ "$1" -eq "1" ]; then
Daniel Veillard ed9e42
/sbin/chkconfig cgconfig on
Daniel Veillard ed9e42
fi
Daniel P. Berrange 350081
        %endif
Daniel P. Berrange 47ca46
    %endif
Daniel Veillard ed9e42
Daniel Veillard 7a6f07
/sbin/chkconfig --add libvirtd
Daniel P. Berrange 4a9c74
/sbin/chkconfig --add virtlogd
Daniel P. Berrange 65efaa
/sbin/chkconfig --add virtlockd
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 7a6f07
Daniel P. Berrange 89c3fa
# request daemon restart in posttrans
Daniel P. Berrange 89c3fa
mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange 89c3fa
touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
Daniel P. Berrange 89c3fa
Daniel P. Berrange 44699d
%preun daemon
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel P. Berrange 47ca46
    %if %{with_systemd_macros}
Daniel P. Berrangé e7a3ca
        %systemd_preun libvirtd.service
Daniel P. Berrangé e7a3ca
        %systemd_preun virtlogd.socket virtlogd-admin.socket virtlogd.service
Daniel P. Berrangé e7a3ca
        %systemd_preun virtlockd.socket virtlockd-admin.socket virtlockd.service
Daniel P. Berrange 47ca46
    %else
Daniel Veillard 7069f7
if [ $1 -eq 0 ] ; then
Daniel Veillard 7069f7
    # Package removal, not upgrade
Daniel P. Berrange fefbae
    /bin/systemctl --no-reload disable \
Daniel P. Berrange fefbae
        libvirtd.service \
Daniel P. Berrange 4a9c74
        virtlogd.socket \
Daniel P. Berrangé 48941c
        virtlogd-admin.socket \
Daniel P. Berrange 4a9c74
        virtlogd.service \
Daniel P. Berrange fefbae
        virtlockd.socket \
Daniel P. Berrangé 48941c
        virtlockd-admin.socket \
Daniel P. Berrange fefbae
        virtlockd.service > /dev/null 2>&1 || :
Daniel P. Berrange fefbae
    /bin/systemctl stop \
Daniel P. Berrange fefbae
        libvirtd.service \
Daniel P. Berrange 4a9c74
        virtlogd.socket \
Daniel P. Berrangé 48941c
        virtlogd-admin.socket \
Daniel P. Berrange 4a9c74
        virtlogd.service \
Daniel P. Berrange fefbae
        virtlockd.socket \
Daniel P. Berrangé 48941c
        virtlockd-admin.socket \
Daniel P. Berrange fefbae
        virtlockd.service > /dev/null 2>&1 || :
Daniel Veillard 7069f7
fi
Daniel P. Berrange 47ca46
    %endif
Daniel P. Berrange 47ca46
%else
Daniel Veillard 7a6f07
if [ $1 = 0 ]; then
Daniel Veillard 7a6f07
    /sbin/service libvirtd stop 1>/dev/null 2>&1
Daniel Veillard 7a6f07
    /sbin/chkconfig --del libvirtd
Daniel P. Berrange 4a9c74
    /sbin/service virtlogd stop 1>/dev/null 2>&1
Daniel P. Berrange 4a9c74
    /sbin/chkconfig --del virtlogd
Daniel P. Berrange 65efaa
    /sbin/service virtlockd stop 1>/dev/null 2>&1
Daniel P. Berrange 65efaa
    /sbin/chkconfig --del virtlockd
Daniel Veillard 7a6f07
fi
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 7069f7
Daniel P. Berrange 44699d
%postun daemon
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel Veillard 7069f7
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
Daniel Veillard 7069f7
if [ $1 -ge 1 ] ; then
Daniel P. Berrange 65efaa
    /bin/systemctl reload-or-try-restart virtlockd.service >/dev/null 2>&1 || :
Daniel P. Berrange 4a9c74
    /bin/systemctl reload-or-try-restart virtlogd.service >/dev/null 2>&1 || :
Daniel Veillard 7069f7
fi
Daniel P. Berrange 47ca46
%else
Daniel P. Berrange 65efaa
if [ $1 -ge 1 ]; then
Daniel P. Berrange 65efaa
    /sbin/service virtlockd reload > /dev/null 2>&1 || :
Daniel P. Berrange 4a9c74
    /sbin/service virtlogd reload > /dev/null 2>&1 || :
Daniel P. Berrange 65efaa
fi
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 65efaa
Daniel P. Berrange 4a9c74
# In upgrade scenario we must explicitly enable virtlockd/virtlogd
Daniel P. Berrange 4a9c74
# sockets, if libvirtd is already enabled and start them if
Daniel P. Berrange 4a9c74
# libvirtd is running, otherwise you'll get failures to start
Daniel P. Berrange 4a9c74
# guests
Daniel P. Berrange 4a9c74
%triggerpostun daemon -- libvirt-daemon < 1.3.0
Daniel P. Berrange 4a9c74
if [ $1 -ge 1 ] ; then
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel P. Berrangé 48941c
    /bin/systemctl is-enabled libvirtd.service 1>/dev/null 2>&1 &&
Daniel P. Berrangé 48941c
        /bin/systemctl enable virtlogd.socket virtlogd-admin.socket || :
Daniel P. Berrangé 48941c
    /bin/systemctl is-active libvirtd.service 1>/dev/null 2>&1 &&
Daniel P. Berrangé 48941c
        /bin/systemctl start virtlogd.socket virtlogd-admin.socket || :
Daniel P. Berrange 47ca46
%else
Daniel P. Berrangé 48941c
    /sbin/chkconfig libvirtd 1>/dev/null 2>&1 &&
Daniel P. Berrangé 48941c
        /sbin/chkconfig virtlogd on || :
Daniel P. Berrangé 48941c
    /sbin/service libvirtd status 1>/dev/null 2>&1 &&
Daniel P. Berrangé 48941c
        /sbin/service virtlogd start || :
Daniel P. Berrangé 48941c
    /sbin/service virtlockd reload > /dev/null 2>&1 || :
Daniel P. Berrangé 48941c
    /sbin/service virtlogd reload > /dev/null 2>&1 || :
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 4a9c74
fi
Daniel P. Berrange 4a9c74
Daniel P. Berrange 89c3fa
%posttrans daemon
Daniel P. Berrange 89c3fa
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
Daniel P. Berrange 89c3fa
%if %{with_systemd}
Daniel P. Berrange 89c3fa
    /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
Daniel P. Berrange 89c3fa
%else
Daniel P. Berrange 89c3fa
    /sbin/service libvirtd condrestart > /dev/null 2>&1 || :
Daniel P. Berrange 89c3fa
%endif
Daniel P. Berrange 89c3fa
fi
Daniel P. Berrange 89c3fa
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange 89c3fa
Daniel P. Berrange 44699d
%post daemon-config-network
Daniel P. Berrange 44699d
if test $1 -eq 1 && test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml ; then
a54075
    # see if the network used by default network creates a conflict,
a54075
    # and try to resolve it
a54075
    # NB: 192.168.122.0/24 is used in the default.xml template file;
a54075
    # do not modify any of those values here without also modifying
a54075
    # them in the template.
a54075
    orig_sub=122
a54075
    sub=${orig_sub}
a54075
    nl='
a54075
'
a54075
    routes="${nl}$(ip route show | cut -d' ' -f1)${nl}"
a54075
    case ${routes} in
a54075
      *"${nl}192.168.${orig_sub}.0/24${nl}"*)
a54075
        # there was a match, so we need to look for an unused subnet
a54075
        for new_sub in $(seq 124 254); do
a54075
          case ${routes} in
a54075
          *"${nl}192.168.${new_sub}.0/24${nl}"*)
a54075
            ;;
a54075
          *)
a54075
            sub=$new_sub
a54075
            break;
a54075
            ;;
a54075
          esac
a54075
        done
a54075
        ;;
a54075
      *)
a54075
        ;;
a54075
    esac
a54075
Daniel P. Berrange 44699d
    UUID=`/usr/bin/uuidgen`
a54075
    sed -e "s/${orig_sub}/${sub}/g" \
a54075
        -e "s,</name>,</name>\n  <uuid>$UUID</uuid>," \
Daniel P. Berrange 44699d
         < %{_datadir}/libvirt/networks/default.xml \
Daniel P. Berrange 44699d
         > %{_sysconfdir}/libvirt/qemu/networks/default.xml
Daniel P. Berrange 44699d
    ln -s ../default.xml %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
611b2e
611b2e
    # Make sure libvirt picks up the new network defininiton
Daniel P. Berrange 89c3fa
    mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange 89c3fa
    touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
Daniel P. Berrange 89c3fa
fi
Daniel P. Berrange 89c3fa
Daniel P. Berrange 89c3fa
%posttrans daemon-config-network
Daniel P. Berrange 89c3fa
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel P. Berrange 89c3fa
    /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
Daniel P. Berrange 47ca46
%else
611b2e
    /sbin/service libvirtd condrestart > /dev/null 2>&1 || :
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 44699d
fi
Daniel P. Berrange 89c3fa
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange b23ff9
Daniel P. Berrange b23ff9
%post daemon-config-nwfilter
Daniel P. Berrange b23ff9
cp %{_datadir}/libvirt/nwfilter/*.xml %{_sysconfdir}/libvirt/nwfilter/
Daniel P. Berrange b23ff9
# Make sure libvirt picks up the new nwfilter defininitons
Daniel P. Berrange 89c3fa
mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange 89c3fa
touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
Daniel P. Berrange 89c3fa
Daniel P. Berrange 89c3fa
%posttrans daemon-config-nwfilter
Daniel P. Berrange 89c3fa
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
Daniel P. Berrange b23ff9
%if %{with_systemd}
Daniel P. Berrange 89c3fa
    /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
Daniel P. Berrange b23ff9
%else
Daniel P. Berrange b23ff9
    /sbin/service libvirtd condrestart > /dev/null 2>&1 || :
Daniel P. Berrange b23ff9
%endif
Daniel P. Berrange 89c3fa
fi
Daniel P. Berrange 89c3fa
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
Daniel P. Berrange b23ff9
Daniel P. Berrange b23ff9
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel Veillard 7069f7
%triggerun -- libvirt < 0.9.4
Daniel Veillard 7069f7
%{_bindir}/systemd-sysv-convert --save libvirtd >/dev/null 2>&1 ||:
Daniel Veillard 7069f7
Daniel Veillard 7069f7
# If the package is allowed to autostart:
Daniel Veillard 7069f7
/bin/systemctl --no-reload enable libvirtd.service >/dev/null 2>&1 ||:
Daniel Veillard 7069f7
Daniel Veillard 7069f7
# Run these because the SysV package being removed won't do them
Daniel Veillard 7069f7
/sbin/chkconfig --del libvirtd >/dev/null 2>&1 || :
Daniel Veillard 7069f7
/bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 65efaa
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel P. Berrange 65efaa
%pre daemon-driver-qemu
Daniel P. Berrange 65efaa
# We want soft static allocation of well-known ids, as disk images
Daniel P. Berrange 65efaa
# are commonly shared across NFS mounts by id rather than name; see
Daniel P. Berrange 65efaa
# https://fedoraproject.org/wiki/Packaging:UsersAndGroups
Daniel P. Berrange 65efaa
getent group kvm >/dev/null || groupadd -f -g 36 -r kvm
Daniel P. Berrange 65efaa
getent group qemu >/dev/null || groupadd -f -g 107 -r qemu
Daniel P. Berrange 65efaa
if ! getent passwd qemu >/dev/null; then
Daniel P. Berrange 65efaa
  if ! getent passwd 107 >/dev/null; then
Daniel P. Berrange 65efaa
    useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin -c "qemu user" qemu
Daniel P. Berrange 65efaa
  else
Daniel P. Berrange 65efaa
    useradd -r -g qemu -G kvm -d / -s /sbin/nologin -c "qemu user" qemu
Daniel P. Berrange 65efaa
  fi
Daniel P. Berrange 65efaa
fi
Daniel P. Berrange 65efaa
exit 0
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 7a6f07
Daniel Veillard 7e9981
%preun client
Daniel Veillard 7e9981
Daniel Veillard 7069f7
%if %{with_systemd}
Daniel P. Berrange 350081
    %if %{with_systemd_macros}
Daniel P. Berrange 350081
        %systemd_preun libvirt-guests.service
Daniel P. Berrange 350081
    %endif
Daniel Veillard 7069f7
%else
Daniel Veillard 7e9981
if [ $1 = 0 ]; then
Daniel Veillard 7e9981
    /sbin/chkconfig --del libvirt-guests
Daniel Veillard 7e9981
    rm -f /var/lib/libvirt/libvirt-guests
Daniel Veillard 7e9981
fi
Daniel Veillard 7069f7
%endif
Daniel Veillard 7e9981
Daniel Veillard 7e9981
%post client
Daniel Veillard 7e9981
Daniel Veillard 7e9981
/sbin/ldconfig
Daniel Veillard 7069f7
%if %{with_systemd}
Daniel P. Berrange 350081
    %if %{with_systemd_macros}
Daniel P. Berrange 350081
        %systemd_post libvirt-guests.service
Daniel P. Berrange 350081
    %endif
Daniel Veillard 7069f7
%else
Daniel Veillard 7e9981
/sbin/chkconfig --add libvirt-guests
Daniel Veillard 7069f7
%endif
Mark McLoughlin 854b87
d3109a
%postun client
Daniel Veillard e2b90f
d3109a
/sbin/ldconfig
Daniel Veillard 7069f7
%if %{with_systemd}
Daniel P. Berrange 350081
    %if %{with_systemd_macros}
Daniel P. Berrange 8c9e40
        %systemd_postun libvirt-guests.service
Daniel P. Berrange 350081
    %endif
Daniel Veillard 7069f7
%triggerun client -- libvirt < 0.9.4
Daniel Veillard 7069f7
%{_bindir}/systemd-sysv-convert --save libvirt-guests >/dev/null 2>&1 ||:
Daniel Veillard 7069f7
Daniel Veillard 7069f7
# If the package is allowed to autostart:
Daniel Veillard 7069f7
/bin/systemctl --no-reload enable libvirt-guests.service >/dev/null 2>&1 ||:
Daniel Veillard 7069f7
Daniel P. Berrange 8c9e40
# Run this because the SysV package being removed won't do them
Daniel Veillard 7069f7
/sbin/chkconfig --del libvirt-guests >/dev/null 2>&1 || :
Daniel Veillard 7069f7
%endif
Daniel Veillard 7069f7
Daniel P. Berrange 8cc508
%if %{with_sanlock}
Daniel P. Berrange 8cc508
%post lock-sanlock
Daniel P. Berrange 8cc508
if getent group sanlock > /dev/null ; then
Daniel P. Berrange 8cc508
    chmod 0770 %{_localstatedir}/lib/libvirt/sanlock
Daniel P. Berrange 8cc508
    chown root:sanlock %{_localstatedir}/lib/libvirt/sanlock
Daniel P. Berrange 8cc508
fi
Daniel P. Berrange 8cc508
%endif
Daniel P. Berrange 8cc508
Daniel P. Berrange 8c9e40
%if %{with_lxc}
Daniel P. Berrange 8c9e40
%pre login-shell
Daniel P. Berrange 8c9e40
getent group virtlogin >/dev/null || groupadd -r virtlogin
Daniel P. Berrange 8c9e40
exit 0
Daniel P. Berrange 8c9e40
%endif
Daniel P. Berrange 8c9e40
Daniel P. Berrange 6253f9
%files
Daniel P. Berrange 37ddbd
Daniel P. Berrange 44699d
%files docs
Daniel P. Berrange 89c3fa
%doc AUTHORS ChangeLog.gz NEWS README README.md
611b2e
%doc libvirt-docs/*
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
# API docs
Daniel P. Berrange 44699d
%dir %{_datadir}/gtk-doc/html/libvirt/
Daniel P. Berrange 44699d
%doc %{_datadir}/gtk-doc/html/libvirt/*.devhelp
Daniel P. Berrange 44699d
%doc %{_datadir}/gtk-doc/html/libvirt/*.html
Daniel P. Berrange 44699d
%doc %{_datadir}/gtk-doc/html/libvirt/*.png
Daniel P. Berrange 44699d
%doc %{_datadir}/gtk-doc/html/libvirt/*.css
611b2e
%doc examples/hellolibvirt
611b2e
%doc examples/object-events
611b2e
%doc examples/dominfo
611b2e
%doc examples/domsuspend
611b2e
%doc examples/dommigrate
611b2e
%doc examples/openauth
611b2e
%doc examples/xml
611b2e
%doc examples/rename
611b2e
%doc examples/systemtap
Daniel P. Berrange a4bf27
%doc examples/admin
611b2e
Daniel P. Berrange 44699d
Daniel P. Berrange 44699d
%files daemon
Daniel P. Berrange 44699d
Daniel Veillard 7a6f07
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/
Daniel Veillard f294b4
Daniel P. Berrange 47ca46
%if %{with_systemd}
Daniel Veillard 7069f7
%{_unitdir}/libvirtd.service
Daniel P. Berrange 0b1a01
%{_unitdir}/virt-guest-shutdown.target
Daniel P. Berrange 4a9c74
%{_unitdir}/virtlogd.service
Daniel P. Berrange 4a9c74
%{_unitdir}/virtlogd.socket
Daniel P. Berrangé 48941c
%{_unitdir}/virtlogd-admin.socket
Daniel Veillard f5ff4a
%{_unitdir}/virtlockd.service
Daniel Veillard f5ff4a
%{_unitdir}/virtlockd.socket
Daniel P. Berrangé 48941c
%{_unitdir}/virtlockd-admin.socket
Daniel P. Berrange 47ca46
%else
Daniel Veillard f1867a
%{_sysconfdir}/rc.d/init.d/libvirtd
Daniel P. Berrange 4a9c74
%{_sysconfdir}/rc.d/init.d/virtlogd
Daniel Veillard f5ff4a
%{_sysconfdir}/rc.d/init.d/virtlockd
Daniel P. Berrange 47ca46
%endif
Daniel Veillard c70baa
%config(noreplace) %{_sysconfdir}/sysconfig/libvirtd
Daniel P. Berrange 4a9c74
%config(noreplace) %{_sysconfdir}/sysconfig/virtlogd
Daniel Veillard f5ff4a
%config(noreplace) %{_sysconfdir}/sysconfig/virtlockd
Daniel P. Berrange fdd7e8
%config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf
Daniel P. Berrange 4a9c74
%config(noreplace) %{_sysconfdir}/libvirt/virtlogd.conf
Daniel P. Berrange 11755d
%config(noreplace) %{_sysconfdir}/libvirt/virtlockd.conf
5f1a42
%config(noreplace) %{_prefix}/lib/sysctl.d/60-libvirtd.conf
Daniel Veillard f294b4
Daniel Veillard ed6c49
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd
Daniel Veillard 7a6f07
%dir %{_datadir}/libvirt/
Daniel Veillard 3cf75c
Daniel Veillard 7069f7
%ghost %dir %{_localstatedir}/run/libvirt/
Daniel Veillard 958f1c
Mark McLoughlin 66df92
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/images/
Daniel P. Berrange 8c8aca
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/filesystems/
Mark McLoughlin 743adf
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/boot/
db03f0
%dir %attr(0711, root, root) %{_localstatedir}/cache/libvirt/
Daniel Veillard f294b4
Daniel Veillard 958f1c
Daniel P. Berrange 051644
%dir %attr(0755, root, root) %{_libdir}/libvirt/
Daniel P. Berrange 051644
%dir %attr(0755, root, root) %{_libdir}/libvirt/connection-driver/
Daniel Veillard f5ff4a
%dir %attr(0755, root, root) %{_libdir}/libvirt/lock-driver
Daniel Veillard f5ff4a
%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/lockd.so
Daniel Veillard f5ff4a
Daniel Veillard f294b4
%{_datadir}/augeas/lenses/libvirtd.aug
Daniel Veillard f294b4
%{_datadir}/augeas/lenses/tests/test_libvirtd.aug
Daniel P. Berrange 4a9c74
%{_datadir}/augeas/lenses/virtlogd.aug
Daniel P. Berrange 4a9c74
%{_datadir}/augeas/lenses/tests/test_virtlogd.aug
Daniel P. Berrange 11755d
%{_datadir}/augeas/lenses/virtlockd.aug
Daniel P. Berrange 11755d
%{_datadir}/augeas/lenses/tests/test_virtlockd.aug
Daniel Veillard f5ff4a
%{_datadir}/augeas/lenses/libvirt_lockd.aug
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel Veillard f5ff4a
%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
Daniel P. Berrange 47ca46
%endif
Daniel Veillard f294b4
Daniel P. Berrange c476c8
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
Daniel Veillard 000a32
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
Daniel P. Berrange c81949
%{_datadir}/polkit-1/rules.d/50-libvirt.rules
Daniel Veillard f294b4
Daniel P. Berrange c80b7f
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/
Daniel Veillard f294b4
Daniel Veillard ed6c49
%attr(0755, root, root) %{_libexecdir}/libvirt_iohelper
Daniel P. Berrange 11755d
Daniel Veillard c70baa
%attr(0755, root, root) %{_sbindir}/libvirtd
Daniel P. Berrange 4a9c74
%attr(0755, root, root) %{_sbindir}/virtlogd
Daniel Veillard f5ff4a
%attr(0755, root, root) %{_sbindir}/virtlockd
Daniel Veillard f294b4
Daniel P. Berrange e8394a
%{_mandir}/man8/libvirtd.8*
Daniel P. Berrange 4a9c74
%{_mandir}/man8/virtlogd.8*
Daniel P. Berrange 11755d
%{_mandir}/man8/virtlockd.8*
Daniel P. Berrange b23ff9
%{_mandir}/man7/virkey*.7*
Daniel Veillard e2b90f
Daniel P. Berrange 93cadb
%doc examples/polkit/*.rules
Daniel P. Berrange 93cadb
Daniel P. Berrange 44699d
%files daemon-config-network
0223d5
%dir %{_datadir}/libvirt/networks/
0223d5
%{_datadir}/libvirt/networks/default.xml
Daniel P. Berrange 96a520
Daniel P. Berrange 44699d
%files daemon-config-nwfilter
Daniel P. Berrange b23ff9
%dir %{_datadir}/libvirt/nwfilter/
Daniel P. Berrange b23ff9
%{_datadir}/libvirt/nwfilter/*.xml
Daniel P. Berrange b23ff9
%ghost %{_sysconfdir}/libvirt/nwfilter/*.xml
Daniel P. Berrange e6d978
Daniel Veillard 544ad4
%files daemon-driver-interface
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_interface.so
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%files daemon-driver-network
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
Daniel P. Berrange 65efaa
%ghost %dir %{_localstatedir}/run/libvirt/network/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
Daniel P. Berrange 65efaa
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/dnsmasq/
Daniel P. Berrange f7f509
%attr(0755, root, root) %{_libexecdir}/libvirt_leaseshelper
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_network.so
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%files daemon-driver-nodedev
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_nodedev.so
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%files daemon-driver-nwfilter
0223d5
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/nwfilter/
0223d5
%ghost %dir %{_localstatedir}/run/libvirt/network/
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_nwfilter.so
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%files daemon-driver-secret
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_secret.so
Daniel Veillard 544ad4
Daniel Veillard 544ad4
%files daemon-driver-storage
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-core
Daniel P. Berrange 65efaa
%attr(0755, root, root) %{_libexecdir}/libvirt_parthelper
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_storage.so
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_fs.so
Daniel P. Berrangé 061231
%{_libdir}/%{name}/storage-file/libvirt_storage_file_fs.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-disk
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_disk.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-logical
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_logical.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-scsi
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_scsi.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-iscsi
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_iscsi.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%files daemon-driver-storage-mpath
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_mpath.so
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_gluster}
Daniel P. Berrange a74ea3
%files daemon-driver-storage-gluster
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_gluster.so
Daniel P. Berrangé 061231
%{_libdir}/%{name}/storage-file/libvirt_storage_file_gluster.so
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_rbd}
Daniel P. Berrange a74ea3
%files daemon-driver-storage-rbd
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_rbd.so
Daniel P. Berrange a74ea3
%endif
Daniel P. Berrange a74ea3
Daniel P. Berrange a74ea3
%if %{with_storage_sheepdog}
Daniel P. Berrange a74ea3
%files daemon-driver-storage-sheepdog
Daniel P. Berrange a74ea3
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_sheepdog.so
Daniel P. Berrange a74ea3
%endif
Daniel Veillard 544ad4
Daniel P. Berrange 7335ed
%if %{with_storage_zfs}
Daniel P. Berrange 7335ed
%files daemon-driver-storage-zfs
Daniel P. Berrange 7335ed
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_zfs.so
Daniel P. Berrange 7335ed
%endif
Daniel P. Berrange 7335ed
Daniel P. Berrange 47ca46
%if %{with_qemu}
Daniel Veillard 544ad4
%files daemon-driver-qemu
0223d5
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/libvirt/qemu.conf
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/libvirt/qemu-lockd.conf
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.qemu
Daniel P. Berrange 65efaa
%ghost %dir %attr(0700, root, root) %{_localstatedir}/run/libvirt/qemu/
Daniel P. Berrange 93cadb
%dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/
Daniel P. Berrange 65efaa
%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/cache/libvirt/qemu/
Daniel P. Berrange 65efaa
%{_datadir}/augeas/lenses/libvirtd_qemu.aug
Daniel P. Berrange 65efaa
%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_qemu.so
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel Veillard 544ad4
%files daemon-driver-lxc
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/lxc/
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/libvirt/lxc.conf
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.lxc
Daniel P. Berrange 65efaa
%ghost %dir %{_localstatedir}/run/libvirt/lxc/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/lxc/
Daniel P. Berrange 65efaa
%{_datadir}/augeas/lenses/libvirtd_lxc.aug
Daniel P. Berrange 65efaa
%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
Daniel P. Berrange 65efaa
%attr(0755, root, root) %{_libexecdir}/libvirt_lxc
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_lxc.so
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel Veillard 544ad4
%files daemon-driver-uml
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/uml/
Daniel P. Berrange 65efaa
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.uml
Daniel P. Berrange 65efaa
%ghost %dir %{_localstatedir}/run/libvirt/uml/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/uml/
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_uml.so
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_libxl}
Daniel Veillard 544ad4
%files daemon-driver-libxl
5f1a42
%config(noreplace) %{_sysconfdir}/libvirt/libxl.conf
Daniel P. Berrange c81949
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.libxl
5f1a42
%config(noreplace) %{_sysconfdir}/libvirt/libxl-lockd.conf
5f1a42
%{_datadir}/augeas/lenses/libvirtd_libxl.aug
5f1a42
%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/libxl/
Daniel P. Berrange 65efaa
%ghost %dir %{_localstatedir}/run/libvirt/libxl/
Daniel P. Berrange 65efaa
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/
Daniel Veillard 544ad4
%{_libdir}/%{name}/connection-driver/libvirt_driver_libxl.so
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e80c83
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange e80c83
%files daemon-driver-vbox
Daniel P. Berrange e80c83
%{_libdir}/%{name}/connection-driver/libvirt_driver_vbox.so
Daniel P. Berrange 47ca46
%endif
Daniel Veillard 544ad4
Daniel P. Berrange 47ca46
%if %{with_qemu_tcg}
Daniel P. Berrange e6d978
%files daemon-qemu
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_qemu_kvm}
Daniel P. Berrange e6d978
%files daemon-kvm
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_lxc}
Daniel P. Berrange e6d978
%files daemon-lxc
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrange 47ca46
%if %{with_uml}
Daniel P. Berrange e6d978
%files daemon-uml
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e6d978
Daniel P. Berrangé 4fd635
%if %{with_libxl}
Daniel P. Berrange e6d978
%files daemon-xen
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange e80c83
Daniel P. Berrange 47ca46
%if %{with_vbox}
Daniel P. Berrange e80c83
%files daemon-vbox
Daniel P. Berrange 47ca46
%endif
Daniel P. Berrange 96a520
Daniel Veillard e79d30
%if %{with_sanlock}
Daniel Veillard e79d30
%files lock-sanlock
Daniel P. Berrange 350081
    %if %{with_qemu}
Daniel Veillard d7b412
%config(noreplace) %{_sysconfdir}/libvirt/qemu-sanlock.conf
Daniel P. Berrange 350081
    %endif
ee3bf3
    %if %{with_libxl}
ee3bf3
%config(noreplace) %{_sysconfdir}/libvirt/libxl-sanlock.conf
ee3bf3
    %endif
Daniel Veillard e79d30
%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/sanlock.so
Daniel Veillard d7b412
%{_datadir}/augeas/lenses/libvirt_sanlock.aug
Daniel Veillard d7b412
%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
Daniel Veillard c363c7
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/sanlock
Daniel Veillard d7b412
%{_sbindir}/virt-sanlock-cleanup
Daniel Veillard d7b412
%{_mandir}/man8/virt-sanlock-cleanup.8*
Daniel P. Berrange 8cc508
%attr(0755, root, root) %{_libexecdir}/libvirt_sanlock_helper
Daniel Veillard e79d30
%endif
Daniel Veillard e79d30
Daniel P. Berrange b1ac7b
%files client
Daniel Veillard a3e1cc
%{_mandir}/man1/virsh.1*
Daniel Veillard a3e1cc
%{_mandir}/man1/virt-xml-validate.1*
Daniel Veillard 6383d6
%{_mandir}/man1/virt-pki-validate.1*
Daniel P. Berrange e9c1d3
%{_mandir}/man1/virt-host-validate.1*
Daniel Veillard a3e1cc
%{_bindir}/virsh
Daniel Veillard a3e1cc
%{_bindir}/virt-xml-validate
Daniel Veillard 6383d6
%{_bindir}/virt-pki-validate
Daniel P. Berrange e9c1d3
%{_bindir}/virt-host-validate
Daniel Veillard a3e1cc
96b1b1
%{_datadir}/systemtap/tapset/libvirt_probes*.stp
Daniel P. Berrange 6763b2
%{_datadir}/systemtap/tapset/libvirt_functions.stp
Daniel P. Berrangé 061231
%if %{with_qemu}
Daniel P. Berrangé 061231
%{_datadir}/systemtap/tapset/libvirt_qemu_probes*.stp
Daniel P. Berrangé 061231
%endif
Daniel P. Berrange 6763b2
Daniel P. Berrange 0ca715
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
%{_datadir}/bash-completion/completions/virsh
Daniel P. Berrange 0ca715
%endif
Daniel P. Berrange 0ca715
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%if %{with_systemd}
Daniel P. Berrange b1ac7b
%{_unitdir}/libvirt-guests.service
Daniel P. Berrange b1ac7b
%else
Daniel P. Berrange b1ac7b
%{_sysconfdir}/rc.d/init.d/libvirt-guests
Daniel P. Berrange b1ac7b
%endif
Daniel P. Berrange b1ac7b
%config(noreplace) %{_sysconfdir}/sysconfig/libvirt-guests
Daniel P. Berrange b1ac7b
%attr(0755, root, root) %{_libexecdir}/libvirt-guests.sh
Daniel P. Berrange b1ac7b
Daniel P. Berrange b1ac7b
%files libs -f %{name}.lang
Daniel P. Berrange 051644
# RHEL6 doesn't have 'license' macro
Daniel P. Berrange 051644
%{!?_licensedir:%global license %%doc}
Daniel P. Berrange 051644
%license COPYING COPYING.LESSER
Daniel P. Berrange b1ac7b
%config(noreplace) %{_sysconfdir}/libvirt/libvirt.conf
Daniel P. Berrange b1ac7b
%config(noreplace) %{_sysconfdir}/libvirt/libvirt-admin.conf
Daniel P. Berrange b1ac7b
%{_libdir}/libvirt.so.*
Daniel P. Berrange b1ac7b
%{_libdir}/libvirt-qemu.so.*
Daniel P. Berrange b1ac7b
%{_libdir}/libvirt-lxc.so.*
Daniel P. Berrange b1ac7b
%{_libdir}/libvirt-admin.so.*
Daniel Veillard a3e1cc
%dir %{_datadir}/libvirt/
Daniel Veillard a3e1cc
%dir %{_datadir}/libvirt/schemas/
Daniel P. Berrange b1ac7b
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/
Daniel Veillard a3e1cc
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/basictypes.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/capability.rng
Daniel P. Berrange 67cfa3
%{_datadir}/libvirt/schemas/cputypes.rng
Daniel Veillard a3e1cc
%{_datadir}/libvirt/schemas/domain.rng
9f9eae
%{_datadir}/libvirt/schemas/domaincaps.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/domaincommon.rng
Daniel Veillard 7e9981
%{_datadir}/libvirt/schemas/domainsnapshot.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/interface.rng
Daniel Veillard a3e1cc
%{_datadir}/libvirt/schemas/network.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/networkcommon.rng
Daniel Veillard a3e1cc
%{_datadir}/libvirt/schemas/nodedev.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/nwfilter.rng
Mark McLoughlin e4bf8f
%{_datadir}/libvirt/schemas/secret.rng
Daniel P. Berrange f40b46
%{_datadir}/libvirt/schemas/storagecommon.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/storagepool.rng
Daniel Veillard a6831c
%{_datadir}/libvirt/schemas/storagevol.rng
Daniel Veillard a3e1cc
Daniel Veillard 4717aa
%{_datadir}/libvirt/cpu_map.xml
Daniel Veillard 4717aa
Daniel P. Berrange 2c49d1
%{_datadir}/libvirt/test-screenshot.png
Daniel P. Berrange 2c49d1
Daniel Veillard a3e1cc
%config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
Daniel Veillard a3e1cc
Daniel P. Berrange b1ac7b
%files admin
Daniel P. Berrange b1ac7b
%{_mandir}/man1/virt-admin.1*
Daniel P. Berrange b1ac7b
%{_bindir}/virt-admin
Daniel P. Berrangé 48941c
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
%{_datadir}/bash-completion/completions/virt-admin
Daniel P. Berrangé 48941c
%endif
Daniel P. Berrange b1ac7b
Daniel P. Berrangé 48941c
%if %{with_bash_completion}
Daniel P. Berrangé 48941c
%files bash-completion
Daniel P. Berrangé 48941c
%{_datadir}/bash-completion/completions/vsh
Daniel P. Berrangé 48941c
%endif
Daniel P. Berrange b1ac7b
Daniel P. Berrange 1b8b75
%if %{with_wireshark}
Daniel P. Berrange 1b8b75
%files wireshark
Daniel P. Berrangé a88867
%{wireshark_plugindir}/libvirt.so
Daniel P. Berrange 1b8b75
%endif
Daniel P. Berrange 1b8b75
0debbf
%files nss
0debbf
%{_libdir}/libnss_libvirt.so.2
Daniel P. Berrange 2c49d1
%{_libdir}/libnss_libvirt_guest.so.2
0debbf
Daniel Veillard c5c28b
%if %{with_lxc}
Daniel Veillard c5c28b
%files login-shell
Daniel P. Berrange 8c9e40
%attr(4750, root, virtlogin) %{_bindir}/virt-login-shell
Daniel Veillard c5c28b
%config(noreplace) %{_sysconfdir}/libvirt/virt-login-shell.conf
Daniel Veillard c5c28b
%{_mandir}/man1/virt-login-shell.1*
Daniel Veillard c5c28b
%endif
Daniel Veillard c5c28b
Daniel Veillard e2b90f
%files devel
Daniel P. Berrange f7f509
%{_libdir}/libvirt.so
Daniel P. Berrange a4bf27
%{_libdir}/libvirt-admin.so
Daniel P. Berrange f7f509
%{_libdir}/libvirt-qemu.so
Daniel P. Berrange f7f509
%{_libdir}/libvirt-lxc.so
Daniel Veillard deefad
%dir %{_includedir}/libvirt
Daniel P. Berrange f7f509
%{_includedir}/libvirt/virterror.h
Daniel P. Berrange f7f509
%{_includedir}/libvirt/libvirt.h
Daniel P. Berrange a4bf27
%{_includedir}/libvirt/libvirt-admin.h
Daniel P. Berrange 4a9c74
%{_includedir}/libvirt/libvirt-common.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-domain.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-domain-snapshot.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-event.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-host.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-interface.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-network.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-nodedev.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-nwfilter.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-secret.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-storage.h
Daniel Veillard e63e20
%{_includedir}/libvirt/libvirt-stream.h
Daniel P. Berrange f7f509
%{_includedir}/libvirt/libvirt-qemu.h
Daniel P. Berrange f7f509
%{_includedir}/libvirt/libvirt-lxc.h
Daniel Veillard e2b90f
%{_libdir}/pkgconfig/libvirt.pc
Daniel P. Berrange a4bf27
%{_libdir}/pkgconfig/libvirt-admin.pc
Daniel P. Berrange f7f509
%{_libdir}/pkgconfig/libvirt-qemu.pc
Daniel P. Berrange f7f509
%{_libdir}/pkgconfig/libvirt-lxc.pc
Daniel Veillard e2b90f
Daniel P. Berrange 6398d1
%dir %{_datadir}/libvirt/api/
Daniel P. Berrange 6398d1
%{_datadir}/libvirt/api/libvirt-api.xml
Daniel P. Berrange a4bf27
%{_datadir}/libvirt/api/libvirt-admin-api.xml
Daniel P. Berrange 6398d1
%{_datadir}/libvirt/api/libvirt-qemu-api.xml
Daniel P. Berrange 350081
%{_datadir}/libvirt/api/libvirt-lxc-api.xml
611b2e
# Needed building python bindings
Daniel Veillard e2b90f
%doc docs/libvirt-api.xml
611b2e
Daniel Veillard e2b90f
Daniel Veillard e2b90f
%changelog
Daniel P. Berrangé 061231
* Tue June  5 2018 Daniel P. Berrangé <berrange@redhat.com> - 4.4.0-1
Daniel P. Berrangé 061231
- Update to 4.4.0 release
Daniel P. Berrangé 061231
Daniel P. Berrangé 4fd635
* Thu May  3 2018 Daniel P. Berrangé <berrange@redhat.com> - 4.3.0-1
Daniel P. Berrangé 061231
- Update to 4.3.0 release
Daniel P. Berrangé 4fd635
Daniel P. Berrangé 6210c4
* Tue Apr  3 2018 Daniel P. Berrangé <berrange@redhat.com> - 4.2.0-1
Daniel P. Berrangé 6210c4
- Update to 4.2.0 release
Daniel P. Berrangé 6210c4
Iryna Shcherbina 82926c
* Fri Mar 23 2018 Iryna Shcherbina <ishcherb@redhat.com> - 4.1.0-3
Iryna Shcherbina 82926c
- Update Python 2 dependency declarations to new packaging standards
Iryna Shcherbina 82926c
  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
Iryna Shcherbina 82926c
Daniel P. Berrangé e7a3ca
* Wed Mar 21 2018 Daniel P. Berrangé <berrange@redhat.com> - 4.1.0-2
Daniel P. Berrangé e7a3ca
- Fix systemd macro argument with line continuations (rhbz#1558648)
Daniel P. Berrangé e7a3ca
Daniel P. Berrangé 48941c
* Mon Mar  5 2018 Daniel Berrange <berrange@redhat.com> - 4.1.0-1
Daniel P. Berrangé 48941c
- Rebase to version 4.1.0
Daniel P. Berrangé 48941c
Fedora Release Engineering 6efd96
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-2
Fedora Release Engineering 6efd96
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Fedora Release Engineering 6efd96
Daniel P. Berrange 0ca715
* Fri Jan 19 2018 Daniel P. Berrange <berrange@redhat.com> - 4.0.0-1
Daniel P. Berrange 0ca715
- Rebase to version 4.0.0
Daniel P. Berrange 0ca715
0f5d8c
* Wed Dec 20 2017 Cole Robinson <crobinso@redhat.com> - 3.10.0-2
0f5d8c
- Rebuild for xen 4.10
0f5d8c
Daniel P. Berrange a56bcb
* Tue Dec  5 2017 Daniel P. Berrange <berrange@redhat.com> - 3.10.0-1
Daniel P. Berrange a56bcb
- Rebase to version 3.10.0
Daniel P. Berrange a56bcb
Daniel P. Berrange 89c3fa
* Fri Nov  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.9.0-1
Daniel P. Berrange 89c3fa
- Rebase to version 3.9.0
Daniel P. Berrange 89c3fa
Daniel P. Berrange 051644
* Wed Oct  4 2017 Daniel P. Berrange <berrange@redhat.com> - 3.8.0-1
Daniel P. Berrange 051644
- Rebase to version 3.8.0
Daniel P. Berrange 051644
Daniel P. Berrange 2a9c28
* Mon Sep  4 2017 Daniel P. Berrange <berrange@redhat.com> - 3.7.0-1
Daniel P. Berrange 2a9c28
- Rebase to version 3.7.0
Daniel P. Berrange 2a9c28
Daniel P. Berrange 7335ed
* Wed Aug  2 2017 Daniel P. Berrange <berrange@redhat.com> - 3.6.0-1
Daniel P. Berrange 7335ed
- Rebase to version 3.6.0
Daniel P. Berrange 7335ed
6c92ba
* Sun Jul 30 2017 Florian Weimer <fweimer@redhat.com> - 3.5.0-4
6c92ba
- Rebuild with binutils fix for ppc64le (#1475636)
6c92ba
Daniel P. Berrange 3f56aa
* Tue Jul 25 2017 Daniel P. Berrange <berrange@redhat.com> - 3.5.0-3
Daniel P. Berrange 446f68
- Disabled RBD on i386, arm, ppc64 (rhbz #1474743)
Daniel P. Berrange 3f56aa
cb0cfa
* Mon Jul 17 2017 Cole Robinson <crobinso@redhat.com> - 3.5.0-2
cb0cfa
- Rebuild for xen 4.9
cb0cfa
Daniel P. Berrange 99d3a0
* Thu Jul  6 2017 Daniel P. Berrange <berrange@redhat.com> - 3.5.0-1
Daniel P. Berrange 99d3a0
- Rebase to version 3.5.0
Daniel P. Berrange 99d3a0
Daniel P. Berrange b73e50
* Fri Jun  2 2017 Daniel P. Berrange <berrange@redhat.com> - 3.4.0-1
Daniel P. Berrange b73e50
- Rebase to version 3.4.0
Daniel P. Berrange b73e50
Daniel P. Berrange b23ff9
* Mon May  8 2017 Daniel P. Berrange <berrange@redhat.com> - 3.3.0-1
Daniel P. Berrange b23ff9
- Rebase to version 3.3.0
Daniel P. Berrange b23ff9
Daniel P. Berrange 04cb28
* Mon Apr  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.2.0-1
Daniel P. Berrange 04cb28
- Rebase to version 3.2.0
Daniel P. Berrange 04cb28
Daniel P. Berrange a74ea3
* Fri Mar  3 2017 Daniel P. Berrange <berrange@redhat.com> - 3.1.0-1
Daniel P. Berrange a74ea3
- Rebase to version 3.1.0
Daniel P. Berrange a74ea3
Fedora Release Engineering 98ed6b
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.0-2
Fedora Release Engineering 98ed6b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
Fedora Release Engineering 98ed6b
Daniel P. Berrange 2c49d1
* Thu Jan 19 2017 Daniel P. Berrange <berrange@redhat.com> - 3.0.0-1
Daniel P. Berrange 2c49d1
- Rebase to version 3.0.0