From: Richard Purdie Date: Thu, 24 Aug 2023 15:41:20 +0000 (+0100) Subject: qemu: Upgrade 8.0.4 -> 8.1.0 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5f05531896136cee1286f623947e73d08709fa86;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git qemu: Upgrade 8.0.4 -> 8.1.0 Signed-off-by: Richard Purdie --- diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc index 660ca5f72d6..2e403ce9808 100644 --- a/meta/conf/distro/include/tcmode-default.inc +++ b/meta/conf/distro/include/tcmode-default.inc @@ -22,7 +22,7 @@ BINUVERSION ?= "2.41%" GDBVERSION ?= "13.%" GLIBCVERSION ?= "2.38" LINUXLIBCVERSION ?= "6.4%" -QEMUVERSION ?= "8.0%" +QEMUVERSION ?= "8.1%" GOVERSION ?= "1.20%" LLVMVERSION ?= "16.%" RUSTVERSION ?= "1.70%" diff --git a/meta/recipes-devtools/qemu/qemu-native_8.0.4.bb b/meta/recipes-devtools/qemu/qemu-native_8.1.0.bb similarity index 100% rename from meta/recipes-devtools/qemu/qemu-native_8.0.4.bb rename to meta/recipes-devtools/qemu/qemu-native_8.1.0.bb diff --git a/meta/recipes-devtools/qemu/qemu-system-native_8.0.4.bb b/meta/recipes-devtools/qemu/qemu-system-native_8.1.0.bb similarity index 100% rename from meta/recipes-devtools/qemu/qemu-system-native_8.0.4.bb rename to meta/recipes-devtools/qemu/qemu-system-native_8.1.0.bb diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index ea02bf0c73d..59a66a855a2 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc @@ -9,7 +9,9 @@ LICENSE = "GPL-2.0-only & LGPL-2.1-only" RDEPENDS:${PN}-ptest = "bash" require qemu-targets.inc -inherit pkgconfig ptest update-rc.d systemd +# https://gitlab.com/qemu-project/qemu/-/commit/81e2b198a8cb4ee5fdf108bd438f44b193ee3a36 means +# we need a full python3-native setup +inherit pkgconfig ptest update-rc.d systemd python3native LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \ file://COPYING.LIB;endline=24;md5=8c5efda6cf1e1b03dcfd0e6c0d271c7f" @@ -27,13 +29,13 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \ file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \ file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \ - file://0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch \ + file://fixedmeson.patch \ file://qemu-guest-agent.init \ file://qemu-guest-agent.udev \ " UPSTREAM_CHECK_REGEX = "qemu-(?P\d+(\.\d+)+)\.tar" -SRC_URI[sha256sum] = "81c817dda38af958be5bef1a6cf55b658bb2d3fb87c1e6a571de6b7b2c44516c" +SRC_URI[sha256sum] = "710c101198e334d4762eef65f649bc43fa8a5dd75303554b8acfec3eb25f0e55" SRC_URI:append:class-target = " file://cross.patch" SRC_URI:append:class-nativesdk = " file://cross.patch" @@ -104,9 +106,8 @@ EXTRA_OECONF = " \ --disable-werror \ --extra-cflags='${CFLAGS}' \ --extra-ldflags='${LDFLAGS}' \ - --with-git=/bin/false \ - --with-git-submodules=ignore \ - --meson=meson \ + --disable-download \ + --disable-docs \ ${PACKAGECONFIG_CONFARGS} \ " @@ -144,6 +145,10 @@ do_install () { install -m 0644 ${S}/contrib/systemd/qemu-guest-agent.service ${D}${systemd_unitdir}/system sed -i -e 's,-/usr/bin/,-${bindir}/,g' ${D}${systemd_unitdir}/system/qemu-guest-agent.service fi + # ELF binary /usr/share/qemu/s390-netboot.img has relocations in .text + rm ${D}${datadir}/qemu/s390-netboot.img -f + # ELF binary /usr/share/qemu/s390-ccw.img has relocations in .text [textrel] + rm ${D}${datadir}/qemu/s390-ccw.img -f } # The following fragment will create a wrapper for qemu-mips user emulation diff --git a/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch b/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch deleted file mode 100644 index 049b9a51052..00000000000 --- a/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 348ea441db84a211d4fca7ef5544b5cd06a8a872 Mon Sep 17 00:00:00 2001 -From: Thomas De Schampheleire -Date: Tue, 4 Apr 2023 15:26:07 +0200 -Subject: [PATCH] tracetool: use relative paths for '#line' preprocessor - directives - -The event filename is an absolute path. Convert it to a relative path when -writing '#line' directives, to preserve reproducibility of the generated -output when different base paths are used. - -Upstream-Status: Accepted [https://gitlab.com/qemu-project/qemu/-/commit/9d672e290475001fcecdcc9dc79ad088ff89d17f] - ---- - scripts/tracetool/backend/ftrace.py | 4 +++- - scripts/tracetool/backend/log.py | 4 +++- - scripts/tracetool/backend/syslog.py | 4 +++- - 3 files changed, 9 insertions(+), 3 deletions(-) - -Index: qemu-8.0.0/scripts/tracetool/backend/ftrace.py -=================================================================== ---- qemu-8.0.0.orig/scripts/tracetool/backend/ftrace.py -+++ qemu-8.0.0/scripts/tracetool/backend/ftrace.py -@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" - __email__ = "stefanha@redhat.com" - - -+import os.path -+ - from tracetool import out - - -@@ -45,7 +47,7 @@ def generate_h(event, group): - args=event.args, - event_id="TRACE_" + event.name.upper(), - event_lineno=event.lineno, -- event_filename=event.filename, -+ event_filename=os.path.relpath(event.filename), - fmt=event.fmt.rstrip("\n"), - argnames=argnames) - -Index: qemu-8.0.0/scripts/tracetool/backend/log.py -=================================================================== ---- qemu-8.0.0.orig/scripts/tracetool/backend/log.py -+++ qemu-8.0.0/scripts/tracetool/backend/log.py -@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" - __email__ = "stefanha@redhat.com" - - -+import os.path -+ - from tracetool import out - - -@@ -53,7 +55,7 @@ def generate_h(event, group): - ' }', - cond=cond, - event_lineno=event.lineno, -- event_filename=event.filename, -+ event_filename=os.path.relpath(event.filename), - name=event.name, - fmt=event.fmt.rstrip("\n"), - argnames=argnames) -Index: qemu-8.0.0/scripts/tracetool/backend/syslog.py -=================================================================== ---- qemu-8.0.0.orig/scripts/tracetool/backend/syslog.py -+++ qemu-8.0.0/scripts/tracetool/backend/syslog.py -@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi" - __email__ = "stefanha@redhat.com" - - -+import os.path -+ - from tracetool import out - - -@@ -41,7 +43,7 @@ def generate_h(event, group): - ' }', - cond=cond, - event_lineno=event.lineno, -- event_filename=event.filename, -+ event_filename=os.path.relpath(event.filename), - name=event.name, - fmt=event.fmt.rstrip("\n"), - argnames=argnames) diff --git a/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch b/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch index 02f22143c13..f981a64a543 100644 --- a/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch +++ b/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch @@ -14,16 +14,16 @@ Signed-off-by: He Zhe meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: qemu-8.0.0/meson.build +Index: qemu-8.1.0/meson.build =================================================================== ---- qemu-8.0.0.orig/meson.build -+++ qemu-8.0.0/meson.build -@@ -1213,7 +1213,7 @@ endif +--- qemu-8.1.0.orig/meson.build ++++ qemu-8.1.0/meson.build +@@ -1481,7 +1481,7 @@ endif if not gnutls_crypto.found() if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled() gcrypt = dependency('libgcrypt', version: '>=1.8', - method: 'config-tool', + method: 'pkg-config', - required: get_option('gcrypt'), - kwargs: static_kwargs) + required: get_option('gcrypt')) # Debian has removed -lgpg-error from libgcrypt-config + # as it "spreads unnecessary dependencies" which in diff --git a/meta/recipes-devtools/qemu/qemu/fixedmeson.patch b/meta/recipes-devtools/qemu/qemu/fixedmeson.patch new file mode 100644 index 00000000000..0cbaea07ca6 --- /dev/null +++ b/meta/recipes-devtools/qemu/qemu/fixedmeson.patch @@ -0,0 +1,20 @@ +Upstream-Status: Inappropriate [workaround, would need a real fix for upstream] + +Index: qemu-8.1.0/configure +=================================================================== +--- qemu-8.1.0.orig/configure ++++ qemu-8.1.0/configure +@@ -1032,12 +1032,7 @@ then + exit 1 + fi + +-# At this point, we expect Meson to be installed and available. +-# We expect mkvenv or pip to have created pyvenv/bin/meson for us. +-# We ignore PATH completely here: we want to use the venv's Meson +-# *exclusively*. +- +-meson="$(cd pyvenv/bin; pwd)/meson" ++meson=`which meson` + + # Conditionally ensure Sphinx is installed. + diff --git a/meta/recipes-devtools/qemu/qemu_8.0.4.bb b/meta/recipes-devtools/qemu/qemu_8.1.0.bb similarity index 100% rename from meta/recipes-devtools/qemu/qemu_8.0.4.bb rename to meta/recipes-devtools/qemu/qemu_8.1.0.bb