| 1 | keymaps = { |
| 2 | 'ar': '-l ara', |
| 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 | |
| 36 | if meson.is_cross_build() or not xkbcommon.found() |
| 37 | native_qemu_keymap = find_program('qemu-keymap', required: false, disabler: true) |
| 38 | else |
| 39 | native_qemu_keymap = qemu_keymap |
| 40 | endif |
| 41 | |
| 42 | keymap_targets = [] |
| 43 | if native_qemu_keymap.found() |
| 44 | foreach km, args: keymaps |
| 45 | # generate with qemu-kvm |
| 46 | keymap_targets += custom_target(km, |
| 47 | build_by_default: true, |
| 48 | output: km, |
| 49 | command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], |
| 50 | install: have_system, |
| 51 | install_dir: qemu_datadir / 'keymaps') |
| 52 | endforeach |
| 53 | alias_target('update-keymaps', keymap_targets) |
| 54 | else |
| 55 | install_data(keymaps.keys(), install_dir: qemu_datadir / 'keymaps') |
| 56 | endif |
| 57 | |
| 58 | if have_system |
| 59 | install_data(['sl', 'sv'], install_dir: qemu_datadir / 'keymaps') |
| 60 | endif |