• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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("//foundation/ability/ability_runtime/ability_runtime.gni")
16
17config("ability_manager_public_config") {
18  visibility = [ ":*" ]
19  visibility += [
20    "${ability_runtime_test_path}/fuzztest/*",
21    "${ability_runtime_test_path}/moduletest/*",
22    "${ability_runtime_test_path}/unittest/*",
23    "${form_fwk_path}/test/fuzztest/*",
24    "${os_account_path}/tools/test/moduletest/acm/*",
25  ]
26  include_dirs = [
27    "include/",
28    "include/insight_intent",
29    "include/status_bar_delegate",
30    "include/ui_extension",
31    "${ability_runtime_path}/interfaces/kits/native/ability/native",
32    "${ability_runtime_path}/interfaces/kits/native/ability/ability_runtime",
33    "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/context",
34    "${ability_runtime_path}/interfaces/kits/native/ability/native/continuation/kits",
35    "${ability_runtime_path}/interfaces/kits/native/ability/native/continuation/distributed",
36    "${ability_runtime_innerkits_path}/ability_manager/include",
37    "${ability_runtime_innerkits_path}/app_manager/include/appmgr",
38    "${ability_runtime_path}/interfaces/kits/native/appkit/app",
39    "${ability_runtime_path}/interfaces/kits/native/appkit/dfr",
40    "${ability_runtime_path}/interfaces/kits/native/appkit",
41    "${ability_runtime_innerkits_path}/dataobs_manager/include",
42  ]
43
44  defines = []
45
46  if (ability_command_for_test) {
47    defines += [ "ABILITY_COMMAND_FOR_TEST" ]
48  }
49
50  if (ability_runtime_graphics) {
51    include_dirs += [ "${multimedia_path}/interfaces/innerkits/include" ]
52    defines += [
53      "SUPPORT_GRAPHICS",
54      "SUPPORT_SCREEN",
55    ]
56  }
57
58  cflags = []
59  if (target_cpu == "arm") {
60    cflags += [ "-DBINDER_IPC_32BIT" ]
61  }
62}
63
64ohos_shared_library("ability_manager") {
65  branch_protector_ret = "pac_ret"
66
67  sources = [
68    "${ability_runtime_native_path}/ability/native/data_ability_operation.cpp",
69    "${ability_runtime_native_path}/ability/native/data_ability_operation_builder.cpp",
70    "${ability_runtime_native_path}/ability/native/data_ability_result.cpp",
71    "${ability_runtime_native_path}/ability/native/task_handler.cpp",
72    "${ability_runtime_native_path}/ability/native/task_handler_client.cpp",
73    "${ability_runtime_services_path}/abilitymgr/src/ability_auto_startup_client.cpp",
74    "${ability_runtime_services_path}/abilitymgr/src/ability_manager_client.cpp",
75    "${ability_runtime_services_path}/abilitymgr/src/ability_manager_proxy.cpp",
76    "${ability_runtime_services_path}/abilitymgr/src/ability_running_info.cpp",
77    "${ability_runtime_services_path}/abilitymgr/src/ability_scheduler_stub.cpp",
78    "${ability_runtime_services_path}/abilitymgr/src/acquire_share_data_callback_proxy.cpp",
79    "${ability_runtime_services_path}/abilitymgr/src/acquire_share_data_callback_stub.cpp",
80    "${ability_runtime_services_path}/abilitymgr/src/auto_startup_info.cpp",
81    "${ability_runtime_services_path}/abilitymgr/src/caller_info.cpp",
82    "${ability_runtime_services_path}/abilitymgr/src/dialog_session/dialog_session_info.cpp",
83    "${ability_runtime_services_path}/abilitymgr/src/exit_reason.cpp",
84    "${ability_runtime_services_path}/abilitymgr/src/extension_running_info.cpp",
85    "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_execute_callback_proxy.cpp",
86    "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_execute_callback_stub.cpp",
87    "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_execute_param.cpp",
88    "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_execute_result.cpp",
89    "${ability_runtime_services_path}/abilitymgr/src/intent_exemption_info.cpp",
90    "${ability_runtime_services_path}/abilitymgr/src/keep_alive/keep_alive_info.cpp",
91    "${ability_runtime_services_path}/abilitymgr/src/last_exit_detail_info.cpp",
92    "${ability_runtime_services_path}/abilitymgr/src/launch_param.cpp",
93    "${ability_runtime_services_path}/abilitymgr/src/lifecycle_state_info.cpp",
94    "${ability_runtime_services_path}/abilitymgr/src/mission/mission_listener_stub.cpp",
95    "${ability_runtime_services_path}/abilitymgr/src/open_link/open_link_options.cpp",
96    "${ability_runtime_services_path}/abilitymgr/src/prepare_terminate_callback_proxy.cpp",
97    "${ability_runtime_services_path}/abilitymgr/src/prepare_terminate_callback_stub.cpp",
98    "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_stub.cpp",
99    "${ability_runtime_services_path}/abilitymgr/src/remote_on_listener_proxy.cpp",
100    "${ability_runtime_services_path}/abilitymgr/src/remote_on_listener_stub.cpp",
101    "${ability_runtime_services_path}/abilitymgr/src/system_ability_token_callback_stub.cpp",
102    "${ability_runtime_services_path}/abilitymgr/src/ui_extension/ui_extension_ability_connect_info.cpp",
103    "${ability_runtime_services_path}/abilitymgr/src/ui_extension/ui_extension_host_info.cpp",
104    "${ability_runtime_services_path}/abilitymgr/src/ui_extension/ui_extension_session_info.cpp",
105    "${ability_runtime_services_path}/abilitymgr/src/user_callback_proxy.cpp",
106    "${ability_runtime_services_path}/abilitymgr/src/user_callback_stub.cpp",
107    "${ability_runtime_services_path}/abilitymgr/src/window_config.cpp",
108    "src/hidden_start_observer_proxy.cpp",
109    "src/hidden_start_observer_stub.cpp",
110    "src/status_bar_delegate/status_bar_delegate_proxy.cpp",
111    "src/status_bar_delegate/status_bar_delegate_stub.cpp",
112    "src/window_manager_service_handler_proxy.cpp",
113    "src/window_manager_service_handler_stub.cpp",
114  ]
115
116  if (ability_runtime_graphics) {
117    sources += [
118      "src/ability_first_frame_state_data.cpp",
119      "src/ability_first_frame_state_observer_proxy.cpp",
120      "src/ability_first_frame_state_observer_stub.cpp",
121    ]
122  }
123
124  public_configs = [
125    ":ability_manager_public_config",
126    "${ability_runtime_services_path}/abilitymgr:abilityms_config",
127  ]
128
129  public_deps = [ ":ability_connect_callback_stub" ]
130
131  deps = [
132    ":ability_start_options",
133    ":ability_start_setting",
134    ":mission_info",
135    ":process_options",
136    ":start_window_option",
137    "${ability_runtime_innerkits_path}/app_manager:app_manager",
138    "${ability_runtime_path}/utils/global/freeze:freeze_util",
139    "${ability_runtime_services_path}/abilitymgr:wantagent_manager",
140  ]
141
142  external_deps = [
143    "bundle_framework:libappexecfwk_common",
144    "c_utils:utils",
145    "common_event_service:cesfwk_innerkits",
146    "eventhandler:libeventhandler",
147    "hilog:libhilog",
148    "hisysevent:libhisysevent",
149    "hitrace:hitrace_meter",
150    "ipc:ipc_core",
151    "ipc:ipc_napi",
152    "jsoncpp:jsoncpp",
153    "relational_store:native_dataability",
154    "samgr:samgr_proxy",
155  ]
156
157  if (host_cpu != "arm64") {
158    external_deps += [ "relational_store:native_rdb" ]
159  }
160
161  public_external_deps = [
162    "ability_base:base",
163    "ability_base:configuration",
164    "ability_base:session_info",
165    "ability_base:want",
166    "ability_base:zuri",
167    "background_task_mgr:bgtaskmgr_innerkits",
168    "bundle_framework:appexecfwk_base",
169    "bundle_framework:appexecfwk_core",
170    "init:libbegetutil",
171    "jsoncpp:jsoncpp",
172    "relational_store:native_dataability",
173    "relational_store:native_rdb",
174  ]
175
176  if (ability_runtime_graphics) {
177    deps += []
178    external_deps += [
179      "ability_base:session_info",
180      "image_framework:image_native",
181      "window_manager:libwsutils",
182      "window_manager:session_manager_lite",
183    ]
184    public_external_deps += [ "graphic_2d:color_manager" ]
185  }
186
187  cflags_cc = []
188  if (os_dlp_part_enabled) {
189    cflags_cc += [ "-DWITH_DLP" ]
190    external_deps += [ "dlp_permission_service:libdlpparse" ]
191  }
192
193  innerapi_tags = [
194    "platformsdk",
195    "sasdk",
196  ]
197  subsystem_name = "ability"
198  part_name = "ability_runtime"
199}
200
201ohos_shared_library("ability_start_options") {
202  sanitize = {
203    integer_overflow = true
204    ubsan = true
205    boundary_sanitize = true
206    cfi = true
207    cfi_cross_dso = true
208    cfi_vcall_icall_only = true
209    debug = false
210  }
211  branch_protector_ret = "pac_ret"
212
213  include_dirs = [
214    "include/",
215    "${ability_runtime_services_path}/common/include",
216  ]
217
218  sources =
219      [ "${ability_runtime_services_path}/abilitymgr/src/start_options.cpp" ]
220
221  deps = [
222    ":process_options",
223    ":start_window_option",
224  ]
225
226  external_deps = [
227    "bundle_framework:appexecfwk_base",
228    "c_utils:utils",
229    "hilog:libhilog",
230    "hisysevent:libhisysevent",
231    "ipc:ipc_core",
232  ]
233
234  cflags_cc = []
235  innerapi_tags = [
236    "platformsdk",
237    "sasdk",
238  ]
239  subsystem_name = "ability"
240  part_name = "ability_runtime"
241}
242
243ohos_shared_library("mission_info") {
244  branch_protector_ret = "pac_ret"
245
246  sources = [
247    "${ability_runtime_services_path}/abilitymgr/src/mission/mission_info.cpp",
248    "${ability_runtime_services_path}/abilitymgr/src/mission/mission_snapshot.cpp",
249  ]
250
251  public_configs = [ ":ability_manager_public_config" ]
252
253  external_deps = [
254    "c_utils:utils",
255    "ipc:ipc_core",
256  ]
257  public_external_deps = [
258    "ability_base:configuration",
259    "ability_base:want",
260    "ability_base:zuri",
261    "bundle_framework:appexecfwk_base",
262    "bundle_framework:appexecfwk_core",
263    "jsoncpp:jsoncpp",
264  ]
265  if (ability_runtime_graphics) {
266    external_deps += [ "image_framework:image_native" ]
267    public_external_deps += [ "graphic_2d:color_manager" ]
268  }
269
270  cflags_cc = []
271  innerapi_tags = [ "platformsdk" ]
272  subsystem_name = "ability"
273  part_name = "ability_runtime"
274}
275
276ohos_shared_library("ability_manager_c") {
277  include_dirs = [ "include" ]
278  sources = [ "src/ability_manager_client_c.cpp" ]
279  libs = []
280  ldflags = [ "-Wl,--exclude-libs=ALL" ]
281  deps = [ ":ability_manager" ]
282  external_deps = [
283    "ability_base:session_info",
284    "c_utils:utils",
285    "image_framework:image_native",
286    "ipc:ipc_core",
287    "ipc:ipc_napi",
288  ]
289  innerapi_tags = [ "platformsdk" ]
290  subsystem_name = "ability"
291  part_name = "ability_runtime"
292}
293
294ohos_shared_library("ability_start_setting") {
295  branch_protector_ret = "pac_ret"
296
297  sources = [
298    "${ability_runtime_services_path}/abilitymgr/src/ability_start_setting.cpp",
299  ]
300
301  public_configs = [ ":ability_manager_public_config" ]
302
303  external_deps = [ "c_utils:utils" ]
304  public_external_deps = [
305    "ability_base:configuration",
306    "ability_base:want",
307    "ability_base:zuri",
308    "bundle_framework:appexecfwk_base",
309    "bundle_framework:appexecfwk_core",
310    "jsoncpp:jsoncpp",
311    "napi:ace_napi",
312  ]
313  if (ability_runtime_graphics) {
314    public_external_deps += [ "graphic_2d:color_manager" ]
315  }
316  cflags_cc = []
317  innerapi_tags = [ "platformsdk" ]
318  subsystem_name = "ability"
319  part_name = "ability_runtime"
320}
321
322ohos_shared_library("process_options") {
323  sanitize = {
324    integer_overflow = true
325    ubsan = true
326    boundary_sanitize = true
327    cfi = true
328    cfi_cross_dso = true
329    cfi_vcall_icall_only = true
330    debug = false
331  }
332  branch_protector_ret = "pac_ret"
333
334  include_dirs = [
335    "include/",
336    "${ability_runtime_services_path}/common/include",
337  ]
338
339  sources =
340      [ "${ability_runtime_services_path}/abilitymgr/src/process_options.cpp" ]
341
342  external_deps = [
343    "c_utils:utils",
344    "hilog:libhilog",
345  ]
346
347  cflags_cc = []
348  innerapi_tags = [ "platformsdk" ]
349  subsystem_name = "ability"
350  part_name = "ability_runtime"
351}
352
353ohos_shared_library("start_window_option") {
354  sanitize = {
355    integer_overflow = true
356    ubsan = true
357    boundary_sanitize = true
358    cfi = true
359    cfi_cross_dso = true
360    cfi_vcall_icall_only = true
361    debug = false
362  }
363  branch_protector_ret = "pac_ret"
364
365  include_dirs = [
366    "include/",
367    "${ability_runtime_services_path}/common/include",
368  ]
369
370  sources = [
371    "${ability_runtime_services_path}/abilitymgr/src/start_window_option.cpp",
372  ]
373
374  external_deps = [
375    "c_utils:utils",
376    "hilog:libhilog",
377    "napi:ace_napi",
378  ]
379
380  if (ability_runtime_graphics &&
381      ability_runtime_start_window_options_with_pixelmap) {
382    defines = [ "START_WINDOW_OPTIONS_WITH_PIXELMAP" ]
383    external_deps += [ "image_framework:image_native" ]
384  }
385
386  cflags_cc = []
387  innerapi_tags = [ "platformsdk" ]
388  subsystem_name = "ability"
389  part_name = "ability_runtime"
390}
391
392ohos_shared_library("ability_connect_callback_stub") {
393  branch_protector_ret = "pac_ret"
394
395  defines = [ "AMS_LOG_TAG = \"Ability\"" ]
396  defines += [ "AMS_LOG_DOMAIN = 0xD001300" ]
397  include_dirs = [
398    "include/",
399    "${ability_runtime_services_path}/abilitymgr/include/utils",
400    "${ability_runtime_services_path}/abilitymgr/include",
401    "${ability_runtime_services_path}/common/include",
402  ]
403
404  sources = [ "${ability_runtime_services_path}/abilitymgr/src/ability_connect_callback_stub.cpp" ]
405
406  public_configs = [ ":ability_manager_public_config" ]
407
408  external_deps = [
409    "c_utils:utils",
410    "hilog:libhilog",
411    "ipc:ipc_core",
412  ]
413  public_external_deps = [
414    "ability_base:configuration",
415    "ability_base:want",
416    "ability_base:zuri",
417    "bundle_framework:appexecfwk_base",
418    "bundle_framework:appexecfwk_core",
419    "jsoncpp:jsoncpp",
420  ]
421  if (ability_runtime_graphics) {
422    external_deps += [ "graphic_2d:color_manager" ]
423  }
424
425  cflags_cc = []
426  innerapi_tags = [
427    "platformsdk",
428    "sasdk",
429  ]
430  subsystem_name = "ability"
431  part_name = "ability_runtime"
432}
433