18e745fdaSopenharmony_ci# Copyright (C) 2023-2024 Huawei Device Co., Ltd. 28e745fdaSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 38e745fdaSopenharmony_ci# you may not use this file except in compliance with the License. 48e745fdaSopenharmony_ci# You may obtain a copy of the License at 58e745fdaSopenharmony_ci# 68e745fdaSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 78e745fdaSopenharmony_ci# 88e745fdaSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 98e745fdaSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 108e745fdaSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 118e745fdaSopenharmony_ci# See the License for the specific language governing permissions and 128e745fdaSopenharmony_ci# limitations under the License. 138e745fdaSopenharmony_ci 148e745fdaSopenharmony_ciimport("//build/ohos.gni") 158e745fdaSopenharmony_ciimport("//foundation/communication/netmanager_ext/netmanager_ext_config.gni") 168e745fdaSopenharmony_ci 178e745fdaSopenharmony_ciconfig("mdns_manager_config") { 188e745fdaSopenharmony_ci include_dirs = [ 198e745fdaSopenharmony_ci "$BASE_INNERKITS_ROOT/include", 208e745fdaSopenharmony_ci "$BASE_INNERKITS_ROOT/netconnclient/include", 218e745fdaSopenharmony_ci "$BASE_INNERKITS_ROOT/netconnclient/include/proxy", 228e745fdaSopenharmony_ci "$EXT_INNERKITS_ROOT/mdnsclient/include", 238e745fdaSopenharmony_ci "$EXT_INNERKITS_ROOT/mdnsclient/include/proxy", 248e745fdaSopenharmony_ci "$EXT_INNERKITS_ROOT/include", 258e745fdaSopenharmony_ci "$NETMANAGER_BASE_ROOT/utils/errorcode_utils/include", 268e745fdaSopenharmony_ci "include", 278e745fdaSopenharmony_ci "include/stub", 288e745fdaSopenharmony_ci ] 298e745fdaSopenharmony_ci} 308e745fdaSopenharmony_ci 318e745fdaSopenharmony_ciohos_shared_library("mdns_manager") { 328e745fdaSopenharmony_ci sanitize = { 338e745fdaSopenharmony_ci cfi = true 348e745fdaSopenharmony_ci cfi_cross_dso = true 358e745fdaSopenharmony_ci debug = false 368e745fdaSopenharmony_ci } 378e745fdaSopenharmony_ci 388e745fdaSopenharmony_ci branch_protector_ret = "pac_ret" 398e745fdaSopenharmony_ci 408e745fdaSopenharmony_ci sources = [ 418e745fdaSopenharmony_ci "src/mdns_manager.cpp", 428e745fdaSopenharmony_ci "src/mdns_packet_parser.cpp", 438e745fdaSopenharmony_ci "src/mdns_protocol_impl.cpp", 448e745fdaSopenharmony_ci "src/mdns_service.cpp", 458e745fdaSopenharmony_ci "src/mdns_socket_listener.cpp", 468e745fdaSopenharmony_ci "src/net_interface_callback.cpp", 478e745fdaSopenharmony_ci "src/stub/mdns_event_proxy.cpp", 488e745fdaSopenharmony_ci "src/stub/mdns_service_stub.cpp", 498e745fdaSopenharmony_ci ] 508e745fdaSopenharmony_ci 518e745fdaSopenharmony_ci configs = [ ":mdns_manager_config" ] 528e745fdaSopenharmony_ci 538e745fdaSopenharmony_ci deps = [ 548e745fdaSopenharmony_ci "$EXT_INNERKITS_ROOT/mdnsclient:mdns_parcel", 558e745fdaSopenharmony_ci "$NETMANAGER_EXT_ROOT/utils:net_manager_ext_common", 568e745fdaSopenharmony_ci ] 578e745fdaSopenharmony_ci 588e745fdaSopenharmony_ci cflags = [ 598e745fdaSopenharmony_ci "-fvisibility=hidden", 608e745fdaSopenharmony_ci "-fdata-sections", 618e745fdaSopenharmony_ci "-ffunction-sections", 628e745fdaSopenharmony_ci "-Os", 638e745fdaSopenharmony_ci "-fstack-protector-strong", 648e745fdaSopenharmony_ci "-D_FORTIFY_SOURCE=2", 658e745fdaSopenharmony_ci "-O2", 668e745fdaSopenharmony_ci ] 678e745fdaSopenharmony_ci 688e745fdaSopenharmony_ci cflags_cc = [ 698e745fdaSopenharmony_ci "-fvisibility-inlines-hidden", 708e745fdaSopenharmony_ci "-Os", 718e745fdaSopenharmony_ci "-fstack-protector-strong", 728e745fdaSopenharmony_ci "-D_FORTIFY_SOURCE=2", 738e745fdaSopenharmony_ci "-O2", 748e745fdaSopenharmony_ci ] 758e745fdaSopenharmony_ci 768e745fdaSopenharmony_ci ldflags = [ 778e745fdaSopenharmony_ci "-Wl,--exclude-libs=ALL", 788e745fdaSopenharmony_ci "-Wl,--gc-sections", 798e745fdaSopenharmony_ci ] 808e745fdaSopenharmony_ci 818e745fdaSopenharmony_ci external_deps = [ 828e745fdaSopenharmony_ci "bounds_checking_function:libsec_shared", 838e745fdaSopenharmony_ci "hisysevent:libhisysevent", 848e745fdaSopenharmony_ci "ipc:ipc_core", 858e745fdaSopenharmony_ci "netmanager_base:net_conn_manager_if", 868e745fdaSopenharmony_ci "safwk:system_ability_fwk", 878e745fdaSopenharmony_ci "samgr:samgr_proxy", 888e745fdaSopenharmony_ci ] 898e745fdaSopenharmony_ci 908e745fdaSopenharmony_ci defines = [ 918e745fdaSopenharmony_ci "NETMGR_LOG_TAG = \"MDnsManager\"", 928e745fdaSopenharmony_ci "LOG_DOMAIN = 0xD0015B0", 938e745fdaSopenharmony_ci ] 948e745fdaSopenharmony_ci 958e745fdaSopenharmony_ci if (enable_netmgr_ext_debug) { 968e745fdaSopenharmony_ci defines += [ "NETMGR_DEBUG" ] 978e745fdaSopenharmony_ci } 988e745fdaSopenharmony_ci 998e745fdaSopenharmony_ci external_deps += [ "hilog:libhilog" ] 1008e745fdaSopenharmony_ci 1018e745fdaSopenharmony_ci part_name = "netmanager_ext" 1028e745fdaSopenharmony_ci subsystem_name = "communication" 1038e745fdaSopenharmony_ci} 1048e745fdaSopenharmony_ci 1058e745fdaSopenharmony_ciohos_static_library("mdns_manager_static") { 1068e745fdaSopenharmony_ci testonly = true 1078e745fdaSopenharmony_ci sanitize = { 1088e745fdaSopenharmony_ci cfi = true 1098e745fdaSopenharmony_ci cfi_cross_dso = true 1108e745fdaSopenharmony_ci debug = false 1118e745fdaSopenharmony_ci } 1128e745fdaSopenharmony_ci 1138e745fdaSopenharmony_ci branch_protector_ret = "pac_ret" 1148e745fdaSopenharmony_ci 1158e745fdaSopenharmony_ci sources = [ 1168e745fdaSopenharmony_ci "src/mdns_manager.cpp", 1178e745fdaSopenharmony_ci "src/mdns_packet_parser.cpp", 1188e745fdaSopenharmony_ci "src/mdns_protocol_impl.cpp", 1198e745fdaSopenharmony_ci "src/mdns_service.cpp", 1208e745fdaSopenharmony_ci "src/mdns_socket_listener.cpp", 1218e745fdaSopenharmony_ci "src/net_interface_callback.cpp", 1228e745fdaSopenharmony_ci "src/stub/mdns_event_proxy.cpp", 1238e745fdaSopenharmony_ci "src/stub/mdns_service_stub.cpp", 1248e745fdaSopenharmony_ci ] 1258e745fdaSopenharmony_ci 1268e745fdaSopenharmony_ci configs = [ ":mdns_manager_config" ] 1278e745fdaSopenharmony_ci 1288e745fdaSopenharmony_ci deps = [ 1298e745fdaSopenharmony_ci "$EXT_INNERKITS_ROOT/mdnsclient:mdns_parcel", 1308e745fdaSopenharmony_ci "$NETMANAGER_EXT_ROOT/utils:net_manager_ext_common", 1318e745fdaSopenharmony_ci ] 1328e745fdaSopenharmony_ci 1338e745fdaSopenharmony_ci external_deps = [ 1348e745fdaSopenharmony_ci "bounds_checking_function:libsec_shared", 1358e745fdaSopenharmony_ci "hisysevent:libhisysevent", 1368e745fdaSopenharmony_ci "ipc:ipc_core", 1378e745fdaSopenharmony_ci "netmanager_base:net_conn_manager_if", 1388e745fdaSopenharmony_ci "safwk:system_ability_fwk", 1398e745fdaSopenharmony_ci "samgr:samgr_proxy", 1408e745fdaSopenharmony_ci ] 1418e745fdaSopenharmony_ci 1428e745fdaSopenharmony_ci defines = [ 1438e745fdaSopenharmony_ci "NETMGR_LOG_TAG = \"MDnsManager\"", 1448e745fdaSopenharmony_ci "LOG_DOMAIN = 0xD0015B0", 1458e745fdaSopenharmony_ci ] 1468e745fdaSopenharmony_ci 1478e745fdaSopenharmony_ci if (enable_netmgr_ext_debug) { 1488e745fdaSopenharmony_ci defines += [ "NETMGR_DEBUG" ] 1498e745fdaSopenharmony_ci } 1508e745fdaSopenharmony_ci 1518e745fdaSopenharmony_ci external_deps += [ "hilog:libhilog" ] 1528e745fdaSopenharmony_ci 1538e745fdaSopenharmony_ci part_name = "netmanager_ext" 1548e745fdaSopenharmony_ci subsystem_name = "communication" 1558e745fdaSopenharmony_ci} 156