172 lines
4.8 KiB
Plaintext
172 lines
4.8 KiB
Plaintext
|
# Copyright 2018 The Chromium Authors. All rights reserved.
|
||
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
# found in the LICENSE file.
|
||
|
|
||
|
import("//build/config/sanitizers/sanitizers.gni")
|
||
|
import("//third_party/abseil-cpp/absl.gni")
|
||
|
|
||
|
absl_source_set("stacktrace") {
|
||
|
sources = [
|
||
|
"internal/stacktrace_aarch64-inl.inc",
|
||
|
"internal/stacktrace_arm-inl.inc",
|
||
|
"internal/stacktrace_config.h",
|
||
|
"internal/stacktrace_emscripten-inl.inc",
|
||
|
"internal/stacktrace_generic-inl.inc",
|
||
|
"internal/stacktrace_powerpc-inl.inc",
|
||
|
"internal/stacktrace_riscv-inl.inc",
|
||
|
"internal/stacktrace_unimplemented-inl.inc",
|
||
|
"internal/stacktrace_win32-inl.inc",
|
||
|
"internal/stacktrace_x86-inl.inc",
|
||
|
"stacktrace.cc",
|
||
|
]
|
||
|
public = [ "stacktrace.h" ]
|
||
|
deps = [
|
||
|
":debugging_internal",
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("symbolize") {
|
||
|
sources = [
|
||
|
"symbolize.cc",
|
||
|
"symbolize_darwin.inc",
|
||
|
"symbolize_elf.inc",
|
||
|
"symbolize_emscripten.inc",
|
||
|
"symbolize_unimplemented.inc",
|
||
|
"symbolize_win32.inc",
|
||
|
]
|
||
|
public = [
|
||
|
"internal/symbolize.h",
|
||
|
"symbolize.h",
|
||
|
]
|
||
|
deps = [
|
||
|
":debugging_internal",
|
||
|
":demangle_internal",
|
||
|
"//third_party/abseil-cpp/absl/base",
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:dynamic_annotations",
|
||
|
"//third_party/abseil-cpp/absl/base:malloc_internal",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
"//third_party/abseil-cpp/absl/strings",
|
||
|
]
|
||
|
|
||
|
# TODO(mbonadei): The bazel file has:
|
||
|
# -DEFAULTLIB:dbghelp.lib
|
||
|
# evaluate if this needs to be added here as well.
|
||
|
}
|
||
|
|
||
|
absl_source_set("examine_stack") {
|
||
|
sources = [ "internal/examine_stack.cc" ]
|
||
|
public = [ "internal/examine_stack.h" ]
|
||
|
visibility = [ ":*" ]
|
||
|
deps = [
|
||
|
":stacktrace",
|
||
|
":symbolize",
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("failure_signal_handler") {
|
||
|
sources = [ "failure_signal_handler.cc" ]
|
||
|
public = [ "failure_signal_handler.h" ]
|
||
|
deps = [
|
||
|
":examine_stack",
|
||
|
":stacktrace",
|
||
|
"//third_party/abseil-cpp/absl/base",
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:errno_saver",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("debugging_internal") {
|
||
|
sources = [
|
||
|
"internal/address_is_readable.cc",
|
||
|
"internal/elf_mem_image.cc",
|
||
|
"internal/vdso_support.cc",
|
||
|
]
|
||
|
public = [
|
||
|
"internal/address_is_readable.h",
|
||
|
"internal/elf_mem_image.h",
|
||
|
"internal/vdso_support.h",
|
||
|
]
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:dynamic_annotations",
|
||
|
"//third_party/abseil-cpp/absl/base:errno_saver",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("demangle_internal") {
|
||
|
sources = [ "internal/demangle.cc" ]
|
||
|
public = [ "internal/demangle.h" ]
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base",
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("leak_check") {
|
||
|
if (is_ios || is_win) {
|
||
|
sources = []
|
||
|
public = []
|
||
|
} else {
|
||
|
sources = [ "leak_check.cc" ]
|
||
|
public = [ "leak_check.h" ]
|
||
|
}
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
absl_source_set("leak_check_disable") {
|
||
|
sources = [ "leak_check_disable.cc" ]
|
||
|
deps = [ "//third_party/abseil-cpp/absl/base:config" ]
|
||
|
}
|
||
|
|
||
|
if (is_lsan) {
|
||
|
absl_source_set("leak_check_api_enabled_for_testing") {
|
||
|
testonly = true
|
||
|
sources = [ "leak_check.cc" ]
|
||
|
public = [ "leak_check.h" ]
|
||
|
visibility = [ ":*" ]
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
]
|
||
|
}
|
||
|
} else {
|
||
|
absl_source_set("leak_check_api_disabled_for_testing") {
|
||
|
testonly = true
|
||
|
sources = [ "leak_check.cc" ]
|
||
|
public = [ "leak_check.h" ]
|
||
|
visibility = [ ":*" ]
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
|
||
|
absl_source_set("stack_consumption") {
|
||
|
testonly = true
|
||
|
sources = [ "internal/stack_consumption.cc" ]
|
||
|
public = [ "internal/stack_consumption.h" ]
|
||
|
deps = [
|
||
|
"//third_party/abseil-cpp/absl/base:config",
|
||
|
"//third_party/abseil-cpp/absl/base:core_headers",
|
||
|
"//third_party/abseil-cpp/absl/base:raw_logging_internal",
|
||
|
]
|
||
|
visibility = [ ":*" ]
|
||
|
}
|