1c29fa5a6Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
2c29fa5a6Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3c29fa5a6Sopenharmony_ci# you may not use this file except in compliance with the License.
4c29fa5a6Sopenharmony_ci# You may obtain a copy of the License at
5c29fa5a6Sopenharmony_ci#
6c29fa5a6Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7c29fa5a6Sopenharmony_ci#
8c29fa5a6Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9c29fa5a6Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10c29fa5a6Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11c29fa5a6Sopenharmony_ci# See the License for the specific language governing permissions and
12c29fa5a6Sopenharmony_ci# limitations under the License.
13c29fa5a6Sopenharmony_ci
14c29fa5a6Sopenharmony_ciimport("../../../device_status.gni")
15c29fa5a6Sopenharmony_ci
16c29fa5a6Sopenharmony_ciconfig("intention_drag_public_config") {
17c29fa5a6Sopenharmony_ci  include_dirs = [ "include" ]
18c29fa5a6Sopenharmony_ci}
19c29fa5a6Sopenharmony_ci
20c29fa5a6Sopenharmony_ciohos_shared_library("intention_drag") {
21c29fa5a6Sopenharmony_ci  sanitize = {
22c29fa5a6Sopenharmony_ci    integer_overflow = true
23c29fa5a6Sopenharmony_ci    ubsan = true
24c29fa5a6Sopenharmony_ci    boundary_sanitize = true
25c29fa5a6Sopenharmony_ci    cfi = true
26c29fa5a6Sopenharmony_ci    cfi_cross_dso = true
27c29fa5a6Sopenharmony_ci    debug = false
28c29fa5a6Sopenharmony_ci  }
29c29fa5a6Sopenharmony_ci
30c29fa5a6Sopenharmony_ci  branch_protector_ret = "pac_ret"
31c29fa5a6Sopenharmony_ci
32c29fa5a6Sopenharmony_ci  include_dirs = [ "include" ]
33c29fa5a6Sopenharmony_ci
34c29fa5a6Sopenharmony_ci  sources = []
35c29fa5a6Sopenharmony_ci
36c29fa5a6Sopenharmony_ci  public_configs = [ ":intention_drag_public_config" ]
37c29fa5a6Sopenharmony_ci
38c29fa5a6Sopenharmony_ci  defines = device_status_default_defines
39c29fa5a6Sopenharmony_ci
40c29fa5a6Sopenharmony_ci  deps = [
41c29fa5a6Sopenharmony_ci    "${device_status_root_path}/intention/prototype:intention_prototype",
42c29fa5a6Sopenharmony_ci    "${device_status_root_path}/utils/common:devicestatus_util",
43c29fa5a6Sopenharmony_ci    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
44c29fa5a6Sopenharmony_ci  ]
45c29fa5a6Sopenharmony_ci
46c29fa5a6Sopenharmony_ci  external_deps = [
47c29fa5a6Sopenharmony_ci    "hilog:libhilog",
48c29fa5a6Sopenharmony_ci    "input:libmmi-client",
49c29fa5a6Sopenharmony_ci    "ipc:ipc_single",
50c29fa5a6Sopenharmony_ci  ]
51c29fa5a6Sopenharmony_ci
52c29fa5a6Sopenharmony_ci  subsystem_name = "${device_status_subsystem_name}"
53c29fa5a6Sopenharmony_ci  part_name = "${device_status_part_name}"
54c29fa5a6Sopenharmony_ci}
55c29fa5a6Sopenharmony_ci
56c29fa5a6Sopenharmony_ciconfig("intention_drag_server_public_config") {
57c29fa5a6Sopenharmony_ci  include_dirs = [ "include" ]
58c29fa5a6Sopenharmony_ci}
59c29fa5a6Sopenharmony_ci
60c29fa5a6Sopenharmony_ciohos_source_set("intention_drag_server") {
61c29fa5a6Sopenharmony_ci  sanitize = {
62c29fa5a6Sopenharmony_ci    integer_overflow = true
63c29fa5a6Sopenharmony_ci    ubsan = true
64c29fa5a6Sopenharmony_ci    boundary_sanitize = true
65c29fa5a6Sopenharmony_ci    cfi = true
66c29fa5a6Sopenharmony_ci    cfi_cross_dso = true
67c29fa5a6Sopenharmony_ci    debug = false
68c29fa5a6Sopenharmony_ci  }
69c29fa5a6Sopenharmony_ci
70c29fa5a6Sopenharmony_ci  branch_protector_ret = "pac_ret"
71c29fa5a6Sopenharmony_ci
72c29fa5a6Sopenharmony_ci  include_dirs = [ "include" ]
73c29fa5a6Sopenharmony_ci
74c29fa5a6Sopenharmony_ci  sources = [ "src/drag_server.cpp" ]
75c29fa5a6Sopenharmony_ci
76c29fa5a6Sopenharmony_ci  public_configs = [ ":intention_drag_server_public_config" ]
77c29fa5a6Sopenharmony_ci
78c29fa5a6Sopenharmony_ci  defines = device_status_default_defines
79c29fa5a6Sopenharmony_ci
80c29fa5a6Sopenharmony_ci  deps = [
81c29fa5a6Sopenharmony_ci    "${device_status_root_path}/intention/data:intention_data",
82c29fa5a6Sopenharmony_ci    "${device_status_root_path}/intention/drag/data:intention_drag_data",
83c29fa5a6Sopenharmony_ci    "${device_status_root_path}/intention/prototype:intention_prototype",
84c29fa5a6Sopenharmony_ci    "${device_status_root_path}/utils/common:devicestatus_util",
85c29fa5a6Sopenharmony_ci    "${device_status_root_path}/utils/ipc:devicestatus_ipc",
86c29fa5a6Sopenharmony_ci  ]
87c29fa5a6Sopenharmony_ci
88c29fa5a6Sopenharmony_ci  external_deps = [
89c29fa5a6Sopenharmony_ci    "access_token:libaccesstoken_sdk",
90c29fa5a6Sopenharmony_ci    "c_utils:utils",
91c29fa5a6Sopenharmony_ci    "graphic_2d:librender_service_client",
92c29fa5a6Sopenharmony_ci    "hilog:libhilog",
93c29fa5a6Sopenharmony_ci    "image_framework:image_native",
94c29fa5a6Sopenharmony_ci    "input:libmmi-client",
95c29fa5a6Sopenharmony_ci  ]
96c29fa5a6Sopenharmony_ci
97c29fa5a6Sopenharmony_ci  subsystem_name = "${device_status_subsystem_name}"
98c29fa5a6Sopenharmony_ci  part_name = "${device_status_part_name}"
99c29fa5a6Sopenharmony_ci}
100