qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: [PATCH 128/132] meson: replace pc-bios/keymaps/Makefile
Date: Thu, 19 Dec 2019 13:23:48 +0100	[thread overview]
Message-ID: <1576758232-12439-37-git-send-email-pbonzini@redhat.com> (raw)
In-Reply-To: <1576155176-2464-1-git-send-email-pbonzini@redhat.com>

From: Marc-André Lureau <marcandre.lureau@redhat.com>

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 meson.build                 | 13 ++++---
 pc-bios/keymaps/Makefile    | 56 ---------------------------
 pc-bios/keymaps/meson.build | 94 +++++++++++++++++++++++++++------------------
 3 files changed, 65 insertions(+), 98 deletions(-)
 delete mode 100644 pc-bios/keymaps/Makefile

diff --git a/meson.build b/meson.build
index 9a5b9d9..884aa6c 100644
--- a/meson.build
+++ b/meson.build
@@ -897,6 +897,14 @@ if 'CONFIG_GUEST_AGENT' in config_host
   subdir('qga')
 endif
 
+# used for the update-keymaps target
+if xkbcommon.found()
+  qemu_keymap = executable('qemu-keymap', files('qemu-keymap.c', 'ui/input-keymap.c'),
+                           dependencies: [qemuutil, xkbcommon], install: have_tools)
+else
+  qemu_keymap = disabler()
+endif
+
 if have_tools
   executable('qemu-img', [files('qemu-img.c'), hxdep], dependencies: [block, qemuutil], install: true)
   if host_machine.system() == 'linux' or host_machine.system() == 'sunos' or host_machine.system().endswith('bsd')
@@ -907,11 +915,6 @@ if have_tools
   subdir('contrib/rdmacm-mux')
   subdir('contrib/elf2dmp')
 
-  if xkbcommon.found()
-    executable('qemu-keymap', files('qemu-keymap.c', 'ui/input-keymap.c'),
-               dependencies: [qemuutil, xkbcommon], install: true)
-  endif
-
   executable('qemu-edid', files('qemu-edid.c', 'hw/display/edid-generate.c'),
              dependencies: qemuutil)
 
diff --git a/pc-bios/keymaps/Makefile b/pc-bios/keymaps/Makefile
deleted file mode 100644
index 76217b0..0000000
--- a/pc-bios/keymaps/Makefile
+++ /dev/null
@@ -1,56 +0,0 @@
-
-KEYMAP	:= $(shell which qemu-keymap 2>/dev/null)
-
-MAPS	:= ar bepo cz da de de-ch en-us en-gb es et fi fo \
-	   fr fr-be fr-ca fr-ch \
-	   hr hu is it ja lt lv mk nl no pl pt pt-br ru th tr
-
-ar	: MAP_FLAGS :=	-l ar
-bepo	: MAP_FLAGS :=	-l fr -v dvorak
-cz	: MAP_FLAGS :=	-l cz
-da	: MAP_FLAGS :=	-l dk
-de	: MAP_FLAGS :=	-l de -v nodeadkeys
-de-ch	: MAP_FLAGS :=	-l ch
-en-us	: MAP_FLAGS :=	-l us
-en-gb	: MAP_FLAGS :=	-l gb
-es	: MAP_FLAGS :=	-l es
-et	: MAP_FLAGS :=	-l et
-fi	: MAP_FLAGS :=	-l fi
-fo	: MAP_FLAGS :=	-l fo
-fr	: MAP_FLAGS :=	-l fr -v nodeadkeys
-fr-be	: MAP_FLAGS :=	-l be
-fr-ca	: MAP_FLAGS :=	-l ca -v fr
-fr-ch	: MAP_FLAGS :=	-l ch -v fr
-hr	: MAP_FLAGS :=	-l hr
-hu	: MAP_FLAGS :=	-l hu
-is	: MAP_FLAGS :=	-l is
-it	: MAP_FLAGS :=	-l it
-ja	: MAP_FLAGS :=	-l jp -m jp106
-lt	: MAP_FLAGS :=	-l lt
-lv	: MAP_FLAGS :=	-l lv
-mk	: MAP_FLAGS :=	-l mk
-nl	: MAP_FLAGS :=	-l nl
-no	: MAP_FLAGS :=	-l no
-pl	: MAP_FLAGS :=	-l pl
-pt	: MAP_FLAGS :=	-l pt
-pt-br	: MAP_FLAGS :=	-l br
-ru	: MAP_FLAGS :=	-l ru
-th	: MAP_FLAGS :=	-l th
-tr	: MAP_FLAGS :=	-l tr
-
-ifeq ($(KEYMAP),)
-
-all:
-	@echo "nothing to do (qemu-keymap not found)"
-
-else
-
-all: $(MAPS)
-
-clean:
-	rm -f $(MAPS)
-
-$(MAPS): $(KEYMAP) Makefile
-	$(KEYMAP) -f $@ $(MAP_FLAGS)
-
-endif
diff --git a/pc-bios/keymaps/meson.build b/pc-bios/keymaps/meson.build
index 04c2a17..99cccd7 100644
--- a/pc-bios/keymaps/meson.build
+++ b/pc-bios/keymaps/meson.build
@@ -1,38 +1,58 @@
-keymaps = [
-  'ar',
-  'bepo',
-  'cz',
-  'da',
-  'de',
-  'de-ch',
-  'en-gb',
-  'en-us',
-  'es',
-  'et',
-  'fi',
-  'fo',
-  'fr',
-  'fr-be',
-  'fr-ca',
-  'fr-ch',
-  'hr',
-  'hu',
-  'is',
-  'it',
-  'ja',
-  'lt',
-  'lv',
-  'mk',
-  'nl',
-  'no',
-  'pl',
-  'pt',
-  'pt-br',
-  'ru',
-  'sl',
-  'sv',
-  'th',
-  'tr',
-]
+keymaps = {
+  'ar': '-l ar',
+  'bepo': '-l fr -v dvorak',
+  'cz': '-l cz',
+  'da': '-l dk',
+  'de': '-l de -v nodeadkeys',
+  'de-ch': '-l ch',
+  'en-gb': '-l us',
+  'en-us': '-l gb',
+  'es': '-l es',
+  'et': '-l et',
+  'fi': '-l fi',
+  'fo': '-l fo',
+  'fr': '-l fr -v nodeadkeys',
+  'fr-be': '-l be',
+  'fr-ca': '-l ca -v fr',
+  'fr-ch': '-l ch -v fr',
+  'hr': '-l hr',
+  'hu': '-l hu',
+  'is': '-l is',
+  'it': '-l it',
+  'ja': '-l jp -m jp106',
+  'lt': '-l lt',
+  'lv': '-l lv',
+  'mk': '-l mk',
+  'nl': '-l nl',
+  'no': '-l no',
+  'pl': '-l pl',
+  'pt': '-l pt',
+  'pt-br': '-l br',
+  'ru': '-l ru',
+  'sl': '',
+  'sv': '',
+  'th': '-l th',
+  'tr': '-l tr',
+}
 
-install_data(keymaps, install_dir: config_host['qemu_datadir'] / 'keymaps')
+install_data(keymaps.keys(), install_dir: config_host['qemu_datadir'] / 'keymaps')
+
+if meson.is_cross_build()
+  native_qemu_keymap = find_program('qemu-keymap', required: false)
+  have_qemu_keymap = native_qemu_keymap.found()
+else
+  native_qemu_keymap = qemu_keymap
+  # disabler disables everything below
+  have_qemu_keymap = true
+endif
+if have_qemu_keymap
+  t = []
+  foreach km, args: keymaps
+    t += custom_target(km,
+                       output: km,
+                       command: [qemu_keymap, '-f', '@OUTPUT@', args.split()])
+  endforeach
+  if t.length() > 0
+    alias_target('update-keymaps', t)
+  endif
+endif
-- 
1.8.3.1




  parent reply	other threads:[~2019-12-19 12:58 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-12 12:50 [RFC PATCH v3 000/132] Proof of concept for Meson integration Paolo Bonzini
2019-12-12 12:50 ` [PATCH 001/132] build-sys hack: ensure target directory is there Paolo Bonzini
2019-12-12 12:50 ` [PATCH 002/132] configure: do not include $(...) variables in config-host.mak Paolo Bonzini
2019-12-12 12:50 ` [PATCH 003/132] configure: expand path variables for meson configure Paolo Bonzini
2019-12-12 12:50 ` [PATCH 004/132] configure: integrate Meson in the build system Paolo Bonzini
2019-12-12 12:50 ` [PATCH 005/132] configure: generate Meson cross file Paolo Bonzini
2019-12-12 12:50 ` [PATCH 006/132] build-sys: add meson submodule Paolo Bonzini
2019-12-12 12:50 ` [PATCH 007/132] meson: enable pie Paolo Bonzini
2019-12-12 12:50 ` [PATCH 008/132] meson: use coverage option Paolo Bonzini
2019-12-12 12:50 ` [PATCH 009/132] libqemuutil: convert to meson Paolo Bonzini
2019-12-12 12:50 ` [PATCH 010/132] meson: add remaining generated tcg trace helpers Paolo Bonzini
2019-12-12 12:50 ` [PATCH 011/132] meson: add version.o Paolo Bonzini
2019-12-12 12:50 ` [PATCH 012/132] contrib/libvhost-user: convert to Meson Paolo Bonzini
2019-12-12 12:50 ` [PATCH 013/132] contrib/vhost-user-blk: " Paolo Bonzini
2019-12-12 12:50 ` [PATCH 014/132] contrib/vhost-user-scsi: " Paolo Bonzini
2019-12-12 12:50 ` [PATCH 015/132] contrib/rdmacm-mux: " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 016/132] contrib/vhost-user-input: convert to meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 017/132] contrib/vhost-user-gpu: " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 018/132] contrib/ivshmem: " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 019/132] contrib/elf2dmp: " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 020/132] meson: convert qemu-ga Paolo Bonzini
2019-12-12 12:51 ` [PATCH 021/132] meson: convert vss-win32 Paolo Bonzini
2019-12-12 12:51 ` [PATCH 022/132] meson: add msi generation Paolo Bonzini
2019-12-12 12:51 ` [PATCH 023/132] meson: add qemu-bridge-helper Paolo Bonzini
2019-12-12 12:51 ` [PATCH 024/132] meson: add qemu-keymap Paolo Bonzini
2019-12-12 12:51 ` [PATCH 025/132] meson: add qemu-edid Paolo Bonzini
2019-12-12 12:51 ` [PATCH 026/132] meson: add virtfs-proxy-helper Paolo Bonzini
2019-12-12 12:51 ` [PATCH 027/132] meson: keymap-gen Paolo Bonzini
2019-12-12 12:51 ` [PATCH 028/132] meson: generate qemu-version.h Paolo Bonzini
2019-12-12 12:51 ` [PATCH 029/132] meson: generate shader headers Paolo Bonzini
2019-12-12 12:51 ` [PATCH 030/132] meson: generate hxtool files Paolo Bonzini
2019-12-12 12:51 ` [PATCH 031/132] meson: configure 50-qemu-gpu.json Paolo Bonzini
2019-12-12 12:51 ` [PATCH 032/132] meson: uncompress edk2 bios Paolo Bonzini
2020-01-03 10:48   ` Philippe Mathieu-Daudé
2020-01-03 10:52   ` Philippe Mathieu-Daudé
2020-01-07 11:28     ` Paolo Bonzini
2019-12-12 12:51 ` [PATCH 033/132] build-sys hack: link with whole .fa archives Paolo Bonzini
2019-12-12 12:51 ` [PATCH 034/132] meson: convert qom directory to Meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 035/132] meson: convert authz " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 036/132] meson: convert crypto " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 037/132] meson: convert io " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 038/132] meson: infrastructure for building emulators Paolo Bonzini
2019-12-12 12:51 ` [PATCH 039/132] meson: add macos dependencies Paolo Bonzini
2019-12-12 12:51 ` [PATCH 040/132] meson: add modules infrastructure Paolo Bonzini
2019-12-12 12:51 ` [PATCH 041/132] meson: convert chardev directory to Meson (tools part) Paolo Bonzini
2019-12-12 12:51 ` [PATCH 042/132] meson: convert block Paolo Bonzini
2019-12-12 12:51 ` [PATCH 043/132] meson: qemu-{img,io,nbd} Paolo Bonzini
2019-12-12 12:51 ` [PATCH 044/132] meson: qemu-pr-helper Paolo Bonzini
2019-12-12 12:51 ` [PATCH 045/132] configure, Makefile; remove TOOLS and HELPERS-y variable Paolo Bonzini
2019-12-12 12:51 ` [PATCH 046/132] meson: convert chardev directory to Meson (emulator part) Paolo Bonzini
2019-12-12 12:51 ` [PATCH 047/132] meson: convert audio directory to Meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 048/132] meson: convert ui " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 049/132] meson: convert root " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 050/132] meson: convert trace/ Paolo Bonzini
2019-12-12 12:51 ` [PATCH 051/132] meson: convert qom/ Paolo Bonzini
2019-12-12 12:51 ` [PATCH 052/132] meson: convert block/ Paolo Bonzini
2019-12-12 12:51 ` [PATCH 053/132] meson: convert dump/ Paolo Bonzini
2019-12-12 12:51 ` [PATCH 054/132] meson: convert monitor directory to Meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 055/132] meson: convert replay " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 056/132] meson: convert migration " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 057/132] meson: build softmmu-specific migration/ram.c Paolo Bonzini
2019-12-12 12:51 ` [PATCH 058/132] meson: convert net directory to Meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 059/132] meson: convert backends " Paolo Bonzini
2019-12-12 12:51 ` [PATCH 060/132] meson: convert fsdev/ Paolo Bonzini
2019-12-12 12:51 ` [PATCH 061/132] meson: convert disas directory to Meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 062/132] meson: convert qapi-specific to meson Paolo Bonzini
2019-12-12 12:51 ` [PATCH 063/132] meson: convert hw/xen Paolo Bonzini
2019-12-12 12:51 ` [PATCH 064/132] meson: convert hw/core Paolo Bonzini
2019-12-12 12:51 ` [PATCH 065/132] meson: convert hw/semihosting Paolo Bonzini
2019-12-12 12:51 ` [PATCH 066/132] meson: convert hw/smbios Paolo Bonzini
2019-12-12 12:51 ` [PATCH 067/132] meson: convert hw/mem Paolo Bonzini
2019-12-12 12:51 ` [PATCH 068/132] meson: convert hw/watchdog Paolo Bonzini
2019-12-12 12:51 ` [PATCH 069/132] meson: convert hw/virtio Paolo Bonzini
2019-12-12 12:51 ` [PATCH 070/132] meson: convert hw/vfio Paolo Bonzini
2019-12-12 12:51 ` [PATCH 071/132] meson: convert hw/usb Paolo Bonzini
2019-12-12 12:51 ` [PATCH 072/132] meson: convert hw/tpm Paolo Bonzini
2019-12-12 12:51 ` [PATCH 073/132] meson: convert hw/timer Paolo Bonzini
2019-12-12 12:51 ` [PATCH 074/132] meson: convert hw/ssi Paolo Bonzini
2019-12-12 12:51 ` [PATCH 075/132] meson: convert hw/sd Paolo Bonzini
2019-12-12 12:52 ` [PATCH 076/132] meson: convert hw/scsi Paolo Bonzini
2019-12-12 12:52 ` [PATCH 077/132] meson: convert hw/pcmcia Paolo Bonzini
2019-12-12 12:52 ` [PATCH 078/132] meson: convert hw/pci-host Paolo Bonzini
2019-12-12 12:52 ` [PATCH 079/132] meson: convert hw/pci-bridge Paolo Bonzini
2019-12-12 12:52 ` [PATCH 080/132] meson: convert hw/pci Paolo Bonzini
2019-12-12 12:52 ` [PATCH 081/132] meson: convert hw/nvram Paolo Bonzini
2019-12-12 12:52 ` [PATCH 082/132] meson: convert hw/rdma Paolo Bonzini
2019-12-12 12:52 ` [PATCH 083/132] meson: convert hw/net Paolo Bonzini
2019-12-12 12:52 ` [PATCH 084/132] meson: convert hw/misc Paolo Bonzini
2019-12-12 12:52 ` [PATCH 085/132] meson: convert hw/isa Paolo Bonzini
2019-12-12 12:52 ` [PATCH 086/132] meson: convert hw/ipmi Paolo Bonzini
2019-12-12 12:52 ` [PATCH 087/132] meson: convert hw/ipack Paolo Bonzini
2019-12-12 12:52 ` [PATCH 088/132] meson: convert hw/intc Paolo Bonzini
2019-12-12 12:52 ` [PATCH 089/132] meson: convert hw/input Paolo Bonzini
2019-12-12 12:52 ` [PATCH 090/132] meson: convert hw/ide Paolo Bonzini
2019-12-12 12:52 ` [PATCH 091/132] meson: convert hw/i2c Paolo Bonzini
2019-12-12 12:52 ` [PATCH 092/132] meson: convert hw/hyperv Paolo Bonzini
2019-12-12 12:52 ` [PATCH 093/132] meson: convert hw/gpio Paolo Bonzini
2019-12-19  7:25 ` [RFC PATCH v3 000/132] Proof of concept for Meson integration Markus Armbruster
2019-12-19 12:32   ` Paolo Bonzini
2019-12-19 12:23 ` [PATCH 092/132] meson: convert hw/hyperv Paolo Bonzini
2019-12-19 12:23 ` [PATCH 093/132] meson: convert hw/gpio Paolo Bonzini
2019-12-19 12:23 ` [PATCH 094/132] meson: convert hw/dma Paolo Bonzini
2019-12-19 12:23 ` [PATCH 095/132] meson: convert hw/display Paolo Bonzini
2019-12-19 12:23 ` [PATCH 096/132] meson: convert hw/cpu Paolo Bonzini
2019-12-19 12:23 ` [PATCH 097/132] meson: convert hw/char Paolo Bonzini
2019-12-19 12:23 ` [PATCH 098/132] meson: convert hw/bt Paolo Bonzini
2019-12-19 12:23 ` [PATCH 099/132] meson: convert hw/block Paolo Bonzini
2019-12-19 12:23 ` [PATCH 100/132] meson: convert hw/audio Paolo Bonzini
2019-12-19 12:23 ` [PATCH 101/132] meson: convert hw/adc Paolo Bonzini
2019-12-19 12:23 ` [PATCH 102/132] meson: convert hw/acpi Paolo Bonzini
2019-12-19 12:23 ` [PATCH 103/132] meson: convert hw/9pfs Paolo Bonzini
2019-12-19 12:23 ` [PATCH 104/132] meson: convert target/s390x/gen-features.h Paolo Bonzini
2019-12-19 12:23 ` [PATCH 105/132] meson: convert hw/arch* Paolo Bonzini
2019-12-19 12:23 ` [PATCH 106/132] meson: target Paolo Bonzini
2019-12-19 12:23 ` [PATCH 107/132] meson: accel Paolo Bonzini
2019-12-19 12:23 ` [PATCH 108/132] meson: linux-user Paolo Bonzini
2019-12-19 16:07   ` Laurent Vivier
2019-12-19 12:23 ` [PATCH 109/132] meson: bsd-user Paolo Bonzini
2019-12-19 12:23 ` [PATCH 110/132] meson: cpu-emu Paolo Bonzini
2019-12-19 12:23 ` [PATCH 111/132] meson: softmmu Paolo Bonzini
2019-12-19 12:23 ` [PATCH 112/132] Aaaaallelujah! Paolo Bonzini
2019-12-19 12:23 ` [PATCH 113/132] systemtap Paolo Bonzini
2019-12-19 12:23 ` [PATCH 114/132] build-sys/rules.mak: remove version.o Paolo Bonzini
2019-12-19 12:23 ` [PATCH 115/132] remove Makefile.target Paolo Bonzini
2019-12-19 12:23 ` [PATCH 116/132] meson: sphinx-build Paolo Bonzini
2019-12-19 12:23 ` [PATCH 117/132] meson: generate version.texi Paolo Bonzini
2019-12-19 12:23 ` [PATCH 118/132] meson: build texi doc Paolo Bonzini
2019-12-19 12:23 ` [PATCH 119/132] meson: add NSIS building Paolo Bonzini
2019-12-19 12:23 ` [PATCH 120/132] meson: install some scripts Paolo Bonzini
2019-12-19 12:23 ` [PATCH 121/132] meson: install edk2 Paolo Bonzini
2020-01-03 10:51   ` Philippe Mathieu-Daudé
2019-12-19 12:23 ` [PATCH 122/132] meson: install blobs Paolo Bonzini
2019-12-19 12:23 ` [PATCH 123/132] meson: install edk2 json descriptors Paolo Bonzini
2019-12-19 12:23 ` [PATCH 124/132] meson: install icons Paolo Bonzini
2019-12-19 12:23 ` [PATCH 125/132] meson: install desktop file Paolo Bonzini
2019-12-19 12:23 ` [PATCH 126/132] meson: install keymaps Paolo Bonzini
2019-12-19 12:23 ` [PATCH 127/132] meson: convert po/ Paolo Bonzini
2019-12-19 12:23 ` Paolo Bonzini [this message]
2019-12-19 12:23 ` [PATCH 129/132] meson: replace mostly useless pc-bios/Makefile Paolo Bonzini
2019-12-19 12:23 ` [PATCH 130/132] meson: convert pc-bios/s390-ccw Paolo Bonzini
2019-12-19 12:23 ` [PATCH 131/132] meson: convert pc-bios/optionrom Paolo Bonzini
2019-12-19 12:23 ` [PATCH 132/132] rules.mak: drop unneeded macros Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1576758232-12439-37-git-send-email-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).