meson: keymap-gen

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Marc-André Lureau 2019-07-15 16:00:36 +04:00 committed by Paolo Bonzini
parent ec0d5893da
commit 2d78b56e7a
3 changed files with 35 additions and 38 deletions

View File

@ -141,44 +141,6 @@ generated-files-y += module_block.h
generated-files-y += .git-submodule-status
KEYCODEMAP_GEN = $(SRC_PATH)/ui/keycodemapdb/tools/keymap-gen
KEYCODEMAP_CSV = $(SRC_PATH)/ui/keycodemapdb/data/keymaps.csv
KEYCODEMAP_FILES = \
ui/input-keymap-atset1-to-qcode.c.inc \
ui/input-keymap-linux-to-qcode.c.inc \
ui/input-keymap-qcode-to-atset1.c.inc \
ui/input-keymap-qcode-to-atset2.c.inc \
ui/input-keymap-qcode-to-atset3.c.inc \
ui/input-keymap-qcode-to-linux.c.inc \
ui/input-keymap-qcode-to-qnum.c.inc \
ui/input-keymap-qcode-to-sun.c.inc \
ui/input-keymap-qnum-to-qcode.c.inc \
ui/input-keymap-usb-to-qcode.c.inc \
ui/input-keymap-win32-to-qcode.c.inc \
ui/input-keymap-x11-to-qcode.c.inc \
ui/input-keymap-xorgevdev-to-qcode.c.inc \
ui/input-keymap-xorgkbd-to-qcode.c.inc \
ui/input-keymap-xorgxquartz-to-qcode.c.inc \
ui/input-keymap-xorgxwin-to-qcode.c.inc \
ui/input-keymap-osx-to-qcode.c.inc \
$(NULL)
generated-files-$(CONFIG_SOFTMMU) += $(KEYCODEMAP_FILES)
ui/input-keymap-%.c.inc: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile.objs
$(call quiet-command,\
stem=$* && src=$${stem%-to-*} dst=$${stem#*-to-} && \
test -e $(KEYCODEMAP_GEN) && \
$(PYTHON) $(KEYCODEMAP_GEN) \
--lang glib2 \
--varname qemu_input_map_$${src}_to_$${dst} \
code-map $(KEYCODEMAP_CSV) $${src} $${dst} \
> $@ || rm -f $@, "GEN", "$@")
$(KEYCODEMAP_GEN): .git-submodule-status
$(KEYCODEMAP_CSV): .git-submodule-status
edk2-decompressed = $(basename $(wildcard pc-bios/edk2-*.fd.bz2))
pc-bios/edk2-%.fd: pc-bios/edk2-%.fd.bz2
$(call quiet-command,bzip2 -d -c $< > $@,"BUNZIP2",$<)

View File

@ -292,6 +292,7 @@ subdir('trace')
subdir('util')
subdir('crypto')
subdir('storage-daemon')
subdir('ui')
# Build targets from sourcesets

34
ui/meson.build Normal file
View File

@ -0,0 +1,34 @@
keymaps = [
['atset1', 'qcode'],
['linux', 'qcode'],
['qcode', 'atset1'],
['qcode', 'atset2'],
['qcode', 'atset3'],
['qcode', 'linux'],
['qcode', 'qnum'],
['qcode', 'sun'],
['qnum', 'qcode'],
['usb', 'qcode'],
['win32', 'qcode'],
['x11', 'qcode'],
['xorgevdev', 'qcode'],
['xorgkbd', 'qcode'],
['xorgxquartz', 'qcode'],
['xorgxwin', 'qcode'],
['osx', 'qcode'],
]
if have_system
foreach e : keymaps
output = 'input-keymap-@0@-to-@1@.c.inc'.format(e[0], e[1])
genh += custom_target(output,
output: output,
capture: true,
build_by_default: true, # to be removed when added to a target
input: files('keycodemapdb/data/keymaps.csv'),
command: [python.full_path(), files('keycodemapdb/tools/keymap-gen'),
'--lang', 'glib2',
'--varname', 'qemu_input_map_@0@_to_@1@'.format(e[0], e[1]),
'code-map', '@INPUT0@', e[0], e[1]])
endforeach
endif