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/ohos.gni") 15import("//build/test.gni") 16import("../../device_status.gni") 17 18config("devicestatus_public_config") { 19 include_dirs = [ 20 "include", 21 "${device_status_service_path}/native/include", 22 "${device_status_frameworks_path}/js/napi/include", 23 "${device_status_frameworks_path}/native/event_handler/include", 24 "${device_status_frameworks_path}/native/interaction/include", 25 "${device_status_utils_path}/include", 26 "${device_status_interfaces_path}/innerkits/include", 27 "${device_status_interfaces_path}/innerkits/interaction/include", 28 "${device_status_root_path}/utils/ipc/include", 29 "${device_status_root_path}/services/communication/base/", 30 "${device_status_root_path}/services/communication/client/include", 31 ] 32 33 defines = device_status_default_defines 34} 35 36ohos_shared_library("devicestatus_client") { 37 version_script = "libdevicestatus_client_map" 38 sources = [ 39 "${device_status_frameworks_path}/native/interaction/src/drag_manager_impl.cpp", 40 "${device_status_frameworks_path}/native/interaction/src/interaction_manager.cpp", 41 "${device_status_frameworks_path}/native/interaction/src/interaction_manager_impl.cpp", 42 "${device_status_frameworks_path}/native/src/client.cpp", 43 "${device_status_frameworks_path}/native/src/devicestatus_callback_proxy.cpp", 44 "${device_status_frameworks_path}/native/src/devicestatus_callback_stub.cpp", 45 "${device_status_frameworks_path}/native/src/devicestatus_client.cpp", 46 "${device_status_frameworks_path}/native/src/fd_listener.cpp", 47 "${device_status_frameworks_path}/native/src/stationary_manager.cpp", 48 "${device_status_root_path}/services/communication/client/src/devicestatus_srv_proxy.cpp", 49 ] 50 51 if (fusion_interaction_coordination) { 52 sources += [ "${device_status_frameworks_path}/native/interaction/src/coordination_manager_impl.cpp" ] 53 } 54 55 configs = [ "${device_status_utils_path}:devicestatus_utils_config" ] 56 57 deps = [ 58 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 59 "${device_status_utils_path}:devicestatus_util", 60 ] 61 62 public_configs = [ ":devicestatus_public_config" ] 63 64 if (fusion_rust_enabled) { 65 include_dirs = 66 [ "${device_status_root_path}/rust/frameworks/binding/include" ] 67 68 deps += [ 69 "${device_status_root_path}/rust/data/binding:fusion_data_binding", 70 "${device_status_root_path}/rust/frameworks/client:fusion_client_ffi", 71 ] 72 } 73 74 external_deps = [ 75 "c_utils:utils", 76 "eventhandler:libeventhandler", 77 "hilog:libhilog", 78 "hitrace:hitrace_meter", 79 "image_framework:image_native", 80 "ipc:ipc_single", 81 "samgr:samgr_proxy", 82 ] 83 84 innerapi_tags = [ "platformsdk" ] 85 subsystem_name = "${device_status_subsystem_name}" 86 part_name = "${device_status_part_name}" 87} 88