153c3577eSopenharmony_ci# Copyright (c) 2022-2024 Huawei Device Co., Ltd. 253c3577eSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 353c3577eSopenharmony_ci# you may not use this file except in compliance with the License. 453c3577eSopenharmony_ci# You may obtain a copy of the License at 553c3577eSopenharmony_ci# 653c3577eSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 753c3577eSopenharmony_ci# 853c3577eSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 953c3577eSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1053c3577eSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1153c3577eSopenharmony_ci# See the License for the specific language governing permissions and 1253c3577eSopenharmony_ci# limitations under the License. 1353c3577eSopenharmony_ciimport("//build/ohos.gni") 1453c3577eSopenharmony_ciimport("//build/ohos_var.gni") 1553c3577eSopenharmony_ciimport("//foundation/distributeddatamgr/datamgr_service/datamgr_service.gni") 1653c3577eSopenharmony_ci 1753c3577eSopenharmony_cigroup("build_module") { 1853c3577eSopenharmony_ci deps = [ ":distributeddatasvc" ] 1953c3577eSopenharmony_ci 2053c3577eSopenharmony_ci if (datamgr_service_udmf) { 2153c3577eSopenharmony_ci deps += [ "${data_service_path}/service/udmf:udmf_server" ] 2253c3577eSopenharmony_ci } 2353c3577eSopenharmony_ci} 2453c3577eSopenharmony_ciconfig("module_public_config") { 2553c3577eSopenharmony_ci visibility = [ ":*" ] 2653c3577eSopenharmony_ci include_dirs = [ 2753c3577eSopenharmony_ci "backup/include", 2853c3577eSopenharmony_ci "bootstrap/include", 2953c3577eSopenharmony_ci "cloud", 3053c3577eSopenharmony_ci "common", 3153c3577eSopenharmony_ci "config/include", 3253c3577eSopenharmony_ci "crypto/include", 3353c3577eSopenharmony_ci "dumper/include", 3453c3577eSopenharmony_ci "kvdb", 3553c3577eSopenharmony_ci "matrix/include", 3653c3577eSopenharmony_ci "object", 3753c3577eSopenharmony_ci "permission/include", 3853c3577eSopenharmony_ci "rdb", 3953c3577eSopenharmony_ci "waterversion", 4053c3577eSopenharmony_ci "${data_service_path}/adapter/include", 4153c3577eSopenharmony_ci "${data_service_path}/app/src", 4253c3577eSopenharmony_ci "${data_service_path}/framework/include", 4353c3577eSopenharmony_ci "${kv_store_common_path}", 4453c3577eSopenharmony_ci "${kv_store_path}/frameworks/innerkitsimpl/distributeddatafwk/include", 4553c3577eSopenharmony_ci "${kv_store_path}/frameworks/innerkitsimpl/kvdb/include", 4653c3577eSopenharmony_ci "${kv_store_distributeddb_path}/include/", 4753c3577eSopenharmony_ci "${kv_store_distributeddb_path}/interfaces/include/", 4853c3577eSopenharmony_ci "${kv_store_distributeddb_path}/interfaces/include/relational", 4953c3577eSopenharmony_ci ] 5053c3577eSopenharmony_ci} 5153c3577eSopenharmony_ci 5253c3577eSopenharmony_ciohos_shared_library("distributeddatasvc") { 5353c3577eSopenharmony_ci branch_protector_ret = "pac_ret" 5453c3577eSopenharmony_ci sanitize = { 5553c3577eSopenharmony_ci ubsan = true 5653c3577eSopenharmony_ci boundary_sanitize = true 5753c3577eSopenharmony_ci cfi = true 5853c3577eSopenharmony_ci cfi_cross_dso = true 5953c3577eSopenharmony_ci debug = false 6053c3577eSopenharmony_ci } 6153c3577eSopenharmony_ci include_dirs = [ 6253c3577eSopenharmony_ci "${dataobject_path}/frameworks/innerkitsimpl/include", 6353c3577eSopenharmony_ci "${dataobject_path}/frameworks/innerkitsimpl/include/common", 6453c3577eSopenharmony_ci "${dataobject_path}/interfaces/innerkits", 6553c3577eSopenharmony_ci "../../../../relational_store/interfaces/inner_api/cloud_data/include", 6653c3577eSopenharmony_ci "../../../../relational_store/interfaces/inner_api/common_type/include", 6753c3577eSopenharmony_ci "../../../../relational_store/interfaces/inner_api/rdb/include", 6853c3577eSopenharmony_ci "${kv_store_distributeddb_path}", 6953c3577eSopenharmony_ci ] 7053c3577eSopenharmony_ci sources = [ 7153c3577eSopenharmony_ci "${dataobject_path}/frameworks/innerkitsimpl/src/object_radar_reporter.cpp", 7253c3577eSopenharmony_ci "backup/src/backup_manager.cpp", 7353c3577eSopenharmony_ci "bootstrap/src/bootstrap.cpp", 7453c3577eSopenharmony_ci "cloud/cloud_service_impl.cpp", 7553c3577eSopenharmony_ci "cloud/cloud_service_stub.cpp", 7653c3577eSopenharmony_ci "cloud/cloud_types_util.cpp", 7753c3577eSopenharmony_ci "cloud/cloud_value_util.cpp", 7853c3577eSopenharmony_ci "cloud/sync_manager.cpp", 7953c3577eSopenharmony_ci "cloud/sync_strategies/network_sync_strategy.cpp", 8053c3577eSopenharmony_ci "common/common_types_utils.cpp", 8153c3577eSopenharmony_ci "common/value_proxy.cpp", 8253c3577eSopenharmony_ci "common/xcollie.cpp", 8353c3577eSopenharmony_ci "config/src/config_factory.cpp", 8453c3577eSopenharmony_ci "config/src/model/app_id_mapping_config.cpp", 8553c3577eSopenharmony_ci "config/src/model/backup_config.cpp", 8653c3577eSopenharmony_ci "config/src/model/checker_config.cpp", 8753c3577eSopenharmony_ci "config/src/model/cloud_config.cpp", 8853c3577eSopenharmony_ci "config/src/model/component_config.cpp", 8953c3577eSopenharmony_ci "config/src/model/directory_config.cpp", 9053c3577eSopenharmony_ci "config/src/model/global_config.cpp", 9153c3577eSopenharmony_ci "config/src/model/network_config.cpp", 9253c3577eSopenharmony_ci "config/src/model/protocol_config.cpp", 9353c3577eSopenharmony_ci "crypto/src/crypto_manager.cpp", 9453c3577eSopenharmony_ci "dumper/src/dump_helper.cpp", 9553c3577eSopenharmony_ci "kvdb/auth_delegate.cpp", 9653c3577eSopenharmony_ci "kvdb/kvdb_exporter.cpp", 9753c3577eSopenharmony_ci "kvdb/kvdb_general_store.cpp", 9853c3577eSopenharmony_ci "kvdb/kvdb_notifier_proxy.cpp", 9953c3577eSopenharmony_ci "kvdb/kvdb_service_impl.cpp", 10053c3577eSopenharmony_ci "kvdb/kvdb_service_stub.cpp", 10153c3577eSopenharmony_ci "kvdb/kvdb_watcher.cpp", 10253c3577eSopenharmony_ci "kvdb/kvstore_sync_manager.cpp", 10353c3577eSopenharmony_ci "kvdb/query_helper.cpp", 10453c3577eSopenharmony_ci "kvdb/upgrade.cpp", 10553c3577eSopenharmony_ci "kvdb/user_delegate.cpp", 10653c3577eSopenharmony_ci "matrix/src/device_matrix.cpp", 10753c3577eSopenharmony_ci "matrix/src/matrix_event.cpp", 10853c3577eSopenharmony_ci "object/object_asset_loader.cpp", 10953c3577eSopenharmony_ci "object/object_asset_machine.cpp", 11053c3577eSopenharmony_ci "object/object_callback_proxy.cpp", 11153c3577eSopenharmony_ci "object/object_data_listener.cpp", 11253c3577eSopenharmony_ci "object/object_dms_handler.cpp", 11353c3577eSopenharmony_ci "object/object_manager.cpp", 11453c3577eSopenharmony_ci "object/object_service_impl.cpp", 11553c3577eSopenharmony_ci "object/object_service_stub.cpp", 11653c3577eSopenharmony_ci "object/object_snapshot.cpp", 11753c3577eSopenharmony_ci "object/object_types_utils.cpp", 11853c3577eSopenharmony_ci "permission/src/permit_delegate.cpp", 11953c3577eSopenharmony_ci "rdb/cache_cursor.cpp", 12053c3577eSopenharmony_ci "rdb/rdb_asset_loader.cpp", 12153c3577eSopenharmony_ci "rdb/rdb_cloud.cpp", 12253c3577eSopenharmony_ci "rdb/rdb_cloud_data_translate.cpp", 12353c3577eSopenharmony_ci "rdb/rdb_cursor.cpp", 12453c3577eSopenharmony_ci "rdb/rdb_general_store.cpp", 12553c3577eSopenharmony_ci "rdb/rdb_notifier_proxy.cpp", 12653c3577eSopenharmony_ci "rdb/rdb_query.cpp", 12753c3577eSopenharmony_ci "rdb/rdb_result_set_impl.cpp", 12853c3577eSopenharmony_ci "rdb/rdb_result_set_stub.cpp", 12953c3577eSopenharmony_ci "rdb/rdb_service_impl.cpp", 13053c3577eSopenharmony_ci "rdb/rdb_service_stub.cpp", 13153c3577eSopenharmony_ci "rdb/rdb_watcher.cpp", 13253c3577eSopenharmony_ci "waterversion/water_version_manager.cpp", 13353c3577eSopenharmony_ci ] 13453c3577eSopenharmony_ci cflags = [ 13553c3577eSopenharmony_ci "-Wno-multichar", 13653c3577eSopenharmony_ci "-Wno-c99-designator", 13753c3577eSopenharmony_ci "-D_LIBCPP_HAS_COND_CLOCKWAIT", 13853c3577eSopenharmony_ci ] 13953c3577eSopenharmony_ci 14053c3577eSopenharmony_ci cflags_cc = [ "-fvisibility=hidden" ] 14153c3577eSopenharmony_ci 14253c3577eSopenharmony_ci configs = [ ":module_public_config" ] 14353c3577eSopenharmony_ci 14453c3577eSopenharmony_ci deps = [ 14553c3577eSopenharmony_ci "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter:distributeddata_adapter", 14653c3577eSopenharmony_ci "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter/utils:distributeddata_utils_static", 14753c3577eSopenharmony_ci "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework:distributeddatasvcfwk", 14853c3577eSopenharmony_ci ] 14953c3577eSopenharmony_ci 15053c3577eSopenharmony_ci external_deps = [ 15153c3577eSopenharmony_ci "access_token:libaccesstoken_sdk", 15253c3577eSopenharmony_ci "access_token:libtokenid_sdk", 15353c3577eSopenharmony_ci "c_utils:utils", 15453c3577eSopenharmony_ci "device_auth:deviceauth_sdk", 15553c3577eSopenharmony_ci "device_manager:devicemanagersdk", 15653c3577eSopenharmony_ci "dfs_service:cloudsync_asset_kit_inner", 15753c3577eSopenharmony_ci "dfs_service:distributed_file_daemon_kit_inner", 15853c3577eSopenharmony_ci "dmsfwk:distributed_sdk", 15953c3577eSopenharmony_ci "hicollie:libhicollie", 16053c3577eSopenharmony_ci "hilog:libhilog", 16153c3577eSopenharmony_ci "hisysevent:libhisysevent", 16253c3577eSopenharmony_ci "huks:libhukssdk", 16353c3577eSopenharmony_ci "ipc:ipc_core", 16453c3577eSopenharmony_ci "json:nlohmann_json_static", 16553c3577eSopenharmony_ci "kv_store:distributeddata_inner", 16653c3577eSopenharmony_ci "kv_store:distributeddb", 16753c3577eSopenharmony_ci "relational_store:native_rdb", 16853c3577eSopenharmony_ci ] 16953c3577eSopenharmony_ci subsystem_name = "distributeddatamgr" 17053c3577eSopenharmony_ci 17153c3577eSopenharmony_ci part_name = "datamgr_service" 17253c3577eSopenharmony_ci defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ] 17353c3577eSopenharmony_ci} 174