153c3577eSopenharmony_ci# Copyright (c) 2021 Huawei Device Co., Ltd.
253c3577eSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
353c3577eSopenharmony_ci# you may not use this file except in compliance with the License.
453c3577eSopenharmony_ci# You may obtain a copy of the License at
553c3577eSopenharmony_ci#
653c3577eSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
753c3577eSopenharmony_ci#
853c3577eSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
953c3577eSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1053c3577eSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1153c3577eSopenharmony_ci# See the License for the specific language governing permissions and
1253c3577eSopenharmony_ci# limitations under the License.
1353c3577eSopenharmony_ciimport("//build/ohos.gni")
1453c3577eSopenharmony_ciimport("//foundation/distributeddatamgr/datamgr_service/datamgr_service.gni")
1553c3577eSopenharmony_ci
1653c3577eSopenharmony_ciohos_static_library("distributeddata_account_static") {
1753c3577eSopenharmony_ci  branch_protector_ret = "pac_ret"
1853c3577eSopenharmony_ci  sanitize = {
1953c3577eSopenharmony_ci    cfi = true
2053c3577eSopenharmony_ci    cfi_cross_dso = true
2153c3577eSopenharmony_ci    debug = false
2253c3577eSopenharmony_ci    boundary_sanitize = true
2353c3577eSopenharmony_ci    ubsan = true
2453c3577eSopenharmony_ci  }
2553c3577eSopenharmony_ci  sources = [ "src/account_delegate_impl.cpp" ]
2653c3577eSopenharmony_ci
2753c3577eSopenharmony_ci  include_dirs = [
2853c3577eSopenharmony_ci    "../../framework/include/account",
2953c3577eSopenharmony_ci    "../include/autils",
3053c3577eSopenharmony_ci    "../include/log",
3153c3577eSopenharmony_ci    "../include/permission",
3253c3577eSopenharmony_ci    "../include/utils",
3353c3577eSopenharmony_ci    "./src",
3453c3577eSopenharmony_ci    "${kv_store_common_path}",
3553c3577eSopenharmony_ci    "${kv_store_path}/interfaces/innerkits/distributeddata/include",
3653c3577eSopenharmony_ci    "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework/include",
3753c3577eSopenharmony_ci  ]
3853c3577eSopenharmony_ci
3953c3577eSopenharmony_ci  cflags_cc = [ "-fvisibility=hidden" ]
4053c3577eSopenharmony_ci
4153c3577eSopenharmony_ci  remove_configs = [ "//build/config/compiler:no_exceptions" ]
4253c3577eSopenharmony_ci
4353c3577eSopenharmony_ci  configs = [ "//build/config/compiler:exceptions" ]
4453c3577eSopenharmony_ci
4553c3577eSopenharmony_ci  external_deps = [
4653c3577eSopenharmony_ci    "ability_base:want",
4753c3577eSopenharmony_ci    "c_utils:utils",
4853c3577eSopenharmony_ci    "common_event_service:cesfwk_innerkits",
4953c3577eSopenharmony_ci    "hilog:libhilog",
5053c3577eSopenharmony_ci  ]
5153c3577eSopenharmony_ci
5253c3577eSopenharmony_ci  if (os_account_part_is_enabled) {
5353c3577eSopenharmony_ci    sources += [ "src/account_delegate_normal_impl.cpp" ]
5453c3577eSopenharmony_ci    cflags_cc += [ "-DOS_ACCOUNT_PART_IS_ENABLED" ]
5553c3577eSopenharmony_ci    external_deps += [
5653c3577eSopenharmony_ci      "access_token:libaccesstoken_sdk",
5753c3577eSopenharmony_ci      "os_account:libaccountkits",
5853c3577eSopenharmony_ci      "os_account:os_account_innerkits",
5953c3577eSopenharmony_ci    ]
6053c3577eSopenharmony_ci  } else {
6153c3577eSopenharmony_ci    sources += [ "src/account_delegate_default_impl.cpp" ]
6253c3577eSopenharmony_ci  }
6353c3577eSopenharmony_ci  subsystem_name = "distributeddatamgr"
6453c3577eSopenharmony_ci  part_name = "datamgr_service"
6553c3577eSopenharmony_ci  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
6653c3577eSopenharmony_ci}
67