The new _without_native knob makes it possible to skip the native
build completely and build for MinGW only.
Best viewed with 'git show -w'.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
libvirt.spec.in | 395 +++++++++++++++++++++++++-----------------------
1 file changed, 210 insertions(+), 185 deletions(-)
diff --git a/libvirt.spec.in b/libvirt.spec.in
index 75fd0a2771..9626de4662 100644
--- a/libvirt.spec.in
+++ b/libvirt.spec.in
@@ -203,6 +203,9 @@
%define qemu_moddir %{_libdir}/qemu
%define qemu_datadir %{_datadir}/qemu
+# Native / MinGW builds
+%define with_native 0%{!?_without_native:1}
+
%define with_mingw32 0
%define with_mingw64 0
@@ -218,6 +221,13 @@
%define mingw_build_win64 %{with_mingw64}
%endif
+%if !%{with_native}
+ # Building the debugsource package apparently only works if the
+ # native build is enabled. debuginfo packages don't have this
+ # problem and setting this doesn't disable them
+ %global debug_package %{nil}
+%endif
+
# RHEL releases provide stable tool chains and so it is safe to turn
# compiler warning into errors without being worried about frequent
# changes in reported warnings
@@ -305,10 +315,11 @@ BuildRequires: systemd-rpm-macros
BuildRequires: rpcgen
# Fedora build root suckage
BuildRequires: gawk
+%if %{with_native}
BuildRequires: gcc
-%if %{with_libxl}
+ %if %{with_libxl}
BuildRequires: xen-devel
-%endif
+ %endif
BuildRequires: glib2-devel >= 2.56
BuildRequires: libxml2-devel
BuildRequires: readline-devel
@@ -323,9 +334,9 @@ BuildRequires: augeas
BuildRequires: systemd-devel >= 185
BuildRequires: libpciaccess-devel >= 0.10.9
BuildRequires: yajl-devel
-%if %{with_sanlock}
+ %if %{with_sanlock}
BuildRequires: sanlock-devel >= 2.4
-%endif
+ %endif
BuildRequires: libpcap-devel >= 1.5.0
BuildRequires: libnl3-devel
BuildRequires: libselinux-devel
@@ -337,59 +348,59 @@ BuildRequires: cyrus-sasl-devel
BuildRequires: polkit >= 0.112
# For mount/umount in FS driver
BuildRequires: util-linux
-%if %{with_qemu}
+ %if %{with_qemu}
# For managing ACLs
BuildRequires: libacl-devel
# From QEMU RPMs, used by virstoragetest
BuildRequires: /usr/bin/qemu-img
-%endif
+ %endif
# nbdkit support requires libnbd
-%if %{with_nbdkit}
+ %if %{with_nbdkit}
BuildRequires: libnbd-devel
-%endif
+ %endif
# For LVM drivers
BuildRequires: lvm2
# For pool type=iscsi
BuildRequires: iscsi-initiator-utils
-%if %{with_storage_iscsi_direct}
+ %if %{with_storage_iscsi_direct}
# For pool type=iscsi-direct
BuildRequires: libiscsi-devel
-%endif
+ %endif
# For disk driver
BuildRequires: parted-devel
# For Multipath support
BuildRequires: device-mapper-devel
-%if %{with_storage_rbd}
+ %if %{with_storage_rbd}
BuildRequires: librados-devel
BuildRequires: librbd-devel
-%endif
-%if %{with_storage_gluster}
+ %endif
+ %if %{with_storage_gluster}
BuildRequires: glusterfs-api-devel >= 3.4.1
BuildRequires: glusterfs-devel >= 3.4.1
-%endif
-%if %{with_numactl}
+ %endif
+ %if %{with_numactl}
# For QEMU/LXC numa info
BuildRequires: numactl-devel
-%endif
+ %endif
BuildRequires: libcap-ng-devel >= 0.5.0
-%if %{with_fuse}
+ %if %{with_fuse}
BuildRequires: fuse-devel >= 2.8.6
-%endif
-%if %{with_libssh2}
+ %endif
+ %if %{with_libssh2}
BuildRequires: libssh2-devel >= 1.3.0
-%endif
-%if %{with_netcf}
+ %endif
+ %if %{with_netcf}
BuildRequires: netcf-devel >= 0.2.2
-%endif
-%if 0%{?fedora} || 0%{?rhel} >= 9
+ %endif
+ %if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: passt
-%endif
-%if %{with_esx}
+ %endif
+ %if %{with_esx}
BuildRequires: libcurl-devel
-%endif
-%if %{with_hyperv}
+ %endif
+ %if %{with_hyperv}
BuildRequires: libwsman-devel >= 2.6.3
-%endif
+ %endif
BuildRequires: audit-libs-devel
# we need /usr/sbin/dtrace
BuildRequires: systemtap-sdt-devel
@@ -399,19 +410,20 @@ BuildRequires: util-linux
BuildRequires: nfs-utils
# For storage wiping with different algorithms
BuildRequires: scrub
-%if %{with_numad}
+ %if %{with_numad}
BuildRequires: numad
-%endif
-%if %{with_wireshark}
+ %endif
+ %if %{with_wireshark}
BuildRequires: wireshark-devel
-%endif
-%if %{with_libssh}
+ %endif
+ %if %{with_libssh}
BuildRequires: libssh-devel >= 0.8.1
-%endif
+ %endif
BuildRequires: libtirpc-devel
+ %if %{with_firewalld_zone}
# Needed for the firewalld_reload macro
-%if %{with_firewalld_zone}
BuildRequires: firewalld-filesystem
+ %endif
%endif
%if %{with_mingw32}
@@ -450,6 +462,7 @@ Libvirt is a C toolkit to interact with the virtualization
capabilities
of recent versions of Linux (and other OSes). The main package includes
the libvirtd server exporting the virtualization support.
+%if %{with_native}
%package docs
Summary: API reference and website documentation
@@ -489,10 +502,10 @@ Requires: iproute
# for /sbin/tc
Requires: iproute-tc
Requires: polkit >= 0.112
-%if %{with_dmidecode}
+ %if %{with_dmidecode}
# For virConnectGetSysinfo
Requires: dmidecode
-%endif
+ %endif
# For service management
Requires(posttrans): /usr/bin/systemctl
Requires(preun): /usr/bin/systemctl
@@ -501,11 +514,11 @@ Requires: dbus
# For uid creation during pre
Requires(pre): shadow-utils
# Needed by /usr/libexec/libvirt-guests.sh script.
-%if 0%{?fedora}
+ %if 0%{?fedora}
Requires: gettext-runtime
-%else
+ %else
Requires: gettext
-%endif
+ %endif
# Ensure smooth upgrades
Obsoletes: libvirt-admin < 7.3.0
@@ -613,9 +626,9 @@ capabilities.
Summary: Interface driver plugin for the libvirtd daemon
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-libs = %{version}-%{release}
-%if %{with_netcf}
+ %if %{with_netcf}
Requires: netcf-libs >= 0.2.2
-%endif
+ %endif
%description daemon-driver-interface
The interface driver plugin for the libvirtd daemon, providing
@@ -637,13 +650,13 @@ Requires: libvirt-libs = %{version}-%{release}
Requires: nfs-utils
# For mkfs
Requires: util-linux
-%if %{with_qemu}
+ %if %{with_qemu}
# From QEMU RPMs
Requires: /usr/bin/qemu-img
-%endif
-%if !%{with_storage_rbd}
+ %endif
+ %if !%{with_storage_rbd}
Obsoletes: libvirt-daemon-driver-storage-rbd < 5.2.0
-%endif
+ %endif
Obsoletes: libvirt-daemon-driver-storage-sheepdog < 8.8.0
%description daemon-driver-storage-core
@@ -691,7 +704,7 @@ Requires: iscsi-initiator-utils
The storage driver backend adding implementation of the storage APIs for iscsi
volumes using the host iscsi stack.
-%if %{with_storage_iscsi_direct}
+ %if %{with_storage_iscsi_direct}
%package daemon-driver-storage-iscsi-direct
Summary: Storage driver plugin for iscsi-direct
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -700,7 +713,7 @@ Requires: libvirt-libs = %{version}-%{release}
%description daemon-driver-storage-iscsi-direct
The storage driver backend adding implementation of the storage APIs for iscsi
volumes using libiscsi direct connection.
-%endif
+ %endif
%package daemon-driver-storage-mpath
Summary: Storage driver plugin for multipath volumes
@@ -712,24 +725,24 @@ Requires: device-mapper
The storage driver backend adding implementation of the storage APIs for
multipath storage using device mapper.
-%if %{with_storage_gluster}
+ %if %{with_storage_gluster}
%package daemon-driver-storage-gluster
Summary: Storage driver plugin for gluster
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
Requires: libvirt-libs = %{version}-%{release}
- %if 0%{?fedora}
+ %if 0%{?fedora}
Requires: glusterfs-client >= 2.0.1
- %endif
- %if 0%{?fedora} || 0%{?with_storage_gluster}
+ %endif
+ %if 0%{?fedora} || 0%{?with_storage_gluster}
Requires: /usr/sbin/gluster
- %endif
+ %endif
%description daemon-driver-storage-gluster
The storage driver backend adding implementation of the storage APIs for gluster
volumes using libgfapi.
-%endif
+ %endif
-%if %{with_storage_rbd}
+ %if %{with_storage_rbd}
%package daemon-driver-storage-rbd
Summary: Storage driver plugin for rbd
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -738,9 +751,9 @@ Requires: libvirt-libs = %{version}-%{release}
%description daemon-driver-storage-rbd
The storage driver backend adding implementation of the storage APIs for rbd
volumes using the ceph protocol.
-%endif
+ %endif
-%if %{with_storage_zfs}
+ %if %{with_storage_zfs}
%package daemon-driver-storage-zfs
Summary: Storage driver plugin for ZFS
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -752,7 +765,7 @@ Requires: /sbin/zpool
%description daemon-driver-storage-zfs
The storage driver backend adding implementation of the storage APIs for
ZFS volumes.
-%endif
+ %endif
%package daemon-driver-storage
Summary: Storage driver plugin including all backends for the libvirtd daemon
@@ -762,25 +775,25 @@ Requires: libvirt-daemon-driver-storage-logical =
%{version}-%{release}
Requires: libvirt-daemon-driver-storage-scsi = %{version}-%{release}
Requires: libvirt-daemon-driver-storage-iscsi = %{version}-%{release}
Requires: libvirt-daemon-driver-storage-mpath = %{version}-%{release}
-%if %{with_storage_iscsi_direct}
+ %if %{with_storage_iscsi_direct}
Requires: libvirt-daemon-driver-storage-iscsi-direct = %{version}-%{release}
-%endif
-%if %{with_storage_gluster}
+ %endif
+ %if %{with_storage_gluster}
Requires: libvirt-daemon-driver-storage-gluster = %{version}-%{release}
-%endif
-%if %{with_storage_rbd}
+ %endif
+ %if %{with_storage_rbd}
Requires: libvirt-daemon-driver-storage-rbd = %{version}-%{release}
-%endif
-%if %{with_storage_zfs}
+ %endif
+ %if %{with_storage_zfs}
Requires: libvirt-daemon-driver-storage-zfs = %{version}-%{release}
-%endif
+ %endif
%description daemon-driver-storage
The storage driver plugin for the libvirtd daemon, providing
an implementation of the storage APIs using LVM, iSCSI,
parted and more.
-%if %{with_qemu}
+ %if %{with_qemu}
%package daemon-driver-qemu
Summary: QEMU driver plugin for the libvirtd daemon
Requires: libvirt-daemon-common = %{version}-%{release}
@@ -794,26 +807,26 @@ Requires: lzop
Requires: xz
Requires: systemd-container
Requires: swtpm-tools
- %if %{with_numad}
+ %if %{with_numad}
Requires: numad
- %endif
- %if 0%{?fedora} || 0%{?rhel} >= 9
+ %endif
+ %if 0%{?fedora} || 0%{?rhel} >= 9
Recommends: passt
Recommends: passt-selinux
- %endif
- %if %{with_nbdkit}
+ %endif
+ %if %{with_nbdkit}
Recommends: nbdkit
Recommends: nbdkit-curl-plugin
Recommends: nbdkit-ssh-plugin
- %endif
+ %endif
%description daemon-driver-qemu
The qemu driver plugin for the libvirtd daemon, providing
an implementation of the hypervisor driver APIs using
QEMU
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%package daemon-driver-lxc
Summary: LXC driver plugin for the libvirtd daemon
Requires: libvirt-daemon-common = %{version}-%{release}
@@ -823,17 +836,17 @@ Requires: libvirt-daemon-driver-network = %{version}-%{release}
Requires: systemd-container
# for modprobe of nbd driver
Requires: module-init-tools
- %if %{with_numad}
+ %if %{with_numad}
Requires: numad
- %endif
+ %endif
%description daemon-driver-lxc
The LXC driver plugin for the libvirtd daemon, providing
an implementation of the hypervisor driver APIs using
the Linux kernel
-%endif
+ %endif
-%if %{with_vbox}
+ %if %{with_vbox}
%package daemon-driver-vbox
Summary: VirtualBox driver plugin for the libvirtd daemon
Requires: libvirt-daemon-common = %{version}-%{release}
@@ -843,9 +856,9 @@ Requires: libvirt-libs = %{version}-%{release}
The vbox driver plugin for the libvirtd daemon, providing
an implementation of the hypervisor driver APIs using
VirtualBox
-%endif
+ %endif
-%if %{with_libxl}
+ %if %{with_libxl}
%package daemon-driver-libxl
Summary: Libxl driver plugin for the libvirtd daemon
Requires: libvirt-daemon-common = %{version}-%{release}
@@ -856,22 +869,22 @@ Obsoletes: libvirt-daemon-driver-xen < 4.3.0
The Libxl driver plugin for the libvirtd daemon, providing
an implementation of the hypervisor driver APIs using
Libxl
-%endif
+ %endif
-%if %{with_qemu_tcg}
+ %if %{with_qemu_tcg}
%package daemon-qemu
Summary: Server side daemon & driver required to run QEMU guests
- %if %{with_modular_daemons}
+ %if %{with_modular_daemons}
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-daemon-log = %{version}-%{release}
Requires: libvirt-daemon-lock = %{version}-%{release}
Requires: libvirt-daemon-plugin-lockd = %{version}-%{release}
Requires: libvirt-daemon-proxy = %{version}-%{release}
Recommends: libvirt-daemon = %{version}-%{release}
- %else
+ %else
Requires: libvirt-daemon = %{version}-%{release}
- %endif
+ %endif
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
@@ -884,22 +897,22 @@ Requires: qemu
%description daemon-qemu
Server side daemon and driver required to manage the virtualization
capabilities of the QEMU TCG emulators
-%endif
+ %endif
-%if %{with_qemu_kvm}
+ %if %{with_qemu_kvm}
%package daemon-kvm
Summary: Server side daemon & driver required to run KVM guests
- %if %{with_modular_daemons}
+ %if %{with_modular_daemons}
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-daemon-log = %{version}-%{release}
Requires: libvirt-daemon-lock = %{version}-%{release}
Requires: libvirt-daemon-plugin-lockd = %{version}-%{release}
Requires: libvirt-daemon-proxy = %{version}-%{release}
Recommends: libvirt-daemon = %{version}-%{release}
- %else
+ %else
Requires: libvirt-daemon = %{version}-%{release}
- %endif
+ %endif
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
@@ -912,19 +925,19 @@ Requires: qemu-kvm
%description daemon-kvm
Server side daemon and driver required to manage the virtualization
capabilities of the KVM hypervisor
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%package daemon-lxc
Summary: Server side daemon & driver required to run LXC guests
- %if %{with_modular_daemons}
+ %if %{with_modular_daemons}
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-daemon-proxy = %{version}-%{release}
Recommends: libvirt-daemon = %{version}-%{release}
- %else
+ %else
Requires: libvirt-daemon = %{version}-%{release}
- %endif
+ %endif
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
@@ -936,21 +949,21 @@ Requires: libvirt-daemon-driver-storage = %{version}-%{release}
%description daemon-lxc
Server side daemon and driver required to manage the virtualization
capabilities of LXC
-%endif
+ %endif
-%if %{with_libxl}
+ %if %{with_libxl}
%package daemon-xen
Summary: Server side daemon & driver required to run XEN guests
- %if %{with_modular_daemons}
+ %if %{with_modular_daemons}
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-daemon-lock = %{version}-%{release}
Requires: libvirt-daemon-plugin-lockd = %{version}-%{release}
Requires: libvirt-daemon-proxy = %{version}-%{release}
Recommends: libvirt-daemon = %{version}-%{release}
- %else
+ %else
Requires: libvirt-daemon = %{version}-%{release}
- %endif
+ %endif
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
@@ -963,19 +976,19 @@ Requires: xen
%description daemon-xen
Server side daemon and driver required to manage the virtualization
capabilities of XEN
-%endif
+ %endif
-%if %{with_vbox}
+ %if %{with_vbox}
%package daemon-vbox
Summary: Server side daemon & driver required to run VirtualBox guests
- %if %{with_modular_daemons}
+ %if %{with_modular_daemons}
Requires: libvirt-daemon-common = %{version}-%{release}
Requires: libvirt-daemon-proxy = %{version}-%{release}
Recommends: libvirt-daemon = %{version}-%{release}
- %else
+ %else
Requires: libvirt-daemon = %{version}-%{release}
- %endif
+ %endif
Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
@@ -987,7 +1000,7 @@ Requires: libvirt-daemon-driver-storage = %{version}-%{release}
%description daemon-vbox
Server side daemon and driver required to manage the virtualization
capabilities of VirtualBox
-%endif
+ %endif
%package client
Summary: Client side utilities of the libvirt library
@@ -1024,7 +1037,7 @@ Requires: cyrus-sasl-gssapi
%description libs
Shared libraries for accessing the libvirt daemon.
-%if %{with_wireshark}
+ %if %{with_wireshark}
%package wireshark
Summary: Wireshark dissector plugin for libvirt RPC transactions
Requires: wireshark
@@ -1032,9 +1045,9 @@ Requires: libvirt-libs = %{version}-%{release}
%description wireshark
Wireshark dissector plugin for better analysis of libvirt RPC traffic.
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%package login-shell
Summary: Login shell for connecting users to an LXC container
Requires: libvirt-libs = %{version}-%{release}
@@ -1043,7 +1056,7 @@ Requires: libvirt-libs = %{version}-%{release}
Provides the set-uid virt-login-shell binary that is used to
connect a user to an LXC container when they login, by switching
namespaces.
-%endif
+ %endif
%package devel
Summary: Libraries, includes, etc. to compile with the libvirt library
@@ -1053,7 +1066,7 @@ Requires: pkgconfig
%description devel
Include header files & development libraries for the libvirt C library.
-%if %{with_sanlock}
+ %if %{with_sanlock}
%package daemon-plugin-sanlock
Summary: Sanlock lock manager plugin for QEMU driver
Requires: sanlock >= 2.4
@@ -1066,7 +1079,7 @@ Provides: libvirt-lock-sanlock = %{version}-%{release}
%description daemon-plugin-sanlock
Includes the Sanlock lock manager plugin for the QEMU
driver
-%endif
+ %endif
%package nss
Summary: Libvirt plugin for Name Service Switch
@@ -1074,6 +1087,7 @@ Requires: libvirt-daemon-driver-network = %{version}-%{release}
%description nss
Libvirt plugin for NSS for translating domain names into IP addresses.
+%endif
%if %{with_mingw32}
%package -n mingw32-libvirt
@@ -1265,6 +1279,7 @@ exit 1
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
+%if %{with_native}
%meson \
-Drunstatedir=%{_rundir} \
-Dinitconfdir=%{_sysconfdir}/sysconfig \
@@ -1340,6 +1355,7 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y'
%{_specdir}/libvirt.spec)
%{?arg_login_shell}
%meson_build
+%endif
%if %{with_mingw32} || %{with_mingw64}
%mingw_meson \
@@ -1416,7 +1432,7 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y'
%{_specdir}/libvirt.spec)
-Dudev=disabled \
-Dwireshark_dissector=disabled \
-Dyajl=disabled
-%mingw_ninja
+ %mingw_ninja
%endif
%install
@@ -1424,6 +1440,7 @@ rm -fr %{buildroot}
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
+%if %{with_native}
%meson_install
# We don't want to install /etc/libvirt/qemu/networks in the main %%files list
@@ -1443,47 +1460,48 @@ cp -a $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml \
# libvirt saves these files with mode 600
chmod 600 $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml
-%if ! %{with_qemu}
+ %if ! %{with_qemu}
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_qemu.aug
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
-%endif
+ %endif
%find_lang %{name}
-%if ! %{with_sanlock}
+ %if ! %{with_sanlock}
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirt_sanlock.aug
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
-%endif
+ %endif
-%if ! %{with_lxc}
+ %if ! %{with_lxc}
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
-%endif
+ %endif
-%if ! %{with_qemu}
+ %if ! %{with_qemu}
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.qemu
-%endif
-%if ! %{with_lxc}
+ %endif
+ %if ! %{with_lxc}
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/lxc.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.lxc
-%endif
-%if ! %{with_libxl}
+ %endif
+ %if ! %{with_libxl}
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/libxl.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.libxl
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_libxl.aug
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
-%endif
+ %endif
# Copied into libvirt-docs subpackage eventually
mv $RPM_BUILD_ROOT%{_datadir}/doc/libvirt libvirt-docs
-%ifarch %{arches_systemtap_64bit}
+ %ifarch %{arches_systemtap_64bit}
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes.stp \
$RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes-64.stp
- %if %{with_qemu}
+ %if %{with_qemu}
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp \
$RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes-64.stp
+ %endif
%endif
%endif
@@ -1515,9 +1533,12 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh
%endif
%check
+
+%if %{with_native}
# Building on slow archs, like emulated s390x in Fedora copr, requires
# raising the test timeout
VIR_TEST_DEBUG=1 %meson_test --no-suite syntax-check --timeout-multiplier 10
+%endif
%define libvirt_rpmstatedir %{_localstatedir}/lib/rpm-state/libvirt
@@ -1663,6 +1684,7 @@ VIR_TEST_DEBUG=1 %meson_test --no-suite syntax-check
--timeout-multiplier 10
%define libvirt_systemd_config_pre() %libvirt_systemd_schedule_restart %1.service
%define libvirt_systemd_config_posttrans() %libvirt_systemd_perform_restart %1.service
+%if %{with_native}
%pre daemon
%libvirt_sysconfig_pre libvirtd
%libvirt_systemd_inet_pre libvirtd
@@ -1727,9 +1749,9 @@ exit 0
%libvirt_systemd_unix_pre virtnetworkd
%post daemon-driver-network
-%if %{with_firewalld_zone}
+ %if %{with_firewalld_zone}
%firewalld_reload
-%endif
+ %endif
%posttrans daemon-driver-network
%libvirt_sysconfig_posttrans virtnetworkd
@@ -1739,9 +1761,9 @@ exit 0
%libvirt_systemd_unix_preun virtnetworkd
%postun daemon-driver-network
-%if %{with_firewalld_zone}
+ %if %{with_firewalld_zone}
%firewalld_reload
-%endif
+ %endif
%pre daemon-driver-nwfilter
%libvirt_sysconfig_pre virtnwfilterd
@@ -1798,7 +1820,7 @@ exit 0
%preun daemon-driver-storage-core
%libvirt_systemd_unix_preun virtstoraged
-%if %{with_qemu}
+ %if %{with_qemu}
%pre daemon-driver-qemu
%libvirt_sysconfig_pre virtqemud
%libvirt_systemd_unix_pre virtqemud
@@ -1822,9 +1844,9 @@ exit 0
%preun daemon-driver-qemu
%libvirt_systemd_unix_preun virtqemud
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%pre daemon-driver-lxc
%libvirt_sysconfig_pre virtlxcd
%libvirt_systemd_unix_pre virtlxcd
@@ -1835,9 +1857,9 @@ exit 0
%preun daemon-driver-lxc
%libvirt_systemd_unix_preun virtlxcd
-%endif
+ %endif
-%if %{with_vbox}
+ %if %{with_vbox}
%pre daemon-driver-vbox
%libvirt_sysconfig_pre virtvboxd
%libvirt_systemd_unix_pre virtvboxd
@@ -1848,9 +1870,9 @@ exit 0
%preun daemon-driver-vbox
%libvirt_systemd_unix_preun virtvboxd
-%endif
+ %endif
-%if %{with_libxl}
+ %if %{with_libxl}
%pre daemon-driver-libxl
%libvirt_sysconfig_pre virtxend
%libvirt_systemd_unix_pre virtxend
@@ -1861,7 +1883,7 @@ exit 0
%preun daemon-driver-libxl
%libvirt_systemd_unix_preun virtxend
-%endif
+ %endif
%pre daemon-config-network
%libvirt_systemd_config_pre libvirtd
@@ -1926,12 +1948,14 @@ done
%libvirt_systemd_config_posttrans libvirtd
%libvirt_systemd_config_posttrans virtnwfilterd
-%if %{with_lxc}
+ %if %{with_lxc}
%pre login-shell
getent group virtlogin >/dev/null || groupadd -r virtlogin
exit 0
+ %endif
%endif
+%if %{with_native}
%files
%files docs
@@ -1992,9 +2016,9 @@ exit 0
%{_datadir}/augeas/lenses/virtlockd.aug
%{_datadir}/augeas/lenses/tests/test_virtlockd.aug
%{_datadir}/augeas/lenses/libvirt_lockd.aug
-%if %{with_qemu}
+ %if %{with_qemu}
%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
-%endif
+ %endif
%attr(0755, root, root) %{_sbindir}/virtlockd
%{_mandir}/man8/virtlockd.8*
@@ -2067,13 +2091,13 @@ exit 0
%attr(0755, root, root) %{_libexecdir}/libvirt_leaseshelper
%{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
%{_mandir}/man8/virtnetworkd.8*
-%if %{with_firewalld_zone}
+ %if %{with_firewalld_zone}
%{_prefix}/lib/firewalld/zones/libvirt.xml
%{_prefix}/lib/firewalld/zones/libvirt-routed.xml
%{_prefix}/lib/firewalld/policies/libvirt-routed-in.xml
%{_prefix}/lib/firewalld/policies/libvirt-routed-out.xml
%{_prefix}/lib/firewalld/policies/libvirt-to-host.xml
-%endif
+ %endif
%files daemon-driver-nodedev
%config(noreplace) %{_sysconfdir}/libvirt/virtnodedevd.conf
@@ -2150,31 +2174,31 @@ exit 0
%files daemon-driver-storage-iscsi
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
-%if %{with_storage_iscsi_direct}
+ %if %{with_storage_iscsi_direct}
%files daemon-driver-storage-iscsi-direct
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so
-%endif
+ %endif
%files daemon-driver-storage-mpath
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
-%if %{with_storage_gluster}
+ %if %{with_storage_gluster}
%files daemon-driver-storage-gluster
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_gluster.so
%{_libdir}/libvirt/storage-file/libvirt_storage_file_gluster.so
-%endif
+ %endif
-%if %{with_storage_rbd}
+ %if %{with_storage_rbd}
%files daemon-driver-storage-rbd
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
-%endif
+ %endif
-%if %{with_storage_zfs}
+ %if %{with_storage_zfs}
%files daemon-driver-storage-zfs
%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so
-%endif
+ %endif
-%if %{with_qemu}
+ %if %{with_qemu}
%files daemon-driver-qemu
%config(noreplace) %{_sysconfdir}/libvirt/virtqemud.conf
%config(noreplace) %{_prefix}/lib/sysctl.d/60-qemu-postcopy-migration.conf
@@ -2212,9 +2236,9 @@ exit 0
%{_bindir}/virt-qemu-run
%{_mandir}/man1/virt-qemu-run.1*
%{_mandir}/man8/virtqemud.8*
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%files daemon-driver-lxc
%config(noreplace) %{_sysconfdir}/libvirt/virtlxcd.conf
%{_datadir}/augeas/lenses/virtlxcd.aug
@@ -2236,9 +2260,9 @@ exit 0
%attr(0755, root, root) %{_libexecdir}/libvirt_lxc
%{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
%{_mandir}/man8/virtlxcd.8*
-%endif
+ %endif
-%if %{with_libxl}
+ %if %{with_libxl}
%files daemon-driver-libxl
%config(noreplace) %{_sysconfdir}/libvirt/virtxend.conf
%{_datadir}/augeas/lenses/virtxend.aug
@@ -2264,9 +2288,9 @@ exit 0
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/save/
%{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
%{_mandir}/man8/virtxend.8*
-%endif
+ %endif
-%if %{with_vbox}
+ %if %{with_vbox}
%files daemon-driver-vbox
%config(noreplace) %{_sysconfdir}/libvirt/virtvboxd.conf
%{_datadir}/augeas/lenses/virtvboxd.aug
@@ -2278,36 +2302,36 @@ exit 0
%attr(0755, root, root) %{_sbindir}/virtvboxd
%{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so
%{_mandir}/man8/virtvboxd.8*
-%endif
+ %endif
-%if %{with_qemu_tcg}
+ %if %{with_qemu_tcg}
%files daemon-qemu
-%endif
+ %endif
-%if %{with_qemu_kvm}
+ %if %{with_qemu_kvm}
%files daemon-kvm
-%endif
+ %endif
-%if %{with_lxc}
+ %if %{with_lxc}
%files daemon-lxc
-%endif
+ %endif
-%if %{with_libxl}
+ %if %{with_libxl}
%files daemon-xen
-%endif
+ %endif
-%if %{with_vbox}
+ %if %{with_vbox}
%files daemon-vbox
-%endif
+ %endif
-%if %{with_sanlock}
+ %if %{with_sanlock}
%files daemon-plugin-sanlock
- %if %{with_qemu}
+ %if %{with_qemu}
%config(noreplace) %{_sysconfdir}/libvirt/qemu-sanlock.conf
- %endif
- %if %{with_libxl}
+ %endif
+ %if %{with_libxl}
%config(noreplace) %{_sysconfdir}/libvirt/libxl-sanlock.conf
- %endif
+ %endif
%dir %attr(0755, root, root) %{_libdir}/libvirt/lock-driver/
%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/sanlock.so
%{_datadir}/augeas/lenses/libvirt_sanlock.aug
@@ -2316,7 +2340,7 @@ exit 0
%{_sbindir}/virt-sanlock-cleanup
%{_mandir}/man8/virt-sanlock-cleanup.8*
%attr(0755, root, root) %{_libexecdir}/libvirt_sanlock_helper
-%endif
+ %endif
%files client
%{_mandir}/man1/virsh.1*
@@ -2330,13 +2354,13 @@ exit 0
%{_bindir}/virt-pki-validate
%{_datadir}/bash-completion/completions/virsh
-%if %{with_qemu}
+ %if %{with_qemu}
%files client-qemu
%{_mandir}/man1/virt-qemu-qmp-proxy.1*
%{_mandir}/man1/virt-qemu-sev-validate.1*
%{_bindir}/virt-qemu-qmp-proxy
%{_bindir}/virt-qemu-sev-validate
-%endif
+ %endif
%files libs -f %{name}.lang
%license COPYING COPYING.LESSER
@@ -2351,29 +2375,29 @@ exit 0
%dir %{_datadir}/libvirt/schemas/
%{_datadir}/systemtap/tapset/libvirt_probes*.stp
%{_datadir}/systemtap/tapset/libvirt_functions.stp
-%if %{with_qemu}
+ %if %{with_qemu}
%{_datadir}/systemtap/tapset/libvirt_qemu_probes*.stp
-%endif
+ %endif
%{_datadir}/libvirt/schemas/*.rng
%{_datadir}/libvirt/cpu_map/*.xml
%{_datadir}/libvirt/test-screenshot.png
-%if %{with_wireshark}
+ %if %{with_wireshark}
%files wireshark
%{wireshark_plugindir}/libvirt.so
-%endif
+ %endif
%files nss
%{_libdir}/libnss_libvirt.so.2
%{_libdir}/libnss_libvirt_guest.so.2
-%if %{with_lxc}
+ %if %{with_lxc}
%files login-shell
%attr(4750, root, virtlogin) %{_bindir}/virt-login-shell
%{_libexecdir}/virt-login-shell-helper
%config(noreplace) %{_sysconfdir}/libvirt/virt-login-shell.conf
%{_mandir}/man1/virt-login-shell.1*
-%endif
+ %endif
%files devel
%{_libdir}/libvirt.so
@@ -2408,6 +2432,7 @@ exit 0
%{_datadir}/libvirt/api/libvirt-admin-api.xml
%{_datadir}/libvirt/api/libvirt-qemu-api.xml
%{_datadir}/libvirt/api/libvirt-lxc-api.xml
+%endif
%if %{with_mingw32}
%files -n mingw32-libvirt -f mingw32-libvirt.lang
--
2.41.0