clients: add ime-keyboard(input_method), text-entry(text_input)
[platform/core/uifw/libds-tizen.git] / clients / meson.build
1 wayland_tbm_client = dependency('wayland-tbm-client', required: false)
2 libtbm = dependency('libtbm', required: false)
3 tizen_extension_client = dependency('tizen-extension-client', required: true)
4
5 if not wayland_tbm_client.found() or not libtbm.found()
6   subdir_done()
7 endif
8
9 simple_tbm_files = ['simple-tbm.c']
10 simple_tbm_deps = [
11   dependency('wayland-client', required: true),
12   wayland_tbm_client,
13   libtbm,
14   tizen_extension_client,
15 ]
16
17 text_entry_files = ['text-entry.c']
18 text_entry_deps = [
19   dependency('wayland-client', required: true),
20   wayland_tbm_client,
21   libtbm,
22 ]
23
24 protocols = {
25   'xdg-shell': wl_protocol_dir / 'stable/xdg-shell/xdg-shell.xml',
26 }
27
28 protocols_code = {}
29 protocols_client_header = {}
30 foreach name, path : protocols
31   code = custom_target(
32     name.underscorify() + '_c',
33     input: path,
34     output: '@BASENAME@-protocol.c',
35     command: [wayland_scanner, 'private-code', '@INPUT@', '@OUTPUT@'],
36     )
37   simple_tbm_files += code
38   text_entry_files += code
39
40   client_header = custom_target(
41     name.underscorify() + '_client_h',
42     input: path,
43     output: '@BASENAME@-client-protocol.h',
44     command: [wayland_scanner, 'client-header', '@INPUT@', '@OUTPUT@'],
45     build_by_default: false,
46   )
47   simple_tbm_files += client_header
48   text_entry_files += client_header
49 endforeach
50
51 executable('ds-simple-tbm',
52   simple_tbm_files,
53   dependencies: simple_tbm_deps,
54   install_dir: libds_tizen_bindir,
55   install: true,
56 )
57
58 executable('ds-simple-dpms',
59   'simple-dpms.c',
60   dependencies: [
61       dependency('wayland-client', required: true),
62       dependency('tizen-dpms-client', required: true),
63     ],
64   install_dir: libds_tizen_bindir,
65   install: true,
66 )
67
68 executable('text-entry',
69   text_entry_files,
70   dependencies: [text_entry_deps,
71   deps_libds_tizen_text_input,
72   ],
73   install_dir: libds_tizen_bindir,
74   install: true,
75 )
76
77 input_generator_files = ['input-generator.c']
78 input_generator_deps = [
79   dependency('wayland-client', required: true),
80   tizen_extension_client,
81 ]
82
83 executable('input-generator',
84   input_generator_files,
85   dependencies: input_generator_deps,
86   install_dir: libds_tizen_bindir,
87   install: true,
88 )
89
90 ime_keyboard_files = ['ime-keyboard.c']
91 ime_keyboard_deps = [
92   dependency('wayland-client', required: true),
93 ]
94
95 executable('ime-keyboard',
96   ime_keyboard_files,
97   dependencies: [ime_keyboard_deps,
98   deps_libds_tizen_input_method,
99   ],
100   install_dir: libds_tizen_bindir,
101   install: true,
102 )