• 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("//foundation/distributeddatamgr/data_share/datashare.gni")
16import("//foundation/distributeddatamgr/relational_store/relational_store.gni")
17
18config("ability_config") {
19  visibility = [ ":*" ]
20  include_dirs = [
21    "common/include",
22    "consumer/include",
23    "provider/include",
24    "${ability_runtime_services_path}/common/include",
25    "${datashare_native_consumer_path}/include",
26    "${datashare_native_provider_path}/include",
27    "${datashare_native_proxy_path}/include",
28    "${ability_runtime_napi_path}/inner/napi_common",
29  ]
30
31  cflags = []
32  if (target_cpu == "arm") {
33    cflags += [ "-DBINDER_IPC_32BIT" ]
34  }
35}
36
37config("datashare_public_config") {
38  visibility = [ ":*" ]
39  include_dirs = [
40    "common/include",
41    "consumer/include",
42    "provider/include",
43    "${datashare_common_napi_path}/include",
44    "${datashare_common_native_path}/include",
45    "${datashare_native_consumer_path}/controller/common",
46    "${datashare_native_consumer_path}/controller/provider/include",
47    "${datashare_native_consumer_path}/controller/service/include",
48    "${datashare_native_consumer_path}/include",
49    "${datashare_native_provider_path}/include",
50    "${datashare_native_proxy_path}/include",
51    "${ability_runtime_inner_api_path}/dataobs_manager/include",
52  ]
53}
54
55datashare_consumer_sources = [
56  "${datashare_native_consumer_path}/controller/provider/src/ext_special_controller.cpp",
57  "${datashare_native_consumer_path}/controller/provider/src/general_controller_provider_impl.cpp",
58  "${datashare_native_consumer_path}/controller/service/src/general_controller_service_impl.cpp",
59  "${datashare_native_consumer_path}/controller/service/src/persistent_data_controller.cpp",
60  "${datashare_native_consumer_path}/controller/service/src/published_data_controller.cpp",
61  "${datashare_native_consumer_path}/src/datashare_connection.cpp",
62  "${datashare_native_consumer_path}/src/datashare_helper.cpp",
63  "${datashare_native_consumer_path}/src/datashare_helper_impl.cpp",
64  "${datashare_native_consumer_path}/src/datashare_proxy.cpp",
65  "${datashare_native_proxy_path}/src/ams_mgr_proxy.cpp",
66  "${datashare_native_proxy_path}/src/data_proxy_observer_stub.cpp",
67  "${datashare_native_proxy_path}/src/data_share_manager_impl.cpp",
68  "${datashare_native_proxy_path}/src/data_share_service_proxy.cpp",
69  "${datashare_native_proxy_path}/src/idata_share_client_death_observer.cpp",
70  "${datashare_native_proxy_path}/src/published_data_subscriber_manager.cpp",
71  "${datashare_native_proxy_path}/src/rdb_subscriber_manager.cpp",
72]
73
74datashare_consumer_external_deps = [
75  "ability_base:want",
76  "ability_base:zuri",
77  "ability_runtime:ability_context_native",
78  "ability_runtime:app_context",
79  "ability_runtime:dataobs_manager",
80  "ability_runtime:extension_manager",
81  "c_utils:utils",
82  "common_event_service:cesfwk_innerkits",
83  "hilog:libhilog",
84  "ipc:ipc_single",
85  "ipc_js:rpc",
86  "napi:ace_napi",
87  "samgr:samgr_proxy",
88]
89
90ohos_shared_library("datashare_consumer") {
91  include_dirs =
92      [ "//foundation/distributeddatamgr/kv_store/frameworks/common" ]
93
94  sources = datashare_consumer_sources
95  configs = [ ":ability_config" ]
96  public_configs = [ ":datashare_public_config" ]
97  version_script = "consumer/libdatashare_consumer.map"
98  innerapi_tags = [ "platformsdk" ]
99  deps = [ "${datashare_innerapi_path}/common:datashare_common" ]
100
101  external_deps = datashare_consumer_external_deps
102
103  subsystem_name = "distributeddatamgr"
104  part_name = "data_share"
105}
106
107ohos_shared_library("datashare_provider") {
108  include_dirs =
109      [ "//foundation/distributeddatamgr/kv_store/frameworks/common" ]
110
111  sources = [
112    "${datashare_native_provider_path}/src/datashare_ext_ability.cpp",
113    "${datashare_native_provider_path}/src/datashare_ext_ability_context.cpp",
114    "${datashare_native_provider_path}/src/datashare_stub.cpp",
115    "${datashare_native_provider_path}/src/datashare_stub_impl.cpp",
116    "${datashare_native_provider_path}/src/datashare_uv_queue.cpp",
117    "${datashare_native_provider_path}/src/js_datashare_ext_ability.cpp",
118    "${datashare_native_provider_path}/src/js_datashare_ext_ability_context.cpp",
119  ]
120  configs = [ ":ability_config" ]
121  public_configs = [ ":datashare_public_config" ]
122  version_script = "provider/libdatashare_provider.map"
123  innerapi_tags = [ "platformsdk" ]
124  deps = [ "${datashare_innerapi_path}/common:datashare_common" ]
125
126  external_deps = [
127    "ability_base:want",
128    "ability_base:zuri",
129    "ability_runtime:ability_context_native",
130    "ability_runtime:abilitykit_native",
131    "ability_runtime:app_context",
132    "ability_runtime:dataobs_manager",
133    "ability_runtime:runtime",
134    "access_token:libaccesstoken_sdk",
135    "c_utils:utils",
136    "common_event_service:cesfwk_innerkits",
137    "hilog:libhilog",
138    "ipc:ipc_single",
139    "ipc_js:rpc",
140    "napi:ace_napi",
141    "samgr:samgr_proxy",
142  ]
143
144  subsystem_name = "distributeddatamgr"
145  part_name = "data_share"
146}
147
148ohos_shared_library("datashare_ext_ability_module") {
149  include_dirs = [ "${datashare_native_provider_path}/include" ]
150
151  sources = [ "${datashare_native_provider_path}/src/datashare_ext_ability_module_loader.cpp" ]
152
153  configs = [ ":ability_config" ]
154  public_configs = [ ":datashare_public_config" ]
155
156  deps = [ ":datashare_provider" ]
157
158  external_deps = [
159    "ability_base:want",
160    "ability_runtime:abilitykit_native",
161    "ability_runtime:runtime",
162    "c_utils:utils",
163    "common_event_service:cesfwk_innerkits",
164    "hilog:libhilog",
165    "napi:ace_napi",
166  ]
167
168  relative_install_dir = "extensionability/"
169  subsystem_name = "distributeddatamgr"
170  part_name = "data_share"
171}
172
173ohos_static_library("datashare_consumer_static") {
174  include_dirs = [ "${kvstore_base_path}/frameworks/common" ]
175
176  sources = datashare_consumer_sources
177  configs = [ ":ability_config" ]
178  public_configs = [ ":datashare_public_config" ]
179  deps = [ "${datashare_innerapi_path}/common:datashare_common_static" ]
180
181  external_deps = datashare_consumer_external_deps
182
183  subsystem_name = "distributeddatamgr"
184  part_name = "data_share"
185}
186