1# Copyright (c) 2021-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("//build/ohos.gni")
15import(
16    "//foundation/distributedhardware/distributed_input/distributedinput.gni")
17
18ohos_shared_library("libdinput_handler") {
19  sanitize = {
20    boundary_sanitize = true
21    integer_overflow = true
22    ubsan = true
23    cfi = true
24    cfi_cross_dso = true
25    debug = false
26  }
27  branch_protector_ret = "pac_ret"
28  include_dirs = [
29    "include",
30    "${common_path}/include",
31    "${services_state_path}/include",
32    "${service_common}/include",
33    "${frameworks_path}/include",
34    "${utils_path}/include",
35  ]
36
37  sources = [
38    "${common_path}/include/input_hub.cpp",
39    "src/distributed_input_handler.cpp",
40  ]
41
42  defines = [
43    "HI_LOG_ENABLE",
44    "DH_LOG_TAG=\"distributedinputhandler\"",
45    "LOG_DOMAIN=0xD004120",
46  ]
47
48  cflags = [
49    "-fstack-protector-strong",
50    "-D_FORTIFY_SOURCE=2",
51    "-O2",
52  ]
53
54  deps = [
55    "${services_state_path}:libdinput_sink_state",
56    "${utils_path}:libdinput_utils",
57  ]
58
59  external_deps = [
60    "c_utils:utils",
61    "distributed_hardware_fwk:distributed_av_receiver",
62    "distributed_hardware_fwk:distributed_av_sender",
63    "distributed_hardware_fwk:distributedhardwareutils",
64    "distributed_hardware_fwk:libdhfwk_sdk",
65    "dsoftbus:softbus_client",
66    "hilog:libhilog",
67    "ipc:ipc_core",
68    "json:nlohmann_json_static",
69    "libevdev:libevdev",
70    "openssl:libcrypto_shared",
71    "safwk:system_ability_fwk",
72    "samgr:samgr_proxy",
73  ]
74
75  cflags_cc = [
76    "-DHILOG_ENABLE",
77    "-fstack-protector-strong",
78    "-D_FORTIFY_SOURCE=2",
79    "-O2",
80  ]
81
82  subsystem_name = "distributedhardware"
83
84  part_name = "distributed_input"
85}
86