extra/qemu to 7.0.0-12

This commit is contained in:
Kevin Mihelich 2022-08-16 18:30:28 +00:00
parent 559a4f6d96
commit 2a934d170a
3 changed files with 103 additions and 4 deletions

View file

@ -4,7 +4,6 @@
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - remove makedepends on numactl and seabios, revert not installing qemu seabios files
# - remove makedepend on ceph, drop qemu-block-rbd package
pkgbase=qemu
pkgname=(
@ -29,7 +28,7 @@ pkgname=(
qemu-{base,desktop,emulators-full,full}
)
pkgver=7.0.0
pkgrel=10
pkgrel=12
pkgdesc="A generic and open source machine emulator and virtualizer"
arch=(x86_64)
url="https://www.qemu.org/"
@ -109,6 +108,7 @@ source=(
99-qemu-guest-agent.rules
qemu-7.0.0-virtio-scsi_fix_ctrl_and_event_handler_functions_in_dataplane_mode.patch::https://github.com/qemu/qemu/commit/2f743ef6366c2df4ef51ef3ae318138cdc0125ab.patch
qemu-7.0.0-virtio-scsi_dont_waste_cpu_polling_the_eventvirtqueue.patch::https://github.com/qemu/qemu/commit/38738f7dbbda90fbc161757b7f4be35b52205552.patch
qemu-7.0.0-glibc-2.36.patch
)
sha512sums=('44ecd10c018a3763e1bc87d1d35b98890d0d5636acd69fe9b5cadf5024d5af6a31684d60cbe1c3370e02986434c1fb0ad99224e0e6f6fe7eda169992508157b1'
'SKIP'
@ -118,7 +118,8 @@ sha512sums=('44ecd10c018a3763e1bc87d1d35b98890d0d5636acd69fe9b5cadf5024d5af6a316
'bdf05f99407491e27a03aaf845b7cc8acfa2e0e59968236f10ffc905e5e3d5e8569df496fd71c887da2b5b8d1902494520c7da2d3a8258f7fd93a881dd610c99'
'93b905046fcea8a0a89513b9259c222494ab3b91319dde23baebcb40dc17376a56661b159b99785d6e816831974a0f3cbd7b2f7d89e5fc3c258f88f4492f3839'
'e6208f10db9277c217fe4e1ff57cbb9701bd6fce2f75ed01b5ed5ad78dd0d24d65371ef8d4f6e3a33ad0d280eba6614389795f8c8655ad15162411adc5ec642e'
'a80b2b9a84ecdfa352b6c35f5db547e670e4e5efd485cade893c04b4e5265439cc844fefbd27c050e63c16f727115d513b33a4d50400e1a8ee9fb646f0c0c61c')
'a80b2b9a84ecdfa352b6c35f5db547e670e4e5efd485cade893c04b4e5265439cc844fefbd27c050e63c16f727115d513b33a4d50400e1a8ee9fb646f0c0c61c'
'aa976c84d8524bb40ada506f80c01384c49f2e48fba889b0e535285aee700937886e935d18ad83b38093ba07f38be50b0fae76a0b29fd487daeac31e3221381e')
b2sums=('ceda6d9f1a585298bd49fed61e8bb35f0064ad8388a9f979c8bd68a38bfe1a47c5bb055e5f74f970c2c440957042b9de4a861524120040c56e4cd8b56c5cfb68'
'SKIP'
'b1eca364aa60f130ff5e649f5d004d3fcb75356d3421a4542efdfc410d39b40d9434d15e1dd7bbdbd315cb72b5290d3ea5f77f9c41961a5601cd28ef7bbe72e8'
@ -127,7 +128,8 @@ b2sums=('ceda6d9f1a585298bd49fed61e8bb35f0064ad8388a9f979c8bd68a38bfe1a47c5bb055
'3559fe9c4f744194939770047a0a02d07ff791c845a80726d0bc7b8c4801ed5f11150e7d5adab813844b3dab1cf38c3a5a87fb6efbb8fc9dccdda9fa56409ed8'
'a9a2bdfeeb44eb86cbe88ac7c65f72800bdb2fd5cecb02f3a258cf9470b52832180aab43c89d481f7fd4d067342a9a27dd6c8a94d625b95d6e2b912e47d274e7'
'70aa62f9101b284248d098868031123e290030607c079475e715e2fde267b217c4f1971ba1f666130d8f427334cb5bf6fbabd87f7b7b83ecc3879a09a786aa90'
'f6dc6eec36e52ff230247f949651464ff4fbd8d77a295b16d78e290dd90f31f998c10c8490ec439fef10e6a69679e708d7ebf3ddca344c510c0b19b61db20bba')
'f6dc6eec36e52ff230247f949651464ff4fbd8d77a295b16d78e290dd90f31f998c10c8490ec439fef10e6a69679e708d7ebf3ddca344c510c0b19b61db20bba'
'a7626f5ba67d628d74c909d84d9862e56435a1ace373fe5dedf93cd7d6ae56809b36cbcc271d156a6c3d5cac2a3824ffe2cb49e8f56d6bd964a7c416327f857e')
validpgpkeys=('CEACC9E15534EBABB82D3FA03353C9CEF108B584') # Michael Roth <flukshun@gmail.com>
_qemu_system_deps=(
@ -249,6 +251,8 @@ prepare() {
# fix issues with virtio-scsi https://lists.gnu.org/archive/html/qemu-devel/2022-04/msg04724.html
patch -Np1 -d $pkgbase-$pkgver -i ../qemu-7.0.0-virtio-scsi_fix_ctrl_and_event_handler_functions_in_dataplane_mode.patch
patch -Np1 -d $pkgbase-$pkgver -i ../qemu-7.0.0-virtio-scsi_dont_waste_cpu_polling_the_eventvirtqueue.patch
patch -Np1 -d $pkgbase-$pkgver -i ../qemu-7.0.0-glibc-2.36.patch
}
build() {

View file

@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
0m6uWSWk
=bHJF
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -0,0 +1,43 @@
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index b27a6552aa..52d178afe7 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -95,7 +95,25 @@
#include <linux/soundcard.h>
#include <linux/kd.h>
#include <linux/mtio.h>
+
+#ifdef HAVE_SYS_MOUNT_FSCONFIG
+/*
+ * glibc >= 2.36 linux/mount.h conflicts with sys/mount.h,
+ * which in turn prevents use of linux/fs.h. So we have to
+ * define the constants ourselves for now.
+ */
+#define FS_IOC_GETFLAGS _IOR('f', 1, long)
+#define FS_IOC_SETFLAGS _IOW('f', 2, long)
+#define FS_IOC_GETVERSION _IOR('v', 1, long)
+#define FS_IOC_SETVERSION _IOW('v', 2, long)
+#define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap)
+#define FS_IOC32_GETFLAGS _IOR('f', 1, int)
+#define FS_IOC32_SETFLAGS _IOW('f', 2, int)
+#define FS_IOC32_GETVERSION _IOR('v', 1, int)
+#define FS_IOC32_SETVERSION _IOW('v', 2, int)
+#else
#include <linux/fs.h>
+#endif
#include <linux/fd.h>
#if defined(CONFIG_FIEMAP)
#include <linux/fiemap.h>
diff --git a/meson.build b/meson.build
index 294e9a8f32..30a380752c 100644
--- a/meson.build
+++ b/meson.build
@@ -1963,6 +1963,8 @@ config_host_data.set('HAVE_OPTRESET',
cc.has_header_symbol('getopt.h', 'optreset'))
config_host_data.set('HAVE_IPPROTO_MPTCP',
cc.has_header_symbol('netinet/in.h', 'IPPROTO_MPTCP'))
+config_host_data.set('HAVE_SYS_MOUNT_FSCONFIG',
+ cc.has_header_symbol('sys/mount.h', 'FSCONFIG_SET_FLAG'))
# has_member
config_host_data.set('HAVE_SIGEV_NOTIFY_THREAD_ID',