diff --git a/libvirt.spec b/libvirt.spec index b2905fb..c184390 100644 --- a/libvirt.spec +++ b/libvirt.spec @@ -3,26 +3,15 @@ # This spec file assumes you are building on a Fedora or RHEL version # that's still supported by the vendor. It may work on other distros # or versions, but no effort will be made to ensure that going forward. -%define min_rhel 7 -%define min_fedora 31 - -%if 0%{?fedora} >= %{min_fedora} || 0%{?rhel} >= %{min_rhel} - %define supported_platform 1 -%else - %define supported_platform 0 -%endif - -# On RHEL 7 and older macro _vpath_builddir is not defined. -%if 0%{?rhel} && 0%{?rhel} <= 7 - %define _vpath_builddir %{_target_platform} -%endif +%define min_rhel 8 +%define min_fedora 33 %define arches_qemu_kvm %{ix86} x86_64 %{power64} %{arm} aarch64 s390x %if 0%{?rhel} - %if 0%{?rhel} <= 8 - %define arches_qemu_kvm x86_64 %{power64} aarch64 s390x - %else + %if 0%{?rhel} > 8 %define arches_qemu_kvm x86_64 aarch64 s390x + %else + %define arches_qemu_kvm x86_64 %{power64} aarch64 s390x %endif %endif @@ -76,26 +65,26 @@ %endif %define with_storage_gluster 0%{!?_without_storage_gluster:1} -%ifnarch %{arches_qemu_kvm} - # gluster is only built where qemu driver is enabled on RHEL 8 - %if 0%{?rhel} >= 8 +%if 0%{?rhel} + # Glusterfs has been dropped in RHEL-9, and before that + # was only enabled on arches where KVM exists + %if 0%{?rhel} > 8 %define with_storage_gluster 0 + %else + %ifnarch %{arches_qemu_kvm} + %define with_storage_gluster 0 + %endif %endif %endif -# F25+ has zfs-fuse +# Fedora has zfs-fuse %if 0%{?fedora} %define with_storage_zfs 0%{!?_without_storage_zfs:1} %else %define with_storage_zfs 0 %endif -# We need a recent enough libiscsi (>= 1.18.0) -%if 0%{?fedora} || 0%{?rhel} > 7 - %define with_storage_iscsi_direct 0%{!?_without_storage_iscsi_direct:1} -%else - %define with_storage_iscsi_direct 0 -%endif +%define with_storage_iscsi_direct 0%{!?_without_storage_iscsi_direct:1} # Other optional features %define with_numactl 0%{!?_without_numactl:1} @@ -130,9 +119,7 @@ %define with_storage_rbd 0 %endif -# RHEL doesn't ship OpenVZ, VBox, PowerHypervisor, -# VMware, libxenlight (Xen 4.1 and newer), -# or HyperV. +# RHEL doesn't ship many hypervisor drivers %if 0%{?rhel} %define with_openvz 0 %define with_vbox 0 @@ -140,15 +127,10 @@ %define with_libxl 0 %define with_hyperv 0 %define with_vz 0 - - %if 0%{?rhel} > 7 - %define with_lxc 0 - %endif + %define with_lxc 0 %endif -%if 0%{?fedora} || 0%{?rhel} > 7 - %define with_firewalld_zone 0%{!?_without_firewalld_zone:1} -%endif +%define with_firewalld_zone 0%{!?_without_firewalld_zone:1} %if (0%{?fedora} && 0%{?fedora} < 34) || (0%{?rhel} && 0%{?rhel} < 9) %define with_netcf 0%{!?_without_netcf:1} @@ -176,16 +158,12 @@ %define with_libssh2 0%{!?_without_libssh2:1} %endif -# Enable wireshark plugins for all distros except RHEL-7 -%if 0%{?fedora} || 0%{?rhel} > 7 - %define with_wireshark 0%{!?_without_wireshark:1} - %define wireshark_plugindir %(pkg-config --variable plugindir wireshark)/epan -%endif +# Enable wireshark plugins for all distros +%define with_wireshark 0%{!?_without_wireshark:1} +%define wireshark_plugindir %(pkg-config --variable plugindir wireshark)/epan -# Enable libssh transport for new enough distros -%if 0%{?fedora} || 0%{?rhel} > 7 - %define with_libssh 0%{!?_without_libssh:1} -%endif +# Enable libssh transport for all distros +%define with_libssh 0%{!?_without_libssh:1} %if %{with_qemu} || %{with_lxc} # numad is used to manage the CPU and memory placement dynamically, @@ -213,16 +191,12 @@ %define enable_werror -Dwerror=false %endif -%if 0%{?rhel} == 7 - %define tls_priority "NORMAL" -%else - %define tls_priority "@LIBVIRT,SYSTEM" -%endif +%define tls_priority "@LIBVIRT,SYSTEM" Summary: Library providing a simple virtualization API Name: libvirt -Version: 7.3.0 +Version: 7.4.0 Release: 1%{?dist} License: LGPLv2+ URL: https://libvirt.org/ @@ -262,20 +236,12 @@ Requires: libvirt-libs = %{version}-%{release} # All build-time requirements. Run-time requirements are # listed against each sub-RPM -%if 0%{?rhel} == 7 -BuildRequires: python36-docutils -%else BuildRequires: python3-docutils -%endif BuildRequires: gcc BuildRequires: meson >= 0.54.0 BuildRequires: ninja-build BuildRequires: git -%if 0%{?fedora} || 0%{?rhel} > 7 BuildRequires: perl-interpreter -%else -BuildRequires: perl -%endif BuildRequires: python3 BuildRequires: systemd-units %if %{with_libxl} @@ -333,13 +299,8 @@ BuildRequires: device-mapper-devel # For XFS reflink clone support BuildRequires: xfsprogs-devel %if %{with_storage_rbd} - %if 0%{?fedora} || 0%{?rhel} > 7 BuildRequires: librados-devel BuildRequires: librbd-devel - %else -BuildRequires: librados2-devel -BuildRequires: librbd1-devel - %endif %endif %if %{with_storage_gluster} BuildRequires: glusterfs-api-devel >= 3.4.1 @@ -401,11 +362,7 @@ BuildRequires: wireshark-devel BuildRequires: libssh-devel >= 0.7.0 %endif -# On RHEL-7 rpcgen is still part of glibc-common package -%if 0%{?fedora} || 0%{?rhel} > 7 BuildRequires: rpcgen -%endif - BuildRequires: libtirpc-devel # Needed for the firewalld_reload macro @@ -440,12 +397,10 @@ Requires: /usr/bin/nc # for modprobe of pci devices Requires: module-init-tools -# for /sbin/ip & /sbin/tc +# for /sbin/ip Requires: iproute -# tc is provided by iproute-tc since at least Fedora 26 -%if 0%{?fedora} || 0%{?rhel} > 7 +# for /sbin/tc Requires: iproute-tc -%endif Requires: polkit >= 0.112 %if %{with_dmidecode} @@ -469,7 +424,7 @@ Requires: gettext # Ensure smooth upgrades Obsoletes: libvirt-admin < 7.3.0 -Provides: libvirt-admin +Provides: libvirt-admin = %{version}-%{release} Obsoletes: libvirt-bash-completion < 7.3.0 %description daemon @@ -529,9 +484,7 @@ Requires: libvirt-libs = %{version}-%{release} # needed for device enumeration Requires: systemd >= 185 # For managing persistent mediated devices -%if 0%{?fedora} || 0%{?rhel} > 7 Requires: mdevctl -%endif %description daemon-driver-nodedev The nodedev driver plugin for the libvirtd daemon, providing @@ -629,7 +582,6 @@ volumes using the host iscsi stack. Summary: Storage driver plugin for iscsi-direct Requires: libvirt-daemon-driver-storage-core = %{version}-%{release} Requires: libvirt-libs = %{version}-%{release} -Requires: libiscsi %description daemon-driver-storage-iscsi-direct The storage driver backend adding implementation of the storage APIs for iscsi @@ -747,12 +699,8 @@ Requires: gzip Requires: bzip2 Requires: lzop Requires: xz - %if 0%{?fedora} || 0%{?rhel} > 7 Requires: systemd-container - %endif - %if 0%{?fedora} || 0%{?rhel} > 7 Requires: swtpm-tools - %endif %description daemon-driver-qemu The qemu driver plugin for the libvirtd daemon, providing @@ -768,9 +716,7 @@ Requires: libvirt-daemon = %{version}-%{release} Requires: libvirt-libs = %{version}-%{release} # There really is a hard cross-driver dependency here Requires: libvirt-daemon-driver-network = %{version}-%{release} - %if 0%{?fedora} || 0%{?rhel} > 7 Requires: systemd-container - %endif %description daemon-driver-lxc The LXC driver plugin for the libvirtd daemon, providing @@ -985,11 +931,10 @@ Libvirt plugin for NSS for translating domain names into IP addresses. %autosetup -S git_am %build - -%if 0%{?fedora} == 34 - # binutils change in F34 broke linking of tests - # https://bugzilla.redhat.com/show_bug.cgi?id=1889763 - %define _lto_cflags %{nil} +%if 0%{?fedora} >= %{min_fedora} || 0%{?rhel} >= %{min_rhel} + %define supported_platform 1 +%else + %define supported_platform 0 %endif %if ! %{supported_platform} @@ -1299,16 +1244,6 @@ mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp \ # raising the test timeout VIR_TEST_DEBUG=1 %meson_test --no-suite syntax-check --timeout-multiplier 10 -%post libs -%if 0%{?rhel} == 7 -/sbin/ldconfig -%endif - -%postun libs -%if 0%{?rhel} == 7 -/sbin/ldconfig -%endif - %pre daemon # 'libvirt' group is just to allow password-less polkit access to # libvirtd. The uid number is irrelevant, so we use dynamic allocation @@ -1957,6 +1892,9 @@ exit 0 %changelog +* Tue Jun 01 2021 Cole Robinson - 7.4.0-1 +- Update to version 7.4.0 + * Tue May 4 2021 Daniel P. Berrangé - 7.3.0-1 - Update to 7.3.0 release - Remove libvirt-admin & libvirt-bash-completion subpackages diff --git a/sources b/sources index 1a657c2..fcb2f04 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libvirt-7.3.0.tar.xz) = e039d5cc000c0f29ead4faddf154852ee8d8b5943e940b717eabb33cc9990d3f257a942b05a661bf6c36df5b5763c31df3f8b5a0fc21e8111a81c57da42d903e +SHA512 (libvirt-7.4.0.tar.xz) = efe3fb2813613c3c5e94ed49d0cae4ad92cca6a727a8b55808d8c3bdfacb355642796dfab49362ee59654f9471f9134b96374ced50cc9b3227f4f1c6201bf7f1