1# Copyright (c) 2023 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")
15
16config("libcertificate_framework_adapter_openssl_config") {
17  include_dirs = [ "inc" ]
18}
19
20ohos_static_library("libcertificate_framework_adapter_openssl") {
21  sanitize = {
22    cfi = true
23    cfi_cross_dso = true
24    boundary_sanitize = true
25    debug = false
26    integer_overflow = true
27    ubsan = true
28  }
29  subsystem_name = "security"
30  part_name = "certificate_framework"
31  public_configs = [ ":libcertificate_framework_adapter_openssl_config" ]
32  configs = [ "../../../config/build:coverage_flag" ]
33  include_dirs = [
34    "../../core/cert/inc",
35    "../../core/extension/inc",
36  ]
37
38  sources = [
39    "src/cf_adapter_ability.c",
40    "src/cf_adapter_cert_openssl.c",
41    "src/cf_adapter_extension_openssl.c",
42  ]
43
44  cflags = [
45    "-DHILOG_ENABLE",
46    "-DOPENSSL_NO_FILENAMES",
47    "-Wall",
48    "-Werror",
49  ]
50
51  deps = [
52    "../../ability:libcertificate_framework_ability",
53    "../../common:libcertificate_framework_common_static",
54  ]
55  external_deps = [
56    "c_utils:utils",
57    "hilog:libhilog",
58    "openssl:libcrypto_shared",
59  ]
60}
61