Accepting request 1200648 from Virtualization

- Re-enable vhdx support in qemu-img:
  * [openSUSE][RPM] explicitly enable qemu-img support for vhdx and vpc

OBS-URL: https://build.opensuse.org/request/show/1200648
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/qemu?expand=0&rev=277
This commit is contained in:
Ana Guerrero 2024-09-13 12:27:38 +00:00 committed by Git OBS Bridge
commit 261d4d3b8a
8 changed files with 282 additions and 312 deletions

View File

@ -1,4 +1,4 @@
<servicedata> <servicedata>
<service name="tar_scm"> <service name="tar_scm">
<param name="url">https://github.com/opensuse/qemu.git</param> <param name="url">https://github.com/opensuse/qemu.git</param>
<param name="changesrevision">6738b4bbb34e47ac23de7ab3c3e8122fdcc6d189</param></service></servicedata> <param name="changesrevision">d6950a38c1c779c678bd1f64e8685ddf7af43e53</param></service></servicedata>

View File

@ -46,6 +46,12 @@
%bcond_with xdp %bcond_with xdp
%endif %endif
%ifarch %ix86 x86_64
%bcond_without vmsr_helper
%else
%define vmsr_helper 0
%endif
# Make it possible to build without spice (for SLE/Leap Micro) # Make it possible to build without spice (for SLE/Leap Micro)
%bcond_without spice %bcond_without spice
@ -100,3 +106,152 @@ Many options are available for defining the emulated environment, including\
traditional devices, direct host device access, and interfaces specific to\ traditional devices, direct host device access, and interfaces specific to\
virtualization. virtualization.
%define disable_everything \\\
--audio-drv-list= \\\
--disable-af-xdp \\\
--disable-alsa \\\
--disable-attr \\\
--disable-auth-pam \\\
--disable-avx2 \\\
--disable-avx512bw \\\
--disable-blkio \\\
--disable-block-drv-whitelist-in-tools \\\
--disable-bochs \\\
--disable-bpf \\\
--disable-brlapi \\\
--disable-bsd-user \\\
--disable-bzip2 \\\
--disable-cap-ng \\\
--disable-capstone \\\
--disable-cfi \\\
--disable-cfi-debug \\\
--disable-cloop \\\
--disable-cocoa \\\
--disable-colo-proxy \\\
--disable-coreaudio \\\
--disable-coroutine-pool \\\
--disable-crypto-afalg \\\
--disable-curl \\\
--disable-curses \\\
--disable-dbus-display \\\
--disable-debug-graph-lock \\\
--disable-debug-info \\\
--disable-debug-mutex \\\
--disable-debug-remap \\\
--disable-debug-tcg \\\
--disable-dmg \\\
--disable-docs \\\
--disable-download \\\
--disable-dsound \\\
--disable-fdt \\\
--disable-fuse \\\
--disable-fuse-lseek \\\
--disable-gcrypt \\\
--disable-gettext \\\
--disable-gio \\\
--disable-glusterfs \\\
--disable-gnutls \\\
--disable-gtk \\\
--disable-gtk-clipboard \\\
--disable-guest-agent \\\
--disable-guest-agent-msi \\\
--disable-hv-balloon \\\
--disable-hvf \\\
--disable-iconv \\\
--disable-jack \\\
--disable-kvm \\\
--disable-l2tpv3 \\\
--disable-libdaxctl \\\
--disable-libdw \\\
--disable-libiscsi \\\
--disable-libkeyutils \\\
--disable-libkeyutils \\\
--disable-libnfs \\\
--disable-libpmem \\\
--disable-libssh \\\
--disable-libudev \\\
--disable-libusb \\\
--disable-linux-aio \\\
--disable-linux-io-uring \\\
--disable-linux-user \\\
--disable-lto \\\
--disable-lzfse \\\
--disable-lzo \\\
--disable-malloc-trim \\\
--disable-membarrier \\\
--disable-module-upgrades \\\
--disable-modules \\\
--disable-mpath \\\
--disable-multiprocess \\\
--disable-netmap \\\
--disable-nettle \\\
--disable-numa \\\
--disable-nvmm \\\
--disable-opengl \\\
--disable-oss \\\
--disable-pa \\\
--disable-parallels \\\
--disable-pie \\\
--disable-pipewire \\\
--disable-pixman \\\
--disable-plugins \\\
--disable-png \\\
--disable-qcow1 \\\
--disable-qed \\\
--disable-qom-cast-debug \\\
--disable-qpl \\\
--disable-rbd \\\
--disable-rdma \\\
--disable-relocatable \\\
--disable-replication \\\
--disable-rng-none \\\
--disable-rutabaga-gfx \\\
--disable-safe-stack \\\
--disable-sanitizers \\\
--disable-sdl \\\
--disable-sdl-image \\\
--disable-seccomp \\\
--disable-selinux \\\
--disable-slirp \\\
--disable-slirp-smbd \\\
--disable-smartcard \\\
--disable-snappy \\\
--disable-sndio \\\
--disable-sparse \\\
--disable-spice \\\
--disable-spice-protocol \\\
--disable-strip \\\
--disable-system \\\
--disable-tcg \\\
--disable-tcg-interpreter \\\
--disable-tools \\\
--disable-tpm \\\
--disable-tsan \\\
--disable-u2f \\\
--disable-uadk \\\
--disable-usb-redir \\\
--disable-user \\\
--disable-vde \\\
--disable-vdi \\\
--disable-vhdx \\\
--disable-vhost-crypto \\\
--disable-vhost-kernel \\\
--disable-vhost-net \\\
--disable-vhost-user \\\
--disable-vhost-user-blk-server \\\
--disable-vhost-vdpa \\\
--disable-virglrenderer \\\
--disable-virtfs \\\
--disable-vnc \\\
--disable-vnc-jpeg \\\
--disable-vnc-sasl \\\
--disable-vpc \\\
--disable-vte \\\
--disable-vvfat \\\
--disable-werror \\\
--disable-whpx \\\
--disable-xen \\\
--disable-xen-pci-passthrough \\\
--disable-xkbcommon \\\
--disable-zstd \\\
--without-default-devices

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d10414eb94dcc16371793009bc36a0c807a8e05fc188091348959afef2a67c97
size 849586703

3
qemu-9.1.0.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:70dcc8717465d0590135ed6c257920d4043e1a9dc502d513e41884dfd98bcbd5
size 850210319

View File

@ -27,7 +27,7 @@ URL: https://www.qemu.org/
Summary: CPU emulator for user space Summary: CPU emulator for user space
License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
Group: System/Emulators/PC Group: System/Emulators/PC
Version: 9.0.2 Version: 9.1.0
Release: 0 Release: 0
Source0: qemu-%{version}.tar.xz Source0: qemu-%{version}.tar.xz
Source1: common.inc Source1: common.inc
@ -88,7 +88,6 @@ syscall layer occurs on the native hardware and operating system.
%_bindir/qemu-mipsel %_bindir/qemu-mipsel
%_bindir/qemu-mipsn32 %_bindir/qemu-mipsn32
%_bindir/qemu-mipsn32el %_bindir/qemu-mipsn32el
%_bindir/qemu-nios2
%_bindir/qemu-or1k %_bindir/qemu-or1k
%_bindir/qemu-ppc %_bindir/qemu-ppc
%_bindir/qemu-ppc64 %_bindir/qemu-ppc64
@ -137,7 +136,6 @@ cd %blddir
# for them. # for them.
# TODO: Check whether we want to enable the followings: # TODO: Check whether we want to enable the followings:
# * avx512f
# * debug-info # * debug-info
# * fuse # * fuse
# * malloc-trim # * malloc-trim
@ -167,142 +165,7 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--prefix=%_prefix \ --prefix=%_prefix \
--sysconfdir=%_sysconfdir \ --sysconfdir=%_sysconfdir \
--with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \ --with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \
--disable-af-xdp \ %{disable_everything} \
--disable-alsa \
--disable-attr \
--disable-auth-pam \
--disable-avx2 \
--disable-avx512f \
--disable-block-drv-whitelist-in-tools \
--disable-bochs \
--disable-bpf \
--disable-brlapi \
--disable-bsd-user \
--disable-bzip2 \
--disable-cap-ng \
--disable-capstone \
--disable-cfi \
--disable-cfi-debug \
--disable-cloop \
--disable-cocoa \
--disable-coreaudio \
--disable-coroutine-pool \
--disable-crypto-afalg \
--disable-curl \
--disable-curses \
--disable-dbus-display \
--disable-debug-info \
--disable-debug-mutex \
--disable-debug-tcg \
--disable-dmg \
--disable-docs \
--disable-download \
--disable-dsound \
--disable-fdt \
--disable-fuse \
--disable-fuse-lseek \
--disable-gcrypt \
--disable-gettext \
--disable-gio \
--disable-glusterfs \
--disable-gnutls \
--disable-gtk \
--disable-guest-agent \
--disable-guest-agent-msi \
--disable-hv-balloon \
--disable-hvf \
--disable-iconv \
--disable-jack \
--disable-kvm \
--disable-l2tpv3 \
--disable-libdaxctl \
--disable-libiscsi \
--disable-libkeyutils \
--disable-libnfs \
--disable-libpmem \
--disable-libssh \
--disable-libudev \
--disable-libusb \
--disable-linux-aio \
--disable-linux-io-uring \
--disable-linux-user \
--disable-live-block-migration \
--disable-lto \
--disable-lzfse \
--disable-lzo \
--disable-malloc-trim \
--disable-membarrier \
--disable-module-upgrades \
--disable-modules \
--disable-mpath \
--disable-multiprocess \
--disable-netmap \
--disable-nettle \
--disable-numa \
--disable-nvmm \
--disable-opengl \
--disable-oss \
--disable-pa \
--disable-parallels \
--disable-pie \
--disable-pipewire \
--disable-pixman \
--disable-plugins \
--disable-png \
--disable-pvrdma \
--disable-qcow1 \
--disable-qed \
--disable-qom-cast-debug \
--disable-rbd \
--disable-rdma \
--disable-relocatable \
--disable-replication \
--disable-rng-none \
--disable-rutabaga-gfx \
--disable-safe-stack \
--disable-sanitizers \
--disable-sdl \
--disable-sdl-image \
--disable-seccomp \
--disable-selinux \
--disable-slirp \
--disable-slirp-smbd \
--disable-smartcard \
--disable-snappy \
--disable-sparse \
--disable-spice \
--disable-spice-protocol \
--disable-strip \
--disable-system \
--disable-tcg \
--disable-tcg-interpreter \
--disable-tools \
--disable-tpm \
--disable-u2f \
--disable-usb-redir \
--disable-user \
--disable-vde \
--disable-vdi \
--disable-vhost-crypto \
--disable-vhost-kernel \
--disable-vhost-net \
--disable-vhost-user \
--disable-vhost-user-blk-server \
--disable-vhost-vdpa \
--disable-virglrenderer \
--disable-virtfs \
--disable-vnc \
--disable-vnc-jpeg \
--disable-vnc-sasl \
--disable-vte \
--disable-vvfat \
--disable-werror \
--disable-whpx \
--disable-xen \
--disable-xen-pci-passthrough \
--disable-xkbcommon \
--disable-zstd \
--without-default-devices \
%if %{with system_membarrier} %if %{with system_membarrier}
--enable-membarrier \ --enable-membarrier \
%endif %endif

View File

@ -1,3 +1,57 @@
-------------------------------------------------------------------
Wed Sep 11 17:42:03 UTC 2024 - dfaggioli@suse.com
- Re-enable vhdx support in qemu-img:
* [openSUSE][RPM] explicitly enable qemu-img support for vhdx and vpc
-------------------------------------------------------------------
Thu Sep 05 16:22:44 UTC 2024 - dfaggioli@suse.com
- Spec file fixing (for properly building 9.1) and improvements:
* [openSUSE][RPM] Consolidate disabling all features during 'configure' in a macro
* [openSUSE][RPM] Consolidate handling of conditional features
* [openSUSE][RPM] (commented out) services for qemu-pr-helper
* [openSUSE][RPM] package qemu-vmsr-helper
* [openSUSE][RPM] configure: Fix with-pkgversion option
* [openSUSE][RPM] Exclude riscv edk2 files
* [openSUSE][RPM] Remove nios2
* [openSUSE][RPM] Update tests acpi path
* [openSUSE][RPM] configure: remove options for removed features
-------------------------------------------------------------------
Thu Sep 05 15:16:09 UTC 2024 - dfaggioli@suse.com
- Update to version 9.1.0:
Full changelog here: https://wiki.qemu.org/ChangeLog/9.1
Some of the most notable features:
* migration: compression offload support via Intel In-Memory Analytics
Accelerator (IAA) or User Space Accelerator Development Kit (UADK),
along with enhanced support for postcopy failure recovery
* virtio: support for VIRTIO_F_NOTIFICATION_DATA, allowing guest
drivers to provide additional data as part of sending device notifications
for performance/debug purposes
* guest-agent: support for guest-network-get-route command on linux,
guest-ssh-* commands on Windows, and enhanced CLI support for
configuring allowed/blocked commands
* block: security fixes for QEMU NBD server and NBD TLS encryption
* ARM: emulation support for FEAT_NMI, FEAT_CSV2_3, FEAT_ETS2,
FEAT_Spec_FPACC, FEAT_WFxT, FEAT_Debugv8p8 architecture features
* ARM: nested/two-stage page table support for emulated SMMUv3
* ARM: xilinx_zynq board support for cache controller and multiple
CPUs, and B-L475E-IOT01A board support for a DM163 display
* LoongArch: support for directly booting an ELF kernel and for running
up to 256 vCPUs via extioi virt extension
* LoongArch: enhanced debug/GDB support
* RISC-V: support for version 1.13 of privileged architecture specification
* RISC-V: support for Zve32x, Zve64x, Zimop, Zcmop, Zama16b, Zabha,
Zawrs, and Smcntrpmf extensions
* RISC-V: enhanced debug/GDB support and general fixes
* SPARC: emulation support for FMAF, IMA, VIS3, and VIS4 architecture
features
* x86: KVM support for running AMD SEV-SNP guests
* x86: CPU emulation support for Icelake-Server-v7, SapphireRapids-v3,
and SierraForest
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Aug 27 17:15:25 UTC 2024 - dfaggioli@suse.com Tue Aug 27 17:15:25 UTC 2024 - dfaggioli@suse.com

View File

@ -1,4 +1,4 @@
name: qemu name: qemu
version: 9.0.2 version: 9.1.0
mtime: 1724775399 mtime: 1726073275
commit: 6738b4bbb34e47ac23de7ab3c3e8122fdcc6d189 commit: d6950a38c1c779c678bd1f64e8685ddf7af43e53

230
qemu.spec
View File

@ -53,7 +53,7 @@
%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64 riscv64 %ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64 riscv64
%define kvm_available 1 %define kvm_available 1
%define with_uring 1 %bcond_without uring
%define liburing_min_version 1.0 %define liburing_min_version 1.0
%endif %endif
@ -62,11 +62,11 @@
%endif %endif
%ifarch x86_64 aarch64 ppc64le s390x %ifarch x86_64 aarch64 ppc64le s390x
%define with_rbd 1 %bcond_without rbd
%endif %endif
%ifarch x86_64 ppc64le %ifarch x86_64 ppc64le
%define with_daxctl 1 %bcond_without daxctl
%endif %endif
# enforce pxe rom sizes for migration compatability from SLE 11 SP3 forward # enforce pxe rom sizes for migration compatability from SLE 11 SP3 forward
@ -82,7 +82,7 @@ URL: https://www.qemu.org/
Summary: Machine emulator and virtualizer Summary: Machine emulator and virtualizer
License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
Group: System/Emulators/PC Group: System/Emulators/PC
Version: 9.0.2 Version: 9.1.0
Release: 0 Release: 0
Source0: qemu-%{version}.tar.xz Source0: qemu-%{version}.tar.xz
Source1: common.inc Source1: common.inc
@ -127,20 +127,20 @@ BuildRequires: libnuma-devel
%if 0%{with canokey} %if 0%{with canokey}
BuildRequires: canokey-qemu-devel BuildRequires: canokey-qemu-devel
%endif %endif
%if 0%{?with_daxctl} %if 0%{with daxctl}
BuildRequires: pkgconfig(libndctl) BuildRequires: pkgconfig(libndctl)
%endif %endif
%if %{kvm_available} %if %{kvm_available}
BuildRequires: pkgconfig(udev) BuildRequires: pkgconfig(udev)
%endif %endif
%if 0%{?with_rbd} %if 0%{with rbd}
BuildRequires: librbd-devel BuildRequires: librbd-devel
%endif %endif
%if 0%{with spice} %if 0%{with spice}
BuildRequires: pkgconfig(spice-protocol) >= 0.12.3 BuildRequires: pkgconfig(spice-protocol) >= 0.12.3
BuildRequires: pkgconfig(spice-server) >= 0.12.5 BuildRequires: pkgconfig(spice-server) >= 0.12.5
%endif %endif
%if 0%{?with_uring} %if 0%{with uring}
BuildRequires: pkgconfig(liburing) >= %liburing_min_version BuildRequires: pkgconfig(liburing) >= %liburing_min_version
%endif %endif
%if 0%{with xdp} %if 0%{with xdp}
@ -252,7 +252,7 @@ Recommends: qemu-ksm = %{version}
Recommends: qemu-tools Recommends: qemu-tools
Recommends: qemu-ui-curses Recommends: qemu-ui-curses
## Packages we will SUGGEST ## Packages we will SUGGEST
%if 0%{?with_rbd} %if 0%{with rbd}
Suggests: qemu-block-rbd Suggests: qemu-block-rbd
%endif %endif
Suggests: qemu-accel-qtest Suggests: qemu-accel-qtest
@ -490,8 +490,8 @@ sed -i '/^\ \ \ about\/index.*/i \ \ \ supported.rst' docs/index.rst
# from a git branch. We, therefore, assumed that the following commands # from a git branch. We, therefore, assumed that the following commands
# have been run, and the result committed to the repository (with seabios # have been run, and the result committed to the repository (with seabios
# and skiboot at the proper commit/tag/...): # and skiboot at the proper commit/tag/...):
# git -C roms/seabios describe --tags --long --dirty > rpm/seabios_version # (pushd roms/seabios && git describe --tags --long --dirty > ../../rpm/seabios_version ; popd)
# (cd roms/skiboot && ./make_version.sh > ../../rpm/skiboot_version) # (pushd roms/skiboot && ./make_version.sh > ../../rpm/skiboot_version ; popd)
cp %{rpmfilesdir}/seabios_version roms/seabios/.version cp %{rpmfilesdir}/seabios_version roms/seabios/.version
cp %{rpmfilesdir}/skiboot_version roms/skiboot/.version cp %{rpmfilesdir}/skiboot_version roms/skiboot/.version
find . -iname ".git" -exec rm -rf {} + find . -iname ".git" -exec rm -rf {} +
@ -507,7 +507,6 @@ export HOSTNAME=OBS # is used in roms/SLOF/Makefile.gen (boo#1084909)
# for them. # for them.
# TODO: Check whether we want to enable the followings: # TODO: Check whether we want to enable the followings:
# * avx512f
# * debug-info # * debug-info
# * fuse # * fuse
# * malloc-trim # * malloc-trim
@ -536,143 +535,8 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--localstatedir=%_localstatedir \ --localstatedir=%_localstatedir \
--prefix=%_prefix \ --prefix=%_prefix \
--sysconfdir=%_sysconfdir \ --sysconfdir=%_sysconfdir \
--with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \ --with-pkgversion="$(echo '%{distro}' | sed 's/ (.*)//')" \
--disable-af-xdp \ %{disable_everything} \
--disable-alsa \
--disable-attr \
--disable-auth-pam \
--disable-avx2 \
--disable-avx512f \
--disable-block-drv-whitelist-in-tools \
--disable-bochs \
--disable-bpf \
--disable-brlapi \
--disable-bsd-user \
--disable-bzip2 \
--disable-cap-ng \
--disable-capstone \
--disable-cfi \
--disable-cfi-debug \
--disable-cloop \
--disable-cocoa \
--disable-coreaudio \
--disable-coroutine-pool \
--disable-crypto-afalg \
--disable-curl \
--disable-curses \
--disable-dbus-display \
--disable-debug-info \
--disable-debug-mutex \
--disable-debug-tcg \
--disable-dmg \
--disable-docs \
--disable-download \
--disable-dsound \
--disable-fdt \
--disable-fuse \
--disable-fuse-lseek \
--disable-gcrypt \
--disable-gettext \
--disable-gio \
--disable-glusterfs \
--disable-gnutls \
--disable-gtk \
--disable-guest-agent \
--disable-guest-agent-msi \
--disable-hv-balloon \
--disable-hvf \
--disable-iconv \
--disable-jack \
--disable-kvm \
--disable-l2tpv3 \
--disable-libdaxctl \
--disable-libiscsi \
--disable-libkeyutils \
--disable-libnfs \
--disable-libpmem \
--disable-libssh \
--disable-libudev \
--disable-libusb \
--disable-linux-aio \
--disable-linux-io-uring \
--disable-linux-user \
--disable-live-block-migration \
--disable-lto \
--disable-lzfse \
--disable-lzo \
--disable-malloc-trim \
--disable-membarrier \
--disable-module-upgrades \
--disable-modules \
--disable-mpath \
--disable-multiprocess \
--disable-netmap \
--disable-nettle \
--disable-numa \
--disable-nvmm \
--disable-opengl \
--disable-oss \
--disable-pa \
--disable-parallels \
--disable-pie \
--disable-pipewire \
--disable-pixman \
--disable-plugins \
--disable-png \
--disable-pvrdma \
--disable-qcow1 \
--disable-qed \
--disable-qom-cast-debug \
--disable-rbd \
--disable-rdma \
--disable-relocatable \
--disable-replication \
--disable-rng-none \
--disable-rutabaga-gfx \
--disable-safe-stack \
--disable-sanitizers \
--disable-sdl \
--disable-sdl-image \
--disable-seccomp \
--disable-selinux \
--disable-slirp \
--disable-slirp-smbd \
--disable-smartcard \
--disable-snappy \
--disable-sparse \
--disable-spice \
--disable-spice-protocol \
--disable-strip \
--disable-system \
--disable-tcg \
--disable-tcg-interpreter \
--disable-tools \
--disable-tpm \
--disable-u2f \
--disable-usb-redir \
--disable-user \
--disable-vde \
--disable-vdi \
--disable-vhost-crypto \
--disable-vhost-kernel \
--disable-vhost-net \
--disable-vhost-user \
--disable-vhost-user-blk-server \
--disable-vhost-vdpa \
--disable-virglrenderer \
--disable-virtfs \
--disable-vnc \
--disable-vnc-jpeg \
--disable-vnc-sasl \
--disable-vte \
--disable-vvfat \
--disable-werror \
--disable-whpx \
--disable-xen \
--disable-xen-pci-passthrough \
--disable-xkbcommon \
--disable-zstd \
--without-default-devices \
%if 0%{?suse_version} >= 1600 %if 0%{?suse_version} >= 1600
--audio-drv-list=pipewire,pa,alsa,jack,oss \ --audio-drv-list=pipewire,pa,alsa,jack,oss \
%else %else
@ -692,31 +556,31 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
%if 0%{with canokey} %if 0%{with canokey}
--enable-canokey \ --enable-canokey \
%endif %endif
%if %{kvm_available} %if 0%{kvm_available}
--enable-kvm \ --enable-kvm \
%endif %endif
%if 0%{?with_daxctl} %if 0%{with daxctl}
--enable-libdaxctl \ --enable-libdaxctl \
%endif %endif
%if 0%{?with_uring} %if 0%{with uring}
--enable-linux-io-uring \ --enable-linux-io-uring \
%endif %endif
%if "%{_lto_cflags}" != "%{nil}" %if "%{_lto_cflags}" != "%{nil}"
--enable-lto \ --enable-lto \
%endif %endif
%if %{with malloc_trim} %if 0%{with malloc_trim}
--enable-malloc-trim \ --enable-malloc-trim \
%endif %endif
%if %{with system_membarrier} %if 0%{with system_membarrier}
--enable-membarrier \ --enable-membarrier \
%endif %endif
%ifnarch %arm s390x %ifnarch %arm s390x
--enable-numa \ --enable-numa \
%endif %endif
%if 0%{?with_rbd} %if 0%{with rbd}
--enable-rbd \ --enable-rbd \
%endif %endif
%if %{has_rutabaga_gfx} %if 0%{has_rutabaga_gfx}
--enable-rutabaga-gfx \ --enable-rutabaga-gfx \
%endif %endif
--enable-alsa \ --enable-alsa \
@ -754,7 +618,6 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--enable-libudev \ --enable-libudev \
--enable-libusb \ --enable-libusb \
--enable-linux-aio \ --enable-linux-aio \
--enable-live-block-migration \
--enable-lzfse \ --enable-lzfse \
--enable-lzo \ --enable-lzo \
--enable-modules \ --enable-modules \
@ -767,7 +630,6 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--enable-pipewire \ --enable-pipewire \
--enable-pixman \ --enable-pixman \
--enable-png \ --enable-png \
--enable-pvrdma \
--enable-qcow1 \ --enable-qcow1 \
--enable-qed \ --enable-qed \
--enable-rdma \ --enable-rdma \
@ -790,6 +652,7 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--enable-usb-redir \ --enable-usb-redir \
--enable-vde \ --enable-vde \
--enable-vdi \ --enable-vdi \
--enable-vhdx \
--enable-vhost-crypto \ --enable-vhost-crypto \
--enable-vhost-kernel \ --enable-vhost-kernel \
--enable-vhost-net \ --enable-vhost-net \
@ -801,6 +664,7 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g
--enable-vnc \ --enable-vnc \
--enable-vnc-jpeg \ --enable-vnc-jpeg \
--enable-vnc-sasl \ --enable-vnc-sasl \
--enable-vpc \
--enable-vte \ --enable-vte \
--enable-vvfat \ --enable-vvfat \
--enable-werror \ --enable-werror \
@ -978,6 +842,8 @@ unlink %{buildroot}%_datadir/%name/edk2-i386-secure-code.fd
unlink %{buildroot}%_datadir/%name/edk2-i386-vars.fd unlink %{buildroot}%_datadir/%name/edk2-i386-vars.fd
unlink %{buildroot}%_datadir/%name/edk2-x86_64-code.fd unlink %{buildroot}%_datadir/%name/edk2-x86_64-code.fd
unlink %{buildroot}%_datadir/%name/edk2-x86_64-secure-code.fd unlink %{buildroot}%_datadir/%name/edk2-x86_64-secure-code.fd
unlink %{buildroot}%_datadir/%name/edk2-riscv-code.fd
unlink %{buildroot}%_datadir/%name/edk2-riscv-vars.fd
# this was never meant for customer consumption - delete even though installed # this was never meant for customer consumption - delete even though installed
unlink %{buildroot}%_bindir/elf2dmp unlink %{buildroot}%_bindir/elf2dmp
@ -1020,6 +886,21 @@ done
# End of "if build_x86_firmware" # End of "if build_x86_firmware"
%endif %endif
# Upstream provides services for qemu-pr-helper. So far, we've not needed
# them, so let's continue not to ship them for now. If that changes, just
# uncomment these lines (and the ones in the %file pr-helper section)
#install -m 0644 contrib/systemd/qemu-pr-helper.service %{buildroot}%{_unitdir}
#install -m 0644 contrib/systemd/qemu-pr-helper.socket %{buildroot}%{_unitdir}
%if 0%{with vmsr_helper}
echo ""
# Upstream provides services for qemu-vmsr-helper. So far, we've not needed
# them, so let's continue not to ship them for now. If that changes, just
# uncomment these lines (and the ones in the %file vmsr-helper section)
#install -m 0644 contrib/systemd/qemu-vmsr-helper.service %{buildroot}%{_unitdir}
#install -m 0644 contrib/systemd/qemu-vmsr-helper.socket %{buildroot}%{_unitdir}
%endif
%suse_update_desktop_file qemu %suse_update_desktop_file qemu
# Common install steps for qemu and qemu-linux-user # Common install steps for qemu and qemu-linux-user
@ -1033,11 +914,11 @@ cd %blddir
# do that in the patch itself. Instead, we keep a copy of the binary in the # do that in the patch itself. Instead, we keep a copy of the binary in the
# package sources, and put it in place now, before the tests themselves. # package sources, and put it in place now, before the tests themselves.
# If that patch is removed, the following line needs to go as well. # If that patch is removed, the following line needs to go as well.
cp %{rpmfilesdir}/DSDT.pcie %{srcdir}/tests/data/acpi/microvm/ cp %{rpmfilesdir}/DSDT.pcie %{srcdir}/tests/data/acpi/x86/microvm/
# Patch 'tests/acpi: update tables for new core count test' requires some new # Patch 'tests/acpi: update tables for new core count test' requires some new
# binaries to be introcuded too. Let's copy them in place as well # binaries to be introcuded too. Let's copy them in place as well
cp %{rpmfilesdir}/APIC.core-count2 %{rpmfilesdir}/DSDT.core-count2 %{rpmfilesdir}/FACP.core-count2 %{srcdir}/tests/data/acpi/q35/ cp %{rpmfilesdir}/APIC.core-count2 %{rpmfilesdir}/DSDT.core-count2 %{rpmfilesdir}/FACP.core-count2 %{srcdir}/tests/data/acpi/x86/q35/
%if 0%{?qemu_user_space_build} %if 0%{?qemu_user_space_build}
# Seccomp is not supported by linux-user emulation # Seccomp is not supported by linux-user emulation
@ -1306,7 +1187,6 @@ popular QEMU packages which are dedicated to a single architecture.)
%_bindir/qemu-system-mipsel %_bindir/qemu-system-mipsel
%_bindir/qemu-system-mips64 %_bindir/qemu-system-mips64
%_bindir/qemu-system-mips64el %_bindir/qemu-system-mips64el
%_bindir/qemu-system-nios2
%_bindir/qemu-system-or1k %_bindir/qemu-system-or1k
%_bindir/qemu-system-riscv32 %_bindir/qemu-system-riscv32
%_bindir/qemu-system-riscv64 %_bindir/qemu-system-riscv64
@ -1699,8 +1579,24 @@ This package provides a helper utility for SCSI persistent reservations.
%files pr-helper %files pr-helper
%_bindir/qemu-pr-helper %_bindir/qemu-pr-helper
#%{_unitdir}/qemu-pr-helper.service
#%{_unitdir}/qemu-pr-helper.socket
%_mandir/man8/qemu-pr-helper.8.gz %_mandir/man8/qemu-pr-helper.8.gz
%if 0%{with vmsr_helper}
%package vmsr-helper
Summary: QEMU virtual RAPL MSR helper
Group: System/Emulators/PC
%description vmsr-helper
This package provides a helper utility for letting VMs access the RAPL (Running Average Power Limit) MSR.
%files vmsr-helper
%_bindir/qemu-vmsr-helper
#%{_unitdir}/qemu-vmsr-helper.service
#%{_unitdir}/qemu-vmsr-helper.socket
%endif
%package tools %package tools
Summary: Tools for QEMU Summary: Tools for QEMU
Group: System/Emulators/PC Group: System/Emulators/PC
@ -1708,12 +1604,15 @@ Requires(pre): permissions
Requires: qemu-img Requires: qemu-img
Requires: qemu-pr-helper Requires: qemu-pr-helper
Requires: group(kvm) Requires: group(kvm)
%if 0%{with vmsr_helper}
Requires: qemu-vmsr-helper
%endif
%if %{has_virtiofsd} %if %{has_virtiofsd}
Requires: virtiofsd Requires: virtiofsd
%endif %endif
Recommends: multipath-tools Recommends: multipath-tools
Recommends: qemu-block-curl Recommends: qemu-block-curl
%if 0%{?with_rbd} %if 0%{with rbd}
Recommends: qemu-block-rbd Recommends: qemu-block-rbd
%endif %endif
@ -1869,7 +1768,6 @@ This package provides QTest accelerator for testing QEMU.
%_libdir/%name/accel-qtest-mips64.so %_libdir/%name/accel-qtest-mips64.so
%_libdir/%name/accel-qtest-mips64el.so %_libdir/%name/accel-qtest-mips64el.so
%_libdir/%name/accel-qtest-mipsel.so %_libdir/%name/accel-qtest-mipsel.so
%_libdir/%name/accel-qtest-nios2.so
%_libdir/%name/accel-qtest-or1k.so %_libdir/%name/accel-qtest-or1k.so
%_libdir/%name/accel-qtest-ppc.so %_libdir/%name/accel-qtest-ppc.so
%_libdir/%name/accel-qtest-ppc64.so %_libdir/%name/accel-qtest-ppc64.so
@ -1886,7 +1784,7 @@ This package provides QTest accelerator for testing QEMU.
%_libdir/%name/accel-qtest-xtensa.so %_libdir/%name/accel-qtest-xtensa.so
%_libdir/%name/accel-qtest-xtensaeb.so %_libdir/%name/accel-qtest-xtensaeb.so
%if 0%{?with_rbd} %if 0%{with rbd}
%package block-rbd %package block-rbd
Summary: Rados Block Device (Ceph) support for QEMU Summary: Rados Block Device (Ceph) support for QEMU
Group: System/Emulators/PC Group: System/Emulators/PC
@ -1964,7 +1862,7 @@ wider support than qboot, but still focuses on quick boot up.
%package seabios %package seabios
Summary: x86 Legacy BIOS for QEMU Summary: x86 Legacy BIOS for QEMU
Group: System/Emulators/PC Group: System/Emulators/PC
Version: 9.0.2%{sbver} Version: 9.1.0%{sbver}
Release: 0 Release: 0
BuildArch: noarch BuildArch: noarch
Conflicts: %name < 1.6.0 Conflicts: %name < 1.6.0
@ -1985,7 +1883,7 @@ is the default and legacy BIOS for QEMU.
%package vgabios %package vgabios
Summary: VGA BIOSes for QEMU Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC Group: System/Emulators/PC
Version: 9.0.2%{sbver} Version: 9.1.0%{sbver}
Release: 0 Release: 0
BuildArch: noarch BuildArch: noarch
Conflicts: %name < 1.6.0 Conflicts: %name < 1.6.0
@ -2011,7 +1909,7 @@ video card. For use with QEMU.
%package ipxe %package ipxe
Summary: PXE ROMs for QEMU NICs Summary: PXE ROMs for QEMU NICs
Group: System/Emulators/PC Group: System/Emulators/PC
Version: 9.0.2 Version: 9.1.0
Release: 0 Release: 0
BuildArch: noarch BuildArch: noarch
Conflicts: %name < 1.6.0 Conflicts: %name < 1.6.0