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 14# Copyright (c) Huawei Technologies Co., Ltd. 2019-2019. All rights reserved. 15import("//build/ohos.gni") 16import("//build/test.gni") 17import("//foundation/multimodalinput/input/multimodalinput_mini.gni") 18config("libmmi_virtual_device_config") { 19 visibility = [ ":*" ] 20 21 include_dirs = [ 22 "include", 23 "//commonlibrary/c_utils/base/include", 24 "//util/common/include", 25 ] 26} 27 28config("virtual_device_public_config") { 29 include_dirs = [ 30 "include", 31 "//commonlibrary/c_utils/base/include", 32 ] 33} 34 35ohos_source_set("libmmi-virtual-device") { 36 sources = [ 37 "src/virtual_device.cpp", 38 "src/virtual_finger.cpp", 39 "src/virtual_gamepad.cpp", 40 "src/virtual_joystick.cpp", 41 "src/virtual_keyboard.cpp", 42 "src/virtual_keyboard_consumer_ctrl.cpp", 43 "src/virtual_keyboard_ext.cpp", 44 "src/virtual_keyboard_sys_ctrl.cpp", 45 "src/virtual_knob.cpp", 46 "src/virtual_knob_consumer_ctrl.cpp", 47 "src/virtual_knob_mouse.cpp", 48 "src/virtual_knob_sys_ctrl.cpp", 49 "src/virtual_mouse.cpp", 50 "src/virtual_pen.cpp", 51 "src/virtual_pen_keyboard.cpp", 52 "src/virtual_pen_mouse.cpp", 53 "src/virtual_remote_control.cpp", 54 "src/virtual_single_finger.cpp", 55 "src/virtual_single_touchscreen.cpp", 56 "src/virtual_stylus.cpp", 57 "src/virtual_touchpad.cpp", 58 "src/virtual_touchscreen.cpp", 59 "src/virtual_trackball.cpp", 60 "src/virtual_trackpad.cpp", 61 "src/virtual_trackpad_mouse.cpp", 62 "src/virtual_trackpad_sys_ctrl.cpp", 63 ] 64 65 configs = [ ":libmmi_virtual_device_config" ] 66 67 part_name = "input" 68 subsystem_name = "multimodalinput" 69 external_deps = [ "c_utils:utils" ] 70} 71 72ohos_executable("vuinput") { 73 sources = [ "src/mmi_virtual_device_main.cpp" ] 74 75 configs = [ ":virtual_device_public_config" ] 76 77 deps = [ 78 "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi", 79 "//foundation/multimodalinput/input/tools/vuinput:libmmi-virtual-device", 80 ] 81 82 install_enable = true 83 part_name = "input" 84 subsystem_name = "multimodalinput" 85} 86 87module_output_path = "multimodalinput/unit_out" 88ohos_unittest("ut-virtual-device-out") { 89 module_out_path = module_output_path 90 include_dirs = [ 91 "${mmi_path}/tools/vuinput/include", 92 "//commonlibrary/c_utils/base/include", 93 "${mmi_path}/util/common", 94 "${mmi_path}/util/common/include", 95 "${mmi_path}/util/network", 96 "${mmi_path}/util/network/include", 97 "${mmi_path}/util/socket", 98 "${mmi_path}/util/socket/include", 99 "$root_out_dir/diff_libinput_mmi/export_include", 100 ] 101 102 sources = [ "test/virtual_device_test.cpp" ] 103 104 configs = [ ":virtual_device_public_config" ] 105 106 deps = [ 107 "${mmi_path}/tools/vuinput:libmmi-virtual-device", 108 "${mmi_path}/util:libmmi-util", 109 "//foundation/multimodalinput/input/patch/diff_libinput_mmi:libinput-third-mmi", 110 "//third_party/googletest:gmock_main", 111 "//third_party/googletest:gtest_main", 112 ] 113 114 external_deps = [ 115 "c_utils:utils", 116 "hiviewdfx_hilog_native:libhilog", 117 ] 118} 119