1# Copyright (C) 2022 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")
15
16acfwk_path = "../../../frameworks/acfwk"
17
18config("accessibilityconfig_private_config") {
19  visibility = [ ":*" ]
20
21  include_dirs = [
22    "${acfwk_path}/include",
23    "../../../common/log/include",
24  ]
25
26  defines = [
27    "AAMS_LOG_TAG = \"accessibility_acfwk\"",
28    "AAMS_LOG_DOMAIN = 0xD001D03",
29  ]
30
31  if (build_variant == "user") {
32    defines += [ "RELEASE_VERSION" ]
33  }
34}
35
36config("accessibilityconfig_public_config") {
37  include_dirs = [ "include" ]
38}
39
40acfwk_src = [
41  "${acfwk_path}/../../interfaces/kits/napi/src/napi_accessibility_config_observer.cpp",
42  "${acfwk_path}/src/accessibility_config_impl.cpp",
43  "${acfwk_path}/src/accessibility_config.cpp",
44]
45
46ohos_shared_library("accessibilityconfig") {
47  branch_protector_ret = "pac_ret"
48  sanitize = {
49    integer_overflow = true
50    ubsan = true
51    boundary_sanitize = true
52    cfi = false
53    cfi_cross_dso = false
54    debug = false
55  }
56
57  sources = acfwk_src
58  configs = [
59    ":accessibilityconfig_private_config",
60    "../../../resources/config/build:coverage_flags",
61  ]
62
63  public_configs = [ ":accessibilityconfig_public_config" ]
64
65  deps = [
66    "../../../common/interface:accessibility_interface",
67    "../common:accessibility_common",
68  ]
69
70  external_deps = [
71    "c_utils:utils",
72    "eventhandler:libeventhandler",
73    "ffrt:libffrt",
74    "hilog:libhilog",
75    "init:libbeget_proxy",
76    "init:libbegetutil",
77    "input:libmmi-client",
78    "ipc:ipc_single",
79    "napi:ace_napi",
80    "samgr:samgr_proxy",
81  ]
82  innerapi_tags = [ "platformsdk" ]
83  install_enable = true
84
85  subsystem_name = "barrierfree"
86  part_name = "accessibility"
87}
88