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. 13 14import("//build/ohos.gni") 15import("//build/ohos_var.gni") 16 17config("nfc_inner_kits_config") { 18 visibility = [ ":*" ] 19 defines = [ "DEBUG" ] 20 cflags_cc = [ "-fexceptions" ] 21 22 include_dirs = [] 23} 24 25config("nfc_inner_kits_public_config") { 26 visibility = [ ":*" ] 27 28 include_dirs = [ 29 "include", 30 "include/controller", 31 "include/tags", 32 "include/cardEmulation", 33 ] 34} 35 36ohos_shared_library("nfc_inner_kits") { 37 sanitize = { 38 cfi = true 39 boundary_sanitize = true 40 integer_overflow = true 41 cfi_cross_dso = true 42 debug = false 43 } 44 stack_protector_ret = true 45 sources = [ 46 "src/cardEmulation/cardEmulation.cpp", 47 "src/controller/nfc_controller.cpp", 48 "src/controller/nfc_controller_callback_stub.cpp", 49 "src/controller/nfc_controller_proxy.cpp", 50 "src/nfc_basic_proxy.cpp", 51 "src/nfc_sdk_common.cpp", 52 "src/tags/basic_tag_session.cpp", 53 "src/tags/foreground_callback_stub.cpp", 54 "src/tags/iso15693_tag.cpp", 55 "src/tags/isodep_tag.cpp", 56 "src/tags/mifare_classic_tag.cpp", 57 "src/tags/mifare_ultralight_tag.cpp", 58 "src/tags/ndef_formatable_tag.cpp", 59 "src/tags/ndef_message.cpp", 60 "src/tags/ndef_tag.cpp", 61 "src/tags/nfca_tag.cpp", 62 "src/tags/nfcb_tag.cpp", 63 "src/tags/nfcf_tag.cpp", 64 "src/tags/tag_foreground.cpp", 65 "src/tags/tag_session_proxy.cpp", 66 "src/tags/taginfo.cpp", 67 "src/tags/taginfo_parcelable.cpp", 68 ] 69 70 configs = [ ":nfc_inner_kits_config" ] 71 72 public_configs = [ ":nfc_inner_kits_public_config" ] 73 74 deps = [] 75 76 external_deps = [ 77 "ability_base:want", 78 "c_utils:utils", 79 "hilog:libhilog", 80 "ipc:ipc_core", 81 "samgr:samgr_proxy", 82 ] 83 84 part_name = "nfc" 85 subsystem_name = "communication" 86} 87