1# Copyright (c) 2023 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("//build/ohos.gni")
15import("../../../dlp_permission_service.gni")
16
17ohos_shared_library("libdlppermission_napi") {
18  branch_protector_ret = "pac_ret"
19
20  sanitize = {
21    cfi = true
22    cfi_cross_dso = true
23    debug = false
24  }
25
26  include_dirs = [
27    "${dlp_root_dir}/frameworks/common/include",
28    "${dlp_root_dir}/interfaces/inner_api/dlp_permission/include",
29    "${dlp_root_dir}/interfaces/kits/dlp_permission/napi/include",
30    "${dlp_root_dir}/interfaces/kits/napi_common/include",
31    "${dlp_root_dir}/interfaces/inner_api/dlp_parse/include",
32    "${dlp_root_dir}/interfaces/inner_api/dlp_fuse/include",
33  ]
34
35  sources = [
36    "${dlp_root_dir}/interfaces/kits/dlp_permission/napi/src/napi_dlp_permission.cpp",
37    "${dlp_root_dir}/interfaces/kits/napi_common/src/napi_common.cpp",
38    "${dlp_root_dir}/interfaces/kits/napi_common/src/napi_error_msg.cpp",
39  ]
40
41  deps = [
42    "${dlp_root_dir}/interfaces/inner_api/dlp_fuse:libdlp_fuse",
43    "${dlp_root_dir}/interfaces/inner_api/dlp_parse:libdlpparse_inner",
44    "${dlp_root_dir}/interfaces/inner_api/dlp_permission:libdlp_permission_sdk",
45  ]
46  cflags_cc = [ "-DHILOG_ENABLE" ]
47
48  configs = [ "${dlp_root_dir}/config:coverage_flags" ]
49
50  external_deps = [
51    "ability_base:base",
52    "ability_base:want",
53    "ability_base:zuri",
54    "ability_runtime:ability_context_native",
55    "ability_runtime:ability_manager",
56    "ability_runtime:abilitykit_native",
57    "ability_runtime:app_context",
58    "ability_runtime:napi_base_context",
59    "ability_runtime:napi_common",
60    "access_token:libaccesstoken_sdk",
61    "access_token:libtokenid_sdk",
62    "access_token:libtokensetproc_shared",
63    "ace_engine:ace_uicontent",
64    "bundle_framework:appexecfwk_base",
65    "bundle_framework:appexecfwk_core",
66    "c_utils:utils",
67    "file_api:filemgmt_libn",
68    "hilog:libhilog",
69    "ipc:ipc_core",
70    "napi:ace_napi",
71    "samgr:samgr_proxy",
72  ]
73
74  relative_install_dir = "module"
75  subsystem_name = "security"
76  part_name = "dlp_permission_service"
77}
78