[packages/qemu] - updated to 8.1.5

qboosh qboosh at pld-linux.org
Mon May 6 20:06:38 CEST 2024


commit 600acfa5e1ddfafb1508a4fcf27115bbb996408a
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Mon May 6 19:49:08 2024 +0200

    - updated to 8.1.5

 qemu-capstone.patch    | 52 --------------------------------------------------
 qemu-cflags.patch      | 28 ++++++++++++++++-----------
 qemu-user-execve.patch | 10 +++++-----
 qemu.spec              | 40 ++++++++++++++++++++++++++------------
 4 files changed, 50 insertions(+), 80 deletions(-)
---
diff --git a/qemu.spec b/qemu.spec
index 6c75308..ea2b103 100644
--- a/qemu.spec
+++ b/qemu.spec
@@ -44,12 +44,12 @@
 Summary:	QEMU CPU Emulator
 Summary(pl.UTF-8):	QEMU - emulator procesora
 Name:		qemu
-Version:	8.0.5
+Version:	8.1.5
 Release:	1
 License:	GPL v2, BSD (edk2 firmware files)
 Group:		Applications/Emulators
 Source0:	https://download.qemu.org/%{name}-%{version}.tar.xz
-# Source0-md5:	c803c9a643131013bef6c3b9b541c5a4
+# Source0-md5:	2434331a1e32cb919f02897865a2e927
 # Loads kvm kernel modules at boot
 Source3:	kvm-modules-load.conf
 # Creates /dev/kvm
@@ -75,7 +75,6 @@ Patch5:		%{name}-u2f-emu.patch
 Patch6:		%{name}-linux-mount.patch
 Patch7:		libvfio-user-types.patch
 Patch8:		libvfio-user-alloca.patch
-Patch9:		%{name}-capstone.patch
 URL:		https://www.qemu.org/
 %{?with_opengl:BuildRequires:	Mesa-libgbm-devel}
 %{?with_opengl:BuildRequires:	OpenGL-GLX-devel}
@@ -95,17 +94,16 @@ BuildRequires:	daxctl-devel >= 57
 BuildRequires:	flex
 BuildRequires:	gcc >= 6:7.4
 BuildRequires:	gettext-tools
-BuildRequires:	glib2-devel >= 1:2.64
+BuildRequires:	glib2-devel >= 1:2.75.3
 # minimal is 3.4 but new features are used up to 6
 %{?with_glusterfs:BuildRequires:	glusterfs-devel >= 6}
 BuildRequires:	gnutls-devel >= 3.6.14
 %{?with_gtk3:BuildRequires:	gtk+3-devel >= 3.22.0}
 BuildRequires:	jack-audio-connection-kit-devel
 %{?with_vfio_user:BuildRequires:	json-c-devel >= 0.11}
-# for tests
-#BuildRequires:	keyutils-devel
+BuildRequires:	keyutils-devel
 BuildRequires:	libaio-devel
-BuildRequires:	libblkio-devel
+BuildRequires:	libblkio-devel >= 1.3.0
 BuildRequires:	libbpf-devel
 %{?with_smartcard:BuildRequires:	libcacard-devel >= 2.5.1}
 BuildRequires:	libcap-ng-devel
@@ -135,7 +133,7 @@ BuildRequires:	libxml2-devel >= 2.0
 %{?with_lttng:BuildRequires:	lttng-ust-devel >= 2.1}
 BuildRequires:	lzfse-devel
 BuildRequires:	lzo-devel >= 2
-BuildRequires:	meson >= 0.61.5
+BuildRequires:	meson >= 0.63.0
 %{?with_multipath:BuildRequires:	multipath-tools-devel}
 BuildRequires:	ncurses-devel
 # also libgcrypt-devel >= 1.8 possible, but gnutls already pulls nettle
@@ -146,6 +144,7 @@ BuildRequires:	numactl-devel
 BuildRequires:	pam-devel
 BuildRequires:	perl-Encode
 BuildRequires:	perl-tools-pod
+BuildRequires:	pipewire-devel >= 0.3.60
 BuildRequires:	pixman-devel >= 0.21.8
 BuildRequires:	pkgconfig
 %{?with_pmem:BuildRequires:	pmdk-devel}
@@ -186,7 +185,7 @@ BuildRequires:	xz
 BuildRequires:	zlib-devel
 BuildRequires:	zstd-devel >= 1.4.0
 %if %{with user_static}
-BuildRequires:	glib2-static >= 1:2.74
+BuildRequires:	glib2-static >= 1:2.75.3
 BuildRequires:	glibc-static
 BuildRequires:	libstdc++-static >= 6:4.7
 BuildRequires:	pcre2-8-static >= 10.32
@@ -299,9 +298,10 @@ Requires(pre):	/bin/id
 Requires(pre):	/usr/bin/getgid
 Requires(pre):	/usr/sbin/groupadd
 Requires(pre):	/usr/sbin/useradd
-Requires:	glib2 >= 1:2.64
+Requires:	glib2 >= 1:2.75.3
 Requires:	gnutls-libs >= 3.6.14
 %{?with_gtk3:Requires:	gtk+3 >= 3.22.0}
+Requires:	libblkio >= 1.3.0
 Requires:	nettle >= 3.4
 Requires:	systemd-units >= 38
 %{?with_vte:Requires:	vte >= 0.32.0}
@@ -811,7 +811,7 @@ Summary:	QEMU guest agent
 Summary(pl.UTF-8):	Agent gościa QEMU
 Group:		Daemons
 Requires(post,preun,postun):	systemd-units >= 38
-Requires:	glib2 >= 1:2.64
+Requires:	glib2 >= 1:2.75.3
 Requires:	liburing >= 0.3
 Requires:	systemd-units >= 38
 Obsoletes:	qemu-kvm-guest-agent < 2
@@ -849,6 +849,19 @@ 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-audio-pipewire
+Summary:	QEMU module for PipeWire audio output
+Summary(pl.UTF-8):	Moduł QEMU z wyjściem dźwięku PipeWire
+Group:		Applications/Emulators
+Requires:	%{name}-common = %{version}-%{release}
+Requires:	pipewire-libs >= 0.3.60
+
+%description module-audio-pipewire
+QEMU module for PipeWire audio output.
+
+%description module-audio-pipewire -l pl.UTF-8
+Moduł QEMU z wyjściem dźwięku PipeWire.
+
 %package module-block-curl
 Summary:	QEMU module for 'curl' block devices
 Summary(pl.UTF-8):	Moduł QEMU dla urządeń blokowych typu 'curl'
@@ -1023,7 +1036,6 @@ Pliki nagłówkowe biblioteki vfio-user.
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
-%patch9 -p1
 
 %{__sed} -i '1s,/usr/bin/env python3,%{__python3},' scripts/qemu-trace-stap
 
@@ -1721,6 +1733,10 @@ fi
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/audio-jack.so
 
+%files module-audio-pipewire
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/audio-pipewire.so
+
 %files module-block-curl
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/%{name}/block-curl.so
diff --git a/qemu-capstone.patch b/qemu-capstone.patch
deleted file mode 100644
index c6a73d6..0000000
--- a/qemu-capstone.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Workaround symbol conflict with capstone/tricore.h
---- qemu-8.0.5/target/tricore/cpu.h.orig	2023-09-21 22:19:34.000000000 +0200
-+++ qemu-8.0.5/target/tricore/cpu.h	2024-04-27 21:25:15.112539225 +0200
-@@ -258,7 +258,7 @@ enum tricore_features {
-     TRICORE_FEATURE_161,
- };
- 
--static inline int tricore_feature(CPUTriCoreState *env, int feature)
-+static inline int qemu_tricore_feature(CPUTriCoreState *env, int feature)
- {
-     return (env->features & (1ULL << feature)) != 0;
- }
---- qemu-8.0.5/target/tricore/op_helper.c.orig	2023-09-21 22:19:34.000000000 +0200
-+++ qemu-8.0.5/target/tricore/op_helper.c	2024-04-27 21:25:37.975748698 +0200
-@@ -2528,7 +2528,7 @@ void helper_ret(CPUTriCoreState *env)
-     /* PCXI = new_PCXI; */
-     env->PCXI = new_PCXI;
- 
--    if (tricore_feature(env, TRICORE_FEATURE_13)) {
-+    if (qemu_tricore_feature(env, TRICORE_FEATURE_13)) {
-         /* PSW = new_PSW */
-         psw_write(env, new_PSW);
-     } else {
-@@ -2639,7 +2639,7 @@ void helper_rfm(CPUTriCoreState *env)
-     env->gpr_a[10] = cpu_ldl_data(env, env->DCX+8);
-     env->gpr_a[11] = cpu_ldl_data(env, env->DCX+12);
- 
--    if (tricore_feature(env, TRICORE_FEATURE_131)) {
-+    if (qemu_tricore_feature(env, TRICORE_FEATURE_131)) {
-         env->DBGTCR = 0;
-     }
- }
---- qemu-8.0.5/target/tricore/cpu.c.orig	2023-09-21 22:19:34.000000000 +0200
-+++ qemu-8.0.5/target/tricore/cpu.c	2024-04-27 21:25:52.302337751 +0200
-@@ -103,14 +103,14 @@ static void tricore_cpu_realizefn(Device
-     }
- 
-     /* Some features automatically imply others */
--    if (tricore_feature(env, TRICORE_FEATURE_161)) {
-+    if (qemu_tricore_feature(env, TRICORE_FEATURE_161)) {
-         set_feature(env, TRICORE_FEATURE_16);
-     }
- 
--    if (tricore_feature(env, TRICORE_FEATURE_16)) {
-+    if (qemu_tricore_feature(env, TRICORE_FEATURE_16)) {
-         set_feature(env, TRICORE_FEATURE_131);
-     }
--    if (tricore_feature(env, TRICORE_FEATURE_131)) {
-+    if (qemu_tricore_feature(env, TRICORE_FEATURE_131)) {
-         set_feature(env, TRICORE_FEATURE_13);
-     }
-     cpu_reset(cs);
diff --git a/qemu-cflags.patch b/qemu-cflags.patch
index 25b6cc1..bdc34a6 100644
--- a/qemu-cflags.patch
+++ b/qemu-cflags.patch
@@ -1,13 +1,19 @@
---- qemu-7.1.0/configure.orig	2022-10-05 06:29:01.214549869 +0200
-+++ qemu-7.1.0/configure	2022-10-05 16:30:40.352312168 +0200
-@@ -2246,10 +2246,6 @@ esac
+--- qemu-8.1.5/meson.build.orig	2024-01-29 19:31:43.000000000 +0100
++++ qemu-8.1.5/meson.build	2024-05-06 18:19:10.780261171 +0200
+@@ -478,16 +478,6 @@ if 'cpp' in all_languages
+   qemu_cxxflags = ['-D__STDC_LIMIT_MACROS', '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS'] + qemu_cflags
+ endif
  
- write_c_skeleton
- 
--if test "$fortify_source" = "yes" ; then
--  QEMU_CFLAGS="-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $QEMU_CFLAGS"
--fi
+-# clang does not support glibc + FORTIFY_SOURCE (is it still true?)
+-if get_option('optimization') != '0' and targetos == 'linux'
+-  if cc.get_id() == 'gcc'
+-    qemu_cflags += ['-U_FORTIFY_SOURCE', '-D_FORTIFY_SOURCE=2']
+-  endif
+-  if 'cpp' in all_languages and cxx.get_id() == 'gcc'
+-    qemu_cxxflags += ['-U_FORTIFY_SOURCE', '-D_FORTIFY_SOURCE=2']
+-  endif
+-endif
 -
- if test "$have_asan" = "yes"; then
-   QEMU_CFLAGS="-fsanitize=address $QEMU_CFLAGS"
-   QEMU_LDFLAGS="-fsanitize=address $QEMU_LDFLAGS"
+ add_project_arguments(qemu_cflags, native: false, language: 'c')
+ add_project_arguments(cc.get_supported_arguments(warn_flags), native: false, language: 'c')
+ if 'cpp' in all_languages
diff --git a/qemu-user-execve.patch b/qemu-user-execve.patch
index bec6a48..3a3188e 100644
--- a/qemu-user-execve.patch
+++ b/qemu-user-execve.patch
@@ -88,10 +88,10 @@ index ee12035..5951279 100644
  extern unsigned long mmap_min_addr;
  
  typedef struct IOCTLEntry IOCTLEntry;
---- qemu-8.0.5/linux-user/syscall.c.orig	2023-09-21 22:19:33.000000000 +0200
-+++ qemu-8.0.5/linux-user/syscall.c	2024-04-28 08:04:44.168009553 +0200
-@@ -8408,6 +8408,109 @@ static int do_openat(CPUArchState *cpu_e
-     return safe_openat(dirfd, path(pathname), flags, mode);
+--- qemu-8.1.5/linux-user/syscall.c.orig	2024-01-29 19:31:43.000000000 +0100
++++ qemu-8.1.5/linux-user/syscall.c	2024-05-06 19:05:26.075673131 +0200
+@@ -8680,6 +8680,109 @@ ssize_t do_guest_readlink(const char *pa
+     return ret;
  }
  
 +#define BINPRM_BUF_SIZE 128
@@ -200,7 +200,7 @@ index ee12035..5951279 100644
  static int do_execv(CPUArchState *cpu_env, int dirfd,
                      abi_long pathname, abi_long guest_argp,
                      abi_long guest_envp, int flags, bool is_execveat)
-@@ -8493,9 +8596,12 @@ static int do_execv(CPUArchState *cpu_en
+@@ -8765,9 +8868,12 @@ static int do_execv(CPUArchState *cpu_en
      if (is_proc_myself(p, "exe")) {
          exe = exec_path;
      }
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/qemu.git/commitdiff/600acfa5e1ddfafb1508a4fcf27115bbb996408a



More information about the pld-cvs-commit mailing list