1# Copyright (c) 2023-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("//build/ohos.gni")
15import("../../../dlp_permission_service.gni")
16
17ROOT_DIR = "${dlp_root_dir}/interfaces/inner_api/dlp_parse"
18
19config("dlpparse_public_config") {
20  visibility = [ ":*" ]
21  include_dirs = [
22    "${dlp_root_dir}/frameworks/common/include",
23    "${dlp_root_dir}/interfaces/inner_api/dlp_permission/include/",
24    "$ROOT_DIR/include",
25  ]
26}
27
28ohos_shared_library("libdlpparse") {
29  branch_protector_ret = "pac_ret"
30
31  sanitize = {
32    cfi = true
33    cfi_cross_dso = true
34    debug = false
35  }
36
37  sources = [
38    "$ROOT_DIR/src/dlp_file_kits.cpp",
39    "$ROOT_DIR/src/dlp_utils.cpp",
40    "$ROOT_DIR/src/dlp_zip.cpp",
41    "${dlp_root_dir}/services/dlp_permission/sa/adapt/file_operator.cpp",
42  ]
43
44  include_dirs = [
45    "$ROOT_DIR/include",
46    "${dlp_root_dir}/frameworks/common/include",
47    "${dlp_root_dir}/interfaces/inner_api/dlp_permission/include/",
48    "${dlp_root_dir}/services/dlp_permission/sa/adapt",
49  ]
50
51  external_deps = [
52    "ability_base:want",
53    "ability_base:zuri",
54    "app_file_service:fileuri_native",
55    "bundle_framework:appexecfwk_base",
56    "bundle_framework:appexecfwk_core",
57    "c_utils:utils",
58    "hilog:libhilog",
59    "hitrace:hitrace_meter",
60    "ipc:ipc_core",
61    "openssl:libcrypto_shared",
62    "os_account:os_account_innerkits",
63    "samgr:samgr_proxy",
64    "zlib:shared_libz",
65  ]
66
67  cflags_cc = [ "-DHILOG_ENABLE" ]
68  public_configs = [ ":dlpparse_public_config" ]
69  configs = [ "${dlp_root_dir}/config:coverage_flags" ]
70
71  part_name = "dlp_permission_service"
72  subsystem_name = "security"
73}
74
75ohos_shared_library("libdlpparse_inner") {
76  branch_protector_ret = "pac_ret"
77
78  sanitize = {
79    cfi = true
80    cfi_cross_dso = true
81    debug = false
82  }
83
84  sources = [
85    "$ROOT_DIR/src/dlp_crypt.cpp",
86    "$ROOT_DIR/src/dlp_file.cpp",
87    "$ROOT_DIR/src/dlp_file_kits.cpp",
88    "$ROOT_DIR/src/dlp_file_manager.cpp",
89    "$ROOT_DIR/src/dlp_utils.cpp",
90    "$ROOT_DIR/src/dlp_zip.cpp",
91    "${dlp_root_dir}/services/dlp_permission/sa/adapt/file_operator.cpp",
92  ]
93
94  include_dirs = [
95    "$ROOT_DIR/include",
96    "${dlp_root_dir}/frameworks/common/include",
97    "${dlp_root_dir}/interfaces/inner_api/dlp_permission/include/",
98    "${dlp_root_dir}/services/dlp_permission/sa/adapt",
99  ]
100
101  deps = [
102    "${dlp_root_dir}/interfaces/inner_api/dlp_permission:libdlp_permission_common_interface",
103    "${dlp_root_dir}/interfaces/inner_api/dlp_permission:libdlp_permission_sdk",
104    "${dlp_root_dir}/services/dlp_permission/sa:dlp_hex_string_static",
105  ]
106
107  external_deps = [
108    "ability_base:want",
109    "ability_base:zuri",
110    "app_file_service:fileuri_native",
111    "bundle_framework:appexecfwk_base",
112    "bundle_framework:appexecfwk_core",
113    "c_utils:utils",
114    "hilog:libhilog",
115    "hitrace:hitrace_meter",
116    "ipc:ipc_core",
117    "openssl:libcrypto_shared",
118    "os_account:libaccountkits",
119    "samgr:samgr_proxy",
120    "zlib:shared_libz",
121  ]
122
123  cflags_cc = [ "-DHILOG_ENABLE" ]
124  public_configs = [ ":dlpparse_public_config" ]
125  configs = [ "${dlp_root_dir}/config:coverage_flags" ]
126
127  innerapi_tags = [ "platformsdk" ]
128  part_name = "dlp_permission_service"
129  subsystem_name = "security"
130
131  if (dlp_parse_inner) {
132    cflags_cc += [ "-DDLP_PARSE_INNER" ]
133    external_deps += [ "os_account:os_account_innerkits" ]
134  }
135
136  if (dlp_credential_enable == true) {
137    cflags_cc += [ "-DSUPPORT_DLP_CREDENTIAL" ]
138  }
139}
140