1c29fa5a6Sopenharmony_ci# Copyright (c) 2021-2022 Huawei Device Co., Ltd. 2c29fa5a6Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3c29fa5a6Sopenharmony_ci# you may not use this file except in compliance with the License. 4c29fa5a6Sopenharmony_ci# You may obtain a copy of the License at 5c29fa5a6Sopenharmony_ci# 6c29fa5a6Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7c29fa5a6Sopenharmony_ci# 8c29fa5a6Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9c29fa5a6Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10c29fa5a6Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11c29fa5a6Sopenharmony_ci# See the License for the specific language governing permissions and 12c29fa5a6Sopenharmony_ci# limitations under the License. 13c29fa5a6Sopenharmony_ci 14c29fa5a6Sopenharmony_ciimport("//build/ohos.gni") 15c29fa5a6Sopenharmony_ciimport("//build/test.gni") 16c29fa5a6Sopenharmony_ciimport("../../multimodalinput_mini.gni") 17c29fa5a6Sopenharmony_cimodule_output_path = "multimodalinput/mmi_unit_out" 18c29fa5a6Sopenharmony_ci 19c29fa5a6Sopenharmony_ciconfig("event_injection_config") { 20c29fa5a6Sopenharmony_ci visibility = [ ":*" ] 21c29fa5a6Sopenharmony_ci 22c29fa5a6Sopenharmony_ci include_dirs = [ 23c29fa5a6Sopenharmony_ci "include", 24c29fa5a6Sopenharmony_ci "${mmi_path}/util/common/include", 25c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/common/include", 26c29fa5a6Sopenharmony_ci ] 27c29fa5a6Sopenharmony_ci} 28c29fa5a6Sopenharmony_ci 29c29fa5a6Sopenharmony_ciconfig("event_injection_public_config") { 30c29fa5a6Sopenharmony_ci include_dirs = [ 31c29fa5a6Sopenharmony_ci "include", 32c29fa5a6Sopenharmony_ci "${mmi_path}/util/common/include", 33c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/common/include", 34c29fa5a6Sopenharmony_ci "//third_party/FreeBSD/sys/dev/evdev", 35c29fa5a6Sopenharmony_ci ] 36c29fa5a6Sopenharmony_ci} 37c29fa5a6Sopenharmony_ci 38c29fa5a6Sopenharmony_ciohos_source_set("event-injection") { 39c29fa5a6Sopenharmony_ci sources = event_injection_sources 40c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 41c29fa5a6Sopenharmony_ci sanitize = { 42c29fa5a6Sopenharmony_ci cfi = true 43c29fa5a6Sopenharmony_ci cfi_cross_dso = true 44c29fa5a6Sopenharmony_ci debug = false 45c29fa5a6Sopenharmony_ci } 46c29fa5a6Sopenharmony_ci configs = [ 47c29fa5a6Sopenharmony_ci ":event_injection_config", 48c29fa5a6Sopenharmony_ci ":event_injection_public_config", 49c29fa5a6Sopenharmony_ci ] 50c29fa5a6Sopenharmony_ci 51c29fa5a6Sopenharmony_ci deps = [ 52c29fa5a6Sopenharmony_ci "${mmi_path}/service/connect_manager:mmi_connect_manager_proxy", 53c29fa5a6Sopenharmony_ci "${mmi_path}/service/filter:mmi_event_filter_service", 54c29fa5a6Sopenharmony_ci "${mmi_path}/util:libmmi-util", 55c29fa5a6Sopenharmony_ci ] 56c29fa5a6Sopenharmony_ci 57c29fa5a6Sopenharmony_ci external_deps = [ 58c29fa5a6Sopenharmony_ci "cJSON:cjson", 59c29fa5a6Sopenharmony_ci "c_utils:utils", 60c29fa5a6Sopenharmony_ci "ipc:ipc_single", 61c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 62c29fa5a6Sopenharmony_ci ] 63c29fa5a6Sopenharmony_ci 64c29fa5a6Sopenharmony_ci part_name = "input" 65c29fa5a6Sopenharmony_ci subsystem_name = "multimodalinput" 66c29fa5a6Sopenharmony_ci} 67c29fa5a6Sopenharmony_ci 68c29fa5a6Sopenharmony_ciohos_unittest("ut-event-injection-out") { 69c29fa5a6Sopenharmony_ci module_out_path = module_output_path 70c29fa5a6Sopenharmony_ci 71c29fa5a6Sopenharmony_ci configs = [ "${mmi_path}:coverage_flags" ] 72c29fa5a6Sopenharmony_ci 73c29fa5a6Sopenharmony_ci cflags = [ 74c29fa5a6Sopenharmony_ci "-Dprivate=public", 75c29fa5a6Sopenharmony_ci "-Dprotected=public", 76c29fa5a6Sopenharmony_ci ] 77c29fa5a6Sopenharmony_ci 78c29fa5a6Sopenharmony_ci include_dirs = [ 79c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/event_handler", 80c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/event_handler/include", 81c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/module_loader", 82c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/module_loader/include", 83c29fa5a6Sopenharmony_ci "${mmi_path}/util/common", 84c29fa5a6Sopenharmony_ci "${mmi_path}/util/common/include", 85c29fa5a6Sopenharmony_ci "${mmi_path}/util/network", 86c29fa5a6Sopenharmony_ci "${mmi_path}/util/network/include", 87c29fa5a6Sopenharmony_ci "${mmi_path}/util/socket", 88c29fa5a6Sopenharmony_ci "${mmi_path}/util/socket/include", 89c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/event_handle", 90c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/event_handle/include", 91c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/module_loader", 92c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/module_loader/include", 93c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/common/include", 94c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/proxy/include", 95c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/event/include", 96c29fa5a6Sopenharmony_ci "${mmi_path}/service/include", 97c29fa5a6Sopenharmony_ci "${mmi_path}/service/device_scalability/include", 98c29fa5a6Sopenharmony_ci "${mmi_path}/service/event_dispatch/include", 99c29fa5a6Sopenharmony_ci "${mmi_path}/service/event_handler/include", 100c29fa5a6Sopenharmony_ci "${mmi_path}/service/event_standard/include", 101c29fa5a6Sopenharmony_ci "${mmi_path}/service/libinput_adapter/include", 102c29fa5a6Sopenharmony_ci "${mmi_path}/service/message_handle/include", 103c29fa5a6Sopenharmony_ci "${mmi_path}/service/module_loader/include", 104c29fa5a6Sopenharmony_ci "${mmi_path}/service/window_manager/include", 105c29fa5a6Sopenharmony_ci "${mmi_path}/tools/event_inject/include", 106c29fa5a6Sopenharmony_ci "${mmi_path}/uinput", 107c29fa5a6Sopenharmony_ci "$root_out_dir/diff_libinput_mmi/export_include", 108c29fa5a6Sopenharmony_ci ] 109c29fa5a6Sopenharmony_ci 110c29fa5a6Sopenharmony_ci sources = [ 111c29fa5a6Sopenharmony_ci "test/device_base_test.cpp", 112c29fa5a6Sopenharmony_ci "test/get_device_node_test.cpp", 113c29fa5a6Sopenharmony_ci "test/get_device_object_test.cpp", 114c29fa5a6Sopenharmony_ci "test/injection_tools_help_func_test.cpp", 115c29fa5a6Sopenharmony_ci "test/processing_finger_device_test.cpp", 116c29fa5a6Sopenharmony_ci "test/processing_game_pad_device_test.cpp", 117c29fa5a6Sopenharmony_ci "test/processing_joystick_device_test.cpp", 118c29fa5a6Sopenharmony_ci "test/processing_keyboard_device_test.cpp", 119c29fa5a6Sopenharmony_ci "test/processing_mouse_device_test.cpp", 120c29fa5a6Sopenharmony_ci "test/processing_pad_device_test.cpp", 121c29fa5a6Sopenharmony_ci "test/processing_pen_device_test.cpp", 122c29fa5a6Sopenharmony_ci "test/processing_touch_screen_device_test.cpp", 123c29fa5a6Sopenharmony_ci ] 124c29fa5a6Sopenharmony_ci 125c29fa5a6Sopenharmony_ci deps = [ 126c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy:libmmi-client", 127c29fa5a6Sopenharmony_ci "${mmi_path}/service:libmmi-server", 128c29fa5a6Sopenharmony_ci "${mmi_path}/tools/event_inject:event-injection", 129c29fa5a6Sopenharmony_ci "${mmi_path}/util:libmmi-util", 130c29fa5a6Sopenharmony_ci ] 131c29fa5a6Sopenharmony_ci 132c29fa5a6Sopenharmony_ci external_deps = [ 133c29fa5a6Sopenharmony_ci "cJSON:cjson", 134c29fa5a6Sopenharmony_ci "c_utils:utils", 135c29fa5a6Sopenharmony_ci "googletest:gmock_main", 136c29fa5a6Sopenharmony_ci "googletest:gtest_main", 137c29fa5a6Sopenharmony_ci "hilog:libhilog", 138c29fa5a6Sopenharmony_ci "image_framework:image_native", 139c29fa5a6Sopenharmony_ci "ipc:ipc_single", 140c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 141c29fa5a6Sopenharmony_ci ] 142c29fa5a6Sopenharmony_ci} 143c29fa5a6Sopenharmony_ci 144c29fa5a6Sopenharmony_ciohos_executable("mmi-event-injection") { 145c29fa5a6Sopenharmony_ci sources = [ "src/mmi_event_simulate_main.cpp" ] 146c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 147c29fa5a6Sopenharmony_ci sanitize = { 148c29fa5a6Sopenharmony_ci cfi = true 149c29fa5a6Sopenharmony_ci cfi_cross_dso = true 150c29fa5a6Sopenharmony_ci debug = false 151c29fa5a6Sopenharmony_ci } 152c29fa5a6Sopenharmony_ci configs = [ ":event_injection_public_config" ] 153c29fa5a6Sopenharmony_ci 154c29fa5a6Sopenharmony_ci deps = [ 155c29fa5a6Sopenharmony_ci "${mmi_path}/tools/event_inject:event-injection", 156c29fa5a6Sopenharmony_ci "${mmi_path}/util:libmmi-util", 157c29fa5a6Sopenharmony_ci ] 158c29fa5a6Sopenharmony_ci external_deps = [ 159c29fa5a6Sopenharmony_ci "cJSON:cjson", 160c29fa5a6Sopenharmony_ci "c_utils:utils", 161c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 162c29fa5a6Sopenharmony_ci ] 163c29fa5a6Sopenharmony_ci install_enable = true 164c29fa5a6Sopenharmony_ci part_name = "input" 165c29fa5a6Sopenharmony_ci subsystem_name = "multimodalinput" 166c29fa5a6Sopenharmony_ci} 167