106694b06Sopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd. 206694b06Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 306694b06Sopenharmony_ci# you may not use this file except in compliance with the License. 406694b06Sopenharmony_ci# You may obtain a copy of the License at 506694b06Sopenharmony_ci# 606694b06Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 706694b06Sopenharmony_ci# 806694b06Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 906694b06Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 1006694b06Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1106694b06Sopenharmony_ci# See the License for the specific language governing permissions and 1206694b06Sopenharmony_ci# limitations under the License. 1306694b06Sopenharmony_ciimport("//build/ohos.gni") 1406694b06Sopenharmony_ciimport("//foundation/distributeddatamgr/relational_store/relational_store.gni") 1506694b06Sopenharmony_ci 1606694b06Sopenharmony_ciconfig("native_dataability_config") { 1706694b06Sopenharmony_ci visibility = [ ":*" ] 1806694b06Sopenharmony_ci 1906694b06Sopenharmony_ci cflags = [ "-Wc99-designator" ] 2006694b06Sopenharmony_ci cflags_cc = [ "-Wc99-designator" ] 2106694b06Sopenharmony_ci if (!is_mingw && !is_mac) { 2206694b06Sopenharmony_ci cflags_cc += [ "-fvisibility=hidden" ] 2306694b06Sopenharmony_ci } 2406694b06Sopenharmony_ci 2506694b06Sopenharmony_ci include_dirs = [ 2606694b06Sopenharmony_ci "include", 2706694b06Sopenharmony_ci "${relational_store_common_path}/include", 2806694b06Sopenharmony_ci "${relational_store_native_path}/dataability/include", 2906694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src", 3006694b06Sopenharmony_ci ] 3106694b06Sopenharmony_ci} 3206694b06Sopenharmony_ci 3306694b06Sopenharmony_ciconfig("native_dataability_public_config") { 3406694b06Sopenharmony_ci visibility = [ ":*" ] 3506694b06Sopenharmony_ci include_dirs = [ "include" ] 3606694b06Sopenharmony_ci} 3706694b06Sopenharmony_ci 3806694b06Sopenharmony_ciohos_shared_library("native_dataability") { 3906694b06Sopenharmony_ci branch_protector_ret = "pac_ret" 4006694b06Sopenharmony_ci sanitize = { 4106694b06Sopenharmony_ci boundary_sanitize = true 4206694b06Sopenharmony_ci ubsan = true 4306694b06Sopenharmony_ci cfi = true 4406694b06Sopenharmony_ci cfi_cross_dso = true 4506694b06Sopenharmony_ci debug = false 4606694b06Sopenharmony_ci } 4706694b06Sopenharmony_ci 4806694b06Sopenharmony_ci part_name = "relational_store" 4906694b06Sopenharmony_ci sources = [ 5006694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/data_ability_predicates.cpp", 5106694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/ishared_result_set.cpp", 5206694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/ishared_result_set_proxy.cpp", 5306694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/ishared_result_set_stub.cpp", 5406694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/logger.h", 5506694b06Sopenharmony_ci "${relational_store_native_path}/dataability/src/predicates_utils.cpp", 5606694b06Sopenharmony_ci ] 5706694b06Sopenharmony_ci 5806694b06Sopenharmony_ci configs = [ ":native_dataability_config" ] 5906694b06Sopenharmony_ci 6006694b06Sopenharmony_ci if (!(host_os == "linux" && host_cpu == "arm64")) { 6106694b06Sopenharmony_ci deps = [ "${relational_store_innerapi_path}/rdb:native_rdb" ] 6206694b06Sopenharmony_ci } 6306694b06Sopenharmony_ci 6406694b06Sopenharmony_ci external_deps = [ 6506694b06Sopenharmony_ci "c_utils:utils", 6606694b06Sopenharmony_ci "hilog:libhilog", 6706694b06Sopenharmony_ci "ipc:ipc_single", 6806694b06Sopenharmony_ci ] 6906694b06Sopenharmony_ci 7006694b06Sopenharmony_ci public_configs = [ ":native_dataability_public_config" ] 7106694b06Sopenharmony_ci 7206694b06Sopenharmony_ci innerapi_tags = [ "platformsdk" ] 7306694b06Sopenharmony_ci subsystem_name = "distributeddatamgr" 7406694b06Sopenharmony_ci} 75