1# Copyright (c) 2021-2024 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/hitrace/hitrace.gni")
15import("//build/ohos.gni")
16
17ohos_source_set("hitracechain_source") {
18  branch_protector_ret = "pac_ret"
19  include_dirs = [
20    "$hitrace_interfaces_path/native/innerkits/include",
21    "$hitrace_interfaces_path/native/innerkits/include/hitrace_meter",
22    "$hitrace_frameworks_path/include",
23  ]
24
25  sources = [
26    "$hitrace_interfaces_path/native/innerkits/src/hitrace_meter.cpp",
27    "$hitrace_interfaces_path/native/innerkits/src/hitrace_meter_c.c",
28    "$hitrace_interfaces_path/native/innerkits/src/hitrace_meter_wrapper.cpp",
29    "hitracechain.cpp",
30    "hitracechainc.c",
31    "hitraceid.cpp",
32  ]
33
34  external_deps = [
35    "bounds_checking_function:libsec_shared",
36    "init:libbegetutil",
37  ]
38
39  if (defined(ohos_lite)) {
40    external_deps += [ "hilog_lite:hilog_lite" ]
41  } else {
42    external_deps += [ "hilog:libhilog" ]
43  }
44
45  part_name = "hitrace"
46  subsystem_name = "hiviewdfx"
47}
48