146debc2cSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
246debc2cSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
346debc2cSopenharmony_ci# you may not use this file except in compliance with the License.
446debc2cSopenharmony_ci# You may obtain a copy of the License at
546debc2cSopenharmony_ci#
646debc2cSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
746debc2cSopenharmony_ci#
846debc2cSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
946debc2cSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1046debc2cSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1146debc2cSopenharmony_ci# See the License for the specific language governing permissions and
1246debc2cSopenharmony_ci# limitations under the License.
1346debc2cSopenharmony_ciimport("//base/print/print_fwk/print.gni")
1446debc2cSopenharmony_ciimport("//build/ohos.gni")
1546debc2cSopenharmony_ci
1646debc2cSopenharmony_cicflags_cc = []
1746debc2cSopenharmony_ci
1846debc2cSopenharmony_ciconfig("scan_interfaces_kits_napi_config") {
1946debc2cSopenharmony_ci  visibility = [ ":*" ]
2046debc2cSopenharmony_ci  include_dirs = [ "include" ]
2146debc2cSopenharmony_ci
2246debc2cSopenharmony_ci  cflags_cc += [ "-fno-exceptions" ]
2346debc2cSopenharmony_ci}
2446debc2cSopenharmony_ci
2546debc2cSopenharmony_ciohos_shared_library("scan_client") {
2646debc2cSopenharmony_ci  include_dirs = [
2746debc2cSopenharmony_ci    "${print_utils_path}/include",
2846debc2cSopenharmony_ci    "${print_path}/frameworks/helper/scan_helper/include",
2946debc2cSopenharmony_ci  ]
3046debc2cSopenharmony_ci
3146debc2cSopenharmony_ci  public_configs = [ ":scan_interfaces_kits_napi_config" ]
3246debc2cSopenharmony_ci
3346debc2cSopenharmony_ci  branch_protector_ret = "pac_ret"
3446debc2cSopenharmony_ci  sanitize = {
3546debc2cSopenharmony_ci    cfi = true
3646debc2cSopenharmony_ci    cfi_cross_dso = true
3746debc2cSopenharmony_ci    boundary_sanitize = true
3846debc2cSopenharmony_ci    debug = false
3946debc2cSopenharmony_ci    integer_overflow = true
4046debc2cSopenharmony_ci    ubsan = true
4146debc2cSopenharmony_ci  }
4246debc2cSopenharmony_ci
4346debc2cSopenharmony_ci  sources = [
4446debc2cSopenharmony_ci    "src/scan_callback.cpp",
4546debc2cSopenharmony_ci    "src/scan_callback_stub.cpp",
4646debc2cSopenharmony_ci    "src/scan_manager_client.cpp",
4746debc2cSopenharmony_ci    "src/scan_sa_death_recipient.cpp",
4846debc2cSopenharmony_ci    "src/scan_service_proxy.cpp",
4946debc2cSopenharmony_ci    "src/scan_sync_load_callback.cpp",
5046debc2cSopenharmony_ci  ]
5146debc2cSopenharmony_ci
5246debc2cSopenharmony_ci  deps = [ "${print_path}/frameworks/helper/scan_helper:scan_helper" ]
5346debc2cSopenharmony_ci
5446debc2cSopenharmony_ci  external_deps = [
5546debc2cSopenharmony_ci    "ability_base:want",
5646debc2cSopenharmony_ci    "ability_base:zuri",
5746debc2cSopenharmony_ci    "ability_runtime:ability_manager",
5846debc2cSopenharmony_ci    "ability_runtime:abilitykit_native",
5946debc2cSopenharmony_ci    "ability_runtime:data_ability_helper",
6046debc2cSopenharmony_ci    "ability_runtime:napi_base_context",
6146debc2cSopenharmony_ci    "c_utils:utils",
6246debc2cSopenharmony_ci    "common_event_service:cesfwk_innerkits",
6346debc2cSopenharmony_ci    "eventhandler:libeventhandler",
6446debc2cSopenharmony_ci    "hilog:libhilog",
6546debc2cSopenharmony_ci    "ipc:ipc_core",
6646debc2cSopenharmony_ci    "napi:ace_napi",
6746debc2cSopenharmony_ci    "samgr:samgr_proxy",
6846debc2cSopenharmony_ci  ]
6946debc2cSopenharmony_ci
7046debc2cSopenharmony_ci  if (build_variant == "user") {
7146debc2cSopenharmony_ci    cflags_cc += [ "-DIS_RELEASE_VERSION" ]
7246debc2cSopenharmony_ci  }
7346debc2cSopenharmony_ci
7446debc2cSopenharmony_ci  #relative_install_dir = "module"
7546debc2cSopenharmony_ci  install_enable = true
7646debc2cSopenharmony_ci  subsystem_name = "print"
7746debc2cSopenharmony_ci  innerapi_tags = [ "platformsdk" ]
7846debc2cSopenharmony_ci  part_name = "print_fwk"
7946debc2cSopenharmony_ci}
80