1eace7efcSopenharmony_ci#
2eace7efcSopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
3eace7efcSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
4eace7efcSopenharmony_ci# you may not use this file except in compliance with the License.
5eace7efcSopenharmony_ci# You may obtain a copy of the License at
6eace7efcSopenharmony_ci#
7eace7efcSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
8eace7efcSopenharmony_ci#
9eace7efcSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
10eace7efcSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
11eace7efcSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12eace7efcSopenharmony_ci# See the License for the specific language governing permissions and
13eace7efcSopenharmony_ci# limitations under the License.
14eace7efcSopenharmony_ci#
15eace7efcSopenharmony_ci
16eace7efcSopenharmony_ciimport("//build/ohos.gni")
17eace7efcSopenharmony_ciimport("//foundation/ability/ability_runtime/ability_runtime.gni")
18eace7efcSopenharmony_ci
19eace7efcSopenharmony_cigroup("ams_common_target") {
20eace7efcSopenharmony_ci  deps = [
21eace7efcSopenharmony_ci    ":event_report",
22eace7efcSopenharmony_ci    ":perm_verification",
23eace7efcSopenharmony_ci    ":task_handler_wrap",
24eace7efcSopenharmony_ci  ]
25eace7efcSopenharmony_ci}
26eace7efcSopenharmony_ci
27eace7efcSopenharmony_ciconfig("common_config") {
28eace7efcSopenharmony_ci  visibility = [ ":*" ]
29eace7efcSopenharmony_ci  visibility += [
30eace7efcSopenharmony_ci    "${ability_runtime_innerkits_path}/*",
31eace7efcSopenharmony_ci    "${ability_runtime_napi_path}/*",
32eace7efcSopenharmony_ci    "${ability_runtime_native_path}/ability/native/*",
33eace7efcSopenharmony_ci    "${ability_runtime_native_path}/child_process/*",
34eace7efcSopenharmony_ci    "${ability_runtime_path}/frameworks/c/ability_runtime/*",
35eace7efcSopenharmony_ci    "${ability_runtime_path}/frameworks/simulator/ability_simulator/*",
36eace7efcSopenharmony_ci    "${ability_runtime_path}/tools/aa/*",
37eace7efcSopenharmony_ci    "${ability_runtime_services_path}/common/*",
38eace7efcSopenharmony_ci    "${ability_runtime_services_path}/quickfixmgr/*",
39eace7efcSopenharmony_ci    "${ability_runtime_services_path}/uripermmgr/*",
40eace7efcSopenharmony_ci    "${ability_runtime_test_path}/*",
41eace7efcSopenharmony_ci    "${hiebpf_path}/*",
42eace7efcSopenharmony_ci    "${power_manager_path}/utils/*",
43eace7efcSopenharmony_ci    "${request_path}/common/*",
44eace7efcSopenharmony_ci  ]
45eace7efcSopenharmony_ci  include_dirs = [
46eace7efcSopenharmony_ci    "include",
47eace7efcSopenharmony_ci    "${ability_runtime_innerkits_path}/ability_manager/include",
48eace7efcSopenharmony_ci  ]
49eace7efcSopenharmony_ci  cflags = []
50eace7efcSopenharmony_ci  if (target_cpu == "arm") {
51eace7efcSopenharmony_ci    cflags += [ "-DBINDER_IPC_32BIT" ]
52eace7efcSopenharmony_ci  }
53eace7efcSopenharmony_ci}
54eace7efcSopenharmony_ci
55eace7efcSopenharmony_ci#build so
56eace7efcSopenharmony_ciohos_shared_library("perm_verification") {
57eace7efcSopenharmony_ci  branch_protector_ret = "pac_ret"
58eace7efcSopenharmony_ci
59eace7efcSopenharmony_ci  include_dirs = [ "${ability_runtime_utils_path}/server/constant" ]
60eace7efcSopenharmony_ci
61eace7efcSopenharmony_ci  public_configs = [ ":common_config" ]
62eace7efcSopenharmony_ci
63eace7efcSopenharmony_ci  sources = [ "src/permission_verification.cpp" ]
64eace7efcSopenharmony_ci
65eace7efcSopenharmony_ci  external_deps = [
66eace7efcSopenharmony_ci    "ability_base:want",
67eace7efcSopenharmony_ci    "access_token:libaccesstoken_sdk",
68eace7efcSopenharmony_ci    "access_token:libtokenid_sdk",
69eace7efcSopenharmony_ci    "c_utils:utils",
70eace7efcSopenharmony_ci    "hilog:libhilog",
71eace7efcSopenharmony_ci    "hitrace:hitrace_meter",
72eace7efcSopenharmony_ci    "init:libbegetutil",
73eace7efcSopenharmony_ci    "ipc:ipc_core",
74eace7efcSopenharmony_ci  ]
75eace7efcSopenharmony_ci
76eace7efcSopenharmony_ci  cflags_cc = []
77eace7efcSopenharmony_ci  if (os_dlp_part_enabled) {
78eace7efcSopenharmony_ci    cflags_cc += [ "-DWITH_DLP" ]
79eace7efcSopenharmony_ci  }
80eace7efcSopenharmony_ci
81eace7efcSopenharmony_ci  subsystem_name = "ability"
82eace7efcSopenharmony_ci  innerapi_tags = [ "platformsdk_indirect" ]
83eace7efcSopenharmony_ci  part_name = "ability_runtime"
84eace7efcSopenharmony_ci}
85eace7efcSopenharmony_ci
86eace7efcSopenharmony_ciohos_shared_library("event_report") {
87eace7efcSopenharmony_ci  branch_protector_ret = "pac_ret"
88eace7efcSopenharmony_ci
89eace7efcSopenharmony_ci  public_configs = [ ":common_config" ]
90eace7efcSopenharmony_ci
91eace7efcSopenharmony_ci  sources = [ "src/event_report.cpp" ]
92eace7efcSopenharmony_ci
93eace7efcSopenharmony_ci  external_deps = [
94eace7efcSopenharmony_ci    "hilog:libhilog",
95eace7efcSopenharmony_ci    "hisysevent:libhisysevent",
96eace7efcSopenharmony_ci    "hitrace:hitrace_meter",
97eace7efcSopenharmony_ci  ]
98eace7efcSopenharmony_ci
99eace7efcSopenharmony_ci  innerapi_tags = [ "platformsdk_indirect" ]
100eace7efcSopenharmony_ci  subsystem_name = "ability"
101eace7efcSopenharmony_ci  part_name = "ability_runtime"
102eace7efcSopenharmony_ci}
103eace7efcSopenharmony_ci
104eace7efcSopenharmony_ciohos_shared_library("task_handler_wrap") {
105eace7efcSopenharmony_ci  branch_protector_ret = "pac_ret"
106eace7efcSopenharmony_ci
107eace7efcSopenharmony_ci  public_configs = [ ":common_config" ]
108eace7efcSopenharmony_ci  include_dirs = [ "include" ]
109eace7efcSopenharmony_ci
110eace7efcSopenharmony_ci  sources = [
111eace7efcSopenharmony_ci    "src/event_handler_wrap.cpp",
112eace7efcSopenharmony_ci    "src/ffrt_task_handler_wrap.cpp",
113eace7efcSopenharmony_ci    "src/queue_task_handler_wrap.cpp",
114eace7efcSopenharmony_ci    "src/task_handler_wrap.cpp",
115eace7efcSopenharmony_ci  ]
116eace7efcSopenharmony_ci
117eace7efcSopenharmony_ci  external_deps = [
118eace7efcSopenharmony_ci    "ffrt:libffrt",
119eace7efcSopenharmony_ci    "hilog:libhilog",
120eace7efcSopenharmony_ci  ]
121eace7efcSopenharmony_ci
122eace7efcSopenharmony_ci  subsystem_name = "ability"
123eace7efcSopenharmony_ci  part_name = "ability_runtime"
124eace7efcSopenharmony_ci}
125eace7efcSopenharmony_ci
126eace7efcSopenharmony_ciohos_shared_library("app_util") {
127eace7efcSopenharmony_ci  branch_protector_ret = "pac_ret"
128eace7efcSopenharmony_ci
129eace7efcSopenharmony_ci  public_configs = [ ":common_config" ]
130eace7efcSopenharmony_ci  include_dirs = [ "include" ]
131eace7efcSopenharmony_ci
132eace7efcSopenharmony_ci  sources = [
133eace7efcSopenharmony_ci    "src/ability_manager_radar.cpp",
134eace7efcSopenharmony_ci    "src/app_utils.cpp",
135eace7efcSopenharmony_ci    "src/json_utils.cpp",
136eace7efcSopenharmony_ci  ]
137eace7efcSopenharmony_ci
138eace7efcSopenharmony_ci  external_deps = [
139eace7efcSopenharmony_ci    "config_policy:configpolicy_util",
140eace7efcSopenharmony_ci    "hilog:libhilog",
141eace7efcSopenharmony_ci    "hisysevent:libhisysevent",
142eace7efcSopenharmony_ci    "init:libbegetutil",
143eace7efcSopenharmony_ci    "json:nlohmann_json_static",
144eace7efcSopenharmony_ci  ]
145eace7efcSopenharmony_ci
146eace7efcSopenharmony_ci  if (ability_runtime_graphics) {
147eace7efcSopenharmony_ci    defines = [ "SUPPORT_GRAPHICS" ]
148eace7efcSopenharmony_ci    external_deps += [ "window_manager:libwsutils" ]
149eace7efcSopenharmony_ci  }
150eace7efcSopenharmony_ci
151eace7efcSopenharmony_ci  subsystem_name = "ability"
152eace7efcSopenharmony_ci  part_name = "ability_runtime"
153eace7efcSopenharmony_ci}
154eace7efcSopenharmony_ci
155eace7efcSopenharmony_ciohos_shared_library("res_sched_util") {
156eace7efcSopenharmony_ci  sanitize = {
157eace7efcSopenharmony_ci    integer_overflow = true
158eace7efcSopenharmony_ci    ubsan = true
159eace7efcSopenharmony_ci    boundary_sanitize = true
160eace7efcSopenharmony_ci    cfi = true
161eace7efcSopenharmony_ci    cfi_cross_dso = true
162eace7efcSopenharmony_ci    debug = false
163eace7efcSopenharmony_ci  }
164eace7efcSopenharmony_ci  branch_protector_ret = "pac_ret"
165eace7efcSopenharmony_ci
166eace7efcSopenharmony_ci  public_configs = [ ":common_config" ]
167eace7efcSopenharmony_ci  include_dirs = [ "include" ]
168eace7efcSopenharmony_ci
169eace7efcSopenharmony_ci  sources = [ "src/res_sched_util.cpp" ]
170eace7efcSopenharmony_ci
171eace7efcSopenharmony_ci  external_deps = [
172eace7efcSopenharmony_ci    "bundle_framework:appexecfwk_base",
173eace7efcSopenharmony_ci    "hilog:libhilog",
174eace7efcSopenharmony_ci  ]
175eace7efcSopenharmony_ci
176eace7efcSopenharmony_ci  if (resource_schedule_service_enable) {
177eace7efcSopenharmony_ci    defines = [ "RESOURCE_SCHEDULE_SERVICE_ENABLE" ]
178eace7efcSopenharmony_ci    external_deps += [ "resource_schedule_service:ressched_client" ]
179eace7efcSopenharmony_ci  }
180eace7efcSopenharmony_ci
181eace7efcSopenharmony_ci  subsystem_name = "ability"
182eace7efcSopenharmony_ci  part_name = "ability_runtime"
183eace7efcSopenharmony_ci}
184