# Copyright (c) 2021-2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") import("//foundation/multimodalinput/input/multimodalinput_mini.gni") mmi_service_path = "${mmi_path}/service" config("libmmi_server_config") { include_dirs = [ "input_device_cooperate/include", "device_manager/include", "device_scalability/include", "delegate_task/include", "event_dispatch/include", "key_event_normalize/include", "event_handler/include", "event_dump/include", "monitor/include", "interceptor/include", "dfx/include", "libinput_adapter/include", "message_handle/include", "module_loader/include", "window_manager/include", "touch_event_normalize/include", "key_command/include", "subscriber/include", "timer_manager/include", "permission_helper/include", "${mmi_service_path}/connect_manager/include", "${mmi_service_path}/filter/include", "${mmi_service_path}/module_loader/include", "${mmi_path}/interfaces/native/innerkits/proxy/include", "${mmi_path}/interfaces/native/innerkits/event/include", "mouse_event_normalize/include", "//foundation/multimodalinput/interfaces/native/innerkits/event/include", "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/include", "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics/src", "//foundation/multimodalinput/input/interfaces/native/innerkits/common/include", "//foundation/multimodalinput/input/util/common/include", "//foundation/multimodalinput/input/util/socket/include", "//foundation/multimodalinput/input/util/network/include", "//foundation/multimodalinput/input/frameworks/proxy/event_handler/include", "//third_party/cJSON", ] if (input_feature_input_cooperation) { include_dirs += [ "input_device_cooperate/include", "//foundation/deviceprofile/device_profile_core/interfaces/innerkits/core/include", "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp/include", ] } defines = [] if (input_feature_combination_key) { defines += [ "OHOS_BUILD_ENABLE_COMBINATION_KEY" ] } if (input_feature_pointer_drawing) { defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ] } if (input_feature_interceptor) { defines += [ "OHOS_BUILD_ENABLE_INTERCEPTOR" ] } if (resource_schedule_service_enabled) { defines += [ "OHOS_RSS_CLIENT" ] } if (input_feature_pointer_drawing) { defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ] } if (input_feature_keyboard) { defines += [ "OHOS_BUILD_ENABLE_KEYBOARD" ] } if (input_feature_mouse) { defines += [ "OHOS_BUILD_ENABLE_POINTER" ] } if (input_feature_touchscreen) { defines += [ "OHOS_BUILD_ENABLE_TOUCH" ] } if (input_feature_monitor) { defines += [ "OHOS_BUILD_ENABLE_MONITOR" ] } if (input_feature_input_cooperation) { defines += [ "OHOS_BUILD_ENABLE_COOPERATE" ] } if (input_feature_joystick) { defines += [ "OHOS_BUILD_ENABLE_JOYSTICK" ] } } ohos_prebuilt_etc("multimodalinput_config_ability.json") { source = "key_command/etc/ability_launch_config.json" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput" } ohos_prebuilt_etc("drawing_pointer_image_Default") { source = "//foundation/multimodalinput/input/util/source_icon/Default.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_East") { source = "//foundation/multimodalinput/input/util/source_icon/East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_West") { source = "//foundation/multimodalinput/input/util/source_icon/West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_South") { source = "//foundation/multimodalinput/input/util/source_icon/South.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North") { source = "//foundation/multimodalinput/input/util/source_icon/North.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_West_East") { source = "//foundation/multimodalinput/input/util/source_icon/West_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North_South") { source = "//foundation/multimodalinput/input/util/source_icon/North_South.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North_East") { source = "//foundation/multimodalinput/input/util/source_icon/North_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North_West") { source = "//foundation/multimodalinput/input/util/source_icon/North_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_South_East") { source = "//foundation/multimodalinput/input/util/source_icon/South_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_South_West") { source = "//foundation/multimodalinput/input/util/source_icon/South_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North_East_South_West") { source = "//foundation/multimodalinput/input/util/source_icon/North_East_South_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_North_West_South_East") { source = "//foundation/multimodalinput/input/util/source_icon/North_West_South_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Cross") { source = "//foundation/multimodalinput/input/util/source_icon/Cross.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Copy") { source = "//foundation/multimodalinput/input/util/source_icon/Copy.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Forbid") { source = "//foundation/multimodalinput/input/util/source_icon/Forbid.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Colorsucker") { source = "//foundation/multimodalinput/input/util/source_icon/Colorsucker.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Hand_Grabbing") { source = "//foundation/multimodalinput/input/util/source_icon/Hand_Grabbing.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Hand_Open") { source = "//foundation/multimodalinput/input/util/source_icon/Hand_Open.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Hand_Pointing") { source = "//foundation/multimodalinput/input/util/source_icon/Hand_Pointing.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Help") { source = "//foundation/multimodalinput/input/util/source_icon/Help.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Move") { source = "//foundation/multimodalinput/input/util/source_icon/Move.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Resize_Left_Right") { source = "//foundation/multimodalinput/input/util/source_icon/Resize_Left_Right.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Resize_Up_Down") { source = "//foundation/multimodalinput/input/util/source_icon/Resize_Up_Down.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Screenshot_Cross") { source = "//foundation/multimodalinput/input/util/source_icon/Screenshot_Cross.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Screenshot_Cursor") { source = "//foundation/multimodalinput/input/util/source_icon/Screenshot_Cursor.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Text_Cursor") { source = "//foundation/multimodalinput/input/util/source_icon/Text_Cursor.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Zoom_In") { source = "//foundation/multimodalinput/input/util/source_icon/Zoom_In.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_Zoom_Out") { source = "//foundation/multimodalinput/input/util/source_icon/Zoom_Out.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_East") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_West") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_South") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_South.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_East") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_West") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South_East") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_South_West") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_South_West.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("drawing_pointer_image_MID_Btn_North_South_West_East") { source = "//foundation/multimodalinput/input/util/source_icon/MID_Btn_North_South_West_East.png" part_name = "input" subsystem_name = "multimodalinput" relative_install_dir = "multimodalinput/mouse_icon" } ohos_prebuilt_etc("multimodalinput.para.dac") { source = "${mmi_path}/etc/multimodalinput.para.dac" part_name = "input" subsystem_name = "multimodalinput" module_install_dir = "etc/param" } ohos_shared_library("libmmi-server") { sources = [ "//foundation/multimodalinput/input/frameworks/proxy/event_handler/src/bytrace_adapter.cpp", "delegate_task/src/delegate_tasks.cpp", "device_manager/src/input_device_manager.cpp", "dfx/src/dfx_hisysevent.cpp", "event_dispatch/src/event_dispatch_handler.cpp", "event_dump/src/event_dump.cpp", "event_handler/src/anr_manager.cpp", "event_handler/src/event_normalize_handler.cpp", "event_handler/src/input_event_handler.cpp", "event_handler/src/key_auto_repeat.cpp", "event_handler/src/key_event_value_transformation.cpp", "event_handler/src/key_map_manager.cpp", "libinput_adapter/src/libinput_adapter.cpp", "message_handle/src/server_msg_handler.cpp", "module_loader/src/mmi_service.cpp", "module_loader/src/uds_server.cpp", "permission_helper/src/permission_helper.cpp", "timer_manager/src/timer_manager.cpp", "window_manager/src/input_windows_manager.cpp", ] if (input_feature_input_cooperation) { sources += [ "input_device_cooperate/src/cooperate_event_handler.cpp", "input_device_cooperate/src/cooperate_event_manager.cpp", "input_device_cooperate/src/device_cooperate_softbus_adapter.cpp", "input_device_cooperate/src/device_profile_adapter.cpp", "input_device_cooperate/src/distributed_input_adapter.cpp", "input_device_cooperate/src/i_input_device_cooperate_state.cpp", "input_device_cooperate/src/input_device_cooperate_sm.cpp", "input_device_cooperate/src/input_device_cooperate_state_free.cpp", "input_device_cooperate/src/input_device_cooperate_state_in.cpp", "input_device_cooperate/src/input_device_cooperate_state_out.cpp", "input_device_cooperate/src/input_device_cooperate_util.cpp", ] } if (input_feature_keyboard) { sources += [ "key_event_normalize/src/key_event_normalize.cpp", "key_event_normalize/src/key_unicode_transformation.cpp", "subscriber/src/key_subscriber_handler.cpp", ] if (input_feature_combination_key) { sources += [ "key_command/src/key_command_handler.cpp" ] } } if (input_feature_mouse || input_feature_touchscreen) { sources += [ "touch_event_normalize/src/touch_event_normalize.cpp" ] if (input_feature_mouse) { sources += [ "mouse_event_normalize/src/mouse_device_state.cpp", "mouse_event_normalize/src/mouse_event_normalize.cpp", "touch_event_normalize/src/gesture_transform_processor.cpp", "touch_event_normalize/src/touchpad_transform_processor.cpp", ] if (input_feature_pointer_drawing) { sources += [ "window_manager/src/pointer_drawing_manager.cpp" ] } else { sources += [ "window_manager/src/i_pointer_drawing_manager.cpp" ] } } if (input_feature_touchscreen) { sources += [ "touch_event_normalize/src/tablet_tool_tranform_processor.cpp", "touch_event_normalize/src/touch_transform_processor.cpp", ] } } if (input_feature_monitor) { sources += [ "monitor/src/event_monitor_handler.cpp" ] } if (input_feature_interceptor) { sources += [ "interceptor/src/event_interceptor_handler.cpp" ] } configs = [ ":libmmi_server_config" ] deps = [ ":drawing_pointer_image_Colorsucker", ":drawing_pointer_image_Copy", ":drawing_pointer_image_Cross", ":drawing_pointer_image_Default", ":drawing_pointer_image_East", ":drawing_pointer_image_Forbid", ":drawing_pointer_image_Hand_Grabbing", ":drawing_pointer_image_Hand_Open", ":drawing_pointer_image_Hand_Pointing", ":drawing_pointer_image_Help", ":drawing_pointer_image_MID_Btn_East", ":drawing_pointer_image_MID_Btn_North", ":drawing_pointer_image_MID_Btn_North_East", ":drawing_pointer_image_MID_Btn_North_South", ":drawing_pointer_image_MID_Btn_North_South_West_East", ":drawing_pointer_image_MID_Btn_North_West", ":drawing_pointer_image_MID_Btn_South", ":drawing_pointer_image_MID_Btn_South_East", ":drawing_pointer_image_MID_Btn_South_West", ":drawing_pointer_image_MID_Btn_West", ":drawing_pointer_image_Move", ":drawing_pointer_image_North", ":drawing_pointer_image_North_East", ":drawing_pointer_image_North_East_South_West", ":drawing_pointer_image_North_South", ":drawing_pointer_image_North_West", ":drawing_pointer_image_North_West_South_East", ":drawing_pointer_image_Resize_Left_Right", ":drawing_pointer_image_Resize_Up_Down", ":drawing_pointer_image_Screenshot_Cross", ":drawing_pointer_image_Screenshot_Cursor", ":drawing_pointer_image_South", ":drawing_pointer_image_South_East", ":drawing_pointer_image_South_West", ":drawing_pointer_image_Text_Cursor", ":drawing_pointer_image_West", ":drawing_pointer_image_West_East", ":drawing_pointer_image_Zoom_In", ":drawing_pointer_image_Zoom_Out", ":mmi_device_config.ini", ":multimodalinput.para.dac", ":multimodalinput_config_ability.json", "${ability_runtime_path}/frameworks/native/ability/native:abilitykit_native", "//foundation/graphic/graphic_2d/rosen/modules/2d_graphics:2d_graphics", "//foundation/graphic/graphic_2d/rosen/modules/render_service_client:librender_service_client", "//foundation/multimodalinput/input/frameworks/proxy:libmmi-common", "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi", "//foundation/multimodalinput/input/service/connect_manager:mmi_connect_manager_service", "//foundation/multimodalinput/input/service/filter:mmi_event_filter_proxy", "//foundation/multimodalinput/input/util:libmmi-util", "//third_party/cJSON:cjson", ] if (resource_schedule_service_enabled) { deps += [ "//foundation/resourceschedule/resource_schedule_service/ressched/interfaces/innerkits/ressched_client:ressched_client" ] } if (input_feature_input_cooperation) { deps += [ "//base/notification/eventhandler/frameworks/eventhandler:libeventhandler", "//foundation/deviceprofile/device_info_manager/interfaces/innerkits/core:distributed_device_profile_client", "//foundation/distributedhardware/distributed_input/interfaces/inner_kits:libdinput_sdk", "//foundation/multimodalinput/input/service/connect_manager:mmi_connect_manager_proxy", ] } external_deps = [ "ability_base:want", "ability_runtime:ability_manager", "access_token:libaccesstoken_sdk", "config_policy:configpolicy_util", "hisysevent_native:libhisysevent", "hitrace_native:hitrace_meter", "hiviewdfx_hilog_native:libhilog", "init:libbegetutil", "ipc:ipc_core", "multimedia_image_framework:image_native", "safwk:system_ability_fwk", ] if (input_feature_input_cooperation) { external_deps += [ "device_manager:devicemanagersdk", "dsoftbus:softbus_client", ] } if (input_feature_pointer_drawing) { external_deps += [ "window_manager:libwm" ] } part_name = "input" subsystem_name = "multimodalinput" } ohos_prebuilt_etc("mmi_device_config.ini") { source = "mmi_device_config.ini" relative_install_dir = "." subsystem_name = "multimodalinput" part_name = "input" } import("//build/test.gni") module_output_path = "multimodalinput/unit_out" ohos_unittest("ut-mmi-service-out") { module_out_path = module_output_path include_dirs = [ "${mmi_path}/frameworks/proxy/event_handler", "${mmi_path}/frameworks/proxy/event_handler/include", "${mmi_path}/frameworks/proxy/module_loader", "${mmi_path}/frameworks/proxy/module_loader/include", "${mmi_path}/util/common", "${mmi_path}/util/common/include", "${mmi_path}/util/network", "${mmi_path}/util/network/include", "${mmi_path}/util/socket", "${mmi_path}/util/socket/include", "${mmi_path}/frameworks/proxy/event_handle", "${mmi_path}/frameworks/proxy/event_handle/include", "${mmi_path}/frameworks/proxy/module_loader", "${mmi_path}/frameworks/proxy/module_loader/include", "${mmi_path}/interfaces/native/innerkits/common/include", "${mmi_path}/interfaces/native/innerkits/proxy/include", "${mmi_path}/interfaces/native/innerkits/event/include", "${mmi_path}/service/include", "${mmi_path}/service/device_manager/include", "${mmi_path}/service/device_scalability/include", "${mmi_path}/service/event_dispatch/include", "${mmi_path}/service/key_event_normalize/include", "${mmi_path}/service/event_handler/include", "${mmi_path}/service/event_dump/include", "${mmi_path}/service/libinput_adapter/include", "${mmi_path}/service/message_handle/include", "${mmi_path}/service/module_loader/include", "${mmi_path}/service/window_manager/include", "${mmi_path}/uinput", "$root_out_dir/diff_libinput_mmi/export_include", ] sources = [ "event_dispatch/test/event_dispatch_test.cpp", "message_handle/test/server_msg_handler_test.cpp", "module_loader/test/uds_server_test.cpp", "window_manager/test/input_windows_manager_test.cpp", ] defines = [] if (input_feature_pointer_drawing) { defines += [ "OHOS_BUILD_ENABLE_POINTER_DRAWING" ] } if (input_feature_keyboard) { defines += [ "OHOS_BUILD_ENABLE_KEYBOARD" ] } if (input_feature_mouse) { defines += [ "OHOS_BUILD_ENABLE_POINTER" ] } if (input_feature_touchscreen) { defines += [ "OHOS_BUILD_ENABLE_TOUCH" ] } if (input_feature_monitor) { defines += [ "OHOS_BUILD_ENABLE_MONITOR" ] } configs = [ ":libmmi_server_config" ] deps = [ "${mmi_path}/frameworks/proxy:libmmi-client", "${mmi_path}/service:libmmi-server", "${mmi_path}/util:libmmi-util", "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi", "//third_party/googletest:gmock_main", "//third_party/googletest:gtest_main", ] external_deps = [ "c_utils:utils", "hiviewdfx_hilog_native:libhilog", ] } ohos_unittest("TransformPointTest") { module_out_path = module_output_path include_dirs = [ "${mmi_path}/interfaces/native/innerkits/common/include", "${mmi_path}/util/common/include", "${mmi_path}/tools/vuinput/include", ] sources = [ "touch_event_normalize/test/transform_point_test.cpp" ] deps = [ "${mmi_path}/tools/vuinput:libmmi-virtual-device", "//third_party/googletest:gmock_main", "//third_party/googletest:gtest_main", ] external_deps = [ "c_utils:utils", "hiviewdfx_hilog_native:libhilog", ] }