# 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_overrides/build.gni") import("//build/config/sanitizers/sanitizers.gni") if (build_with_chromium) { visibility = [ "//third_party/webrtc/*", "//third_party/abseil-cpp/*", "//third_party/googletest:gtest", ] } else { visibility = [ "*" ] } source_set("stacktrace") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "stacktrace.cc", ] public = [ "stacktrace.h", ] deps = [ ":debugging_internal", "../base", "../base:core_headers", ] } source_set("symbolize") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "symbolize.cc", "symbolize_elf.inc", "symbolize_unimplemented.inc", "symbolize_win32.inc", ] public = [ "internal/symbolize.h", "symbolize.h", ] deps = [ ":debugging_internal", ":demangle_internal", "../base", "../base:core_headers", "../base:malloc_internal", ] } source_set("examine_stack") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "internal/examine_stack.cc", ] public = [ "internal/examine_stack.h", ] visibility = [] visibility += [ ":*" ] deps = [ ":stacktrace", ":symbolize", "../base", "../base:core_headers", ] } source_set("failure_signal_handler") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "failure_signal_handler.cc" ] public = [ "failure_signal_handler.h" ] deps = [ ":examine_stack", ":stacktrace", "../base", "../base:config", "../base:core_headers", ] } source_set("debugging_internal") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] 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/stacktrace_config.h", "internal/vdso_support.h", ] deps = [ "../base", "../base:dynamic_annotations", ] } source_set("demangle_internal") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "internal/demangle.cc", ] public = [ "internal/demangle.h", ] deps = [ "../base", "../base:core_headers", ] } source_set("leak_check") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] if (is_ios || is_win) { sources = [] public = [] } else { sources = [ "leak_check.cc", ] public = [ "leak_check.h", ] } deps = [ "../base:core_headers", ] } source_set("leak_check_disable") { configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "leak_check_disable.cc", ] } if (is_lsan) { source_set("leak_check_api_enabled_for_testing") { testonly = true configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "leak_check.cc", ] public = [ "leak_check.h", ] visibility = [] visibility += [ ":*" ] } } else { source_set("leak_check_api_disabled_for_testing") { testonly = true configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "leak_check.cc", ] public = [ "leak_check.h", ] visibility = [] visibility += [ ":*" ] } } source_set("stack_consumption") { testonly = true configs -= [ "//build/config/compiler:chromium_code" ] configs += [ "//build/config/compiler:no_chromium_code", "//third_party/abseil-cpp:absl_default_cflags_cc", ] public_configs = [ "//third_party/abseil-cpp:absl_include_config" ] sources = [ "internal/stack_consumption.cc", ] public = [ "internal/stack_consumption.h", ] deps = [ "../base", "../base:core_headers", ] visibility = [] visibility += [ ":*" ] }