• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2022 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14import("//build/ohos.gni")
15import("//foundation/multimodalinput/input/multimodalinput_mini.gni")
16mmi_service_path = "${mmi_path}/service"
17
18config("libmmi_server_config") {
19  include_dirs = [
20    "input_device_cooperate/include",
21    "device_manager/include",
22    "device_scalability/include",
23    "delegate_task/include",
24    "event_dispatch/include",
25    "key_event_normalize/include",
26    "event_handler/include",
27    "event_dump/include",
28    "monitor/include",
29    "interceptor/include",
30    "dfx/include",
31    "libinput_adapter/include",
32    "message_handle/include",
33    "module_loader/include",
34    "window_manager/include",
35    "touch_event_normalize/include",
36    "key_command/include",
37    "subscriber/include",
38    "timer_manager/include",
39    "permission_helper/include",
40    "${mmi_service_path}/connect_manager/include",
41    "${mmi_service_path}/filter/include",
42    "${mmi_service_path}/module_loader/include",
43    "${mmi_path}/interfaces/native/innerkits/proxy/include",
44    "${mmi_path}/interfaces/native/innerkits/event/include",
45    "mouse_event_normalize/include",
46    "//foundation/multimodalinput/interfaces/native/innerkits/event/include",
47    "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/include",
48    "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/src",
49    "//foundation/multimodalinput/input/interfaces/native/innerkits/common/include",
50    "//foundation/multimodalinput/input/util/common/include",
51    "//foundation/multimodalinput/input/util/socket/include",
52    "//foundation/multimodalinput/input/util/network/include",
53    "//foundation/multimodalinput/input/frameworks/proxy/event_handler/include",
54    "//third_party/cJSON",
55  ]
56
57  if (input_feature_input_cooperation) {
58    include_dirs += [
59      "input_device_cooperate/include",
60      "//foundation/deviceprofile/device_profile_core/interfaces/innerkits/core/include",
61      "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp/include",
62    ]
63  }
64
65  defines = []
66
67  if (input_feature_combination_key) {
68    defines += [ "OHOS_BUILD_ENABLE_COMBINATION_KEY" ]
69  }
70
71  if (input_feature_pointer_drawing) {
72    defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ]
73  }
74
75  if (input_feature_interceptor) {
76    defines += [ "OHOS_BUILD_ENABLE_INTERCEPTOR" ]
77  }
78
79  if (resource_schedule_service_enabled) {
80    defines += [ "OHOS_RSS_CLIENT" ]
81  }
82
83  if (input_feature_pointer_drawing) {
84    defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ]
85  }
86  if (input_feature_keyboard) {
87    defines += [ "OHOS_BUILD_ENABLE_KEYBOARD" ]
88  }
89
90  if (input_feature_mouse) {
91    defines += [ "OHOS_BUILD_ENABLE_POINTER" ]
92  }
93
94  if (input_feature_touchscreen) {
95    defines += [ "OHOS_BUILD_ENABLE_TOUCH" ]
96  }
97  if (input_feature_monitor) {
98    defines += [ "OHOS_BUILD_ENABLE_MONITOR" ]
99  }
100
101  if (input_feature_input_cooperation) {
102    defines += [ "OHOS_BUILD_ENABLE_COOPERATE" ]
103  }
104
105  if (input_feature_joystick) {
106    defines += [ "OHOS_BUILD_ENABLE_JOYSTICK" ]
107  }
108}
109
110ohos_prebuilt_etc("multimodalinput_config_ability.json") {
111  source = "key_command/etc/ability_launch_config.json"
112  part_name = "input"
113  subsystem_name = "multimodalinput"
114  relative_install_dir = "multimodalinput"
115}
116
117ohos_prebuilt_etc("drawing_pointer_image_Default") {
118  source = "//foundation/multimodalinput/input/util/source_icon/Default.png"
119  part_name = "input"
120  subsystem_name = "multimodalinput"
121  relative_install_dir = "multimodalinput/mouse_icon"
122}
123
124ohos_prebuilt_etc("drawing_pointer_image_East") {
125  source = "//foundation/multimodalinput/input/util/source_icon/East.png"
126  part_name = "input"
127  subsystem_name = "multimodalinput"
128  relative_install_dir = "multimodalinput/mouse_icon"
129}
130
131ohos_prebuilt_etc("drawing_pointer_image_West") {
132  source = "//foundation/multimodalinput/input/util/source_icon/West.png"
133  part_name = "input"
134  subsystem_name = "multimodalinput"
135  relative_install_dir = "multimodalinput/mouse_icon"
136}
137
138ohos_prebuilt_etc("drawing_pointer_image_South") {
139  source = "//foundation/multimodalinput/input/util/source_icon/South.png"
140  part_name = "input"
141  subsystem_name = "multimodalinput"
142  relative_install_dir = "multimodalinput/mouse_icon"
143}
144
145ohos_prebuilt_etc("drawing_pointer_image_North") {
146  source = "//foundation/multimodalinput/input/util/source_icon/North.png"
147  part_name = "input"
148  subsystem_name = "multimodalinput"
149  relative_install_dir = "multimodalinput/mouse_icon"
150}
151
152ohos_prebuilt_etc("drawing_pointer_image_West_East") {
153  source = "//foundation/multimodalinput/input/util/source_icon/West_East.png"
154  part_name = "input"
155  subsystem_name = "multimodalinput"
156  relative_install_dir = "multimodalinput/mouse_icon"
157}
158
159ohos_prebuilt_etc("drawing_pointer_image_North_South") {
160  source = "//foundation/multimodalinput/input/util/source_icon/North_South.png"
161  part_name = "input"
162  subsystem_name = "multimodalinput"
163  relative_install_dir = "multimodalinput/mouse_icon"
164}
165
166ohos_prebuilt_etc("drawing_pointer_image_North_East") {
167  source = "//foundation/multimodalinput/input/util/source_icon/North_East.png"
168  part_name = "input"
169  subsystem_name = "multimodalinput"
170  relative_install_dir = "multimodalinput/mouse_icon"
171}
172
173ohos_prebuilt_etc("drawing_pointer_image_North_West") {
174  source = "//foundation/multimodalinput/input/util/source_icon/North_West.png"
175  part_name = "input"
176  subsystem_name = "multimodalinput"
177  relative_install_dir = "multimodalinput/mouse_icon"
178}
179
180ohos_prebuilt_etc("drawing_pointer_image_South_East") {
181  source = "//foundation/multimodalinput/input/util/source_icon/South_East.png"
182  part_name = "input"
183  subsystem_name = "multimodalinput"
184  relative_install_dir = "multimodalinput/mouse_icon"
185}
186
187ohos_prebuilt_etc("drawing_pointer_image_South_West") {
188  source = "//foundation/multimodalinput/input/util/source_icon/South_West.png"
189  part_name = "input"
190  subsystem_name = "multimodalinput"
191  relative_install_dir = "multimodalinput/mouse_icon"
192}
193
194ohos_prebuilt_etc("drawing_pointer_image_North_East_South_West") {
195  source = "//foundation/multimodalinput/input/util/source_icon/North_East_South_West.png"
196  part_name = "input"
197  subsystem_name = "multimodalinput"
198  relative_install_dir = "multimodalinput/mouse_icon"
199}
200
201ohos_prebuilt_etc("drawing_pointer_image_North_West_South_East") {
202  source = "//foundation/multimodalinput/input/util/source_icon/North_West_South_East.png"
203  part_name = "input"
204  subsystem_name = "multimodalinput"
205  relative_install_dir = "multimodalinput/mouse_icon"
206}
207
208ohos_prebuilt_etc("drawing_pointer_image_Cross") {
209  source = "//foundation/multimodalinput/input/util/source_icon/Cross.png"
210  part_name = "input"
211  subsystem_name = "multimodalinput"
212  relative_install_dir = "multimodalinput/mouse_icon"
213}
214
215ohos_prebuilt_etc("drawing_pointer_image_Copy") {
216  source = "//foundation/multimodalinput/input/util/source_icon/Copy.png"
217  part_name = "input"
218  subsystem_name = "multimodalinput"
219  relative_install_dir = "multimodalinput/mouse_icon"
220}
221
222ohos_prebuilt_etc("drawing_pointer_image_Forbid") {
223  source = "//foundation/multimodalinput/input/util/source_icon/Forbid.png"
224  part_name = "input"
225  subsystem_name = "multimodalinput"
226  relative_install_dir = "multimodalinput/mouse_icon"
227}
228
229ohos_prebuilt_etc("drawing_pointer_image_Colorsucker") {
230  source = "//foundation/multimodalinput/input/util/source_icon/Colorsucker.png"
231  part_name = "input"
232  subsystem_name = "multimodalinput"
233  relative_install_dir = "multimodalinput/mouse_icon"
234}
235
236ohos_prebuilt_etc("drawing_pointer_image_Hand_Grabbing") {
237  source =
238      "//foundation/multimodalinput/input/util/source_icon/Hand_Grabbing.png"
239  part_name = "input"
240  subsystem_name = "multimodalinput"
241  relative_install_dir = "multimodalinput/mouse_icon"
242}
243
244ohos_prebuilt_etc("drawing_pointer_image_Hand_Open") {
245  source = "//foundation/multimodalinput/input/util/source_icon/Hand_Open.png"
246  part_name = "input"
247  subsystem_name = "multimodalinput"
248  relative_install_dir = "multimodalinput/mouse_icon"
249}
250
251ohos_prebuilt_etc("drawing_pointer_image_Hand_Pointing") {
252  source =
253      "//foundation/multimodalinput/input/util/source_icon/Hand_Pointing.png"
254  part_name = "input"
255  subsystem_name = "multimodalinput"
256  relative_install_dir = "multimodalinput/mouse_icon"
257}
258
259ohos_prebuilt_etc("drawing_pointer_image_Help") {
260  source = "//foundation/multimodalinput/input/util/source_icon/Help.png"
261  part_name = "input"
262  subsystem_name = "multimodalinput"
263  relative_install_dir = "multimodalinput/mouse_icon"
264}
265
266ohos_prebuilt_etc("drawing_pointer_image_Move") {
267  source = "//foundation/multimodalinput/input/util/source_icon/Move.png"
268  part_name = "input"
269  subsystem_name = "multimodalinput"
270  relative_install_dir = "multimodalinput/mouse_icon"
271}
272
273ohos_prebuilt_etc("drawing_pointer_image_Resize_Left_Right") {
274  source = "//foundation/multimodalinput/input/util/source_icon/Resize_Left_Right.png"
275  part_name = "input"
276  subsystem_name = "multimodalinput"
277  relative_install_dir = "multimodalinput/mouse_icon"
278}
279
280ohos_prebuilt_etc("drawing_pointer_image_Resize_Up_Down") {
281  source =
282      "//foundation/multimodalinput/input/util/source_icon/Resize_Up_Down.png"
283  part_name = "input"
284  subsystem_name = "multimodalinput"
285  relative_install_dir = "multimodalinput/mouse_icon"
286}
287
288ohos_prebuilt_etc("drawing_pointer_image_Screenshot_Cross") {
289  source =
290      "//foundation/multimodalinput/input/util/source_icon/Screenshot_Cross.png"
291  part_name = "input"
292  subsystem_name = "multimodalinput"
293  relative_install_dir = "multimodalinput/mouse_icon"
294}
295
296ohos_prebuilt_etc("drawing_pointer_image_Screenshot_Cursor") {
297  source = "//foundation/multimodalinput/input/util/source_icon/Screenshot_Cursor.png"
298  part_name = "input"
299  subsystem_name = "multimodalinput"
300  relative_install_dir = "multimodalinput/mouse_icon"
301}
302
303ohos_prebuilt_etc("drawing_pointer_image_Text_Cursor") {
304  source = "//foundation/multimodalinput/input/util/source_icon/Text_Cursor.png"
305  part_name = "input"
306  subsystem_name = "multimodalinput"
307  relative_install_dir = "multimodalinput/mouse_icon"
308}
309
310ohos_prebuilt_etc("drawing_pointer_image_Zoom_In") {
311  source = "//foundation/multimodalinput/input/util/source_icon/Zoom_In.png"
312  part_name = "input"
313  subsystem_name = "multimodalinput"
314  relative_install_dir = "multimodalinput/mouse_icon"
315}
316
317ohos_prebuilt_etc("drawing_pointer_image_Zoom_Out") {
318  source = "//foundation/multimodalinput/input/util/source_icon/Zoom_Out.png"
319  part_name = "input"
320  subsystem_name = "multimodalinput"
321  relative_install_dir = "multimodalinput/mouse_icon"
322}
323
324ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_East") {
325  source =
326      "//foundation/multimodalinput/input/util/source_icon/MID_Btn_East.png"
327  part_name = "input"
328  subsystem_name = "multimodalinput"
329  relative_install_dir = "multimodalinput/mouse_icon"
330}
331
332ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_West") {
333  source =
334      "//foundation/multimodalinput/input/util/source_icon/MID_Btn_West.png"
335  part_name = "input"
336  subsystem_name = "multimodalinput"
337  relative_install_dir = "multimodalinput/mouse_icon"
338}
339
340ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South") {
341  source =
342      "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South.png"
343  part_name = "input"
344  subsystem_name = "multimodalinput"
345  relative_install_dir = "multimodalinput/mouse_icon"
346}
347
348ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North") {
349  source =
350      "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North.png"
351  part_name = "input"
352  subsystem_name = "multimodalinput"
353  relative_install_dir = "multimodalinput/mouse_icon"
354}
355
356ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_South") {
357  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_South.png"
358  part_name = "input"
359  subsystem_name = "multimodalinput"
360  relative_install_dir = "multimodalinput/mouse_icon"
361}
362
363ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_East") {
364  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_East.png"
365  part_name = "input"
366  subsystem_name = "multimodalinput"
367  relative_install_dir = "multimodalinput/mouse_icon"
368}
369
370ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_West") {
371  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_West.png"
372  part_name = "input"
373  subsystem_name = "multimodalinput"
374  relative_install_dir = "multimodalinput/mouse_icon"
375}
376
377ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South_East") {
378  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South_East.png"
379  part_name = "input"
380  subsystem_name = "multimodalinput"
381  relative_install_dir = "multimodalinput/mouse_icon"
382}
383
384ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South_West") {
385  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South_West.png"
386  part_name = "input"
387  subsystem_name = "multimodalinput"
388  relative_install_dir = "multimodalinput/mouse_icon"
389}
390
391ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_South_West_East") {
392  source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_South_West_East.png"
393  part_name = "input"
394  subsystem_name = "multimodalinput"
395  relative_install_dir = "multimodalinput/mouse_icon"
396}
397
398ohos_prebuilt_etc("multimodalinput.para.dac") {
399  source = "${mmi_path}/etc/multimodalinput.para.dac"
400  part_name = "input"
401  subsystem_name = "multimodalinput"
402  module_install_dir = "etc/param"
403}
404
405ohos_shared_library("libmmi-server") {
406  sources = [
407    "//foundation/multimodalinput/input/frameworks/proxy/event_handler/src/bytrace_adapter.cpp",
408    "delegate_task/src/delegate_tasks.cpp",
409    "device_manager/src/input_device_manager.cpp",
410    "dfx/src/dfx_hisysevent.cpp",
411    "event_dispatch/src/event_dispatch_handler.cpp",
412    "event_dump/src/event_dump.cpp",
413    "event_handler/src/anr_manager.cpp",
414    "event_handler/src/event_normalize_handler.cpp",
415    "event_handler/src/input_event_handler.cpp",
416    "event_handler/src/key_auto_repeat.cpp",
417    "event_handler/src/key_event_value_transformation.cpp",
418    "event_handler/src/key_map_manager.cpp",
419    "libinput_adapter/src/libinput_adapter.cpp",
420    "message_handle/src/server_msg_handler.cpp",
421    "module_loader/src/mmi_service.cpp",
422    "module_loader/src/uds_server.cpp",
423    "permission_helper/src/permission_helper.cpp",
424    "timer_manager/src/timer_manager.cpp",
425    "window_manager/src/input_windows_manager.cpp",
426  ]
427
428  if (input_feature_input_cooperation) {
429    sources += [
430      "input_device_cooperate/src/cooperate_event_handler.cpp",
431      "input_device_cooperate/src/cooperate_event_manager.cpp",
432      "input_device_cooperate/src/device_cooperate_softbus_adapter.cpp",
433      "input_device_cooperate/src/device_profile_adapter.cpp",
434      "input_device_cooperate/src/distributed_input_adapter.cpp",
435      "input_device_cooperate/src/i_input_device_cooperate_state.cpp",
436      "input_device_cooperate/src/input_device_cooperate_sm.cpp",
437      "input_device_cooperate/src/input_device_cooperate_state_free.cpp",
438      "input_device_cooperate/src/input_device_cooperate_state_in.cpp",
439      "input_device_cooperate/src/input_device_cooperate_state_out.cpp",
440      "input_device_cooperate/src/input_device_cooperate_util.cpp",
441    ]
442  }
443
444  if (input_feature_keyboard) {
445    sources += [
446      "key_event_normalize/src/key_event_normalize.cpp",
447      "key_event_normalize/src/key_unicode_transformation.cpp",
448      "subscriber/src/key_subscriber_handler.cpp",
449    ]
450    if (input_feature_combination_key) {
451      sources += [ "key_command/src/key_command_handler.cpp" ]
452    }
453  }
454
455  if (input_feature_mouse || input_feature_touchscreen) {
456    sources += [ "touch_event_normalize/src/touch_event_normalize.cpp" ]
457    if (input_feature_mouse) {
458      sources += [
459        "mouse_event_normalize/src/mouse_device_state.cpp",
460        "mouse_event_normalize/src/mouse_event_normalize.cpp",
461        "touch_event_normalize/src/gesture_transform_processor.cpp",
462        "touch_event_normalize/src/touchpad_transform_processor.cpp",
463      ]
464      if (input_feature_pointer_drawing) {
465        sources += [ "window_manager/src/pointer_drawing_manager.cpp" ]
466      } else {
467        sources += [ "window_manager/src/i_pointer_drawing_manager.cpp" ]
468      }
469    }
470    if (input_feature_touchscreen) {
471      sources += [
472        "touch_event_normalize/src/tablet_tool_tranform_processor.cpp",
473        "touch_event_normalize/src/touch_transform_processor.cpp",
474      ]
475    }
476  }
477  if (input_feature_monitor) {
478    sources += [ "monitor/src/event_monitor_handler.cpp" ]
479  }
480  if (input_feature_interceptor) {
481    sources += [ "interceptor/src/event_interceptor_handler.cpp" ]
482  }
483
484  configs = [ ":libmmi_server_config" ]
485
486  deps = [
487    ":drawing_pointer_image_Colorsucker",
488    ":drawing_pointer_image_Copy",
489    ":drawing_pointer_image_Cross",
490    ":drawing_pointer_image_Default",
491    ":drawing_pointer_image_East",
492    ":drawing_pointer_image_Forbid",
493    ":drawing_pointer_image_Hand_Grabbing",
494    ":drawing_pointer_image_Hand_Open",
495    ":drawing_pointer_image_Hand_Pointing",
496    ":drawing_pointer_image_Help",
497    ":drawing_pointer_image_MID_Btn_East",
498    ":drawing_pointer_image_MID_Btn_North",
499    ":drawing_pointer_image_MID_Btn_North_East",
500    ":drawing_pointer_image_MID_Btn_North_South",
501    ":drawing_pointer_image_MID_Btn_North_South_West_East",
502    ":drawing_pointer_image_MID_Btn_North_West",
503    ":drawing_pointer_image_MID_Btn_South",
504    ":drawing_pointer_image_MID_Btn_South_East",
505    ":drawing_pointer_image_MID_Btn_South_West",
506    ":drawing_pointer_image_MID_Btn_West",
507    ":drawing_pointer_image_Move",
508    ":drawing_pointer_image_North",
509    ":drawing_pointer_image_North_East",
510    ":drawing_pointer_image_North_East_South_West",
511    ":drawing_pointer_image_North_South",
512    ":drawing_pointer_image_North_West",
513    ":drawing_pointer_image_North_West_South_East",
514    ":drawing_pointer_image_Resize_Left_Right",
515    ":drawing_pointer_image_Resize_Up_Down",
516    ":drawing_pointer_image_Screenshot_Cross",
517    ":drawing_pointer_image_Screenshot_Cursor",
518    ":drawing_pointer_image_South",
519    ":drawing_pointer_image_South_East",
520    ":drawing_pointer_image_South_West",
521    ":drawing_pointer_image_Text_Cursor",
522    ":drawing_pointer_image_West",
523    ":drawing_pointer_image_West_East",
524    ":drawing_pointer_image_Zoom_In",
525    ":drawing_pointer_image_Zoom_Out",
526    ":mmi_device_config.ini",
527    ":multimodalinput.para.dac",
528    ":multimodalinput_config_ability.json",
529    "${ability_runtime_path}/frameworks/native/ability/native:abilitykit_native",
530    "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics:2d_graphics",
531    "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client",
532    "//foundation/multimodalinput/input/frameworks/proxy:libmmi-common",
533    "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi",
534    "//foundation/multimodalinput/input/service/connect_manager:mmi_connect_manager_service",
535    "//foundation/multimodalinput/input/service/filter:mmi_event_filter_proxy",
536    "//foundation/multimodalinput/input/util:libmmi-util",
537    "//third_party/cJSON:cjson",
538  ]
539
540  if (resource_schedule_service_enabled) {
541    deps += [ "//foundation/resourceschedule/resource_schedule_service/ressched/interfaces/innerkits/ressched_client:ressched_client" ]
542  }
543
544  if (input_feature_input_cooperation) {
545    deps += [
546      "//base/notification/eventhandler/frameworks/eventhandler:libeventhandler",
547      "//foundation/deviceprofile/device_info_manager/interfaces/innerkits/core:distributed_device_profile_client",
548      "//foundation/distributedhardware/distributed_input/interfaces/inner_kits:libdinput_sdk",
549      "//foundation/multimodalinput/input/service/connect_manager:mmi_connect_manager_proxy",
550    ]
551  }
552
553  external_deps = [
554    "ability_base:want",
555    "ability_runtime:ability_manager",
556    "access_token:libaccesstoken_sdk",
557    "config_policy:configpolicy_util",
558    "hisysevent_native:libhisysevent",
559    "hitrace_native:hitrace_meter",
560    "hiviewdfx_hilog_native:libhilog",
561    "init:libbegetutil",
562    "ipc:ipc_core",
563    "multimedia_image_framework:image_native",
564    "safwk:system_ability_fwk",
565  ]
566
567  if (input_feature_input_cooperation) {
568    external_deps += [
569      "device_manager:devicemanagersdk",
570      "dsoftbus:softbus_client",
571    ]
572  }
573
574  if (input_feature_pointer_drawing) {
575    external_deps += [ "window_manager:libwm" ]
576  }
577
578  part_name = "input"
579  subsystem_name = "multimodalinput"
580}
581
582ohos_prebuilt_etc("mmi_device_config.ini") {
583  source = "mmi_device_config.ini"
584  relative_install_dir = "."
585  subsystem_name = "multimodalinput"
586  part_name = "input"
587}
588
589import("//build/test.gni")
590module_output_path = "multimodalinput/unit_out"
591
592ohos_unittest("ut-mmi-service-out") {
593  module_out_path = module_output_path
594  include_dirs = [
595    "${mmi_path}/frameworks/proxy/event_handler",
596    "${mmi_path}/frameworks/proxy/event_handler/include",
597    "${mmi_path}/frameworks/proxy/module_loader",
598    "${mmi_path}/frameworks/proxy/module_loader/include",
599    "${mmi_path}/util/common",
600    "${mmi_path}/util/common/include",
601    "${mmi_path}/util/network",
602    "${mmi_path}/util/network/include",
603    "${mmi_path}/util/socket",
604    "${mmi_path}/util/socket/include",
605    "${mmi_path}/frameworks/proxy/event_handle",
606    "${mmi_path}/frameworks/proxy/event_handle/include",
607    "${mmi_path}/frameworks/proxy/module_loader",
608    "${mmi_path}/frameworks/proxy/module_loader/include",
609    "${mmi_path}/interfaces/native/innerkits/common/include",
610    "${mmi_path}/interfaces/native/innerkits/proxy/include",
611    "${mmi_path}/interfaces/native/innerkits/event/include",
612    "${mmi_path}/service/include",
613    "${mmi_path}/service/device_manager/include",
614    "${mmi_path}/service/device_scalability/include",
615    "${mmi_path}/service/event_dispatch/include",
616    "${mmi_path}/service/key_event_normalize/include",
617    "${mmi_path}/service/event_handler/include",
618    "${mmi_path}/service/event_dump/include",
619    "${mmi_path}/service/libinput_adapter/include",
620    "${mmi_path}/service/message_handle/include",
621    "${mmi_path}/service/module_loader/include",
622    "${mmi_path}/service/window_manager/include",
623    "${mmi_path}/uinput",
624    "$root_out_dir/diff_libinput_mmi/export_include",
625  ]
626
627  sources = [
628    "event_dispatch/test/event_dispatch_test.cpp",
629    "message_handle/test/server_msg_handler_test.cpp",
630    "module_loader/test/uds_server_test.cpp",
631    "window_manager/test/input_windows_manager_test.cpp",
632  ]
633
634  defines = []
635
636  if (input_feature_pointer_drawing) {
637    defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ]
638  }
639  if (input_feature_keyboard) {
640    defines += [ "OHOS_BUILD_ENABLE_KEYBOARD" ]
641  }
642  if (input_feature_mouse) {
643    defines += [ "OHOS_BUILD_ENABLE_POINTER" ]
644  }
645  if (input_feature_touchscreen) {
646    defines += [ "OHOS_BUILD_ENABLE_TOUCH" ]
647  }
648  if (input_feature_monitor) {
649    defines += [ "OHOS_BUILD_ENABLE_MONITOR" ]
650  }
651
652  configs = [ ":libmmi_server_config" ]
653
654  deps = [
655    "${mmi_path}/frameworks/proxy:libmmi-client",
656    "${mmi_path}/service:libmmi-server",
657    "${mmi_path}/util:libmmi-util",
658    "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi",
659    "//third_party/googletest:gmock_main",
660    "//third_party/googletest:gtest_main",
661  ]
662
663  external_deps = [
664    "c_utils:utils",
665    "hiviewdfx_hilog_native:libhilog",
666  ]
667}
668
669ohos_unittest("TransformPointTest") {
670  module_out_path = module_output_path
671  include_dirs = [
672    "${mmi_path}/interfaces/native/innerkits/common/include",
673    "${mmi_path}/util/common/include",
674    "${mmi_path}/tools/vuinput/include",
675  ]
676
677  sources = [ "touch_event_normalize/test/transform_point_test.cpp" ]
678
679  deps = [
680    "${mmi_path}/tools/vuinput:libmmi-virtual-device",
681    "//third_party/googletest:gmock_main",
682    "//third_party/googletest:gtest_main",
683  ]
684
685  external_deps = [
686    "c_utils:utils",
687    "hiviewdfx_hilog_native:libhilog",
688  ]
689}
690