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("../../../device_status.gni") 15 16config("intention_service_config") { 17 include_dirs = [ 18 "include", 19 "${device_status_root_path}/intention/cooperate/server/include", 20 "${device_status_root_path}/intention/drag/server/include", 21 "${device_status_root_path}/intention/stationary/server/include", 22 "${device_status_root_path}/interfaces/innerkits/interaction/include", 23 "${device_status_root_path}/intention/prototype/include", 24 "${device_status_root_path}/intention/boomerang/server/include", 25 ] 26} 27 28ohos_shared_library("intention_service") { 29 sanitize = { 30 integer_overflow = true 31 ubsan = true 32 boundary_sanitize = true 33 cfi = true 34 cfi_cross_dso = true 35 debug = false 36 } 37 38 branch_protector_ret = "pac_ret" 39 40 defines = device_status_default_defines 41 42 include_dirs = [ 43 "include", 44 "${device_status_root_path}/interfaces/innerkits/interaction/include", 45 ] 46 47 if (device_status_enable_universal_drag) { 48 include_dirs += 49 [ "${device_status_root_path}/services/interaction/drag/include" ] 50 } 51 52 sources = [ 53 "src/boomerang_dumper.cpp", 54 "src/intention_dumper.cpp", 55 "src/intention_service.cpp", 56 ] 57 58 public_configs = [ ":intention_service_config" ] 59 60 deps = [ 61 "${device_status_root_path}/intention/boomerang/server:intention_boomerang_server", 62 "${device_status_root_path}/intention/cooperate/server:intention_cooperate_server", 63 "${device_status_root_path}/intention/drag/server:intention_drag_server", 64 "${device_status_root_path}/intention/ipc/socket:intention_socket_server", 65 "${device_status_root_path}/intention/ipc/tunnel:intention_tunnel_server", 66 "${device_status_root_path}/intention/prototype:intention_prototype", 67 "${device_status_root_path}/intention/stationary/server:intention_stationary_server", 68 "${device_status_root_path}/utils/common:devicestatus_util", 69 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 70 ] 71 72 external_deps = [ 73 "access_token:libaccesstoken_sdk", 74 "graphic_2d:librender_service_client", 75 "hicollie:libhicollie", 76 "hilog:libhilog", 77 "image_framework:image_native", 78 "input:libmmi-client", 79 "window_manager:libdm", 80 ] 81 82 if (device_status_motion_enable) { 83 defines += [ "MOTION_ENABLE" ] 84 external_deps += [ "motion:motion_interface_native" ] 85 } 86 87 subsystem_name = "${device_status_subsystem_name}" 88 part_name = "${device_status_part_name}" 89} 90