1f857971dSopenharmony_ci# Copyright (c) 2023-2024 Huawei Device Co., Ltd.
2f857971dSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3f857971dSopenharmony_ci# you may not use this file except in compliance with the License.
4f857971dSopenharmony_ci# You may obtain a copy of the License at
5f857971dSopenharmony_ci#
6f857971dSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7f857971dSopenharmony_ci#
8f857971dSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9f857971dSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10f857971dSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11f857971dSopenharmony_ci# See the License for the specific language governing permissions and
12f857971dSopenharmony_ci# limitations under the License.
13f857971dSopenharmony_ci
14f857971dSopenharmony_ciimport("../../../device_status.gni")
15f857971dSopenharmony_ci
16f857971dSopenharmony_ciconfig("intention_device_manager_public_config") {
17f857971dSopenharmony_ci  include_dirs = [
18f857971dSopenharmony_ci    "include",
19f857971dSopenharmony_ci    "${device_status_interfaces_path}/innerkits/interaction/include",
20f857971dSopenharmony_ci  ]
21f857971dSopenharmony_ci}
22f857971dSopenharmony_ci
23f857971dSopenharmony_ciohos_source_set("intention_device_manager") {
24f857971dSopenharmony_ci  sanitize = {
25f857971dSopenharmony_ci    integer_overflow = true
26f857971dSopenharmony_ci    ubsan = true
27f857971dSopenharmony_ci    boundary_sanitize = true
28f857971dSopenharmony_ci    cfi = true
29f857971dSopenharmony_ci    cfi_cross_dso = true
30f857971dSopenharmony_ci    debug = false
31f857971dSopenharmony_ci  }
32f857971dSopenharmony_ci
33f857971dSopenharmony_ci  branch_protector_ret = "pac_ret"
34f857971dSopenharmony_ci
35f857971dSopenharmony_ci  include_dirs = [
36f857971dSopenharmony_ci    "include",
37f857971dSopenharmony_ci    "${device_status_interfaces_path}/innerkits/interaction/include",
38f857971dSopenharmony_ci  ]
39f857971dSopenharmony_ci
40f857971dSopenharmony_ci  sources = [
41f857971dSopenharmony_ci    "src/device.cpp",
42f857971dSopenharmony_ci    "src/device_manager.cpp",
43f857971dSopenharmony_ci    "src/enumerator.cpp",
44f857971dSopenharmony_ci    "src/monitor.cpp",
45f857971dSopenharmony_ci  ]
46f857971dSopenharmony_ci
47f857971dSopenharmony_ci  public_configs = [ ":intention_device_manager_public_config" ]
48f857971dSopenharmony_ci
49f857971dSopenharmony_ci  deps = [
50f857971dSopenharmony_ci    "${device_status_root_path}/utils/common:devicestatus_util",
51f857971dSopenharmony_ci    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
52f857971dSopenharmony_ci  ]
53f857971dSopenharmony_ci
54f857971dSopenharmony_ci  public_deps = [
55f857971dSopenharmony_ci    "${device_status_root_path}/intention/common/epoll:intention_epoll",
56f857971dSopenharmony_ci    "${device_status_root_path}/intention/prototype:intention_prototype",
57f857971dSopenharmony_ci  ]
58f857971dSopenharmony_ci
59f857971dSopenharmony_ci  external_deps = [
60f857971dSopenharmony_ci    "c_utils:utils",
61f857971dSopenharmony_ci    "graphic_2d:librender_service_client",
62f857971dSopenharmony_ci    "hilog:libhilog",
63f857971dSopenharmony_ci    "image_framework:image_native",
64f857971dSopenharmony_ci    "input:libmmi-client",
65f857971dSopenharmony_ci    "window_manager:libdm",
66f857971dSopenharmony_ci  ]
67f857971dSopenharmony_ci
68f857971dSopenharmony_ci  subsystem_name = "${device_status_subsystem_name}"
69f857971dSopenharmony_ci  part_name = "${device_status_part_name}"
70f857971dSopenharmony_ci}
71