]>
Commit | Line | Data |
---|---|---|
b7612f45 | 1 | softmmu_ss.add(pixman) |
feabc71d | 2 | specific_ss.add(when: ['CONFIG_SOFTMMU'], if_true: pixman) # for the include path |
b7612f45 | 3 | |
2b1ccdf4 MAL |
4 | softmmu_ss.add(files( |
5 | 'console.c', | |
6 | 'cursor.c', | |
7 | 'input-keymap.c', | |
8 | 'input-legacy.c', | |
9 | 'input-barrier.c', | |
10 | 'input.c', | |
11 | 'kbd-state.c', | |
12 | 'keymaps.c', | |
13 | 'qemu-pixman.c', | |
14 | )) | |
2b1ccdf4 MAL |
15 | |
16 | softmmu_ss.add(when: 'CONFIG_LINUX', if_true: files('input-linux.c')) | |
17 | softmmu_ss.add(when: 'CONFIG_SPICE', if_true: files('spice-core.c', 'spice-input.c', 'spice-display.c')) | |
b4e312e9 | 18 | softmmu_ss.add(when: cocoa, if_true: files('cocoa.m')) |
2b1ccdf4 MAL |
19 | |
20 | vnc_ss = ss.source_set() | |
21 | vnc_ss.add(files( | |
22 | 'vnc.c', | |
23 | 'vnc-enc-zlib.c', | |
24 | 'vnc-enc-hextile.c', | |
25 | 'vnc-enc-tight.c', | |
26 | 'vnc-palette.c', | |
27 | 'vnc-enc-zrle.c', | |
28 | 'vnc-auth-vencrypt.c', | |
29 | 'vnc-ws.c', | |
30 | 'vnc-jobs.c', | |
31 | )) | |
a0b93237 PB |
32 | vnc_ss.add(zlib, png, jpeg) |
33 | vnc_ss.add(when: sasl, if_true: files('vnc-auth-sasl.c')) | |
34 | softmmu_ss.add_all(when: vnc, if_true: vnc_ss) | |
35 | softmmu_ss.add(when: vnc, if_false: files('vnc-stubs.c')) | |
2b1ccdf4 MAL |
36 | softmmu_ss.add(when: [opengl, 'CONFIG_OPENGL'], if_true: files('shader.c', 'console-gl.c', 'egl-helpers.c', 'egl-context.c')) |
37 | softmmu_ss.add(when: [opengl, 'CONFIG_OPENGL_DMABUF'], if_true: files('egl-headless.c')) | |
feabc71d | 38 | specific_ss.add(when: ['CONFIG_SOFTMMU'], if_true: opengl) |
2b1ccdf4 MAL |
39 | |
40 | ui_modules = {} | |
41 | ||
5285e593 | 42 | if curses.found() |
2b1ccdf4 | 43 | curses_ss = ss.source_set() |
289e12db | 44 | curses_ss.add(when: [curses, iconv], if_true: [files('curses.c'), pixman]) |
2b1ccdf4 MAL |
45 | ui_modules += {'curses' : curses_ss} |
46 | endif | |
47 | ||
ec14f888 | 48 | if config_host.has_key('CONFIG_GTK') |
2b1ccdf4 MAL |
49 | softmmu_ss.add(when: 'CONFIG_WIN32', if_true: files('win32-kbd-hook.c')) |
50 | ||
51 | gtk_ss = ss.source_set() | |
289e12db | 52 | gtk_ss.add(gtk, vte, pixman, files('gtk.c')) |
2b1ccdf4 MAL |
53 | gtk_ss.add(when: [x11, 'CONFIG_X11'], if_true: files('x_keymap.c')) |
54 | gtk_ss.add(when: [opengl, 'CONFIG_OPENGL'], if_true: files('gtk-egl.c')) | |
55 | gtk_ss.add(when: [opengl, 'CONFIG_GTK_GL'], if_true: files('gtk-gl-area.c')) | |
56 | ui_modules += {'gtk' : gtk_ss} | |
57 | endif | |
58 | ||
35be72ba | 59 | if sdl.found() |
2b1ccdf4 MAL |
60 | softmmu_ss.add(when: 'CONFIG_WIN32', if_true: files('win32-kbd-hook.c')) |
61 | ||
62 | sdl_ss = ss.source_set() | |
35be72ba | 63 | sdl_ss.add(sdl, sdl_image, pixman, glib, files( |
2b1ccdf4 MAL |
64 | 'sdl2-2d.c', |
65 | 'sdl2-input.c', | |
66 | 'sdl2.c', | |
67 | )) | |
68 | sdl_ss.add(when: [opengl, 'CONFIG_OPENGL'], if_true: files('sdl2-gl.c')) | |
69 | sdl_ss.add(when: [x11, 'CONFIG_X11'], if_true: files('x_keymap.c')) | |
70 | ui_modules += {'sdl' : sdl_ss} | |
71 | endif | |
72 | ||
73 | if config_host.has_key('CONFIG_SPICE') and config_host.has_key('CONFIG_GIO') | |
74 | spice_ss = ss.source_set() | |
289e12db | 75 | spice_ss.add(spice, gio, pixman, files('spice-app.c')) |
2b1ccdf4 MAL |
76 | ui_modules += {'spice-app': spice_ss} |
77 | endif | |
78 | ||
79 | keymap_gen = find_program('keycodemapdb/tools/keymap-gen') | |
80 | ||
2d78b56e MAL |
81 | keymaps = [ |
82 | ['atset1', 'qcode'], | |
83 | ['linux', 'qcode'], | |
84 | ['qcode', 'atset1'], | |
85 | ['qcode', 'atset2'], | |
86 | ['qcode', 'atset3'], | |
87 | ['qcode', 'linux'], | |
88 | ['qcode', 'qnum'], | |
89 | ['qcode', 'sun'], | |
90 | ['qnum', 'qcode'], | |
91 | ['usb', 'qcode'], | |
92 | ['win32', 'qcode'], | |
93 | ['x11', 'qcode'], | |
94 | ['xorgevdev', 'qcode'], | |
95 | ['xorgkbd', 'qcode'], | |
96 | ['xorgxquartz', 'qcode'], | |
97 | ['xorgxwin', 'qcode'], | |
98 | ['osx', 'qcode'], | |
99 | ] | |
100 | ||
4113f4cf | 101 | if have_system or xkbcommon.found() |
2d78b56e MAL |
102 | foreach e : keymaps |
103 | output = 'input-keymap-@0@-to-@1@.c.inc'.format(e[0], e[1]) | |
104 | genh += custom_target(output, | |
105 | output: output, | |
106 | capture: true, | |
2d78b56e MAL |
107 | input: files('keycodemapdb/data/keymaps.csv'), |
108 | command: [python.full_path(), files('keycodemapdb/tools/keymap-gen'), | |
109 | '--lang', 'glib2', | |
110 | '--varname', 'qemu_input_map_@0@_to_@1@'.format(e[0], e[1]), | |
111 | 'code-map', '@INPUT0@', e[0], e[1]]) | |
112 | endforeach | |
113 | endif | |
650b5d54 MAL |
114 | |
115 | subdir('shader') | |
a4d88926 | 116 | subdir('icons') |
2b1ccdf4 | 117 | |
c04c071f MAL |
118 | install_data('qemu.desktop', install_dir: config_host['qemu_desktopdir']) |
119 | ||
2b1ccdf4 | 120 | modules += {'ui': ui_modules} |