• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
13import("//build/ohos.gni")
14import("//foundation/distributeddatamgr/data_share/datashare.gni")
15import("//foundation/distributeddatamgr/kv_store/kv_store.gni")
16
17group("build_module") {
18  deps = []
19  if (!use_platform_win && !use_platforn_mac) {
20    deps += [
21      ":distributeddata_client_sync",
22      ":distributeddata_inner",
23    ]
24  }
25}
26
27config("distributeddatafwk_config") {
28  visibility = [ ":*" ]
29
30  cflags = [ "-Wno-multichar" ]
31
32  cflags_cc = [ "-fvisibility=hidden" ]
33
34  include_dirs = [
35    "include",
36    "../../../frameworks/innerkitsimpl/distributeddatamgr/include",
37    "../../../frameworks/innerkitsimpl/distributeddatafwk/include",
38    "../../../frameworks/innerkitsimpl/distributeddatafwk/src",
39    "../../../frameworks/common",
40    "../../../frameworks/innerkitsimpl/kvdb/include",
41    "../../../frameworks/innerkitsimpl/kvdb/src",
42    "${datashare_innerapi_path}/common/include",
43    "${datashare_innerapi_path}/provider/include",
44    "${distributedfilejs_path}/interfaces/kits/js/src/mod_securitylabel",
45  ]
46}
47
48config("distributeddatafwk_public_config") {
49  visibility = [ ":*" ]
50
51  include_dirs = [
52    "include",
53    "../../../frameworks/innerkitsimpl/distributeddatafwk/include",
54  ]
55}
56
57old_source_config = [
58  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/blob.cpp",
59  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/change_notification.cpp",
60  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/data_query.cpp",
61  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/distributed_kv_data_manager.cpp",
62  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/ikvstore_client_death_observer.cpp",
63  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/ikvstore_observer.cpp",
64  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/ikvstore_sync_callback.cpp",
65  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kv_utils.cpp",
66  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_client_death_observer.cpp",
67  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_datashare_bridge.cpp",
68  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_observer_client.cpp",
69  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_service_death_notifier.cpp",
70  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_sync_callback_client.cpp",
71  "../../../frameworks/innerkitsimpl/distributeddatafwk/src/sync_observer.cpp",
72  "include/types.h",
73]
74
75kvdb_source_config = [
76  "../../../frameworks/innerkitsimpl/kvdb/src/auto_sync_timer.cpp",
77  "../../../frameworks/innerkitsimpl/kvdb/src/backup_manager.cpp",
78  "../../../frameworks/innerkitsimpl/kvdb/src/convertor.cpp",
79  "../../../frameworks/innerkitsimpl/kvdb/src/dev_manager.cpp",
80  "../../../frameworks/innerkitsimpl/kvdb/src/device_convertor.cpp",
81  "../../../frameworks/innerkitsimpl/kvdb/src/kv_types_util.cpp",
82  "../../../frameworks/innerkitsimpl/kvdb/src/kvdb_service_client.cpp",
83  "../../../frameworks/innerkitsimpl/kvdb/src/observer_bridge.cpp",
84  "../../../frameworks/innerkitsimpl/kvdb/src/security_manager.cpp",
85  "../../../frameworks/innerkitsimpl/kvdb/src/single_store_impl.cpp",
86  "../../../frameworks/innerkitsimpl/kvdb/src/store_factory.cpp",
87  "../../../frameworks/innerkitsimpl/kvdb/src/store_manager.cpp",
88  "../../../frameworks/innerkitsimpl/kvdb/src/store_result_set.cpp",
89  "../../../frameworks/innerkitsimpl/kvdb/src/store_util.cpp",
90  "../../../frameworks/innerkitsimpl/kvdb/src/system_api.cpp",
91  "../../../frameworks/innerkitsimpl/kvdb/src/task_executor.cpp",
92  "../../../frameworks/innerkitsimpl/kvdb/src/task_executor_adapter.cpp",
93]
94
95deps_config = [
96  "../../../frameworks/libs/distributeddb:distributeddb",
97  "../distributeddatamgr:distributeddata_mgr",
98  "../distributeddata:distributeddata_client_sync",
99]
100
101external_deps_config = [
102  "c_utils:utils",
103  "device_manager:devicemanagersdk",
104  "hisysevent:libhisysevent",
105  "hitrace:hitrace_meter",
106  "hitrace:libhitracechain",
107  "hilog:libhilog",
108  "huks:libhukssdk",
109  "ipc:ipc_single",
110  "samgr:samgr_proxy",
111]
112
113ohos_shared_library("distributeddata_inner") {
114  branch_protector_ret = "pac_ret"
115  sanitize = {
116    cfi = true
117    cfi_cross_dso = true
118    debug = false
119    blocklist = "./cfi_blocklist.txt"
120  }
121  sources = old_source_config + kvdb_source_config
122
123  configs = [ ":distributeddatafwk_config" ]
124  public_configs = [ ":distributeddatafwk_public_config" ]
125
126  deps = deps_config
127  external_deps = external_deps_config
128  innerapi_tags = [ "platformsdk" ]
129  subsystem_name = "distributeddatamgr"
130  part_name = "kv_store"
131}
132
133ohos_shared_library("distributeddata_client_sync") {
134  branch_protector_ret = "pac_ret"
135  sanitize = {
136    cfi = true
137    cfi_cross_dso = true
138    debug = false
139  }
140  sources = [
141    "${kv_store_base_path}/frameworks/innerkitsimpl/kvdb/src/process_communication_impl.cpp",
142    "${kv_store_base_path}/frameworks/innerkitsimpl/kvdb/src/process_system_api_adapter_impl.cpp",
143  ]
144
145  configs = [ ":distributeddatafwk_config" ]
146
147  deps = [ "${kv_store_base_path}/frameworks/libs/distributeddb:distributeddb" ]
148
149  external_deps = [
150    "c_utils:utils",
151    "hilog:libhilog",
152  ]
153  innerapi_tags = [ "platformsdk" ]
154  subsystem_name = "distributeddatamgr"
155  part_name = "kv_store"
156}
157