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("//base/hiviewdfx/hiview/hiview.gni")
15import("//build/ohos.gni")
16
17config("hiview_reliability_common_utils_config") {
18  visibility = [ "*:*" ]
19
20  include_dirs = [ "include" ]
21
22  cflags_cc = [ "-D__HIVIEW_OHOS__" ]
23  defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ]
24}
25
26ohos_source_set("hiview_reliability_common_utils") {
27  part_name = "hiview"
28  subsystem_name = "hiviewdfx"
29  public_configs = [ ":hiview_reliability_common_utils_config" ]
30
31  sources = [
32    "calc_fingerprint.cpp",
33    "log_parse.cpp",
34    "tbox.cpp",
35  ]
36
37  external_deps = [
38    "bounds_checking_function:libsec_shared",
39    "hilog:libhilog",
40    "openssl:libcrypto_shared",
41  ]
42
43  deps = [
44    "$hiview_base:logger",
45    "$hiview_base/utility:hiview_utility",
46  ]
47}
48
49ohos_source_set("hiview_reliability_common_utils_with_cfi") {
50  sanitize = {
51    cfi = true
52    cfi_cross_dso = true
53    cfi_vcall_icall_only = true
54    debug = false
55  }
56  part_name = "hiview"
57  subsystem_name = "hiviewdfx"
58  public_configs = [ ":hiview_reliability_common_utils_config" ]
59
60  sources = [
61    "calc_fingerprint.cpp",
62    "log_parse.cpp",
63    "tbox.cpp",
64  ]
65
66  external_deps = [
67    "bounds_checking_function:libsec_shared",
68    "hilog:libhilog",
69    "openssl:libcrypto_shared",
70  ]
71
72  deps = [
73    "$hiview_base:hiviewbase",
74    "$hiview_base/utility:hiview_utility",
75  ]
76}
77
78group("unittest") {
79  testonly = true
80  deps = [ "test:unittest" ]
81}
82