| 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 |
| if native_qemu_keymap.found() |
| # generate with qemu-kvm |
| t += custom_target(km, |
| build_by_default: true, |
| output: km, |
| command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], |
| install: true, |
| install_dir: qemu_datadir / 'keymaps') |
| else |
| # copy from source tree |
| t += custom_target(km, |
| build_by_default: true, |
| input: km, |
| output: km, |
| command: ['cp', '@INPUT@', '@OUTPUT@'], |
| install: true, |
| install_dir: qemu_datadir / 'keymaps') |
| endif |
| endforeach |
| |
| if native_qemu_keymap.found() |
| alias_target('update-keymaps', t) |
| endif |
| |
| install_data(['sl', 'sv'], install_dir: qemu_datadir / 'keymaps') |