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