1# Copyright (c) 2022-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/config/components/idl_tool/idl.gni") 15import("//build/ohos.gni") 16import("//foundation/ability/dmsfwk/dmsfwk.gni") 17 18config("common_public_config") { 19 visibility = [ ":*" ] 20 21 cflags = [] 22 if (target_cpu == "arm") { 23 cflags += [ "-DBINDER_IPC_32BIT" ] 24 } 25} 26 27idl_gen_interface("dmsfwk_idl") { 28 sources = [ 29 "IDistributedAbilityManager.idl", 30 ] 31 log_domainid ="0xD004170" 32 log_tag ="dmsfwk" 33} 34 35config("dmsfwk_idl_config") { 36 include_dirs = [ 37 "include/", 38 "${dms_path}/common/include", 39 "//foundation/ability/dmsfwk/services/dtbabilitymgr/include/", 40 "${target_gen_dir}/", 41 "//foundation/ability/dmsfwk/interfaces/innerkits/continuation_manager/include/", 42 ] 43} 44 45ohos_source_set("dmsfwk_idl_source") { 46 sanitize = { 47 cfi = true 48 cfi_cross_dso = true 49 debug = false 50 } 51 public_configs = [ ":dmsfwk_idl_config" ] 52 output_values = get_target_outputs(":dmsfwk_idl") 53 sources = filter_include(output_values, [ "*.cpp" ]) 54 deps = [ ":dmsfwk_idl" ] 55 56 external_deps = [ 57 "c_utils:utils", 58 "hilog:libhilog", 59 "ipc:ipc_core", 60 "samgr:samgr_proxy", 61 ] 62 63 subsystem_name = "ability" 64 65 part_name = "dmsfwk" 66} 67 68ohos_source_set("dmsfwk_idl_head") { 69 sanitize = { 70 cfi = true 71 cfi_cross_dso = true 72 debug = false 73 } 74 public_configs = [ ":dmsfwk_idl_config" ] 75 deps = [ ":dmsfwk_idl" ] 76 77 external_deps = [ 78 "c_utils:utils", 79 "hilog:libhilog", 80 "ipc:ipc_core", 81 "samgr:samgr_proxy", 82 ] 83 84 subsystem_name = "ability" 85 86 part_name = "dmsfwk" 87} 88 89ohos_shared_library("common_sdk") { 90 branch_protector_ret = "pac_ret" 91 sanitize = { 92 boundary_sanitize = true 93 cfi = true 94 cfi_cross_dso = true 95 debug = false 96 integer_overflow = true 97 ubsan = true 98 } 99 100 sources = [ 101 "//foundation/ability/dmsfwk/services/dtbabilitymgr/src/distributed_ability_manager_client.cpp", 102 ] 103 104 public_configs = [ 105 ":common_public_config", 106 ":dmsfwk_idl_config", 107 "//foundation/ability/dmsfwk/services/dtbschedmgr/test/resource:coverage_flags", 108 ] 109 110 ldflags = [ 111 "-fpie", 112 "-Wl,-z,relro", 113 "-Wl,-z,now", 114 ] 115 116 deps = [ 117 ":dmsfwk_idl_source", 118 "../../innerkits/continuation_manager:continuation_manager" , 119 ] 120 121 external_deps = [ 122 "c_utils:utils", 123 "hilog:libhilog", 124 "ipc:ipc_core", 125 "samgr:samgr_proxy", 126 ] 127 128 subsystem_name = "ability" 129 innerapi_tags = [ "platformsdk" ] 130 part_name = "dmsfwk" 131} 132