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
14import("../../../../dsoftbus.gni")
15
16softbus_permission_external_deps = []
17
18if (defined(ohos_lite)) {
19  softbus_permission_inc = [
20    "$dsoftbus_core_path/common/security/permission/include",
21    "//foundation/communication/ipc/interfaces/innerkits/c/ipc/include",
22    "//base/security/permission_lite/interfaces/kits",
23  ]
24  if (ohos_kernel_type == "liteos_m") {
25    softbus_permission_src = [ "$dsoftbus_core_path/common/security/permission/mini/softbus_permission.c" ]
26    softbus_permission_deps = []
27  } else {
28    softbus_permission_src = [
29      "$dsoftbus_core_path/common/security/permission/common/permission_entry.c",
30      "$dsoftbus_core_path/common/security/permission/small/permission_utils.c",
31      "$dsoftbus_core_path/common/security/permission/small/softbus_permission.c",
32    ]
33    softbus_permission_deps = [
34      "//base/security/permission_lite/services/pms_client:pms_client",
35      "//foundation/communication/ipc/interfaces/innerkits/c/ipc:ipc_single",
36    ]
37  }
38  softbus_permission_src += [ "$dsoftbus_core_path/common/security/permission/standard/access_control_virtual.c" ]
39} else {
40  softbus_permission_inc =
41      [ "$dsoftbus_core_path/common/security/permission/include" ]
42  softbus_permission_src = [
43    "$dsoftbus_core_path/common/security/permission/common/permission_entry.c",
44    "$dsoftbus_core_path/common/security/permission/$os_type/permission_utils.cpp",
45    "$dsoftbus_core_path/common/security/permission/$os_type/softbus_permission.cpp",
46  ]
47  softbus_permission_deps = []
48  softbus_permission_external_deps += [
49    "cJSON:cjson",
50    "c_utils:utils",
51  ]
52  if (!defined(global_parts_info) ||
53      defined(global_parts_info.ability_ability_runtime)) {
54    softbus_permission_external_deps += [ "ability_runtime:app_manager" ]
55  }
56  if (!defined(global_parts_info) ||
57      defined(global_parts_info.deviceprofile_device_info_manager)) {
58    softbus_permission_external_deps += [
59      "device_info_manager:distributed_device_profile_common",
60      "device_info_manager:distributed_device_profile_sdk",
61    ]
62    softbus_permission_src += [ "$dsoftbus_core_path/common/security/permission/standard/access_control.cpp" ]
63  } else {
64    softbus_permission_src += [ "$dsoftbus_core_path/common/security/permission/standard/access_control_virtual.c" ]
65  }
66}
67