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