1# Copyright (c) 2023-2024 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("../device_status.gni") 15 16config("devicestatus_services_private_config") { 17 include_dirs = [ 18 "delegate_task/include", 19 "native/include", 20 "${device_status_utils_path}/include", 21 "${device_status_interfaces_path}/innerkits/include", 22 "${device_status_interfaces_path}/innerkits/interaction/include", 23 "../libs/interface", 24 "interaction/drag/include", 25 "communication/base", 26 "communication/service/include", 27 ] 28 29 if (device_status_intention_framework) { 30 include_dirs += [ 31 "${device_status_root_path}/intention/cooperate/server/include", 32 "${device_status_root_path}/intention/drag/server/include", 33 "${device_status_root_path}/intention/ipc/socket/include", 34 ] 35 } 36 37 defines = device_status_default_defines 38} 39 40config("devicestatus_services_public_config") { 41 include_dirs = [ 42 "delegate_task/include", 43 "native/include", 44 "interaction/drag/include", 45 ] 46 47 if (device_status_intention_framework) { 48 include_dirs += [ 49 "${device_status_root_path}/intention/cooperate/server/include", 50 "${device_status_root_path}/intention/drag/server/include", 51 "${device_status_root_path}/intention/ipc/socket/include", 52 ] 53 } 54} 55 56sources_set = [ 57 "communication/service/src/devicestatus_srv_stub.cpp", 58 "delegate_task/src/delegate_tasks.cpp", 59 "native/src/devicestatus_dumper.cpp", 60 "native/src/devicestatus_hisysevent.cpp", 61 "native/src/devicestatus_manager.cpp", 62 "native/src/devicestatus_msdp_client_impl.cpp", 63 "native/src/devicestatus_service.cpp", 64 "native/src/stream_server.cpp", 65] 66 67external_deps_set = [ 68 "ability_runtime:app_manager", 69 "access_token:libaccesstoken_sdk", 70 "access_token:libtokenid_sdk", 71 "cJSON:cjson", 72 "c_utils:utils", 73 "graphic_2d:librender_service_client", 74 "graphic_2d:window_animation", 75 "hilog:libhilog", 76 "input:libmmi-client", 77 "ipc:ipc_single", 78 "image_framework:image_native", 79 "safwk:system_ability_fwk", 80 "window_manager:libwm", 81 "window_manager:libdm", 82] 83 84ohos_shared_library("devicestatus_service") { 85 sanitize = { 86 integer_overflow = true 87 ubsan = true 88 boundary_sanitize = true 89 cfi = true 90 cfi_cross_dso = true 91 debug = false 92 } 93 94 branch_protector_ret = "pac_ret" 95 96 shlib_type = "sa" 97 98 sources = sources_set 99 100 configs = [ ":devicestatus_services_private_config" ] 101 102 public_configs = [ ":devicestatus_services_public_config" ] 103 104 deps = [ 105 "${device_status_interfaces_path}/innerkits:devicestatus_client", 106 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 107 "${device_status_utils_path}:devicestatus_util", 108 "interaction/drag:interaction_drag", 109 ] 110 111 if (device_status_intention_framework) { 112 deps += [ 113 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 114 "${device_status_root_path}/intention/adapters/dsoftbus_adapter:intention_dsoftbus_adapter", 115 "${device_status_root_path}/intention/adapters/input_adapter:intention_input_adapter", 116 "${device_status_root_path}/intention/scheduler/plugin_manager:intention_plugin_manager", 117 ] 118 } 119 120 public_deps = [ 121 "${device_status_root_path}/intention/common/epoll:intention_epoll", 122 "${device_status_root_path}/intention/prototype:intention_prototype", 123 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 124 "${device_status_root_path}/intention/services/device_manager:intention_device_manager", 125 ] 126 127 if (device_status_intention_framework) { 128 public_deps += [ 129 "${device_status_root_path}/intention/ipc/socket:intention_socket_session_manager", 130 "${device_status_root_path}/intention/ipc/tunnel:intention_tunnel_server", 131 "${device_status_root_path}/intention/services/intention_service:intention_service", 132 ] 133 } 134 135 defines = [] 136 if (device_status_sensor_enable) { 137 defines += [ "DEVICE_STATUS_SENSOR_ENABLE" ] 138 } 139 external_deps = external_deps_set 140 if (device_status_intention_framework) { 141 external_deps += [ "device_manager:devicemanagersdk" ] 142 } else { 143 if (device_status_interaction_coordination) { 144 external_deps += [ "device_manager:devicemanagersdk" ] 145 } 146 } 147 if (device_status_memmgr_enable) { 148 defines += [ "MEMMGR_ENABLE" ] 149 external_deps += [ "memmgr:memmgrclient" ] 150 } 151 if (device_status_hisysevent_enable) { 152 external_deps += [ "hisysevent:libhisysevent" ] 153 defines += [ "MSDP_HIVIEWDFX_HISYSEVENT_ENABLE" ] 154 } 155 156 if (device_status_hitrace_enable) { 157 external_deps += [ "hitrace:hitrace_meter" ] 158 defines += [ "MSDP_HIVIEWDFX_HITRACE_ENABLE" ] 159 } 160 161 subsystem_name = "${device_status_subsystem_name}" 162 part_name = "${device_status_part_name}" 163} 164 165ohos_static_library("devicestatus_static_service") { 166 sanitize = { 167 integer_overflow = true 168 ubsan = true 169 boundary_sanitize = true 170 cfi = true 171 cfi_cross_dso = true 172 debug = false 173 } 174 175 sources = sources_set 176 177 configs = [ ":devicestatus_services_private_config" ] 178 179 public_configs = [ ":devicestatus_services_public_config" ] 180 181 deps = [ 182 "${device_status_interfaces_path}/innerkits:devicestatus_client", 183 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 184 "${device_status_utils_path}:devicestatus_util", 185 "interaction/drag:interaction_drag", 186 ] 187 188 if (device_status_intention_framework) { 189 deps += [ 190 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 191 "${device_status_root_path}/intention/adapters/dsoftbus_adapter:intention_dsoftbus_adapter", 192 "${device_status_root_path}/intention/adapters/input_adapter:intention_input_adapter", 193 "${device_status_root_path}/intention/scheduler/plugin_manager:intention_plugin_manager", 194 ] 195 } 196 197 defines = [] 198 if (device_status_sensor_enable) { 199 defines += [ "DEVICE_STATUS_SENSOR_ENABLE" ] 200 } 201 202 public_deps = [ 203 "${device_status_root_path}/intention/common/epoll:intention_epoll", 204 "${device_status_root_path}/intention/prototype:intention_prototype", 205 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 206 "${device_status_root_path}/intention/services/device_manager:intention_device_manager", 207 ] 208 209 if (device_status_intention_framework) { 210 public_deps += [ 211 "${device_status_root_path}/intention/ipc/socket:intention_socket_session_manager", 212 "${device_status_root_path}/intention/ipc/tunnel:intention_tunnel_server", 213 "${device_status_root_path}/intention/services/intention_service:intention_service", 214 ] 215 } 216 217 external_deps = external_deps_set 218 if (device_status_intention_framework) { 219 external_deps += [ "device_manager:devicemanagersdk" ] 220 } else { 221 if (device_status_interaction_coordination) { 222 external_deps += [ "device_manager:devicemanagersdk" ] 223 } 224 } 225 if (device_status_memmgr_enable) { 226 defines += [ "MEMMGR_ENABLE" ] 227 external_deps += [ "memmgr:memmgrclient" ] 228 } 229 230 if (device_status_hisysevent_enable) { 231 external_deps += [ "hisysevent:libhisysevent" ] 232 defines += [ "MSDP_HIVIEWDFX_HISYSEVENT_ENABLE" ] 233 } 234 235 if (device_status_hitrace_enable) { 236 external_deps += [ "hitrace:hitrace_meter" ] 237 defines += [ "MSDP_HIVIEWDFX_HITRACE_ENABLE" ] 238 } 239 240 subsystem_name = "${device_status_subsystem_name}" 241 part_name = "${device_status_part_name}" 242} 243