GN: Add support for prebuilt instrumented libraries.

TBR=glider@chromium.org

Review URL: https://codereview.chromium.org/1150193002

Cr-Original-Commit-Position: refs/heads/master@{#332148}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 74f1d187956e64c25724b116ed06ca7d00b89917
This commit is contained in:
sammc 2015-05-31 18:09:36 -07:00 коммит произвёл Commit bot
Родитель 5179373ac6
Коммит 2555782682
3 изменённых файлов: 13 добавлений и 8 удалений

Просмотреть файл

@ -57,11 +57,6 @@ declare_args() {
# The patch is preapplied to the internal toolchain and hence all bots.
msvs_xtree_patched = false
}
# Track where uninitialized memory originates from. From fastest to slowest:
# 0 - no tracking, 1 - track only the initial allocation site, 2 - track the
# chain of stores leading from allocation site to use site.
msan_track_origins = 2
}
# default_include_dirs ---------------------------------------------------------
@ -175,8 +170,6 @@ config("compiler") {
"-fsanitize-memory-track-origins=$msan_track_origins",
"-fsanitize-blacklist=$msan_blacklist_path",
]
# TODO(GYP): Support instrumented libraries.
}
if (use_custom_libcxx) {

Просмотреть файл

@ -8,7 +8,9 @@ import("//build/config/sanitizers/sanitizers.gni")
# shared_libraries. Unconditionally depend upon this target as it is empty if
# |is_asan|, |is_lsan|, |is_tsan|, |is_msan| and |use_custom_libcxx| are false.
group("deps") {
deps = []
deps = [
"//third_party/instrumented_libraries:deps",
]
if (is_asan || is_lsan || is_tsan || is_msan) {
public_configs = [ ":sanitizer_options_link_helper" ]
deps += [ ":options_sources" ]

Просмотреть файл

@ -7,4 +7,14 @@ declare_args() {
# buildtools/third_party/libc++abi) instead of stdlibc++ as standard library.
# This is intended to be used for instrumented builds.
use_custom_libcxx = (is_asan && is_linux) || is_tsan || is_msan
# Track where uninitialized memory originates from. From fastest to slowest:
# 0 - no tracking, 1 - track only the initial allocation site, 2 - track the
# chain of stores leading from allocation site to use site.
msan_track_origins = 2
# Use dynamic libraries instrumented by one of the sanitizers instead of the
# standard system libraries. Set this flag to download prebuilt binaries from
# GCS.
use_prebuilt_instrumented_libraries = false
}