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_ciconfig("libmmi_virtual_device_config") { 18c29fa5a6Sopenharmony_ci visibility = [ ":*" ] 19c29fa5a6Sopenharmony_ci include_dirs = [ "include" ] 20c29fa5a6Sopenharmony_ci} 21c29fa5a6Sopenharmony_ci 22c29fa5a6Sopenharmony_ciconfig("virtual_device_public_config") { 23c29fa5a6Sopenharmony_ci include_dirs = [ "include" ] 24c29fa5a6Sopenharmony_ci} 25c29fa5a6Sopenharmony_ci 26c29fa5a6Sopenharmony_ciohos_source_set("libmmi-virtual-device") { 27c29fa5a6Sopenharmony_ci sources = libmmi_virtual_device_sources 28c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 29c29fa5a6Sopenharmony_ci sanitize = { 30c29fa5a6Sopenharmony_ci cfi = true 31c29fa5a6Sopenharmony_ci cfi_cross_dso = true 32c29fa5a6Sopenharmony_ci debug = false 33c29fa5a6Sopenharmony_ci } 34c29fa5a6Sopenharmony_ci configs = [ ":libmmi_virtual_device_config" ] 35c29fa5a6Sopenharmony_ci 36c29fa5a6Sopenharmony_ci external_deps = [ 37c29fa5a6Sopenharmony_ci "c_utils:utils", 38c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 39c29fa5a6Sopenharmony_ci ] 40c29fa5a6Sopenharmony_ci 41c29fa5a6Sopenharmony_ci public_configs = [ ":virtual_device_public_config" ] 42c29fa5a6Sopenharmony_ci 43c29fa5a6Sopenharmony_ci part_name = "input" 44c29fa5a6Sopenharmony_ci subsystem_name = "multimodalinput" 45c29fa5a6Sopenharmony_ci} 46c29fa5a6Sopenharmony_ci 47c29fa5a6Sopenharmony_ciohos_executable("vuinput") { 48c29fa5a6Sopenharmony_ci sources = [ "src/mmi_virtual_device_main.cpp" ] 49c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 50c29fa5a6Sopenharmony_ci sanitize = { 51c29fa5a6Sopenharmony_ci cfi = true 52c29fa5a6Sopenharmony_ci cfi_cross_dso = true 53c29fa5a6Sopenharmony_ci debug = false 54c29fa5a6Sopenharmony_ci } 55c29fa5a6Sopenharmony_ci configs = [ ":virtual_device_public_config" ] 56c29fa5a6Sopenharmony_ci 57c29fa5a6Sopenharmony_ci deps = [ "${mmi_path}/tools/vuinput:libmmi-virtual-device" ] 58c29fa5a6Sopenharmony_ci 59c29fa5a6Sopenharmony_ci external_deps = [ 60c29fa5a6Sopenharmony_ci "c_utils:utils", 61c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 62c29fa5a6Sopenharmony_ci ] 63c29fa5a6Sopenharmony_ci install_enable = true 64c29fa5a6Sopenharmony_ci part_name = "input" 65c29fa5a6Sopenharmony_ci subsystem_name = "multimodalinput" 66c29fa5a6Sopenharmony_ci} 67c29fa5a6Sopenharmony_ci 68c29fa5a6Sopenharmony_cimodule_output_path = "multimodalinput/mmi_unit_out" 69c29fa5a6Sopenharmony_ciohos_unittest("ut-virtual-device-out") { 70c29fa5a6Sopenharmony_ci module_out_path = module_output_path 71c29fa5a6Sopenharmony_ci include_dirs = [ 72c29fa5a6Sopenharmony_ci "${mmi_path}/tools/vuinput/include", 73c29fa5a6Sopenharmony_ci "${mmi_path}/util/common", 74c29fa5a6Sopenharmony_ci "${mmi_path}/util/common/include", 75c29fa5a6Sopenharmony_ci "${mmi_path}/util/network", 76c29fa5a6Sopenharmony_ci "${mmi_path}/util/network/include", 77c29fa5a6Sopenharmony_ci "${mmi_path}/util/socket", 78c29fa5a6Sopenharmony_ci "${mmi_path}/util/socket/include", 79c29fa5a6Sopenharmony_ci "$root_out_dir/diff_libinput_mmi/export_include", 80c29fa5a6Sopenharmony_ci ] 81c29fa5a6Sopenharmony_ci 82c29fa5a6Sopenharmony_ci sources = [ "test/virtual_device_test.cpp" ] 83c29fa5a6Sopenharmony_ci 84c29fa5a6Sopenharmony_ci configs = [ 85c29fa5a6Sopenharmony_ci "${mmi_path}:coverage_flags", 86c29fa5a6Sopenharmony_ci ":virtual_device_public_config", 87c29fa5a6Sopenharmony_ci ] 88c29fa5a6Sopenharmony_ci 89c29fa5a6Sopenharmony_ci deps = [ 90c29fa5a6Sopenharmony_ci "${mmi_path}/tools/vuinput:libmmi-virtual-device", 91c29fa5a6Sopenharmony_ci "${mmi_path}/util:libmmi-util", 92c29fa5a6Sopenharmony_ci ] 93c29fa5a6Sopenharmony_ci 94c29fa5a6Sopenharmony_ci external_deps = [ 95c29fa5a6Sopenharmony_ci "c_utils:utils", 96c29fa5a6Sopenharmony_ci "googletest:gmock_main", 97c29fa5a6Sopenharmony_ci "googletest:gtest_main", 98c29fa5a6Sopenharmony_ci "hilog:libhilog", 99c29fa5a6Sopenharmony_ci "libinput:libinput-third-mmi", 100c29fa5a6Sopenharmony_ci ] 101c29fa5a6Sopenharmony_ci} 102