# Copyright (c) 2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") import("//foundation/distributeddatamgr/data_share/datashare.gni") import("//foundation/distributeddatamgr/kv_store/kv_store.gni") group("build_module") { deps = [] if (!use_platform_win && !use_platforn_mac) { deps += [ ":distributeddata_client_sync", ":distributeddata_inner", ] } } config("distributeddatafwk_config") { visibility = [ ":*" ] cflags = [ "-Wno-multichar", "-Wno-c99-designator", ] cflags_cc = [ "-fvisibility=hidden" ] include_dirs = [ "include", "../../../frameworks/innerkitsimpl/distributeddatamgr/include", "../../../frameworks/innerkitsimpl/distributeddatafwk/include", "../../../frameworks/innerkitsimpl/distributeddatafwk/src", "../../../frameworks/common", "../../../frameworks/innerkitsimpl/kvdb/include", "../../../frameworks/innerkitsimpl/kvdb/src", "${datashare_innerapi_path}/common/include", "${datashare_innerapi_path}/provider/include", ] } config("distributeddatafwk_public_config") { visibility = [ ":*" ] include_dirs = [ "include", "../../../frameworks/innerkitsimpl/distributeddatafwk/include", "../../../frameworks/common", ] } old_source_config = [ "../../../frameworks/innerkitsimpl/distributeddatafwk/src/blob.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/change_notification.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/data_query.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/distributed_kv_data_manager.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/ikvstore_client_death_observer.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/ikvstore_observer.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kv_utils.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvdb_notifier_client.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvdb_notifier_stub.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_client_death_observer.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_datashare_bridge.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_observer_client.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_service_death_notifier.cpp", "../../../frameworks/innerkitsimpl/distributeddatafwk/src/sync_observer.cpp", "include/types.h", ] kvdb_source_config = [ "../../../frameworks/innerkitsimpl/kvdb/src/backup_manager.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/convertor.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/dev_manager.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/device_convertor.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/kv_types_util.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/kvdb_service_client.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/observer_bridge.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/security_manager.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/single_store_impl.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/store_factory.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/store_manager.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/store_result_set.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/store_util.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/system_api.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/task_executor.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/task_executor_adapter.cpp", "../../../frameworks/innerkitsimpl/kvdb/src/kv_hiview_reporter.cpp", ] deps_config = [ "../../../frameworks/libs/distributeddb:distributeddb", "../distributeddatamgr:distributeddata_mgr", "../distributeddata:distributeddata_client_sync", "../../../databaseutils:database_utils", ] external_deps_config = [ "access_token:libaccesstoken_sdk", "access_token:libtokenid_sdk", "c_utils:utils", "device_manager:devicemanagersdk", "hisysevent:libhisysevent", "hitrace:hitrace_meter", "hitrace:libhitracechain", "hilog:libhilog", "huks:libhukssdk", "ipc:ipc_single", "samgr:samgr_proxy", "file_api:securitylabel", ] ohos_shared_library("distributeddata_inner") { branch_protector_ret = "pac_ret" sanitize = { ubsan = true boundary_sanitize = true cfi = true cfi_cross_dso = true debug = false } sources = old_source_config + kvdb_source_config if (qemu_disable) { sources += [ "../../../frameworks/innerkitsimpl/kvdb/src/auto_sync_timer.cpp" ] } else { sources += [ "../../../frameworks/innerkitsimpl/kvdb/src/auto_sync_timer_mock.cpp", ] } configs = [ ":distributeddatafwk_config" ] public_configs = [ ":distributeddatafwk_public_config" ] deps = deps_config external_deps = external_deps_config if (dms_service_enable && qemu_disable) { external_deps += [ "dmsfwk:distributed_sdk" ] } innerapi_tags = [ "platformsdk" ] subsystem_name = "distributeddatamgr" part_name = "kv_store" } ohos_shared_library("distributeddata_client_sync") { branch_protector_ret = "pac_ret" sanitize = { ubsan = true boundary_sanitize = true cfi = true cfi_cross_dso = true debug = false } sources = [ "${kv_store_base_path}/frameworks/innerkitsimpl/kvdb/src/process_communication_impl.cpp", "${kv_store_base_path}/frameworks/innerkitsimpl/kvdb/src/process_system_api_adapter_impl.cpp", ] configs = [ ":distributeddatafwk_config" ] deps = [ "${kv_store_base_path}/frameworks/libs/distributeddb:distributeddb" ] external_deps = [ "c_utils:utils", "file_api:securitylabel", "hilog:libhilog", ] innerapi_tags = [ "platformsdk" ] subsystem_name = "distributeddatamgr" part_name = "kv_store" }