1548bf93fSopenharmony_ci# Copyright (C) 2023 Huawei Device Co., Ltd.
2548bf93fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3548bf93fSopenharmony_ci# you may not use this file except in compliance with the License.
4548bf93fSopenharmony_ci# You may obtain a copy of the License at
5548bf93fSopenharmony_ci#
6548bf93fSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7548bf93fSopenharmony_ci#
8548bf93fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9548bf93fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10548bf93fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11548bf93fSopenharmony_ci# See the License for the specific language governing permissions and
12548bf93fSopenharmony_ci# limitations under the License.
13548bf93fSopenharmony_ci
14548bf93fSopenharmony_ciimport("//build/ohos.gni")
15548bf93fSopenharmony_ciimport("//foundation/bundlemanager/app_domain_verify/app_domain_verify.gni")
16548bf93fSopenharmony_ci
17548bf93fSopenharmony_ciconfig("app_domain_verify_service_config") {
18548bf93fSopenharmony_ci  visibility = [ ":*" ]
19548bf93fSopenharmony_ci  include_dirs = [
20548bf93fSopenharmony_ci    "${app_domain_verify_client_path}/include",
21548bf93fSopenharmony_ci    "include/manager/constant",
22548bf93fSopenharmony_ci    "include/manager/core",
23548bf93fSopenharmony_ci    "include/manager/rdb",
24548bf93fSopenharmony_ci    "include/manager/zidl",
25548bf93fSopenharmony_ci    "include/manager/permission",
26548bf93fSopenharmony_ci    "include/agent/core",
27548bf93fSopenharmony_ci    "${app_domain_verify_common_path}/include",
28548bf93fSopenharmony_ci    "${app_domain_verify_common_path}/include/zidl",
29548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include",
30548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/utils",
31548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/config",
32548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/dfx",
33548bf93fSopenharmony_ci  ]
34548bf93fSopenharmony_ci  configs = [ "//build/config/compiler:exceptions" ]
35548bf93fSopenharmony_ci  ldflags = [ "-Wl,--exclude-libs=ALL" ]
36548bf93fSopenharmony_ci  cflags = [
37548bf93fSopenharmony_ci    "-fvisibility=hidden",
38548bf93fSopenharmony_ci    "-fdata-sections",
39548bf93fSopenharmony_ci    "-ffunction-sections",
40548bf93fSopenharmony_ci    "-fstack-protector-strong",
41548bf93fSopenharmony_ci    "-D_FORTIFY_SOURCE=2",
42548bf93fSopenharmony_ci    "-Os",
43548bf93fSopenharmony_ci  ]
44548bf93fSopenharmony_ci
45548bf93fSopenharmony_ci  cflags_cc = [
46548bf93fSopenharmony_ci    "-fvisibility-inlines-hidden",
47548bf93fSopenharmony_ci    "-Os",
48548bf93fSopenharmony_ci  ]
49548bf93fSopenharmony_ci}
50548bf93fSopenharmony_ci
51548bf93fSopenharmony_ciohos_shared_library("app_domain_verify_mgr_service") {
52548bf93fSopenharmony_ci  branch_protector_ret = "pac_ret"
53548bf93fSopenharmony_ci  sources = [
54548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/src/config/white_list_config_mgr.cpp",
55548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/src/utils/domain_url_util.cpp",
56548bf93fSopenharmony_ci    "src/manager/core/app_domain_verify_data_mgr.cpp",
57548bf93fSopenharmony_ci    "src/manager/core/app_domain_verify_mgr_service.cpp",
58548bf93fSopenharmony_ci    "src/manager/permission/permission_manager.cpp",
59548bf93fSopenharmony_ci    "src/manager/rdb/app_domain_verify_rdb_data_manager.cpp",
60548bf93fSopenharmony_ci    "src/manager/rdb/app_domain_verify_rdb_open_callback.cpp",
61548bf93fSopenharmony_ci    "src/manager/rdb/rdb_migrate_mgr.cpp",
62548bf93fSopenharmony_ci    "src/manager/zidl/app_domain_verify_mgr_service_proxy.cpp",
63548bf93fSopenharmony_ci    "src/manager/zidl/app_domain_verify_mgr_service_stub.cpp",
64548bf93fSopenharmony_ci  ]
65548bf93fSopenharmony_ci  public_configs = [ ":app_domain_verify_service_config" ]
66548bf93fSopenharmony_ci  deps = [
67548bf93fSopenharmony_ci    "${app_domain_verify_client_path}:app_domain_verify_agent_client",
68548bf93fSopenharmony_ci    "${app_domain_verify_common_path}:app_domain_verify_common",
69548bf93fSopenharmony_ci  ]
70548bf93fSopenharmony_ci  defines = [ "API_EXPORT=__attribute__((visibility (\"default\")))" ]
71548bf93fSopenharmony_ci  if (build_variant == "user") {
72548bf93fSopenharmony_ci    defines += [ "IS_RELEASE_VERSION" ]
73548bf93fSopenharmony_ci  }
74548bf93fSopenharmony_ci  external_deps = [
75548bf93fSopenharmony_ci    "ability_base:base",
76548bf93fSopenharmony_ci    "ability_base:want",
77548bf93fSopenharmony_ci    "ability_base:zuri",
78548bf93fSopenharmony_ci    "ability_runtime:ability_manager",
79548bf93fSopenharmony_ci    "access_token:libaccesstoken_sdk",
80548bf93fSopenharmony_ci    "access_token:libtokenid_sdk",
81548bf93fSopenharmony_ci    "bundle_framework:appexecfwk_base",
82548bf93fSopenharmony_ci    "bundle_framework:appexecfwk_core",
83548bf93fSopenharmony_ci    "c_utils:utils",
84548bf93fSopenharmony_ci    "eventhandler:libeventhandler",
85548bf93fSopenharmony_ci    "ffrt:libffrt",
86548bf93fSopenharmony_ci    "hilog:libhilog",
87548bf93fSopenharmony_ci    "hisysevent:libhisysevent",
88548bf93fSopenharmony_ci    "ipc:ipc_core",
89548bf93fSopenharmony_ci    "json:nlohmann_json_static",
90548bf93fSopenharmony_ci    "preferences:native_preferences",
91548bf93fSopenharmony_ci    "relational_store:native_rdb",
92548bf93fSopenharmony_ci    "safwk:system_ability_fwk",
93548bf93fSopenharmony_ci    "samgr:samgr_proxy",
94548bf93fSopenharmony_ci  ]
95548bf93fSopenharmony_ci
96548bf93fSopenharmony_ci  sanitize = {
97548bf93fSopenharmony_ci    cfi = true
98548bf93fSopenharmony_ci    cfi_cross_dso = true
99548bf93fSopenharmony_ci    debug = false
100548bf93fSopenharmony_ci  }
101548bf93fSopenharmony_ci  subsystem_name = "bundlemanager"
102548bf93fSopenharmony_ci  part_name = "app_domain_verify"
103548bf93fSopenharmony_ci}
104548bf93fSopenharmony_ci
105548bf93fSopenharmony_ciconfig("app_domain_verify_agent_service_config") {
106548bf93fSopenharmony_ci  visibility = [ ":*" ]
107548bf93fSopenharmony_ci  include_dirs = [
108548bf93fSopenharmony_ci    "${app_domain_verify_client_path}/include",
109548bf93fSopenharmony_ci    "include/agent/core",
110548bf93fSopenharmony_ci    "include/agent/zidl",
111548bf93fSopenharmony_ci    "include/manager/core",
112548bf93fSopenharmony_ci    "include/manager/zidl",
113548bf93fSopenharmony_ci    "include/manager/rdb",
114548bf93fSopenharmony_ci    "${app_domain_verify_common_path}/include",
115548bf93fSopenharmony_ci    "${app_domain_verify_common_path}/include/zidl",
116548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include",
117548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/utils",
118548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/bms",
119548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/config",
120548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_extension_path}/include",
121548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_verifier_path}/include",
122548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}/include/dfx",
123548bf93fSopenharmony_ci  ]
124548bf93fSopenharmony_ci  configs = [ "//build/config/compiler:exceptions" ]
125548bf93fSopenharmony_ci  ldflags = [ "-Wl,--exclude-libs=ALL" ]
126548bf93fSopenharmony_ci  cflags = [
127548bf93fSopenharmony_ci    "-fvisibility=hidden",
128548bf93fSopenharmony_ci    "-fdata-sections",
129548bf93fSopenharmony_ci    "-ffunction-sections",
130548bf93fSopenharmony_ci    "-fstack-protector-strong",
131548bf93fSopenharmony_ci    "-D_FORTIFY_SOURCE=2",
132548bf93fSopenharmony_ci    "-Os",
133548bf93fSopenharmony_ci  ]
134548bf93fSopenharmony_ci
135548bf93fSopenharmony_ci  cflags_cc = [
136548bf93fSopenharmony_ci    "-fvisibility-inlines-hidden",
137548bf93fSopenharmony_ci    "-Os",
138548bf93fSopenharmony_ci  ]
139548bf93fSopenharmony_ci}
140548bf93fSopenharmony_ci
141548bf93fSopenharmony_ciohos_shared_library("app_domain_verify_agent_service") {
142548bf93fSopenharmony_ci  branch_protector_ret = "pac_ret"
143548bf93fSopenharmony_ci  sources = [
144548bf93fSopenharmony_ci    "src/agent/core/app_domain_verify_agent_service.cpp",
145548bf93fSopenharmony_ci    "src/agent/zidl/app_domain_verify_agent_service_proxy.cpp",
146548bf93fSopenharmony_ci    "src/agent/zidl/app_domain_verify_agent_service_stub.cpp",
147548bf93fSopenharmony_ci  ]
148548bf93fSopenharmony_ci  public_configs = [ ":app_domain_verify_agent_service_config" ]
149548bf93fSopenharmony_ci  defines = [ "API_EXPORT=__attribute__((visibility (\"default\")))" ]
150548bf93fSopenharmony_ci  if (build_variant == "user") {
151548bf93fSopenharmony_ci    defines += [ "IS_RELEASE_VERSION" ]
152548bf93fSopenharmony_ci  }
153548bf93fSopenharmony_ci  deps = [
154548bf93fSopenharmony_ci    "${app_domain_verify_client_path}:app_domain_verify_mgr_client",
155548bf93fSopenharmony_ci    "${app_domain_verify_common_path}:app_domain_verify_common",
156548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_common_path}:app_domain_verify_frameworks_common",
157548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_extension_path}:app_domain_verify_extension_framework",
158548bf93fSopenharmony_ci    "${app_domain_verify_frameworks_verifier_path}:app_domain_verify_agent_verifier",
159548bf93fSopenharmony_ci  ]
160548bf93fSopenharmony_ci
161548bf93fSopenharmony_ci  external_deps = [
162548bf93fSopenharmony_ci    "ability_base:base",
163548bf93fSopenharmony_ci    "ability_base:want",
164548bf93fSopenharmony_ci    "ability_base:zuri",
165548bf93fSopenharmony_ci    "ability_runtime:ability_manager",
166548bf93fSopenharmony_ci    "bundle_framework:appexecfwk_core",
167548bf93fSopenharmony_ci    "c_utils:utils",
168548bf93fSopenharmony_ci    "curl:curl_shared",
169548bf93fSopenharmony_ci    "eventhandler:libeventhandler",
170548bf93fSopenharmony_ci    "ffrt:libffrt",
171548bf93fSopenharmony_ci    "hicollie:libhicollie",
172548bf93fSopenharmony_ci    "hilog:libhilog",
173548bf93fSopenharmony_ci    "hisysevent:libhisysevent",
174548bf93fSopenharmony_ci    "ipc:ipc_core",
175548bf93fSopenharmony_ci    "json:nlohmann_json_static",
176548bf93fSopenharmony_ci    "netmanager_base:net_conn_manager_if",
177548bf93fSopenharmony_ci    "netstack:http_client",
178548bf93fSopenharmony_ci    "os_account:os_account_innerkits",
179548bf93fSopenharmony_ci    "preferences:native_preferences",
180548bf93fSopenharmony_ci    "safwk:system_ability_fwk",
181548bf93fSopenharmony_ci    "samgr:samgr_proxy",
182548bf93fSopenharmony_ci  ]
183548bf93fSopenharmony_ci
184548bf93fSopenharmony_ci  sanitize = {
185548bf93fSopenharmony_ci    cfi = true
186548bf93fSopenharmony_ci    cfi_cross_dso = true
187548bf93fSopenharmony_ci    debug = false
188548bf93fSopenharmony_ci  }
189548bf93fSopenharmony_ci  subsystem_name = "bundlemanager"
190548bf93fSopenharmony_ci  part_name = "app_domain_verify"
191548bf93fSopenharmony_ci}
192