xref: /openbmc/qemu/pc-bios/keymaps/meson.build (revision c6446a1b)
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: true,
51                       install_dir: qemu_datadir / 'keymaps')
52  else
53    # copy from source tree
54    t += custom_target(km,
55                       build_by_default: true,
56                       input: km,
57                       output: km,
58                       command: ['cp', '@INPUT@', '@OUTPUT@'],
59                       install: true,
60                       install_dir: qemu_datadir / 'keymaps')
61  endif
62endforeach
63
64if native_qemu_keymap.found()
65  alias_target('update-keymaps', t)
66endif
67
68install_data(['sl', 'sv'], install_dir: qemu_datadir / 'keymaps')
69