1# Copyright (c) 2022 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/test.gni") 15import("../../device_status.gni") 16 17config("devicestatus_public_config") { 18 include_dirs = [ 19 "include", 20 "${device_status_service_path}/native/include", 21 "${device_status_frameworks_path}/js/napi/include", 22 "${device_status_frameworks_path}/native/event_handler/include", 23 "${device_status_frameworks_path}/native/interaction/include", 24 "${device_status_utils_path}/include", 25 "${device_status_interfaces_path}/innerkits/include", 26 "${device_status_interfaces_path}/innerkits/interaction/include", 27 "${device_status_root_path}/utils/ipc/include", 28 "${device_status_root_path}/services/communication/base/", 29 "${device_status_root_path}/services/communication/client/include", 30 "${device_status_root_path}/intention/onscreen/client/include", 31 ] 32 33 if (device_status_intention_framework) { 34 include_dirs += 35 [ "${device_status_root_path}/intention/frameworks/client/include" ] 36 } 37 38 defines = device_status_default_defines 39} 40 41ohos_source_set("drag_data_util") { 42 sanitize = { 43 integer_overflow = true 44 ubsan = true 45 boundary_sanitize = true 46 cfi = true 47 cfi_cross_dso = true 48 debug = false 49 } 50 51 include_dirs = [ 52 "${device_status_utils_path}/include", 53 "${device_status_interfaces_path}/innerkits/interaction/include", 54 ] 55 56 branch_protector_ret = "pac_ret" 57 58 sources = [ 59 "${device_status_frameworks_path}/native/interaction/src/drag_data_util.cpp", 60 ] 61 62 deps = [ 63 "${device_status_utils_path}:devicestatus_util", 64 ] 65 66 public_configs = [ ":devicestatus_public_config" ] 67 68 external_deps = [ 69 "c_utils:utils", 70 "graphic_2d:librender_service_client", 71 "hilog:libhilog", 72 "image_framework:image_native", 73 "ipc:ipc_single", 74 "window_manager:libdm_lite", 75 ] 76 77 subsystem_name = "${device_status_subsystem_name}" 78 part_name = "${device_status_part_name}" 79} 80 81ohos_shared_library("devicestatus_client") { 82 sanitize = { 83 integer_overflow = true 84 ubsan = true 85 boundary_sanitize = true 86 cfi = true 87 cfi_cross_dso = true 88 debug = false 89 } 90 91 branch_protector_ret = "pac_ret" 92 93 version_script = "libdevicestatus_client_map" 94 sources = [ 95 "${device_status_frameworks_path}/native/interaction/src/drag_manager_impl.cpp", 96 "${device_status_frameworks_path}/native/interaction/src/interaction_manager.cpp", 97 "${device_status_frameworks_path}/native/src/boomerang_callback_proxy.cpp", 98 "${device_status_frameworks_path}/native/src/boomerang_callback_stub.cpp", 99 "${device_status_frameworks_path}/native/src/boomerang_manager.cpp", 100 "${device_status_frameworks_path}/native/src/client.cpp", 101 "${device_status_frameworks_path}/native/src/devicestatus_callback_proxy.cpp", 102 "${device_status_frameworks_path}/native/src/devicestatus_callback_stub.cpp", 103 "${device_status_frameworks_path}/native/src/devicestatus_client.cpp", 104 "${device_status_frameworks_path}/native/src/fd_listener.cpp", 105 "${device_status_frameworks_path}/native/src/stationary_manager.cpp", 106 "${device_status_root_path}/services/communication/client/src/devicestatus_srv_proxy.cpp", 107 "${device_status_frameworks_path}/native/src/on_screen_manager.cpp", 108 ] 109 110 if (device_status_intention_framework) { 111 sources += [ "${device_status_root_path}/intention/frameworks/client/src/intention_manager.cpp" ] 112 } else { 113 sources += [ "${device_status_frameworks_path}/native/interaction/src/interaction_manager_impl.cpp" ] 114 if (device_status_interaction_coordination) { 115 sources += [ "${device_status_frameworks_path}/native/interaction/src/coordination_manager_impl.cpp" ] 116 } 117 } 118 119 configs = [ "${device_status_utils_path}:devicestatus_utils_config" ] 120 121 deps = [ 122 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 123 "${device_status_utils_path}:devicestatus_util", 124 "${device_status_interfaces_path}/innerkits:drag_data_util" 125 ] 126 127 public_configs = [ ":devicestatus_public_config" ] 128 129 if (device_status_intention_framework) { 130 deps += [ 131 "${device_status_root_path}/intention/boomerang/client:intention_boomerang_client", 132 "${device_status_root_path}/intention/cooperate/client:intention_cooperate_client", 133 "${device_status_root_path}/intention/drag/client:intention_drag_client", 134 "${device_status_root_path}/intention/ipc/socket:intention_socket_connection", 135 "${device_status_root_path}/intention/ipc/sequenceable_types:sequenceable_types", 136 "${device_status_root_path}/intention/ipc/tunnel:intention_client", 137 "${device_status_root_path}/intention/prototype:intention_prototype", 138 "${device_status_root_path}/intention/stationary/client:intention_stationary_client", 139 "${device_status_root_path}/intention/onscreen/client:intention_on_screen_client", 140 ] 141 } 142 143 if (device_status_rust_enabled) { 144 include_dirs = 145 [ "${device_status_root_path}/rust/frameworks/binding/include" ] 146 147 deps += [ 148 "${device_status_root_path}/rust/data/binding:fusion_data_binding", 149 "${device_status_root_path}/rust/frameworks/client:fusion_client_ffi", 150 ] 151 } 152 153 external_deps = [ 154 "c_utils:utils", 155 "eventhandler:libeventhandler", 156 "graphic_2d:librender_service_client", 157 "graphic_2d:librender_service_base", 158 "hilog:libhilog", 159 "hitrace:hitrace_meter", 160 "image_framework:image_native", 161 "ipc:ipc_single", 162 "samgr:samgr_proxy", 163 "window_manager:libdm", 164 ] 165 166 innerapi_tags = [ "platformsdk" ] 167 subsystem_name = "${device_status_subsystem_name}" 168 part_name = "${device_status_part_name}" 169} 170 171ohos_shared_library("motion_drag_part") { 172 173 include_dirs = [ 174 "${device_status_utils_path}/include", 175 "${device_status_interfaces_path}/innerkits/interaction/include", 176 ] 177 178 sanitize = { 179 integer_overflow = true 180 ubsan = true 181 boundary_sanitize = true 182 cfi = true 183 cfi_cross_dso = true 184 debug = false 185 } 186 187 branch_protector_ret = "pac_ret" 188 189 version_script = "libdevicestatus_client_map" 190 191 configs = [ "${device_status_utils_path}:devicestatus_utils_config" ] 192 193 deps = [ 194 "${device_status_utils_path}:devicestatus_util", 195 "${device_status_interfaces_path}/innerkits:drag_data_util" 196 ] 197 198 public_configs = [ ":devicestatus_public_config" ] 199 200 external_deps = [ 201 "c_utils:utils", 202 "hilog:libhilog", 203 "image_framework:image_native", 204 "ipc:ipc_single", 205 ] 206 207 innerapi_tags = [ "platformsdk" ] 208 subsystem_name = "${device_status_subsystem_name}" 209 part_name = "${device_status_part_name}" 210} 211