1keymaps = { 2 'ar': '-l ar', 3 'bepo': '-l fr -v dvorak', 4 'cz': '-l cz', 5 'da': '-l dk', 6 'de': '-l de -v nodeadkeys', 7 'de-ch': '-l ch', 8 'en-gb': '-l gb', 9 'en-us': '-l us', 10 'es': '-l es', 11 'et': '-l et', 12 'fi': '-l fi', 13 'fo': '-l fo', 14 'fr': '-l fr -v nodeadkeys', 15 'fr-be': '-l be', 16 'fr-ca': '-l ca -v fr', 17 'fr-ch': '-l ch -v fr', 18 'hr': '-l hr', 19 'hu': '-l hu', 20 'is': '-l is', 21 'it': '-l it', 22 'ja': '-l jp -m jp106', 23 'lt': '-l lt', 24 'lv': '-l lv', 25 'mk': '-l mk', 26 'nl': '-l nl', 27 'no': '-l no', 28 'pl': '-l pl', 29 'pt': '-l pt', 30 'pt-br': '-l br', 31 'ru': '-l ru', 32 'th': '-l th', 33 'tr': '-l tr', 34} 35 36if meson.is_cross_build() or 'CONFIG_XKBCOMMON' not in config_host 37 native_qemu_keymap = find_program('qemu-keymap', required: false, disabler: true) 38else 39 native_qemu_keymap = qemu_keymap 40endif 41 42t = [] 43foreach km, args: keymaps 44 if native_qemu_keymap.found() 45 # generate with qemu-kvm 46 t += custom_target(km, 47 build_by_default: true, 48 output: km, 49 command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], 50 install_dir: qemu_datadir / 'keymaps') 51 else 52 # copy from source tree 53 t += custom_target(km, 54 build_by_default: true, 55 input: km, 56 output: km, 57 command: ['cp', '@INPUT@', '@OUTPUT@'], 58 install_dir: qemu_datadir / 'keymaps') 59 endif 60endforeach 61 62if native_qemu_keymap.found() 63 alias_target('update-keymaps', t) 64endif 65 66install_data(['sl', 'sv'], install_dir: qemu_datadir / 'keymaps') 67