• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2024 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14hispark_pegasus_sdk_path = "//device/soc/hisilicon/hi3861v100/sdk_liteos"
15dsoftbus_root_path = rebase_path(".")
16dsoftbus_sdk_path = "${dsoftbus_root_path}/sdk"
17dsoftbus_core_path = "${dsoftbus_root_path}/core"
18dsoftbus_dfx_path = "${dsoftbus_root_path}/dfx"
19dsoftbus_test_path = "${dsoftbus_root_path}/tests"
20dsoftbus_test_dfx_path = "${dsoftbus_test_path}/dfx"
21dsoftbus_fuzz_out_path = "dsoftbus/soft_bus"
22
23import("adapter/feature_config/external_deps_feature/external_deps_feature.gni")
24import("adapter/feature_config/inner_feature/conn_inner_feature.gni")
25import("adapter/feature_config/inner_feature/disc_inner_feature.gni")
26import("adapter/feature_config/inner_feature/lnn_inner_feature.gni")
27import("adapter/feature_config/inner_feature/softbus_common_feature.gni")
28import("adapter/feature_config/inner_feature/t2stack_inner_feature.gni")
29import("adapter/feature_config/inner_feature/trans_inner_feature.gni")
30import("adapter/feature_config/public_feature/public_feature.gni")
31
32declare_args() {
33  softbus_adapter_common = "${dsoftbus_root_path}/adapter/common"
34  softbus_adapter_config = "${dsoftbus_root_path}/adapter/default_config"
35  dsoftbus_feature_product_config_path =
36      "${dsoftbus_root_path}/adapter/default_config"
37}
38
39declare_args() {
40  softbus_communication_wifi_feature = true
41  softbus_os_account = true
42  dsoftbus_build_eng = false
43  dsoftbus_access_token_feature = true
44  dsoftbus_ipc_feature = true
45
46  if (product_name != "qemu-arm-linux-min") {
47    qemu_arm_disable = true
48  } else {
49    qemu_arm_disable = false
50  }
51}
52
53dsoftbus_feature_lnn_frame = true
54
55if (defined(global_parts_info) &&
56    !defined(global_parts_info.communication_wifi)) {
57  softbus_communication_wifi_feature = false
58}
59
60if (defined(global_parts_info) &&
61    !defined(global_parts_info.account_os_account)) {
62  softbus_os_account = false
63}
64
65if (defined(global_parts_info) &&
66    !defined(global_parts_info.communication_bluetooth)) {
67  support_bluetooth = false
68} else {
69  support_bluetooth = true
70}
71
72if (defined(global_parts_info) &&
73    !defined(global_parts_info.security_access_token)) {
74  dsoftbus_access_token_feature = false
75}
76
77if (defined(global_parts_info) &&
78    !defined(global_parts_info.communication_ipc)) {
79  dsoftbus_ipc_feature = false
80}
81
82if (defined(ohos_lite)) {
83  import("//build/lite/config/component/lite_component.gni")
84  if (ohos_kernel_type == "liteos_m") {
85    defines = [ "SOFTBUS_LITEOS_M" ]
86    import("$softbus_adapter_config/feature_config/mini/config.gni")
87  } else {
88    defines = [ "SOFTBUS_LITEOS_A" ]
89    import("$softbus_adapter_config/feature_config/small/config.gni")
90  }
91} else {
92  if (defined(os_win)) {
93    os_type = "windows"
94  } else {
95    os_type = "standard"
96  }
97  defines = [ "SOFTBUS_LINUX" ]
98  if (is_standard_system) {
99    defines += [ "SOFTBUS_STANDARD_OS" ]
100  }
101  import("//build/ohos.gni")
102  import(
103      "$dsoftbus_feature_product_config_path/feature_config/standard/config.gni")
104
105  if (build_variant == "root") {
106    defines += [ "BUILD_VARIANT_ENG" ]
107    dsoftbus_build_eng = true
108  } else {
109    dsoftbus_build_eng = false
110  }
111}
112
113defines += [ "OPENSSL_NO_FILENAMES" ]
114
115if (dsoftbus_feature_disc_notification &&
116    dsoftbus_feature_inner_disc_broadcast) {
117  defines += [ "DSOFTBUS_FEATURE_DISC_NOTIFICATION" ]
118}
119
120if (dsoftbus_feature_disc_notification_rx &&
121    dsoftbus_feature_inner_disc_broadcast) {
122  defines += [ "DSOFTBUS_FEATURE_DISC_NOTIFICATION_RX" ]
123}
124
125if (dsoftbus_feature_disc_link_ble && dsoftbus_feature_inner_disc_broadcast) {
126  defines += [ "DSOFTBUS_FEATURE_DISC_LINK_BLE" ]
127}
128
129if (dsoftbus_feature_disc_coap && dsoftbus_feature_inner_disc_coap) {
130  defines += [ "DSOFTBUS_FEATURE_DISC_COAP" ]
131}
132
133if (dsoftbus_feature_disc_lnn_coap && dsoftbus_feature_inner_disc_coap) {
134  defines += [ "DSOFTBUS_FEATURE_DISC_LNN_COAP" ]
135}
136
137if (dsoftbus_feature_disc_share_coap && dsoftbus_feature_inner_disc_coap) {
138  defines += [ "DSOFTBUS_FEATURE_DISC_SHARE_COAP" ]
139}
140
141if (defined(global_parts_info) &&
142    !defined(global_parts_info.distributeddatamgr_kv_store)) {
143  dsoftbus_feature_lnn_cloud_sync = false
144} else {
145  dsoftbus_feature_lnn_cloud_sync = true
146}
147
148if (defined(global_parts_info) && !defined(global_parts_info.global_i18n)) {
149  support_i18n = false
150} else {
151  support_i18n = true
152}
153
154import("$dsoftbus_dfx_path/dsoftbus_dfx.gni")
155if (defined(global_parts_info) &&
156    !defined(global_parts_info.notification_common_event_service)) {
157  has_ces_part = false
158} else {
159  has_ces_part = true
160}
161
162if (dsoftbus_feature_lnn_wifi) {
163  defines += [ "ENABLE_FEATURE_LNN_WIFI" ]
164}
165
166if (dsoftbus_feature_lnn_ble) {
167  defines += [ "ENABLE_FEATURE_LNN_BLE" ]
168}
169
170if (dsoftbus_feature_deps_data_share && dsoftbus_feature_deps_datamgr_service) {
171  defines += [ "ENABLE_FEATURE_DATAMGR_SERVICE" ]
172}
173
174if (dsoftbus_feature_conn_pv1 && softbus_communication_wifi_feature &&
175    dsoftbus_feature_conn_tcp_comm) {
176  defines += [ "DSOFTBUS_FEATURE_CONN_PV1" ]
177  if (dsoftbus_feature_conn_pv2 && dsoftbus_feature_conn_pv1) {
178    defines += [ "DSOFTBUS_FEATURE_CONN_PV2" ]
179  }
180  if (dsoftbus_feature_conn_action) {
181    defines += [ "DSOFTBUS_FEATURE_CONN_ACTION" ]
182    if (dsoftbus_feature_conn_hv2 && dsoftbus_feature_disc_link_ble) {
183      defines += [ "DSOFTBUS_FEATURE_CONN_HV2" ]
184      if (dsoftbus_feature_conn_hv1 && dsoftbus_feature_conn_pv2 &&
185          dsoftbus_feature_conn_pv1) {
186        defines += [ "DSOFTBUS_FEATURE_CONN_HV1" ]
187      }
188      if (dsoftbus_feature_conn_hv2c) {
189        defines += [ "DSOFTBUS_FEATURE_CONN_HV2C" ]
190      }
191    }
192  }
193}
194