1# Copyright (c) 2022 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13import("//build/ohos.gni")
14import("//foundation/distributeddatamgr/relational_store/relational_store.gni")
15
16ohos_copy("relational_store_declaration") {
17  sources = [ "./api" ]
18  outputs = [ target_out_dir + "/$target_name/" ]
19  module_source_dir = target_out_dir + "/$target_name"
20  module_install_name = ""
21  subsystem_name = "distributeddatamgr"
22  part_name = "relational_store"
23}
24
25ohos_shared_library("sendablerelationalstore") {
26  include_dirs = [
27    "${relational_store_common_path}/include",
28    "${relational_store_js_common_path}/include",
29    "${relational_store_napi_path}/relationalstore/include",
30    "include",
31  ]
32
33  sources = [
34    "${relational_store_js_common_path}/src/js_ability.cpp",
35    "${relational_store_js_common_path}/src/js_sendable_utils.cpp",
36    "${relational_store_js_common_path}/src/js_utils.cpp",
37    "${relational_store_napi_path}/relationalstore/src/napi_rdb_error.cpp",
38    "${relational_store_napi_path}/relationalstore/src/napi_rdb_js_utils.cpp",
39    "${relational_store_napi_path}/relationalstore/src/napi_rdb_sendable_utils.cpp",
40    "src/entry_point.cpp",
41    "src/napi_rdb_store_convert_utils.cpp",
42  ]
43
44  defines = [ "SQLITE_DISTRIBUTE_RELATIONAL" ]
45
46  deps = [ "${relational_store_innerapi_path}/rdb:native_rdb" ]
47
48  external_deps = [
49    "ability_runtime:abilitykit_native",
50    "ability_runtime:napi_base_context",
51    "bounds_checking_function:libsec_shared",
52    "hilog:libhilog",
53    "hitrace:hitrace_meter",
54    "napi:ace_napi",
55  ]
56
57  subsystem_name = "distributeddatamgr"
58  part_name = "relational_store"
59  relative_install_dir = "module/data"
60}
61