• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021 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("//build/ohos_var.gni")
15import("//foundation/distributeddatamgr/datamgr_service/datamgr_service.gni")
16
17group("build_module") {
18  deps = [ ":distributeddataservice" ]
19  if (build_public_version) {
20    deps += [ ":distributeddata_profile" ]
21    deps += [ ":distributed_data.cfg" ]
22  }
23}
24
25ohos_prebuilt_etc("distributed_data.cfg") {
26  source = "distributed_data.cfg"
27  relative_install_dir = "init"
28  subsystem_name = "distributeddatamgr"
29  part_name = "datamgr_service"
30}
31
32ohos_sa_profile("distributeddata_profile") {
33  sources = [ "../sa_profile/1301.xml" ]
34
35  part_name = "datamgr_service"
36}
37
38config("module_private_config") {
39  visibility = [ ":*" ]
40  include_dirs = [
41    "//foundation/distributeddatamgr/kv_store/frameworks/common",
42    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/distributeddatafwk/include",
43    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/bootstrap/include",
44    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/config/include",
45    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/crypto/include",
46    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/directory/include",
47    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/permission/include",
48    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/matrix/include",
49    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/session_manager",
50    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework/include",
51    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/kvdb/include",
52    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/rdb/include",
53    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/object/include",
54    "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/rdb/src",
55    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/backup/include",
56    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service/kvdb",
57    "//foundation/distributeddatamgr/distributedfile/interfaces/kits/js/src/mod_securitylabel",
58    "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp/include",
59    "//utils/system/safwk/native/include",
60    "../adapter/include/account",
61    "../adapter/include/permission",
62    "../adapter/include/uninstaller",
63    "../adapter/include/broadcaster",
64    "../adapter/include/utils",
65    "../adapter/include/dfx",
66    "../adapter/include",
67    "//base/hiviewdfx/hitrace/interfaces/native/innerkits/include",
68
69    # for ipc_core interfaces.
70    "//commonlibrary/c_utils/base/include",
71    "include",
72    "src",
73    "src/security",
74    "src/backup_rule/include",
75    "//third_party/json/single_include",
76  ]
77
78  cflags = [ "-Wno-multichar" ]
79
80  cflags_cc = [ "-fvisibility=hidden" ]
81}
82
83ohos_shared_library("distributeddataservice") {
84  sources = [
85    "src/dump_helper.cpp",
86    "src/feature_stub_impl.cpp",
87    "src/kvstore_account_observer.cpp",
88    "src/kvstore_app_accessor.cpp",
89    "src/kvstore_data_service.cpp",
90    "src/kvstore_device_listener.cpp",
91    "src/kvstore_meta_manager.cpp",
92    "src/security/security.cpp",
93    "src/security/sensitive.cpp",
94    "src/session_manager/route_head_handler_impl.cpp",
95    "src/session_manager/session_manager.cpp",
96    "src/session_manager/upgrade_manager.cpp",
97  ]
98
99  if (datamgr_service_power) {
100    variable_sources = [
101      "src/backup_rule/src/charging.cpp",
102      "src/backup_rule/src/screen_off.cpp",
103    ]
104    sources += variable_sources
105  }
106
107  configs = [ ":module_private_config" ]
108  deps = [
109    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter:distributeddata_adapter",
110    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter/broadcaster:distributeddata_broadcaster_static",
111    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter/utils:distributeddata_utils_static",
112    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/checker:distributeddata_checker_static",
113    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/flowctrl_manager:distributeddata_flowctrl_static",
114    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/uninstaller:distributeddata_uninstaller_static",
115    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework:distributeddatasvcfwk",
116    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service:distributeddatasvc",
117    "//foundation/distributeddatamgr/kv_store/frameworks/libs/distributeddb:distributeddb",
118    "//foundation/distributeddatamgr/kv_store/interfaces/innerkits/distributeddata:distributeddata_inner",
119  ]
120
121  external_deps = [
122    "ability_base:base",
123    "ability_base:want",
124    "access_token:libaccesstoken_sdk",
125    "bundle_framework:appexecfwk_base",
126    "bundle_framework:appexecfwk_core",
127    "c_utils:utils",
128    "dataclassification:data_transit_mgr",
129    "hisysevent_native:libhisysevent",
130    "hitrace_native:hitrace_meter",
131    "hitrace_native:libhitracechain",
132    "hiviewdfx_hilog_native:libhilog",
133    "ipc:ipc_core",
134    "safwk:system_ability_fwk",
135    "samgr:samgr_proxy",
136  ]
137
138  if (datamgr_service_power) {
139    external_deps += [
140      "battery_manager:batterysrv_client",
141      "power_manager:powermgr_client",
142    ]
143    defines = [ "SUPPORT_POWER" ]
144  }
145
146  subsystem_name = "distributeddatamgr"
147  part_name = "datamgr_service"
148}
149