meson.build (1750B)
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 41cp = find_program('cp') 42 43t = [] 44foreach km, args: keymaps 45 if native_qemu_keymap.found() 46 # generate with qemu-kvm 47 t += custom_target(km, 48 build_by_default: true, 49 output: km, 50 command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()], 51 install: true, 52 install_dir: qemu_datadir / 'keymaps') 53 else 54 # copy from source tree 55 t += custom_target(km, 56 build_by_default: true, 57 input: km, 58 output: km, 59 command: [cp, '@INPUT@', '@OUTPUT@'], 60 install: true, 61 install_dir: qemu_datadir / 'keymaps') 62 endif 63endforeach 64 65if native_qemu_keymap.found() 66 alias_target('update-keymaps', t) 67endif 68 69install_data(['sl', 'sv'], install_dir: qemu_datadir / 'keymaps')