1# Copyright (c) 2022-2023 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("../../os_account.gni")
16
17config("domain_account_innnerkits_config") {
18  visibility = [ ":*" ]
19
20  cflags = []
21  if (target_cpu == "arm") {
22    cflags += [ "-DBINDER_IPC_32BIT" ]
23  }
24
25  cflags += [ "-pipe" ]
26  cflags_cc = [
27    "-Wdate-time",
28    "-Wformat=2",
29    "-Wfloat-equal",
30    "-Wshadow",
31  ]
32
33  defines = [
34    "ACCOUNT_LOG_TAG = \"DomainAccountFwk\"",
35    "LOG_DOMAIN = 0xD001B00",
36  ]
37}
38
39config("domain_account_innerkits_public_config") {
40  visibility = [ ":*" ]
41
42  include_dirs = [
43    "include",
44    "${common_path}/include",
45    "${domain_account_interfaces_native_path}/include",
46    "${common_path}/utils/include",
47    "${innerkits_common}/include",
48  ]
49}
50
51ohos_shared_library("domain_account_innerkits") {
52  branch_protector_ret = "pac_ret"
53
54  sanitize = {
55    cfi = true
56    cfi_cross_dso = true
57    debug = false
58  }
59
60  sources = [
61    "src/domain_account_callback_adapters.cpp",
62    "src/domain_account_callback_client.cpp",
63    "src/domain_account_callback_proxy.cpp",
64    "src/domain_account_callback_service.cpp",
65    "src/domain_account_callback_stub.cpp",
66    "src/domain_account_client.cpp",
67    "src/domain_account_common.cpp",
68    "src/domain_account_plugin_service.cpp",
69    "src/domain_account_plugin_stub.cpp",
70    "src/domain_account_proxy.cpp",
71    "src/domain_account_status_listener_manager.cpp",
72  ]
73
74  configs = [ ":domain_account_innnerkits_config" ]
75
76  public_configs = [ ":domain_account_innerkits_public_config" ]
77
78  deps = [
79    "${common_path}:libaccount_common",
80    "${innerkits_native_path}:libaccountkits",
81  ]
82
83  external_deps = [
84    "ability_base:want",
85    "c_utils:utils",
86    "hilog:libhilog",
87    "ipc:ipc_single",
88  ]
89
90  if (ohos_indep_compiler_enable) {
91    external_deps += [ "samgr:samgr_proxy" ]
92  }
93
94  innerapi_tags = [ "platformsdk" ]
95  subsystem_name = "account"
96  part_name = "os_account"
97}
98