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