# Copyright (C) 2022-2023 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("//base/security/crypto_framework/common/common.gni") import("//base/security/crypto_framework/plugin/plugin.gni") import("//build/ohos.gni") config("plugin_config") { include_dirs = [ "../interfaces/inner_api/algorithm_parameter", "../interfaces/inner_api/common", "../interfaces/inner_api/crypto_operation", "../interfaces/inner_api/key", "../frameworks/spi", ] } if (os_level == "standard") { ohos_shared_library("crypto_openssl_plugin_lib") { branch_protector_ret = "pac_ret" subsystem_name = "security" innerapi_tags = [ "platformsdk_indirect" ] part_name = "crypto_framework" public_configs = [ ":plugin_config" ] include_dirs = plugin_inc_path + crypto_framwork_common_inc_path sources = plugin_files if (os_level == "standard") { sanitize = { cfi = true cfi_cross_dso = true debug = false } } cflags = [ "-DHILOG_ENABLE", "-fPIC", "-Wall", ] version_script = "openssl_plugin.map" deps = [ "../common:crypto_plugin_common" ] external_deps = [ "c_utils:utils", "hilog:libhilog", "openssl:libcrypto_shared", ] defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ] } } else if (os_level == "mini") { ohos_static_library("crypto_mbedtls_plugin_lib") { subsystem_name = "security" part_name = "crypto_framework" public_configs = [ ":plugin_config" ] include_dirs = crypto_framwork_common_inc_path + mbedtls_plugin_inc_path sources = mbedtls_plugin_files defines = [ "MINI_HILOG_ENABLE" ] deps = [ "../common:crypto_common_lite" ] configs = [ "${product_path}:product_public_configs" ] external_deps = [ "hilog_lite:hilog_lite" ] } }