meson: convert pc-bios/keymaps/Makefile

Note that sl and sv keymaps were not created by qemu-keymap.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
stable-6.0
Marc-André Lureau 2019-09-19 20:24:43 +04:00 committed by Paolo Bonzini
parent c44a33e2fe
commit 28742467c9
7 changed files with 65 additions and 70 deletions

View File

@ -229,11 +229,6 @@ distclean: clean ninja-distclean
rm -f linux-headers/asm
rm -Rf .sdk
KEYMAPS=da en-gb et fr fr-ch is lt no pt-br sv \
ar de en-us fi fr-be hr it lv nl pl ru th \
de-ch es fo fr-ca hu ja mk pt sl tr \
bepo cz
ifdef INSTALL_BLOBS
BLOBS=bios.bin bios-256k.bin bios-microvm.bin sgabios.bin vgabios.bin vgabios-cirrus.bin \
vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin vgabios-virtio.bin \
@ -298,9 +293,6 @@ endif
$(INSTALL_DATA) $(SRC_PATH)/ui/qemu.desktop \
"$(DESTDIR)$(qemu_desktopdir)/qemu.desktop"
$(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/keymaps"
set -e; for x in $(KEYMAPS); do \
$(INSTALL_DATA) $(SRC_PATH)/pc-bios/keymaps/$$x "$(DESTDIR)$(qemu_datadir)/keymaps"; \
done
ifdef CONFIG_WIN32

View File

@ -1062,6 +1062,12 @@ if 'CONFIG_GUEST_AGENT' in config_host
subdir('qga')
endif
if 'CONFIG_XKBCOMMON' in config_host
# used for the update-keymaps target, so include rules even if !have_tools
qemu_keymap = executable('qemu-keymap', files('qemu-keymap.c', 'ui/input-keymap.c') + genh,
dependencies: [qemuutil, xkbcommon], install: have_tools)
endif
if have_tools
qemu_img = executable('qemu-img', [files('qemu-img.c'), hxdep],
dependencies: [authz, block, crypto, io, qom, qemuutil], install: true)
@ -1078,11 +1084,6 @@ if have_tools
subdir('contrib/rdmacm-mux')
subdir('contrib/elf2dmp')
if 'CONFIG_XKBCOMMON' in config_host
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,
install: true)

1
pc-bios/keymaps/.gitignore vendored 100644
View File

@ -0,0 +1 @@
/*.stamp

View File

@ -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

View File

@ -0,0 +1,56 @@
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 gb',
'en-us': '-l us',
'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',
'th': '-l th',
'tr': '-l tr',
}
if meson.is_cross_build() or 'CONFIG_XKBCOMMON' not in config_host
native_qemu_keymap = find_program('qemu-keymap', required: false, disabler: true)
else
native_qemu_keymap = qemu_keymap
endif
t = []
foreach km, args: keymaps
t += custom_target(km,
build_by_default: true,
output: km,
command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()],
install_dir: config_host['qemu_datadir'] / 'keymaps')
endforeach
if t.length() > 0
alias_target('update-keymaps', t)
else
# install from the source tree
install_data(keymaps.keys(), install_dir: config_host['qemu_datadir'] / 'keymaps')
endif
install_data(['sl', 'sv'], install_dir: config_host['qemu_datadir'] / 'keymaps')

View File

@ -25,3 +25,4 @@ if 'DECOMPRESS_EDK2_BLOBS' in config_host
endif
subdir('descriptors')
subdir('keymaps')

View File

@ -95,7 +95,7 @@ keymaps = [
['osx', 'qcode'],
]
if have_system
if have_system or 'CONFIG_XKBCOMMON' in config_host
foreach e : keymaps
output = 'input-keymap-@0@-to-@1@.c.inc'.format(e[0], e[1])
genh += custom_target(output,