# Copyright (c) 2021-2024 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") ohos_shared_library("huks") { branch_protector_ret = "pac_ret" sanitize = { integer_overflow = true cfi = true debug = false cfi_cross_dso = true boundary_sanitize = true ubsan = true } defines = [ "HUKS_NAPI_ERRORCODE_WITH_MESSAGE", "L2_STANDARD", "_HARDWARE_ROOT_KEY_", "_HUKS_LOG_ENABLE_", ] include_dirs = [ "//base/security/huks/interfaces/inner_api/huks_standard/main/include", "//base/security/huks/frameworks/huks_standard/main/common/include", "include", "include/v8", "include/v9", "include/v12", ] version_script = "libhuksnapi.map" sources = [ "src/huks_napi.cpp", "src/v12/huks_napi_attest_key_item_as_user.cpp", "src/v12/huks_napi_delete_key_item_as_user.cpp", "src/v12/huks_napi_export_key_item_as_user.cpp", "src/v12/huks_napi_generate_key_item_as_user.cpp", "src/v12/huks_napi_get_key_item_properties_as_user.cpp", "src/v12/huks_napi_has_key_item_as_user.cpp", "src/v12/huks_napi_import_key_item_as_user.cpp", "src/v12/huks_napi_import_wrapped_key_item_as_user.cpp", "src/v12/huks_napi_init_session_as_user.cpp", "src/v12/huks_napi_list_aliases.cpp", "src/v8/huks_napi_abort.cpp", "src/v8/huks_napi_common.cpp", "src/v8/huks_napi_delete_key.cpp", "src/v8/huks_napi_export_key.cpp", "src/v8/huks_napi_generate_key.cpp", "src/v8/huks_napi_get_key_properties.cpp", "src/v8/huks_napi_get_sdk_version.cpp", "src/v8/huks_napi_import_key.cpp", "src/v8/huks_napi_init.cpp", "src/v8/huks_napi_is_key_exist.cpp", "src/v8/huks_napi_update_finish.cpp", "src/v9/huks_napi_abort_session.cpp", "src/v9/huks_napi_attest_key_item.cpp", "src/v9/huks_napi_common_item.cpp", "src/v9/huks_napi_delete_key_item.cpp", "src/v9/huks_napi_export_key_item.cpp", "src/v9/huks_napi_generate_key_item.cpp", "src/v9/huks_napi_get_key_item_properties.cpp", "src/v9/huks_napi_has_key_item.cpp", "src/v9/huks_napi_import_key_item.cpp", "src/v9/huks_napi_import_wrapped_key_item.cpp", "src/v9/huks_napi_init_session.cpp", "src/v9/huks_napi_is_key_item_exist.cpp", "src/v9/huks_napi_update_finish_session.cpp", ] deps = [ "//base/security/huks/frameworks/huks_standard/main/common:libhuks_common_standard_static", "//base/security/huks/frameworks/huks_standard/main/os_dependency:libhuks_mem_standard_static", "//base/security/huks/interfaces/inner_api/huks_standard/main:libhukssdk", ] external_deps = [ "c_utils:utils", "hilog:libhilog", "napi:ace_napi", ] cflags_cc = [ "-Wall", "-Werror", ] relative_install_dir = "module/security" subsystem_name = "security" part_name = "huks" }