1f857971dSopenharmony_ci# Copyright (c) 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_stationary_server_public_config") {
17f857971dSopenharmony_ci  include_dirs = [
18f857971dSopenharmony_ci    "include",
19f857971dSopenharmony_ci    "${device_status_root_path}/interfaces/innerkits/include",
20f857971dSopenharmony_ci    "${device_status_root_path}/libs/interface",
21f857971dSopenharmony_ci    "${device_status_root_path}/services/native/include",
22f857971dSopenharmony_ci  ]
23f857971dSopenharmony_ci}
24f857971dSopenharmony_ci
25f857971dSopenharmony_ciohos_source_set("intention_stationary_server") {
26f857971dSopenharmony_ci  sanitize = {
27f857971dSopenharmony_ci    integer_overflow = true
28f857971dSopenharmony_ci    ubsan = true
29f857971dSopenharmony_ci    boundary_sanitize = true
30f857971dSopenharmony_ci    cfi = true
31f857971dSopenharmony_ci    cfi_cross_dso = true
32f857971dSopenharmony_ci    debug = false
33f857971dSopenharmony_ci  }
34f857971dSopenharmony_ci
35f857971dSopenharmony_ci  branch_protector_ret = "pac_ret"
36f857971dSopenharmony_ci
37f857971dSopenharmony_ci  include_dirs = [
38f857971dSopenharmony_ci    "include",
39f857971dSopenharmony_ci    "${device_status_root_path}/interfaces/innerkits/include",
40f857971dSopenharmony_ci    "${device_status_root_path}/libs/interface",
41f857971dSopenharmony_ci    "${device_status_root_path}/services/native/include",
42f857971dSopenharmony_ci  ]
43f857971dSopenharmony_ci
44f857971dSopenharmony_ci  sources = [
45f857971dSopenharmony_ci    "${device_status_root_path}/services/native/src/devicestatus_dumper.cpp",
46f857971dSopenharmony_ci    "${device_status_root_path}/services/native/src/devicestatus_hisysevent.cpp",
47f857971dSopenharmony_ci    "${device_status_root_path}/services/native/src/devicestatus_manager.cpp",
48f857971dSopenharmony_ci    "${device_status_root_path}/services/native/src/devicestatus_msdp_client_impl.cpp",
49f857971dSopenharmony_ci    "src/stationary_server.cpp",
50f857971dSopenharmony_ci  ]
51f857971dSopenharmony_ci
52f857971dSopenharmony_ci  public_configs = [ ":intention_stationary_server_public_config" ]
53f857971dSopenharmony_ci
54f857971dSopenharmony_ci  defines = device_status_default_defines
55f857971dSopenharmony_ci
56f857971dSopenharmony_ci  deps = [
57f857971dSopenharmony_ci    "${device_status_root_path}/intention/data:intention_data",
58f857971dSopenharmony_ci    "${device_status_root_path}/intention/prototype:intention_prototype",
59f857971dSopenharmony_ci    "${device_status_root_path}/intention/stationary/data:intention_stationary_data",
60f857971dSopenharmony_ci    "${device_status_root_path}/utils/common:devicestatus_util",
61f857971dSopenharmony_ci    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
62f857971dSopenharmony_ci  ]
63f857971dSopenharmony_ci
64f857971dSopenharmony_ci  external_deps = [
65f857971dSopenharmony_ci    "access_token:libaccesstoken_sdk",
66f857971dSopenharmony_ci    "graphic_2d:librender_service_client",
67f857971dSopenharmony_ci    "hilog:libhilog",
68f857971dSopenharmony_ci    "input:libmmi-client",
69f857971dSopenharmony_ci    "window_manager:libdm",
70f857971dSopenharmony_ci  ]
71f857971dSopenharmony_ci
72f857971dSopenharmony_ci  if (device_status_hisysevent_enable) {
73f857971dSopenharmony_ci    external_deps += [ "hisysevent:libhisysevent" ]
74f857971dSopenharmony_ci    defines += [ "MSDP_HIVIEWDFX_HISYSEVENT_ENABLE" ]
75f857971dSopenharmony_ci  }
76f857971dSopenharmony_ci
77f857971dSopenharmony_ci  if (device_status_hitrace_enable) {
78f857971dSopenharmony_ci    external_deps += [ "hitrace:hitrace_meter" ]
79f857971dSopenharmony_ci    defines += [ "MSDP_HIVIEWDFX_HITRACE_ENABLE" ]
80f857971dSopenharmony_ci  }
81f857971dSopenharmony_ci
82f857971dSopenharmony_ci  subsystem_name = "${device_status_subsystem_name}"
83f857971dSopenharmony_ci  part_name = "${device_status_part_name}"
84f857971dSopenharmony_ci}
85