1060ff233Sopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd.
2060ff233Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3060ff233Sopenharmony_ci# you may not use this file except in compliance with the License.
4060ff233Sopenharmony_ci# You may obtain a copy of the License at
5060ff233Sopenharmony_ci#
6060ff233Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7060ff233Sopenharmony_ci#
8060ff233Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9060ff233Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10060ff233Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11060ff233Sopenharmony_ci# See the License for the specific language governing permissions and
12060ff233Sopenharmony_ci# limitations under the License.
13060ff233Sopenharmony_ci
14060ff233Sopenharmony_ciimport("../../dsoftbus.gni")
15060ff233Sopenharmony_ciimport("../adapter/core_adapter.gni")
16060ff233Sopenharmony_ciimport("../authentication/authentication.gni")
17060ff233Sopenharmony_ciimport("../broadcast/broadcast.gni")
18060ff233Sopenharmony_ciimport("../bus_center/bus_center_server.gni")
19060ff233Sopenharmony_ciimport("../common/dfx/dsoftbus_dfx.gni")
20060ff233Sopenharmony_ciimport("../common/security/permission/permission.gni")
21060ff233Sopenharmony_ciimport("../connection/conn.gni")
22060ff233Sopenharmony_ciimport("../discovery/disc.gni")
23060ff233Sopenharmony_ciimport("../transmission/trans.gni")
24060ff233Sopenharmony_ci
25060ff233Sopenharmony_cidsoftbus_root_path = "../.."
26060ff233Sopenharmony_cidsoftbus_feature_product_config_path =
27060ff233Sopenharmony_ci    "${dsoftbus_root_path}/adapter/default_config"
28060ff233Sopenharmony_cisoftbus_adapter_config = "${dsoftbus_root_path}/adapter/default_config"
29060ff233Sopenharmony_cidsoftbus_core_path = "${dsoftbus_root_path}/core"
30060ff233Sopenharmony_ci
31060ff233Sopenharmony_cidsoftbus_server_common_src =
32060ff233Sopenharmony_ci    auth_server_src + bus_center_server_src + conn_manager_src +
33060ff233Sopenharmony_ci    disc_server_src + trans_session_src + softbus_permission_src + broadcast_src
34060ff233Sopenharmony_cidsoftbus_server_common_inc =
35060ff233Sopenharmony_ci    auth_server_inc + bus_center_server_inc + conn_manager_inc +
36060ff233Sopenharmony_ci    disc_server_inc + trans_session_inc + softbus_permission_inc + broadcast_inc
37060ff233Sopenharmony_cidsoftbus_server_common_deps =
38060ff233Sopenharmony_ci    auth_server_deps + bus_center_server_deps + disc_server_deps +
39060ff233Sopenharmony_ci    conn_manager_common_deps + trans_session_deps + softbus_permission_deps +
40060ff233Sopenharmony_ci    broadcast_deps
41060ff233Sopenharmony_ci
42060ff233Sopenharmony_ciif (defined(ohos_lite)) {
43060ff233Sopenharmony_ci  copy("permission_json") {
44060ff233Sopenharmony_ci    sources = [ "$dsoftbus_core_path/common/security/permission/softbus_trans_permission.json" ]
45060ff233Sopenharmony_ci    outputs = [ "$root_out_dir/etc/softbus_trans_permission.json" ]
46060ff233Sopenharmony_ci  }
47060ff233Sopenharmony_ci  if (ohos_kernel_type == "liteos_m") {
48060ff233Sopenharmony_ci    static_library("softbus_server_frame") {
49060ff233Sopenharmony_ci      defines += AUTH_SERVER_DEFINES
50060ff233Sopenharmony_ci      defines += DISC_SERVER_DEFINES
51060ff233Sopenharmony_ci      defines += [ "__STDC_FORMAT_MACROS" ]
52060ff233Sopenharmony_ci      include_dirs = dsoftbus_server_common_inc
53060ff233Sopenharmony_ci      include_dirs += [
54060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/frame/common/include",
55060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/inner_kits/lnn",
56060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/kits",
57060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/kits/bus_center",
58060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/kits/transport",
59060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/kits/common",
60060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include",
61060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/interface/include",
62060ff233Sopenharmony_ci        "$softbus_adapter_config/spec_config",
63060ff233Sopenharmony_ci      ]
64060ff233Sopenharmony_ci      sources = dsoftbus_server_common_src
65060ff233Sopenharmony_ci      sources += [
66060ff233Sopenharmony_ci        "common/src/softbus_server_frame.c",
67060ff233Sopenharmony_ci        "mini/src/softbus_server_stub.c",
68060ff233Sopenharmony_ci      ]
69060ff233Sopenharmony_ci      if (board_toolchain_type != "iccarm") {
70060ff233Sopenharmony_ci        cflags = [
71060ff233Sopenharmony_ci          "-Wall",
72060ff233Sopenharmony_ci          "-fPIC",
73060ff233Sopenharmony_ci          "-std=c99",
74060ff233Sopenharmony_ci        ]
75060ff233Sopenharmony_ci        cflags_cc = cflags
76060ff233Sopenharmony_ci      } else {
77060ff233Sopenharmony_ci        include_dirs += [
78060ff233Sopenharmony_ci          "//kernel/liteos_m/components/net/lwip-2.1/porting/include",
79060ff233Sopenharmony_ci          "//third_party/lwip/src/include",
80060ff233Sopenharmony_ci        ]
81060ff233Sopenharmony_ci        cflags = [
82060ff233Sopenharmony_ci          "--diag_suppress",
83060ff233Sopenharmony_ci          "Pe301",
84060ff233Sopenharmony_ci        ]
85060ff233Sopenharmony_ci      }
86060ff233Sopenharmony_ci      deps = dsoftbus_server_common_deps
87060ff233Sopenharmony_ci      deps += [
88060ff233Sopenharmony_ci        "$dsoftbus_root_path/adapter:softbus_adapter",
89060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common:softbus_utils",
90060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/hidumper_adapter:softbus_dfx_dump",
91060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/connection/wifi_direct_cpp:wifi_direct",
92060ff233Sopenharmony_ci        "//build/lite/config/component/cJSON:cjson_static",
93060ff233Sopenharmony_ci      ]
94060ff233Sopenharmony_ci      external_deps = [ "device_auth:deviceauth_sdk" ]
95060ff233Sopenharmony_ci      external_deps += auth_server_ex_deps
96060ff233Sopenharmony_ci      if (defined(global_parts_info) &&
97060ff233Sopenharmony_ci          defined(global_parts_info.hmoshiviewdfx_hiview_xcommradar_plugin)) {
98060ff233Sopenharmony_ci        include_dirs += [
99060ff233Sopenharmony_ci          "$dsoftbus_root_path/../../../vendor/huawei/base/hiviewdfx/hiview_plugins/communication_radar_plugin/interfaces/inner_api/communication_radar",
100060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/include",
101060ff233Sopenharmony_ci        ]
102060ff233Sopenharmony_ci        sources += [
103060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/bt_statistic.cpp",
104060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics.cpp",
105060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/wifi_statistic.cpp",
106060ff233Sopenharmony_ci        ]
107060ff233Sopenharmony_ci        external_deps +=
108060ff233Sopenharmony_ci            [ "hiview_xcommradar_plugin:communication_radar_client" ]
109060ff233Sopenharmony_ci      } else {
110060ff233Sopenharmony_ci        sources += [ "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics_virtual.cpp" ]
111060ff233Sopenharmony_ci      }
112060ff233Sopenharmony_ci      public_deps =
113060ff233Sopenharmony_ci          [ "$dsoftbus_root_path/core/common/dfx/log:softbus_dfx_log" ]
114060ff233Sopenharmony_ci      if (support_bluetooth &&
115060ff233Sopenharmony_ci          (dsoftbus_feature_conn_br || dsoftbus_feature_conn_ble)) {
116060ff233Sopenharmony_ci        deps += [
117060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/frameworks/inner:btframework",
118060ff233Sopenharmony_ci        ]
119060ff233Sopenharmony_ci        include_dirs += [
120060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/interfaces/inner_api/include",
121060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/interfaces/inner_api/include/c_header",
122060ff233Sopenharmony_ci        ]
123060ff233Sopenharmony_ci      }
124060ff233Sopenharmony_ci    }
125060ff233Sopenharmony_ci  } else {
126060ff233Sopenharmony_ci    shared_library("softbus_server_frame") {
127060ff233Sopenharmony_ci      defines += AUTH_SERVER_DEFINES
128060ff233Sopenharmony_ci      defines += DISC_SERVER_DEFINES
129060ff233Sopenharmony_ci      defines += [ "__STDC_FORMAT_MACROS" ]
130060ff233Sopenharmony_ci      include_dirs = dsoftbus_server_common_inc
131060ff233Sopenharmony_ci      include_dirs += [
132060ff233Sopenharmony_ci        "common/include",
133060ff233Sopenharmony_ci        "small/init/include",
134060ff233Sopenharmony_ci        "small/client_manager/include",
135060ff233Sopenharmony_ci        "$softbus_adapter_common/include",
136060ff233Sopenharmony_ci        "$softbus_adapter_config/spec_config",
137060ff233Sopenharmony_ci        "$dsoftbus_root_path/interfaces/kits/transport",
138060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include",
139060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/interface/include",
140060ff233Sopenharmony_ci        "//commonlibrary/utils_lite/include",
141060ff233Sopenharmony_ci      ]
142060ff233Sopenharmony_ci      sources = dsoftbus_server_common_src
143060ff233Sopenharmony_ci      sources += [
144060ff233Sopenharmony_ci        "common/src/softbus_server_frame.c",
145060ff233Sopenharmony_ci        "small/client_manager/src/softbus_client_info_manager.c",
146060ff233Sopenharmony_ci        "small/init/src/bus_center_server_stub.c",
147060ff233Sopenharmony_ci        "small/init/src/softbus_server_stub.c",
148060ff233Sopenharmony_ci        "small/init/src/trans_server_stub.c",
149060ff233Sopenharmony_ci      ]
150060ff233Sopenharmony_ci
151060ff233Sopenharmony_ci      cflags = [
152060ff233Sopenharmony_ci        "-Wall",
153060ff233Sopenharmony_ci        "-fPIC",
154060ff233Sopenharmony_ci        "-fno-builtin",
155060ff233Sopenharmony_ci        "-std=c99",
156060ff233Sopenharmony_ci      ]
157060ff233Sopenharmony_ci      cflags_cc = cflags
158060ff233Sopenharmony_ci      deps = dsoftbus_server_common_deps
159060ff233Sopenharmony_ci      deps += [
160060ff233Sopenharmony_ci        ":permission_json",
161060ff233Sopenharmony_ci        "$dsoftbus_root_path/adapter:softbus_adapter",
162060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common:softbus_utils",
163060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/hidumper_adapter:softbus_dfx_dump",
164060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/connection/wifi_direct_cpp:wifi_direct",
165060ff233Sopenharmony_ci        "//build/lite/config/component/cJSON:cjson_shared",
166060ff233Sopenharmony_ci        "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single",
167060ff233Sopenharmony_ci        "//foundation/systemabilitymgr/samgr_lite/samgr:samgr",
168060ff233Sopenharmony_ci      ]
169060ff233Sopenharmony_ci      external_deps = [
170060ff233Sopenharmony_ci        "bounds_checking_function:libsec_shared",
171060ff233Sopenharmony_ci        "device_auth:deviceauth_sdk",
172060ff233Sopenharmony_ci      ]
173060ff233Sopenharmony_ci      external_deps += auth_server_ex_deps
174060ff233Sopenharmony_ci      if (defined(global_parts_info) &&
175060ff233Sopenharmony_ci          defined(global_parts_info.hmoshiviewdfx_hiview_xcommradar_plugin)) {
176060ff233Sopenharmony_ci        include_dirs += [
177060ff233Sopenharmony_ci          "$dsoftbus_root_path/../../../vendor/huawei/base/hiviewdfx/hiview_plugins/communication_radar_plugin/interfaces/inner_api/communication_radar",
178060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/include",
179060ff233Sopenharmony_ci        ]
180060ff233Sopenharmony_ci        sources += [
181060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/bt_statistic.cpp",
182060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics.cpp",
183060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/common/dfx/statistics/instant/wifi_statistic.cpp",
184060ff233Sopenharmony_ci        ]
185060ff233Sopenharmony_ci        external_deps +=
186060ff233Sopenharmony_ci            [ "hiview_xcommradar_plugin:communication_radar_client" ]
187060ff233Sopenharmony_ci      } else {
188060ff233Sopenharmony_ci        sources += [ "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics_virtual.cpp" ]
189060ff233Sopenharmony_ci      }
190060ff233Sopenharmony_ci      public_deps =
191060ff233Sopenharmony_ci          [ "$dsoftbus_root_path/core/common/dfx/log:softbus_dfx_log" ]
192060ff233Sopenharmony_ci      if (support_bluetooth &&
193060ff233Sopenharmony_ci          (dsoftbus_feature_conn_br || dsoftbus_feature_conn_ble)) {
194060ff233Sopenharmony_ci        deps += [
195060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/frameworks/inner:btframework",
196060ff233Sopenharmony_ci        ]
197060ff233Sopenharmony_ci        include_dirs += [
198060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/interfaces/inner_api/include",
199060ff233Sopenharmony_ci          "//foundation/communication/bluetooth/interfaces/inner_api/include/c_header",
200060ff233Sopenharmony_ci        ]
201060ff233Sopenharmony_ci      }
202060ff233Sopenharmony_ci    }
203060ff233Sopenharmony_ci    executable("softbus_server") {
204060ff233Sopenharmony_ci      sources = [ "small/init/src/softbus_server_main.c" ]
205060ff233Sopenharmony_ci      include_dirs = [ "common/include" ]
206060ff233Sopenharmony_ci      deps = [ ":softbus_server_frame" ]
207060ff233Sopenharmony_ci      cflags = [ "-fPIC" ]
208060ff233Sopenharmony_ci    }
209060ff233Sopenharmony_ci  }
210060ff233Sopenharmony_ci} else {
211060ff233Sopenharmony_ci  ohos_prebuilt_etc("softbus_server.rc") {
212060ff233Sopenharmony_ci    relative_install_dir = "init"
213060ff233Sopenharmony_ci    if (use_musl) {
214060ff233Sopenharmony_ci      source = "$dsoftbus_root_path/core/frame/$os_type/init/src/softbus_server_musl.cfg"
215060ff233Sopenharmony_ci    } else {
216060ff233Sopenharmony_ci      source =
217060ff233Sopenharmony_ci          "$dsoftbus_root_path/core/frame/$os_type/init/src/softbus_server.cfg"
218060ff233Sopenharmony_ci    }
219060ff233Sopenharmony_ci
220060ff233Sopenharmony_ci    part_name = "dsoftbus"
221060ff233Sopenharmony_ci    subsystem_name = "communication"
222060ff233Sopenharmony_ci  }
223060ff233Sopenharmony_ci  ohos_prebuilt_etc("softbus_permission_json") {
224060ff233Sopenharmony_ci    source = "$dsoftbus_root_path/core/common/security/permission/softbus_trans_permission.json"
225060ff233Sopenharmony_ci    install_enable = true
226060ff233Sopenharmony_ci    relative_install_dir = "communication/softbus"
227060ff233Sopenharmony_ci    part_name = "dsoftbus"
228060ff233Sopenharmony_ci    subsystem_name = "communication"
229060ff233Sopenharmony_ci  }
230060ff233Sopenharmony_ci  ohos_shared_library("softbus_server") {
231060ff233Sopenharmony_ci    sanitize = {
232060ff233Sopenharmony_ci      cfi = true
233060ff233Sopenharmony_ci      cfi_cross_dso = true
234060ff233Sopenharmony_ci      debug = false
235060ff233Sopenharmony_ci    }
236060ff233Sopenharmony_ci    branch_protector_ret = "pac_ret"
237060ff233Sopenharmony_ci
238060ff233Sopenharmony_ci    defines += AUTH_SERVER_DEFINES
239060ff233Sopenharmony_ci    defines += DISC_SERVER_DEFINES
240060ff233Sopenharmony_ci    defines += [ "__STDC_FORMAT_MACROS" ]
241060ff233Sopenharmony_ci    include_dirs = dsoftbus_server_common_inc
242060ff233Sopenharmony_ci    include_dirs += [
243060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/frame/common/include",
244060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/frame/$os_type/client_manager/include",
245060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/frame/$os_type/init/include",
246060ff233Sopenharmony_ci      "$dsoftbus_root_path/interfaces/kits/common",
247060ff233Sopenharmony_ci      "$dsoftbus_root_path/interfaces/kits/transport",
248060ff233Sopenharmony_ci      "$dsoftbus_feature_product_config_path/spec_config",
249060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common/include",
250060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common/dfx/hidumper_adapter/include",
251060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common/dfx/hisysevent_adapter/include",
252060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common/dfx/interface/include",
253060ff233Sopenharmony_ci    ]
254060ff233Sopenharmony_ci    sources = dsoftbus_server_common_src
255060ff233Sopenharmony_ci    sources += [
256060ff233Sopenharmony_ci      "$dsoftbus_root_path/sdk/frame/$os_type/src/if_softbus_client.cpp",
257060ff233Sopenharmony_ci      "$os_type/client_manager/src/permission_status_change_cb.cpp",
258060ff233Sopenharmony_ci      "$os_type/client_manager/src/softbus_client_info_manager.cpp",
259060ff233Sopenharmony_ci      "$os_type/init/src/if_softbus_server.cpp",
260060ff233Sopenharmony_ci      "$os_type/init/src/softbus_server.cpp",
261060ff233Sopenharmony_ci      "$os_type/init/src/softbus_server_death_recipient.cpp",
262060ff233Sopenharmony_ci      "$os_type/init/src/softbus_server_stub.cpp",
263060ff233Sopenharmony_ci      "common/src/softbus_server_frame.c",
264060ff233Sopenharmony_ci    ]
265060ff233Sopenharmony_ci    deps = dsoftbus_server_common_deps
266060ff233Sopenharmony_ci    deps += [
267060ff233Sopenharmony_ci      ":softbus_permission_json",
268060ff233Sopenharmony_ci      ":softbus_server.rc",
269060ff233Sopenharmony_ci      "$dsoftbus_root_path/adapter:softbus_adapter",
270060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common:softbus_utils",
271060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/common/dfx/hidumper_adapter:softbus_dfx_dump",
272060ff233Sopenharmony_ci      "$dsoftbus_root_path/core/connection/wifi_direct_cpp:wifi_direct",
273060ff233Sopenharmony_ci    ]
274060ff233Sopenharmony_ci    external_deps = [ "cJSON:cjson" ]
275060ff233Sopenharmony_ci    external_deps += auth_server_ex_deps
276060ff233Sopenharmony_ci    public_deps = [ "$dsoftbus_root_path/core/common/dfx/log:softbus_dfx_log" ]
277060ff233Sopenharmony_ci    dsoftbus_server_common_external_deps =
278060ff233Sopenharmony_ci        bus_center_server_external_deps + disc_server_external_deps +
279060ff233Sopenharmony_ci        softbus_permission_external_deps + trans_session_external_deps +
280060ff233Sopenharmony_ci        conn_manager_external_deps
281060ff233Sopenharmony_ci    if (is_standard_system) {
282060ff233Sopenharmony_ci      external_deps += dsoftbus_server_common_external_deps
283060ff233Sopenharmony_ci      external_deps += [
284060ff233Sopenharmony_ci        "access_token:libaccesstoken_sdk",
285060ff233Sopenharmony_ci        "access_token:libprivacy_sdk",
286060ff233Sopenharmony_ci        "access_token:libtokenid_sdk",
287060ff233Sopenharmony_ci        "device_auth:deviceauth_sdk",
288060ff233Sopenharmony_ci        "hilog:libhilog",
289060ff233Sopenharmony_ci        "ipc:ipc_single",
290060ff233Sopenharmony_ci        "kv_store:distributeddata_inner",
291060ff233Sopenharmony_ci        "netmanager_base:net_conn_manager_if",
292060ff233Sopenharmony_ci        "safwk:system_ability_fwk",
293060ff233Sopenharmony_ci        "samgr:samgr_proxy",
294060ff233Sopenharmony_ci      ]
295060ff233Sopenharmony_ci      if (!defined(global_parts_info) ||
296060ff233Sopenharmony_ci          defined(global_parts_info.deviceprofile_device_info_manager)) {
297060ff233Sopenharmony_ci        external_deps += [
298060ff233Sopenharmony_ci          "device_info_manager:distributed_device_profile_common",
299060ff233Sopenharmony_ci          "device_info_manager:distributed_device_profile_sdk",
300060ff233Sopenharmony_ci        ]
301060ff233Sopenharmony_ci      }
302060ff233Sopenharmony_ci      if (!defined(global_parts_info) ||
303060ff233Sopenharmony_ci          defined(global_parts_info.bundlemanager_bundle_framework)) {
304060ff233Sopenharmony_ci        external_deps += [
305060ff233Sopenharmony_ci          "bundle_framework:appexecfwk_base",
306060ff233Sopenharmony_ci          "bundle_framework:appexecfwk_core",
307060ff233Sopenharmony_ci        ]
308060ff233Sopenharmony_ci        cflags = [ "-DSUPPORT_BUNDLENAME" ]
309060ff233Sopenharmony_ci      }
310060ff233Sopenharmony_ci      if (!defined(global_parts_info) ||
311060ff233Sopenharmony_ci          defined(global_parts_info.ability_ability_runtime)) {
312060ff233Sopenharmony_ci        cflags += [ "-DSUPPORT_ABILITY_RUNTIME" ]
313060ff233Sopenharmony_ci      }
314060ff233Sopenharmony_ci      if (enhanced) {
315060ff233Sopenharmony_ci        cflags += [ "-DENHANCED_FLAG" ]
316060ff233Sopenharmony_ci        external_deps += [
317060ff233Sopenharmony_ci          "device_certificate_manager:device_cert_mgr_sdk",
318060ff233Sopenharmony_ci          "zlib:libz",
319060ff233Sopenharmony_ci        ]
320060ff233Sopenharmony_ci      }
321060ff233Sopenharmony_ci    }
322060ff233Sopenharmony_ci    if (defined(global_parts_info) &&
323060ff233Sopenharmony_ci        defined(global_parts_info.hmoshiviewdfx_hiview_xcommradar_plugin)) {
324060ff233Sopenharmony_ci      include_dirs += [
325060ff233Sopenharmony_ci        "$dsoftbus_root_path/../../../vendor/huawei/base/hiviewdfx/hiview_plugins/communication_radar_plugin/interfaces/inner_api/communication_radar",
326060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/statistics/include",
327060ff233Sopenharmony_ci      ]
328060ff233Sopenharmony_ci      sources += [
329060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/statistics/instant/bt_statistic.cpp",
330060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics.cpp",
331060ff233Sopenharmony_ci        "$dsoftbus_root_path/core/common/dfx/statistics/instant/wifi_statistic.cpp",
332060ff233Sopenharmony_ci      ]
333060ff233Sopenharmony_ci      external_deps += [ "hiview_xcommradar_plugin:communication_radar_client" ]
334060ff233Sopenharmony_ci    } else {
335060ff233Sopenharmony_ci      sources += [ "$dsoftbus_root_path/core/common/dfx/statistics/instant/instant_statistics_virtual.cpp" ]
336060ff233Sopenharmony_ci    }
337060ff233Sopenharmony_ci    part_name = "dsoftbus"
338060ff233Sopenharmony_ci    subsystem_name = "communication"
339060ff233Sopenharmony_ci  }
340060ff233Sopenharmony_ci}
341