2e0d09de2e25659f30714acc14fabaf951a8d262
[platform/core/uifw/libds-tizen.git] / src / meson.build
1 common_inc = [ include_directories('.'), libds_tizen_inc ]
2
3 math = meson.get_compiler('c').find_library('m')
4 wayland_server = dependency('wayland-server', required: true)
5 rt = meson.get_compiler('c').find_library('rt')
6
7 if wayland_server.version().version_compare('>= 1.19')
8   cdata.set('HAVE_WL_SEAT_ERROR_MISSING_CAPABILITY', '1')
9 endif
10
11 deps_base = [
12   math,
13   rt,
14 ]
15
16 dep_libds = dependency('libds', required: true)
17
18 deps_libds_tizen = [
19   deps_base,
20   wayland_server,
21   dep_libds,
22 ]
23
24 tizen_security_files = [
25   '../security.c',
26 ]
27
28 deps_tizen_security = [
29   dependency('cynara-client', required: true),
30   dependency('cynara-session', required: true),
31   dependency('libsmack', required: true)
32 ]
33
34 subdir('shared')
35 subdir('allocator')
36 subdir('tbm_server')
37 subdir('backend')
38 subdir('keyrouter')
39 subdir('input_devicemgr')
40 subdir('dpms')
41 subdir('indicator')
42 subdir('clipboard')
43 subdir('launch')
44 subdir('display_policy')
45 subdir('memory_flusher')
46 subdir('renderer')
47 subdir('screen_rotation')
48 subdir('global_resource')
49 subdir('embedded_compositor')
50 subdir('input_method')
51 subdir('text_input')
52 subdir('hwc')
53 subdir('policy')
54 subdir('screenshooter')
55 subdir('scaler')
56 subdir('video')
57 subdir('eom')
58 subdir('remote_surface')
59 subdir('gbm_server')
60
61 ##### libds-tizen ######
62 libds_tizen_files = [
63   'embedded_compositor/embedded_compositor.c',
64   'text_input/text_input.c',
65   'indicator/indicator.c',
66   'dpms/dpms.c',
67   'remote_surface/remote_surface.c',
68   'gbm_server/gbm_server.c',
69   'renderer/renderer.c',
70   'screen_rotation/screen_rotation.c',
71   'eom/eom.c',
72   'hwc/hwc.c',
73   'input_method/input_method.c',
74   'launch/appinfo.c',
75   'launch/effect.c',
76   'scaler/scaler.c',
77   'video/viewport.c',
78   'video/video.c',
79   'tbm_server/tbm_server.c',
80   'screenshooter/screenshooter.c',
81   'screenshooter/screenmirror.c',
82   'input_devicemgr/input_devicemgr.c',
83   'clipboard/clipboard.c',
84   'memory_flusher/memory_flusher.c',
85   'global_resource/global_resource.c',
86   'policy/policy.c',
87   'keyrouter/keyrouter_grab.c',
88   'keyrouter/keyrouter.c',
89   'security.c',
90   'display_policy/display_policy.c',
91   'screen/screen.c',
92   'blender/blender.c',
93   'blur/blur.c',
94 ]
95
96 libds_tizen_deps = [
97   dep_libshared,
98   deps_libds_tizen,
99   dep_libshared,
100   deps_tizen_security,
101   dependency('libtdm', required: true),
102   dependency('gbm', required: true),
103   dependency('libtbm', required: true),
104   dependency('tizen-dpms-server', required: true),
105   dependency('wayland-tbm-server', required: true),
106   dependency('eom-server', required: true),
107   dependency('tizen-hwc-server', required: true),
108   dependency('xdg-shell-unstable-v6-server', required: true),
109   dependency('text-server', required: true),
110   dependency('input-method-server', required: true),
111   dependency('tizen-launch-server', required: true),
112   dependency('tizen-surface-server', required: true),
113   dependency('tizen-remote-surface-server', required: true),
114   dependency('scaler-server', required: true),
115   dependency('tizen-extension-server', required: true),
116   dependency('xkbcommon', required: true),
117   dependency('wtz-screen-server', required: true),
118   dependency('wtz-blender-server', required: true),
119   dependency('wtz-blur-server', required: true),
120   dependency('pixman-1', required: true),
121 ]
122
123 keylayout_dir = get_option('keylayout_dir')
124
125 lib_libds_tizen = shared_library('ds-tizen', libds_tizen_files,
126   dependencies: libds_tizen_deps,
127   include_directories: [ common_inc,
128                          include_directories('.'),
129                          include_directories('..'),
130                          include_directories('./gbm_server'),
131                          include_directories('./input_devicemgr'),
132                          include_directories('./keyrouter'),
133                          include_directories('./screenshooter'),
134                          include_directories('./tbm_server'),
135                          include_directories('./video'),
136                          include_directories('./blender'),
137                          include_directories('./blur'),
138                        ],
139   version: meson.project_version(),
140   c_args: [ '-DKEYLAYOUT_DIR="@0@"'.format(keylayout_dir) ],
141   install: true
142 )
143
144 deps_libds_tizen = declare_dependency(
145   link_with: lib_libds_tizen,
146   dependencies: libds_tizen_deps,
147   include_directories: [ common_inc, include_directories('.') ],
148 )
149
150 pkgconfig = import('pkgconfig')
151 pkgconfig.generate(lib_libds_tizen,
152   version: meson.project_version(),
153   filebase: 'libds-tizen',
154   name: 'libds-tizen',
155   description: 'tizen extension of libds-tizen for tizen platform',
156 )