1c29fa5a6Sopenharmony_ci# Copyright (c) 2024 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_ci 18c29fa5a6Sopenharmony_cimodule_output_path = "multimodalinput/mmi_unit_out" 19c29fa5a6Sopenharmony_ci 20c29fa5a6Sopenharmony_ciconfig("mmi_anco_channel_config") { 21c29fa5a6Sopenharmony_ci include_dirs = [ 22c29fa5a6Sopenharmony_ci "include", 23c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/event/include", 24c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/proxy/include", 25c29fa5a6Sopenharmony_ci ] 26c29fa5a6Sopenharmony_ci 27c29fa5a6Sopenharmony_ci if (input_ext_feature_anco) { 28c29fa5a6Sopenharmony_ci include_dirs += [ "${mmi_ext_path}/anco_uds_manager/include" ] 29c29fa5a6Sopenharmony_ci } 30c29fa5a6Sopenharmony_ci} 31c29fa5a6Sopenharmony_ci 32c29fa5a6Sopenharmony_ciohos_source_set("mmi_anco_channel_proxy") { 33c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 34c29fa5a6Sopenharmony_ci 35c29fa5a6Sopenharmony_ci defines = input_default_defines 36c29fa5a6Sopenharmony_ci 37c29fa5a6Sopenharmony_ci sources = [ 38c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/events/src/i_anco_consumer.cpp", 39c29fa5a6Sopenharmony_ci "src/anco_channel_death_recipient.cpp", 40c29fa5a6Sopenharmony_ci "src/anco_channel_proxy.cpp", 41c29fa5a6Sopenharmony_ci ] 42c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 43c29fa5a6Sopenharmony_ci sanitize = { 44c29fa5a6Sopenharmony_ci cfi = true 45c29fa5a6Sopenharmony_ci cfi_cross_dso = true 46c29fa5a6Sopenharmony_ci debug = false 47c29fa5a6Sopenharmony_ci } 48c29fa5a6Sopenharmony_ci 49c29fa5a6Sopenharmony_ci configs = [ ":mmi_anco_channel_config" ] 50c29fa5a6Sopenharmony_ci 51c29fa5a6Sopenharmony_ci public_configs = [ ":mmi_anco_channel_config" ] 52c29fa5a6Sopenharmony_ci 53c29fa5a6Sopenharmony_ci deps = [ "${mmi_path}/util:libmmi-util" ] 54c29fa5a6Sopenharmony_ci 55c29fa5a6Sopenharmony_ci external_deps = [ 56c29fa5a6Sopenharmony_ci "hilog:libhilog", 57c29fa5a6Sopenharmony_ci "ipc:ipc_single", 58c29fa5a6Sopenharmony_ci ] 59c29fa5a6Sopenharmony_ci 60c29fa5a6Sopenharmony_ci part_name = "${mmi_part_name}" 61c29fa5a6Sopenharmony_ci subsystem_name = "${mmi_subsystem_name}" 62c29fa5a6Sopenharmony_ci} 63c29fa5a6Sopenharmony_ci 64c29fa5a6Sopenharmony_ciohos_source_set("mmi_anco_channel_stub") { 65c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 66c29fa5a6Sopenharmony_ci 67c29fa5a6Sopenharmony_ci defines = input_default_defines 68c29fa5a6Sopenharmony_ci 69c29fa5a6Sopenharmony_ci sources = [ 70c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/events/src/i_anco_consumer.cpp", 71c29fa5a6Sopenharmony_ci "src/anco_channel.cpp", 72c29fa5a6Sopenharmony_ci "src/anco_channel_stub.cpp", 73c29fa5a6Sopenharmony_ci ] 74c29fa5a6Sopenharmony_ci branch_protector_ret = "pac_ret" 75c29fa5a6Sopenharmony_ci sanitize = { 76c29fa5a6Sopenharmony_ci cfi = true 77c29fa5a6Sopenharmony_ci cfi_cross_dso = true 78c29fa5a6Sopenharmony_ci debug = false 79c29fa5a6Sopenharmony_ci } 80c29fa5a6Sopenharmony_ci 81c29fa5a6Sopenharmony_ci configs = [ ":mmi_anco_channel_config" ] 82c29fa5a6Sopenharmony_ci 83c29fa5a6Sopenharmony_ci public_configs = [ ":mmi_anco_channel_config" ] 84c29fa5a6Sopenharmony_ci 85c29fa5a6Sopenharmony_ci deps = [ "${mmi_path}/util:libmmi-util" ] 86c29fa5a6Sopenharmony_ci 87c29fa5a6Sopenharmony_ci external_deps = [ 88c29fa5a6Sopenharmony_ci "hilog:libhilog", 89c29fa5a6Sopenharmony_ci "ipc:ipc_single", 90c29fa5a6Sopenharmony_ci ] 91c29fa5a6Sopenharmony_ci 92c29fa5a6Sopenharmony_ci part_name = "${mmi_part_name}" 93c29fa5a6Sopenharmony_ci subsystem_name = "${mmi_subsystem_name}" 94c29fa5a6Sopenharmony_ci} 95c29fa5a6Sopenharmony_ci 96c29fa5a6Sopenharmony_ciohos_unittest("AncoChannelStubTest") { 97c29fa5a6Sopenharmony_ci module_out_path = module_output_path 98c29fa5a6Sopenharmony_ci 99c29fa5a6Sopenharmony_ci include_dirs = [ 100c29fa5a6Sopenharmony_ci "${mmi_path}/common/anco/comm/include", 101c29fa5a6Sopenharmony_ci "${mmi_path}/interfaces/native/innerkits/proxy/include", 102c29fa5a6Sopenharmony_ci ] 103c29fa5a6Sopenharmony_ci 104c29fa5a6Sopenharmony_ci cflags = [ 105c29fa5a6Sopenharmony_ci "-Dprivate=public", 106c29fa5a6Sopenharmony_ci "-Dprotected=public", 107c29fa5a6Sopenharmony_ci ] 108c29fa5a6Sopenharmony_ci 109c29fa5a6Sopenharmony_ci deps = [ "${mmi_path}/util:libmmi-util" ] 110c29fa5a6Sopenharmony_ci 111c29fa5a6Sopenharmony_ci sources = [ 112c29fa5a6Sopenharmony_ci "${mmi_path}/frameworks/proxy/events/src/i_anco_consumer.cpp", 113c29fa5a6Sopenharmony_ci "src/anco_channel_stub.cpp", 114c29fa5a6Sopenharmony_ci "test/anco_channel_stub_ex_test.cpp", 115c29fa5a6Sopenharmony_ci "test/mock.cpp", 116c29fa5a6Sopenharmony_ci ] 117c29fa5a6Sopenharmony_ci 118c29fa5a6Sopenharmony_ci external_deps = [ 119c29fa5a6Sopenharmony_ci "c_utils:utils", 120c29fa5a6Sopenharmony_ci "googletest:gmock_main", 121c29fa5a6Sopenharmony_ci "hilog:libhilog", 122c29fa5a6Sopenharmony_ci "ipc:ipc_single", 123c29fa5a6Sopenharmony_ci ] 124c29fa5a6Sopenharmony_ci} 125