115053c2dSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd. 215053c2dSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 315053c2dSopenharmony_ci# you may not use this file except in compliance with the License. 415053c2dSopenharmony_ci# You may obtain a copy of the License at 515053c2dSopenharmony_ci# 615053c2dSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 715053c2dSopenharmony_ci# 815053c2dSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 915053c2dSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1015053c2dSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1115053c2dSopenharmony_ci# See the License for the specific language governing permissions and 1215053c2dSopenharmony_ci# limitations under the License. 1315053c2dSopenharmony_ci 1415053c2dSopenharmony_ciimport("//build/ohos.gni") 1515053c2dSopenharmony_ciimport("//build/ohos/ace/ace.gni") 1615053c2dSopenharmony_ciimport("//foundation/distributeddatamgr/kv_store/kv_store.gni") 1715053c2dSopenharmony_ci 1815053c2dSopenharmony_cibase_output_path = get_label_info(":distributed_kvstore_js", "target_out_dir") 1915053c2dSopenharmony_cidistributed_data_js_obj_path = base_output_path + "/distributed_kvstore.o" 2015053c2dSopenharmony_cigen_js_obj("distributed_kvstore_js") { 2115053c2dSopenharmony_ci input = "distributed_kvstore.js" 2215053c2dSopenharmony_ci output = distributed_data_js_obj_path 2315053c2dSopenharmony_ci} 2415053c2dSopenharmony_ci 2515053c2dSopenharmony_cigroup("build_module") { 2615053c2dSopenharmony_ci deps = [] 2715053c2dSopenharmony_ci if (is_standard_system) { 2815053c2dSopenharmony_ci deps += [ ":distributedkvstore" ] 2915053c2dSopenharmony_ci } 3015053c2dSopenharmony_ci} 3115053c2dSopenharmony_ci 3215053c2dSopenharmony_ciohos_copy("distributeddatamgr_declaration") { 3315053c2dSopenharmony_ci sources = [ "./api" ] 3415053c2dSopenharmony_ci outputs = [ target_out_dir + "/$target_name/" ] 3515053c2dSopenharmony_ci module_source_dir = target_out_dir + "/$target_name" 3615053c2dSopenharmony_ci module_install_name = "" 3715053c2dSopenharmony_ci} 3815053c2dSopenharmony_ci 3915053c2dSopenharmony_ciohos_shared_library("distributedkvstore") { 4015053c2dSopenharmony_ci branch_protector_ret = "pac_ret" 4115053c2dSopenharmony_ci sanitize = { 4215053c2dSopenharmony_ci ubsan = true 4315053c2dSopenharmony_ci boundary_sanitize = true 4415053c2dSopenharmony_ci cfi = true 4515053c2dSopenharmony_ci cfi_cross_dso = true 4615053c2dSopenharmony_ci debug = false 4715053c2dSopenharmony_ci } 4815053c2dSopenharmony_ci include_dirs = [ 4915053c2dSopenharmony_ci "//foundation/distributeddatamgr/kv_store/frameworks/common", 5015053c2dSopenharmony_ci "//foundation/distributeddatamgr/kv_store/frameworks/jskitsimpl/distributedkvstore/include", 5115053c2dSopenharmony_ci "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/distributeddatafwk/include", 5215053c2dSopenharmony_ci "//foundation/distributeddatamgr/kv_store/frameworks/innerkitsimpl/kvdb/include", 5315053c2dSopenharmony_ci ] 5415053c2dSopenharmony_ci 5515053c2dSopenharmony_ci sources = [ 5615053c2dSopenharmony_ci "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kv_utils.cpp", 5715053c2dSopenharmony_ci "../../../frameworks/innerkitsimpl/distributeddatafwk/src/kvstore_datashare_bridge.cpp", 5815053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/entry_point.cpp", 5915053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_const_properties.cpp", 6015053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_device_kv_store.cpp", 6115053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_error_utils.cpp", 6215053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_field_node.cpp", 6315053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_kv_manager.cpp", 6415053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_kv_store_resultset.cpp", 6515053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_observer.cpp", 6615053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_query.cpp", 6715053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_schema.cpp", 6815053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_single_kv_store.cpp", 6915053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/js_util.cpp", 7015053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/napi_queue.cpp", 7115053c2dSopenharmony_ci "../../../frameworks/jskitsimpl/distributedkvstore/src/uv_queue.cpp", 7215053c2dSopenharmony_ci ] 7315053c2dSopenharmony_ci 7415053c2dSopenharmony_ci deps = [ "${kv_store_base_path}/interfaces/innerkits/distributeddata:distributeddata_inner" ] 7515053c2dSopenharmony_ci 7615053c2dSopenharmony_ci external_deps = [ 7715053c2dSopenharmony_ci "ability_base:want", 7815053c2dSopenharmony_ci "ability_runtime:ability_manager", 7915053c2dSopenharmony_ci "ability_runtime:abilitykit_native", 8015053c2dSopenharmony_ci "ability_runtime:napi_base_context", 8115053c2dSopenharmony_ci "c_utils:utils", 8215053c2dSopenharmony_ci "common_event_service:cesfwk_innerkits", 8315053c2dSopenharmony_ci "hilog:libhilog", 8415053c2dSopenharmony_ci "ipc:ipc_single", 8515053c2dSopenharmony_ci "napi:ace_napi", 8615053c2dSopenharmony_ci ] 8715053c2dSopenharmony_ci 8815053c2dSopenharmony_ci public_external_deps = [ 8915053c2dSopenharmony_ci "data_share:datashare_common", 9015053c2dSopenharmony_ci "data_share:datashare_provider", 9115053c2dSopenharmony_ci ] 9215053c2dSopenharmony_ci 9315053c2dSopenharmony_ci subsystem_name = "distributeddatamgr" 9415053c2dSopenharmony_ci relative_install_dir = "module/data" 9515053c2dSopenharmony_ci part_name = "kv_store" 9615053c2dSopenharmony_ci} 97