• 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.
13
14import("//build/ohos.gni")
15import("//build/ohos/ace/ace.gni")
16import("//foundation/distributeddatamgr/data_share/datashare.gni")
17import("//foundation/distributeddatamgr/kv_store/kv_store.gni")
18
19base_output_path = get_label_info(":distributed_data_js", "target_out_dir")
20distributed_data_js_obj_path = base_output_path + "/distributed_data.o"
21gen_js_obj("distributed_data_js") {
22  input = "distributed_data.js"
23  output = distributed_data_js_obj_path
24}
25
26group("build_module") {
27  deps = []
28  if (is_standard_system) {
29    deps += [ ":distributeddata" ]
30  }
31}
32
33ohos_copy("distributeddatamgr_declaration") {
34  sources = [ "./api" ]
35  outputs = [ target_out_dir + "/$target_name/" ]
36  module_source_dir = target_out_dir + "/$target_name"
37  module_install_name = ""
38}
39
40ohos_shared_library("distributeddata") {
41  branch_protector_ret = "pac_ret"
42  sanitize = {
43    cfi = true
44    cfi_cross_dso = true
45    debug = false
46  }
47  include_dirs = [
48    "//foundation/distributeddatamgr/kv_store/frameworks/common",
49    "//foundation/distributeddatamgr/kv_store/frameworks/jskitsimpl/distributeddata/include",
50    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/distributeddatafwk/include",
51    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/kvdb/include",
52    "${datashare_innerapi_path}/common/include",
53    "${datashare_innerapi_path}/provider/include",
54  ]
55
56  sources = [
57    "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kv_utils.cpp",
58    "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_datashare_bridge.cpp",
59    "../../../frameworks/jskitsimpl/distributeddata/src/entry_point.cpp",
60    "../../../frameworks/jskitsimpl/distributeddata/src/js_const_properties.cpp",
61    "../../../frameworks/jskitsimpl/distributeddata/src/js_device_kv_store.cpp",
62    "../../../frameworks/jskitsimpl/distributeddata/src/js_field_node.cpp",
63    "../../../frameworks/jskitsimpl/distributeddata/src/js_kv_manager.cpp",
64    "../../../frameworks/jskitsimpl/distributeddata/src/js_kv_store.cpp",
65    "../../../frameworks/jskitsimpl/distributeddata/src/js_kv_store_resultset.cpp",
66    "../../../frameworks/jskitsimpl/distributeddata/src/js_observer.cpp",
67    "../../../frameworks/jskitsimpl/distributeddata/src/js_query.cpp",
68    "../../../frameworks/jskitsimpl/distributeddata/src/js_schema.cpp",
69    "../../../frameworks/jskitsimpl/distributeddata/src/js_single_kv_store.cpp",
70    "../../../frameworks/jskitsimpl/distributeddata/src/js_util.cpp",
71    "../../../frameworks/jskitsimpl/distributeddata/src/napi_queue.cpp",
72    "../../../frameworks/jskitsimpl/distributeddata/src/uv_queue.cpp",
73  ]
74
75  deps = [ "${kv_store_base_path}/interfaces/innerkits/distributeddata:distributeddata_inner" ]
76
77  external_deps = [
78    "ability_base:want",
79    "ability_runtime:ability_manager",
80    "ability_runtime:abilitykit_native",
81    "ability_runtime:napi_base_context",
82    "c_utils:utils",
83    "common_event_service:cesfwk_innerkits",
84    "hilog:libhilog",
85    "ipc:ipc_single",
86    "napi:ace_napi",
87  ]
88
89  subsystem_name = "distributeddatamgr"
90  relative_install_dir = "module/data"
91  part_name = "kv_store"
92}
93