# Conditional build:
%bcond_without sdl # SDL UI and audio support
%bcond_without opengl # Don't require GL deps
-%bcond_without ceph # Ceph/RBD support
+%bcond_with ceph # Ceph/RBD support
%bcond_without glusterfs # GlusterFS backend
%bcond_without rdma # RDMA-based migration support
%bcond_without gtk3 # Do not build GTK+ UI
%bcond_without virgl # build virgl support
%bcond_without xkbcommon # xkbcommon support
-%if %{without gtk}
+%if %{without gtk3}
%undefine with_vte
%endif
%ifarch x32
Summary: QEMU CPU Emulator
Summary(pl.UTF-8): QEMU - emulator procesora
Name: qemu
-Version: 6.2.0
-Release: 2
+Version: 8.2.2
+Release: 1
License: GPL v2, BSD (edk2 firmware files)
Group: Applications/Emulators
Source0: https://download.qemu.org/%{name}-%{version}.tar.xz
-# Source0-md5: a077669ce58b6ee07ec355e54aad25be
+# Source0-md5: e43091262671c1728b09522932b75b1d
# Loads kvm kernel modules at boot
Source3: kvm-modules-load.conf
# Creates /dev/kvm
Source12: 99-%{name}-guest-agent.rules
Source13: %{name}-guest-agent.init
Source14: %{name}-guest-agent.logrotate
-Patch0: %{name}-cflags.patch
-Patch2: %{name}-user-execve.patch
Patch3: %{name}-xattr.patch
Patch4: libjpeg-boolean.patch
-Patch5: x32.patch
-Patch6: acpi.patch
+Patch5: %{name}-u2f-emu.patch
+Patch6: %{name}-linux-mount.patch
URL: https://www.qemu.org/
%{?with_opengl:BuildRequires: Mesa-libgbm-devel}
%{?with_opengl:BuildRequires: OpenGL-GLX-devel}
%{?with_sdl:BuildRequires: SDL2-devel >= 2.0}
%{?with_sdl:BuildRequires: SDL2_image-devel >= 2.0}
BuildRequires: alsa-lib-devel
-BuildRequires: bcc >= 0.16.21-2
%{?with_brlapi:BuildRequires: brlapi-devel}
BuildRequires: bzip2-devel
-BuildRequires: capstone-devel >= 3.0.5
-%{?with_ceph:BuildRequires: ceph-devel}
-BuildRequires: curl-devel
+BuildRequires: capstone-devel >= 4.0
+%{?with_ceph:BuildRequires: ceph-devel >= 12}
+BuildRequires: curl-devel >= 7.29.0
BuildRequires: cyrus-sasl-devel >= 2
-BuildRequires: glib2-devel >= 1:2.48
+BuildRequires: daxctl-devel >= 57
+BuildRequires: gcc >= 6:7.4
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= 1:2.64
# minimal is 3.4 but new features are used up to 6
%{?with_glusterfs:BuildRequires: glusterfs-devel >= 6}
-BuildRequires: gnutls-devel >= 3.1.18
-%{?with_gtk3:BuildRequires: gtk+3-devel >= 3.16}
+BuildRequires: gnutls-devel >= 3.6.14
+%{?with_gtk3:BuildRequires: gtk+3-devel >= 3.22.0}
+BuildRequires: jack-audio-connection-kit-devel
+# for tests
+#BuildRequires: keyutils-devel
BuildRequires: libaio-devel
+BuildRequires: libbpf-devel
%{?with_smartcard:BuildRequires: libcacard-devel >= 2.5.1}
BuildRequires: libcap-ng-devel
+BuildRequires: libdrm-devel
%{?with_opengl:BuildRequires: libepoxy-devel}
-BuildRequires: libfdt-devel >= 1.4.2
+BuildRequires: libfdt-devel >= 1.5.1
+BuildRequires: libfuse3-devel >= 3.8
%{?with_rdma:BuildRequires: libibverbs-devel}
%{?with_iscsi:BuildRequires: libiscsi-devel >= 1.9.0}
%{?with_rdma:BuildRequires: libibumad-devel}
BuildRequires: libjpeg-devel
%{?with_libnfs:BuildRequires: libnfs-devel >= 1.9.3}
-BuildRequires: libpng-devel
+BuildRequires: libpng-devel >= 2:1.6.34
%{?with_rdma:BuildRequires: librdmacm-devel}
%{?with_seccomp:BuildRequires: libseccomp-devel >= 2.3.0}
-BuildRequires: libssh-devel >= 0.8
-BuildRequires: libslirp-devel >= 4.0.0
+BuildRequires: libselinux-devel
+BuildRequires: libssh-devel >= 0.8.7
# for tests only
#BuildRequires: libtasn1-devel
+BuildRequires: libu2f-emu-devel
BuildRequires: libusb-devel >= 1.0.22
-BuildRequires: liburing-devel
+BuildRequires: liburing-devel >= 0.3
BuildRequires: libuuid-devel
BuildRequires: libxml2-devel >= 2.0
-%{?with_lttng:BuildRequires: lttng-ust-devel}
+%{?with_lttng:BuildRequires: lttng-ust-devel >= 2.1}
BuildRequires: lzfse-devel
BuildRequires: lzo-devel >= 2
+BuildRequires: meson >= 0.59.3
%{?with_multipath:BuildRequires: multipath-tools-devel}
BuildRequires: ncurses-devel
-# also libgcrypt-devel >= 1.5.0 possible, but gnutls already pulls nettle
-BuildRequires: nettle-devel >= 2.7.1
+# also libgcrypt-devel >= 1.8 possible, but gnutls already pulls nettle
+BuildRequires: nettle-devel >= 3.4
+BuildRequires: ninja
%{?with_smartcard:BuildRequires: nss-devel >= 1:3.12.8}
BuildRequires: numactl-devel
BuildRequires: pam-devel
BuildRequires: pkgconfig
%{?with_pmem:BuildRequires: pmdk-devel}
%{?with_pulseaudio:BuildRequires: pulseaudio-devel}
-BuildRequires: python3 >= 1:3.5
+BuildRequires: python3 >= 1:3.6
+BuildRequires: python3-sphinx_rtd_theme
+BuildRequires: rpm-build >= 4.6
BuildRequires: rpmbuild(macros) >= 1.644
%{?with_system_seabios:BuildRequires: seabios}
BuildRequires: sed >= 4.0
BuildRequires: spice-protocol >= 0.12.3
BuildRequires: spice-server-devel >= 0.12.5
%endif
-%{?with_systemtap:BuildRequires: systemtap-devel}
+%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
+BuildRequires: tar >= 1:1.22
BuildRequires: texi2html
BuildRequires: texinfo
%{?with_multipath:BuildRequires: udev-devel}
%{?with_virgl:BuildRequires: virglrenderer-devel}
%{?with_vte:BuildRequires: vte-devel >= 0.32.0}
# xencontrol xenstore xenguest xenforeignmemory xengnttab xenevtchn xendevicemodel; xentoolcore for xen 4.10+
-# min version is 4.2, more features up to 4.10
-%{?with_xen:BuildRequires: xen-devel >= 4.10}
+# min version is 4.2, more features up to 4.11
+%{?with_xen:BuildRequires: xen-devel >= 4.11}
BuildRequires: xfsprogs-devel
-%{?with_xkbcommon:BuildRequires: xorg-lib-libxkbcommon-devel}
+%if %{with xkbcommon}
+BuildRequires: xkeyboard-config
+BuildRequires: xorg-lib-libxkbcommon-devel
+%endif
BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xz
BuildRequires: zlib-devel
BuildRequires: zstd-devel >= 1.4.0
%if %{with user_static}
-BuildRequires: glib2-static >= 1:2.48
+BuildRequires: glib2-static >= 1:2.74
BuildRequires: glibc-static
-BuildRequires: pcre-static
+BuildRequires: pcre2-8-static >= 10.32
BuildRequires: zlib-static
%endif
Requires: %{name}-img = %{version}-%{release}
Requires: %{name}-system-x86 = %{version}-%{release}
Requires: %{name}-system-xtensa = %{version}-%{release}
Requires: %{name}-user = %{version}-%{release}
-Obsoletes: qemu-kvm
+Obsoletes: qemu-kvm < 2
ExcludeArch: i386
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define systempkg_req \
-Requires: capstone >= 3.0.5 \
+Requires: capstone >= 4.0 \
+Requires: daxctl-libs >= 57 \
%{?with_smartcard:Requires: libcacard >= 2.5.1} \
-Requires: libfdt >= 1.4.2 \
+Requires: libfdt >= 1.5.1 \
+Requires: libfuse3 >= 3.8 \
+%{?with_iscsi:Requires: libiscsi >= 1.9.0} \
+Requires: libpng >= 2:1.6.34 \
%if %{with seccomp} \
Requires: libseccomp >= 2.3.0 \
%endif \
-Requires: libslirp >= 4.0.0 \
+Requires: liburing >= 0.3 \
Requires: libusb >= 1.0.22 \
Requires: pixman >= 0.21.8 \
%if %{with spice} \
%endif \
%if %{with usbredir} \
Requires: usbredir >= 0.6 \
-%endif \
-Requires: zstd >= 1.4.0
+%endif
# don't strip/chrpath anything in there; these are boot images, roms etc
%define _noautostrip .*%{_datadir}/qemu/.*
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires(pre): /usr/sbin/useradd
-Requires: glib2 >= 1:2.48
-Requires: gnutls-libs >= 3.1.18
-%{?with_gtk3:Requires: gtk+3 >= 3.16}
-Requires: nettle >= 2.7.1
+Requires: glib2 >= 1:2.64
+Requires: gnutls-libs >= 3.6.14
+%{?with_gtk3:Requires: gtk+3 >= 3.22.0}
+Requires: nettle >= 3.4
%{?with_vte:Requires: vte >= 0.32.0}
+Requires: zstd >= 1.4.0
Provides: group(qemu)
Provides: user(qemu)
-Obsoletes: qemu-kvm-common
+Obsoletes: qemu-kvm-common < 2
Obsoletes: qemu-module-block-archipelago < 2.9.0
-Obsoletes: qemu-system-lm32
-Obsoletes: qemu-system-moxie
-Obsoletes: qemu-system-unicore32
+Obsoletes: qemu-system-lm32 < 5.2
+Obsoletes: qemu-system-moxie < 6.1
+Obsoletes: qemu-system-unicore32 < 5.2
Conflicts: qemu < 1.0-2
%description common
środowiska QEMU.
%package devel
-Summary: Development files for programs using qemu
-Summary(pl.UTF-8): Pliki programistyczne do programów wykorzystujących qemu
+Summary: Header file for QEMU plugins development
+Summary(pl.UTF-8): Plik nagłówkowy do tworzenia wtyczek QEMU
Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
+BuildArch: noarch
%description devel
-This package contains the header files needed for developing programs
-using the QEMU.
+Header file for QEMU plugins development.
%description devel -l pl.UTF-8
-Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
-wykorzystujących QEMU.
+Plik nagłówkowy do tworzenia wtyczek QEMU.
%package img
Summary: QEMU command line tool for manipulating disk images
Summary(pl.UTF-8): Narzędzie QEMU do operacji na obrazach dysków
Group: Applications/Emulators
-Obsoletes: qemu-kvm-img
+Obsoletes: qemu-kvm-img < 2
Conflicts: qemu < 1.0-2
%description img
Ten pakiet udostępnia działające z linii poleceń narzędzia do operacji
na obrazach dysków.
+%package ivshmem
+Summary: Client and server for QEMU ivshmem device
+Summary(pl.UTF-8): Klient i serwer dla urzÄ\85dzeia ivshmem QEMU
+Group: Development/Tools
+
+%description ivshmem
+This package provides client and server tools for QEMU's ivshmem
+device.
+
+%description ivshmem -l pl.UTF-8
+Ten pakiet udostępnia działające z linii poleceń narzędzia dla
+urządzenia ivshmem QEMU.
+
%package user
Summary: QEMU user mode emulation of qemu targets
Summary(pl.UTF-8): QEMU - emulacja trybu użytkownika środowisk qemu
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
-Obsoletes: qemu-kvm-user
+Obsoletes: qemu-kvm-user < 2
%description user
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-aarch64
+Obsoletes: qemu-kvm-system-aarch64 < 2
%description system-aarch64
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-alpha
+Obsoletes: qemu-kvm-system-alpha < 2
%description system-alpha
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-arm
+Obsoletes: qemu-kvm-system-arm < 2
%description system-arm
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-avr
+Obsoletes: qemu-kvm-system-avr < 2
%description system-avr
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-cris
+Obsoletes: qemu-kvm-system-cris < 2
%description system-cris
QEMU is a generic and open source processor emulator which achieves a
Ten pakiet zawiera emulator systemu z procesorem HP/PA (PA-RISC).
+%package system-loongarch
+Summary: QEMU system emulator for Loongson
+Summary(pl.UTF-8): QEMU - emulator systemu z procesorem Loongson
+Group: Applications/Emulators
+Requires: %{name}-common = %{version}-%{release}
+%systempkg_req
+
+%description system-loongarch
+QEMU is a generic and open source processor emulator which achieves a
+good emulation speed by using dynamic translation.
+
+This package provides the system emulator with Loongson CPU.
+
+%description system-loongarch -l pl.UTF-8
+QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
+dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
+
+Ten pakiet zawiera emulator systemu z procesorem Loongson.
+
%package system-m68k
Summary: QEMU system emulator for m68k
Summary(pl.UTF-8): QEMU - emulator systemu z procesorem m68k
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-m68k
+Obsoletes: qemu-kvm-system-m68k < 2
%description system-m68k
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-microblaze
+Obsoletes: qemu-kvm-system-microblaze < 2
%description system-microblaze
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-mips
+Obsoletes: qemu-kvm-system-mips < 2
%description system-mips
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-or1k
-Obsoletes: qemu-system-or32
+Obsoletes: qemu-kvm-system-or1k < 2
+Obsoletes: qemu-system-or32 < 2.9.0
%description system-or1k
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-ppc
+Obsoletes: qemu-kvm-system-ppc < 2
%description system-ppc
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-s390x
+Obsoletes: qemu-kvm-system-s390x < 2
%description system-s390x
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-sh4
+Obsoletes: qemu-kvm-system-sh4 < 2
%description system-sh4
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-sparc
+Obsoletes: qemu-kvm-system-sparc < 2
%description system-sparc
QEMU is a generic and open source processor emulator which achieves a
This package provides the system emulator with TriCore CPU.
-%description system-sparc -l pl.UTF-8
+%description system-tricore -l pl.UTF-8
QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
Requires: %{name}-common = %{version}-%{release}
%{?with_system_seabios:Requires: seabios}
%systempkg_req
-Obsoletes: kvm
-Obsoletes: qemu-kvm-system-x86
+Obsoletes: kvm < 89
+Obsoletes: qemu-kvm-system-x86 < 2
%description system-x86
QEMU is a generic and open source processor emulator which achieves a
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
%systempkg_req
-Obsoletes: qemu-kvm-system-xtensa
+Obsoletes: qemu-kvm-system-xtensa < 2
%description system-xtensa
QEMU is a generic and open source processor emulator which achieves a
Summary: QEMU guest agent
Summary(pl.UTF-8): Agent gościa QEMU
Group: Daemons
-Requires: glib2 >= 1:2.48
-Obsoletes: qemu-kvm-guest-agent
+Requires: glib2 >= 1:2.64
+Requires: liburing >= 0.3
+Obsoletes: qemu-kvm-guest-agent < 2
Conflicts: SysVinit < 2.96-2
%description guest-agent
Ten pakiet nie musi być zainstalowany w systemie hosta.
+%package module-audio-jack
+Summary: QEMU module for JACK audio output
+Summary(pl.UTF-8): Moduł QEMU z wyjściem dźwięku JACK
+Group: Applications/Emulators
+Requires: %{name}-common = %{version}-%{release}
+
+%description module-audio-jack
+QEMU module for JACK audio output.
+
+%description module-audio-jack -l pl.UTF-8
+Moduł QEMU z wyjściem dźwięku JACK.
+
%package module-block-curl
Summary: QEMU module for 'curl' block devices
Summary(pl.UTF-8): Moduł QEMU dla urządeń blokowych typu 'curl'
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
+Requires: curl-libs >= 7.29.0
%description module-block-curl
QEMU block device support for CURL. It allows to access remote disks
Summary(pl.UTF-8): Moduł QEMU dla urządeń blokowych typu 'rbd'
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
+Requires: ceph-libs >= 12
%description module-block-rbd
QEMU block device support for Ceph/RBD volumes.
Summary(pl.UTF-8): Moduł QEMU dla urządeń blokowych typu 'ssh'
Group: Applications/Emulators
Requires: %{name}-common = %{version}-%{release}
-Requires: libssh >= 0.8
+Requires: libssh >= 0.8.7
%description module-block-ssh
QEMU block device support for accessing remote disks using the Secure
Moduł urządzeń blokowych QEMU do dostępu do zdalnych dysków poprzez
protokół SSH (Secure Shell).
+%package module-ui-dbus
+Summary: QEMU DBus UI driver
+Summary(pl.UTF-8): Sterownik interfejsu użytkownika DBus dla QEMU
+Group: Applications/Emulators
+Requires: %{name}-common = %{version}-%{release}
+
+%description module-ui-dbus
+QEMU DBus UI driver.
+
+%description module-ui-dbus -l pl.UTF-8
+Sterownik interfejsu użytkownika DBus dla QEMU.
+
%package module-ui-gtk
Summary: QEMU GTK UI driver
Summary(pl.UTF-8): Sterownik interfejsu użytkownika GTK dla QEMU
%prep
%setup -q
-%patch0 -p1
-%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%if %{with systemtap}
# don't require stap binary during build
-%{__sed} -i -e "s/has 'stap'/true/" configure
+%{__sed} -i -e "s/stap.found()/true/" meson.build docs/meson.build scripts/meson.build
%endif
%build
build dynamic \
--extra-cflags="%{rpmcflags} %{rpmcppflags}" \
--extra-ldflags="%{rpmldflags} -Wl,-z,relro -Wl,-z,now" \
- --audio-drv-list="alsa%{?with_oss:,oss}%{?with_sdl:,sdl}%{?with_pulseaudio:,pa}" \
+ --audio-drv-list="alsa,jack%{?with_oss:,oss}%{?with_pulseaudio:,pa}%{?with_sdl:,sdl}" \
--enable-attr \
%{__enable_disable brlapi} \
--enable-cap-ng \
- --enable-capstone=system \
+ --enable-capstone \
--enable-curl \
--enable-curses \
--enable-docs \
%{__enable_disable rdma} \
%{__enable_disable sdl} \
%{__enable_disable seccomp} \
- --enable-slirp=system \
%{__enable_disable spice} \
%{__enable_disable smartcard} \
%{__enable_disable snappy} \
%{__enable_disable virgl virglrenderer} \
--enable-virtfs \
--enable-vnc-jpeg \
- --enable-vnc-png \
--enable-vnc-sasl \
%{!?with_vte:--disable-vte} \
%{__enable_disable xen} \
%if %{with system_seabios}
ln -sf /usr/share/seabios/bios.bin $RPM_BUILD_ROOT%{_datadir}/%{name}/bios-256k.bin
# bios.bin provided by qemu is stripped to 128k, with no Xen support, keep it
-for f in $RPM_BUILD_ROOT%{_datadir}/%{name}/*.aml ; do
- bn="$(basename $f)"
- if [ -e "/usr/share/seabios/$bn" ] ; then
- ln -sf "/usr/share/seabios/$bn" "$f"
- fi
-done
%endif
%if %{with gtk3}
: > qemu.lang
%endif
+for t in client server; do
+ cp -p build-dynamic/contrib/ivshmem-$t/ivshmem-$t $RPM_BUILD_ROOT%{_bindir}
+done
+
+# test modules
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/accel-qtest-*.so
# Windows installer icon, not used
%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/qemu-nsis.bmp
# packaged as %doc
%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/edk2-licenses.txt
+# cleanup Sphinx files
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/qemu/{.buildinfo,objects.inv}
+
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libexecdir}/vhost-user-gpu
%endif
%attr(755,root,root) %{_libexecdir}/virtfs-proxy-helper
-%attr(755,root,root) %{_libexecdir}/virtiofsd
%dir %{_libdir}/%{name}
# modules without too many external dependencies
%attr(755,root,root) %{_libdir}/%{name}/block-dmg-bz2.so
%attr(755,root,root) %{_libdir}/%{name}/block-dmg-lzfse.so
%attr(755,root,root) %{_libdir}/%{name}/audio-alsa.so
-%attr(755,root,root) %{_libdir}/%{name}/audio-jack.so
%if %{with oss}
%attr(755,root,root) %{_libdir}/%{name}/audio-oss.so
%endif
%if %{with virgl}
%{_datadir}/%{name}/vhost-user/50-qemu-gpu.json
%endif
-%{_datadir}/%{name}/vhost-user/50-qemu-virtiofsd.json
%{_desktopdir}/qemu.desktop
%{_iconsdir}/hicolor/*x*/apps/qemu.png
%{_iconsdir}/hicolor/32x32/apps/qemu.bmp
%{_mandir}/man1/qemu.1*
%{_mandir}/man1/qemu-storage-daemon.1*
%{_mandir}/man1/virtfs-proxy-helper.1*
-%{_mandir}/man1/virtiofsd.1*
%{_mandir}/man7/qemu-block-drivers.7*
%{_mandir}/man7/qemu-cpu-models.7*
%{_mandir}/man7/qemu-qmp-ref.7*
%attr(755,root,root) %{_bindir}/qemu-img
%{_mandir}/man1/qemu-img.1*
+%files ivshmem
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/ivshmem-client
+%attr(755,root,root) %{_bindir}/ivshmem-server
+
%files user
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-aarch64
%attr(755,root,root) %{_bindir}/qemu-hppa
%attr(755,root,root) %{_bindir}/qemu-i386
%attr(755,root,root) %{_bindir}/qemu-io
+%attr(755,root,root) %{_bindir}/qemu-loongarch64
%attr(755,root,root) %{_bindir}/qemu-m68k
%attr(755,root,root) %{_bindir}/qemu-microblaze
%attr(755,root,root) %{_bindir}/qemu-microblazeel
%attr(755,root,root) %{_bindir}/qemu-hexagon-static
%attr(755,root,root) %{_bindir}/qemu-hppa-static
%attr(755,root,root) %{_bindir}/qemu-i386-static
+%attr(755,root,root) %{_bindir}/qemu-loongarch64-static
%attr(755,root,root) %{_bindir}/qemu-m68k-static
%attr(755,root,root) %{_bindir}/qemu-microblaze-static
%attr(755,root,root) %{_bindir}/qemu-microblazeel-static
%files system-aarch64
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-aarch64
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-aarch64.so
%{_datadir}/%{name}/edk2-aarch64-code.fd
%{_datadir}/%{name}/firmware/60-edk2-aarch64.json
%files system-alpha
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-alpha
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-alpha.so
%{_datadir}/%{name}/palcode-clipper
%files system-arm
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-arm
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-arm.so
%{_datadir}/%{name}/edk2-arm-code.fd
%{_datadir}/%{name}/edk2-arm-vars.fd
%{_datadir}/%{name}/firmware/60-edk2-arm.json
%files system-avr
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-avr
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-avr.so
%files system-cris
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-cris
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-cris.so
%files system-hppa
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-hppa
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-hppa.so
%{_datadir}/%{name}/hppa-firmware.img
+%files system-loongarch
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/qemu-system-loongarch64
+
%files system-m68k
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-m68k
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-m68k.so
%files system-microblaze
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-microblaze
%attr(755,root,root) %{_bindir}/qemu-system-microblazeel
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-microblaze.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-microblazeel.so
%files system-mips
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-mipsel
%attr(755,root,root) %{_bindir}/qemu-system-mips64
%attr(755,root,root) %{_bindir}/qemu-system-mips64el
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-mips.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-mips64.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-mips64el.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-mipsel.so
%files system-nios2
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-nios2
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-nios2.so
%files system-or1k
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-or1k
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-or1k.so
%files system-ppc
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-ppc
%attr(755,root,root) %{_bindir}/qemu-system-ppc64
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-ppc.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-ppc64.so
%{_datadir}/%{name}/bamboo.dtb
%{_datadir}/%{name}/canyonlands.dtb
%{_datadir}/%{name}/openbios-ppc
%files system-riscv32
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-riscv32
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-riscv32.so
%{_datadir}/%{name}/opensbi-riscv32-generic-fw_dynamic.bin
-%{_datadir}/%{name}/opensbi-riscv32-generic-fw_dynamic.elf
%files system-riscv64
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-riscv64
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-riscv64.so
%{_datadir}/%{name}/opensbi-riscv64-generic-fw_dynamic.bin
-%{_datadir}/%{name}/opensbi-riscv64-generic-fw_dynamic.elf
%files system-rx
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-rx
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-rx.so
%files system-s390x
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-s390x
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-s390x.so
%{_datadir}/%{name}/s390-ccw.img
%{_datadir}/%{name}/s390-netboot.img
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-sh4
%attr(755,root,root) %{_bindir}/qemu-system-sh4eb
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-sh4.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-sh4eb.so
%files system-sparc
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-sparc
%attr(755,root,root) %{_bindir}/qemu-system-sparc64
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-sparc.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-sparc64.so
%{_datadir}/%{name}/QEMU,cgthree.bin
%{_datadir}/%{name}/QEMU,tcx.bin
%{_datadir}/%{name}/openbios-sparc32
%files system-tricore
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-tricore
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-tricore.so
%files system-x86
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-i386
%attr(755,root,root) %{_bindir}/qemu-system-x86_64
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-i386.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-x86_64.so
%attr(755,root,root) %{_libdir}/%{name}/accel-tcg-i386.so
%attr(755,root,root) %{_libdir}/%{name}/accel-tcg-x86_64.so
%ifarch %{ix86} %{x8664} x32
%{_datadir}/%{name}/pxe-rtl8139.rom
%{_datadir}/%{name}/pxe-virtio.rom
%{_datadir}/%{name}/qboot.rom
-%{_datadir}/%{name}/sgabios.bin
%{_datadir}/%{name}/vgabios.bin
%{_datadir}/%{name}/vgabios-ati.bin
%{_datadir}/%{name}/vgabios-bochs-display.bin
%{_datadir}/%{name}/vgabios-stdvga.bin
%{_datadir}/%{name}/vgabios-virtio.bin
%{_datadir}/%{name}/vgabios-vmware.bin
+%{_datadir}/%{name}/vof.bin
+%{_datadir}/%{name}/vof-nvram.bin
%{_datadir}/%{name}/firmware/50-edk2-i386-secure.json
%{_datadir}/%{name}/firmware/50-edk2-x86_64-secure.json
%{_datadir}/%{name}/firmware/60-edk2-i386.json
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qemu-system-xtensa
%attr(755,root,root) %{_bindir}/qemu-system-xtensaeb
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-xtensa.so
-%attr(755,root,root) %{_libdir}/%{name}/accel-qtest-xtensaeb.so
%files guest-agent
%defattr(644,root,root,755)
%{_mandir}/man7/qemu-ga-ref.7*
%{_mandir}/man8/qemu-ga.8*
+%files module-audio-jack
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/audio-jack.so
+
%files module-block-curl
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/block-curl.so
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/block-ssh.so
+%files module-ui-dbus
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/audio-dbus.so
+%attr(755,root,root) %{_libdir}/%{name}/ui-dbus.so
+
%if %{with gtk3}
%files module-ui-gtk
%defattr(644,root,root,755)