1# Copyright (c) 2021 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.
13import("//base/hiviewdfx/hiview/hiview.gni")
14import("//build/ohos.gni")
15
16config("log_catcher_config") {
17  visibility = [ "*:*" ]
18  include_dirs = [
19    "include",
20    "$hiview_adapter/plugins/eventlogger/log_catcher/include",
21    "$hiview_plugin/freeze_detector",
22  ]
23
24  cflags_cc = [ "-DDUMP_STACK_IN_PROCESS" ]
25}
26
27ohos_source_set("log_catcher") {
28  part_name = "hiview"
29  public_configs = [ ":log_catcher_config" ]
30
31  sources = [
32    "binder_catcher.cpp",
33    "dmesg_catcher.cpp",
34    "event_log_catcher.cpp",
35    "event_log_task.cpp",
36    "memory_catcher.cpp",
37    "open_stacktrace_catcher.cpp",
38    "peer_binder_catcher.cpp",
39    "shell_catcher.cpp",
40  ]
41
42  deps = [
43    "$hiview_adapter/plugins/eventlogger/log_catcher:eventlogger_adapter_logcatcher",
44    "$hiview_base:hiviewbase",
45    "$hiview_interfaces/inner_api/unified_collection/utility:libucollection_utility",
46  ]
47
48  external_deps = [
49    "ability_base:want",
50    "ffrt:libffrt",
51    "hilog:libhilog",
52    "thermal_manager:thermalsrv_client",
53  ]
54
55  if (has_hiperf) {
56    cflags = [ "-DHAS_HIPERF" ]
57  }
58}
59