summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2020-12-12 23:30:03 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2020-12-12 23:53:12 +0000
commit1cc25abb2720fce0fdfaa38e1e3f5b39a4dcf895 (patch)
tree23c97ed78c618e1644c5aecaf2f95d28fab85cb5
parentprofiles/arch/powerpc: unmask dev-util/gtk-doc[test] on ppc (diff)
downloadgentoo-1cc25abb2720fce0fdfaa38e1e3f5b39a4dcf895.tar.gz
gentoo-1cc25abb2720fce0fdfaa38e1e3f5b39a4dcf895.tar.bz2
gentoo-1cc25abb2720fce0fdfaa38e1e3f5b39a4dcf895.zip
app-emulation/qemu: drop USE=xkb, use prebuilt keymaps
USE=xkb re-generates qemu keymaps instead of already prebuilt ones. It has a few problems: - present /usr/bin/qemu-keymaps is preferred over locally built one - /usr/bin/qemu-keymaps can't be ran on a system without x11-misc/xkeyboard-config Let's rely on prebuilt keymaps. Reported-by: Ben Kohler Closes: https://bugs.gentoo.org/759604 Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
-rw-r--r--app-emulation/qemu/files/qemu-5.2.0-disable-keymap.patch25
-rw-r--r--app-emulation/qemu/qemu-5.2.0.ebuild7
-rw-r--r--app-emulation/qemu/qemu-9999.ebuild6
3 files changed, 32 insertions, 6 deletions
diff --git a/app-emulation/qemu/files/qemu-5.2.0-disable-keymap.patch b/app-emulation/qemu/files/qemu-5.2.0-disable-keymap.patch
new file mode 100644
index 000000000000..4b5676be4d29
--- /dev/null
+++ b/app-emulation/qemu/files/qemu-5.2.0-disable-keymap.patch
@@ -0,0 +1,25 @@
+Do not use system's 'qemu-keymap' in native case.
+--- a/meson.build
++++ b/meson.build
+@@ -337,6 +337,8 @@ if 'CONFIG_LIBCAP_NG' in config_host
+ endif
+ if get_option('xkbcommon').auto() and not have_system and not have_tools
+ xkbcommon = not_found
++elif get_option('xkbcommon').disabled()
++ xkbcommon = not_found
+ else
+ xkbcommon = dependency('xkbcommon', required: get_option('xkbcommon'),
+ method: 'pkg-config', static: enable_static)
+--- a/pc-bios/keymaps/meson.build
++++ b/pc-bios/keymaps/meson.build
+@@ -33,7 +33,9 @@ keymaps = {
+ 'tr': '-l tr',
+ }
+
+-if meson.is_cross_build() or 'CONFIG_XKBCOMMON' not in config_host
++if meson.is_cross_build()
+ native_qemu_keymap = find_program('qemu-keymap', required: false, disabler: true)
++elif get_option('xkbcommon').disabled()
++ native_qemu_keymap = not_found
+ else
+ native_qemu_keymap = qemu_keymap
diff --git a/app-emulation/qemu/qemu-5.2.0.ebuild b/app-emulation/qemu/qemu-5.2.0.ebuild
index 5fb557f10fbf..6401088ec2b4 100644
--- a/app-emulation/qemu/qemu-5.2.0.ebuild
+++ b/app-emulation/qemu/qemu-5.2.0.ebuild
@@ -41,7 +41,7 @@ IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
- xfs +xkb zstd"
+ xfs zstd"
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
@@ -93,7 +93,6 @@ ALL_DEPEND="
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
dev-libs/libxml2[static-libs(+)]
- xkb? ( x11-libs/libxkbcommon[static-libs(+)] )
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
@@ -225,6 +224,7 @@ RDEPEND="${CDEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
"${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
+ "${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
)
QA_PREBUILT="
@@ -487,7 +487,8 @@ qemu_src_configure() {
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
$(conf_notuser xfs xfsctl)
- $(conf_notuser xkb xkbcommon)
+ # use prebuilt keymaps, bug #759604
+ --disable-xkbcommon
$(conf_notuser zstd)
)
diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild
index 2ca83e90d024..ad937601f520 100644
--- a/app-emulation/qemu/qemu-9999.ebuild
+++ b/app-emulation/qemu/qemu-9999.ebuild
@@ -41,7 +41,7 @@ IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
+slirp
smartcard snappy spice ssh static static-user systemtap test udev usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
- xfs +xkb zstd"
+ xfs zstd"
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
@@ -93,7 +93,6 @@ ALL_DEPEND="
# softmmu targets (qemu-system-*).
SOFTMMU_TOOLS_DEPEND="
dev-libs/libxml2[static-libs(+)]
- xkb? ( x11-libs/libxkbcommon[static-libs(+)] )
>=x11-libs/pixman-0.28.0[static-libs(+)]
accessibility? (
app-accessibility/brltty[api]
@@ -486,7 +485,8 @@ qemu_src_configure() {
$(conf_notuser xen)
$(conf_notuser xen xen-pci-passthrough)
$(conf_notuser xfs xfsctl)
- $(conf_notuser xkb xkbcommon)
+ # use prebuilt keymaps, bug #759604
+ --disable-xkbcommon
$(conf_notuser zstd)
)