106694b06Sopenharmony_ci# Copyright (c) 2023 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_ci
1406694b06Sopenharmony_ciimport("//build/ohos.gni")
1506694b06Sopenharmony_ciimport("//foundation/distributeddatamgr/relational_store/relational_store.gni")
1606694b06Sopenharmony_ci
1706694b06Sopenharmony_ciohos_shared_library("native_rdb_ndk") {
1806694b06Sopenharmony_ci  branch_protector_ret = "pac_ret"
1906694b06Sopenharmony_ci  sanitize = {
2006694b06Sopenharmony_ci    boundary_sanitize = true
2106694b06Sopenharmony_ci    ubsan = true
2206694b06Sopenharmony_ci    cfi = true
2306694b06Sopenharmony_ci    cfi_cross_dso = true
2406694b06Sopenharmony_ci    debug = false
2506694b06Sopenharmony_ci  }
2606694b06Sopenharmony_ci
2706694b06Sopenharmony_ci  include_dirs = [
2806694b06Sopenharmony_ci    "../include",
2906694b06Sopenharmony_ci    "${kvstore_path}/common",
3006694b06Sopenharmony_ci    "${relational_store_common_path}/include",
3106694b06Sopenharmony_ci    "${relational_store_native_path}/rdb/include",
3206694b06Sopenharmony_ci  ]
3306694b06Sopenharmony_ci  sources = [
3406694b06Sopenharmony_ci    "convertor_error_code.cpp",
3506694b06Sopenharmony_ci    "modify_time_cursor.cpp",
3606694b06Sopenharmony_ci    "relational_asset.cpp",
3706694b06Sopenharmony_ci    "relational_cursor.cpp",
3806694b06Sopenharmony_ci    "relational_predicates.cpp",
3906694b06Sopenharmony_ci    "relational_predicates_objects.cpp",
4006694b06Sopenharmony_ci    "relational_store.cpp",
4106694b06Sopenharmony_ci    "relational_values_bucket.cpp",
4206694b06Sopenharmony_ci  ]
4306694b06Sopenharmony_ci
4406694b06Sopenharmony_ci  defines = [ "API_EXPORT=__attribute__((visibility (\"default\")))" ]
4506694b06Sopenharmony_ci
4606694b06Sopenharmony_ci  deps = [ "${relational_store_innerapi_path}/rdb:native_rdb" ]
4706694b06Sopenharmony_ci
4806694b06Sopenharmony_ci  external_deps = [
4906694b06Sopenharmony_ci    "c_utils:utils",
5006694b06Sopenharmony_ci    "hilog:libhilog",
5106694b06Sopenharmony_ci  ]
5206694b06Sopenharmony_ci
5306694b06Sopenharmony_ci  relative_install_dir = "ndk"
5406694b06Sopenharmony_ci  part_name = "relational_store"
5506694b06Sopenharmony_ci  subsystem_name = "distributeddatamgr"
5606694b06Sopenharmony_ci}
57