win/mac/ios: Don't copy asan runtime around in non-asan sanitizer builds.

From what I can tell, it's not intentional that we keyed this off
using_sanitizer instead of is_asan.

As far as I know, the only sanitizer we currently use on mac and ios is
asan, so this should be a no-op there.

On Windows, we also have experimental CFI bots, and this might help
the 32-bit CFI bots that now no longer build the asan runtime.
(But presumably CFI needs some other runtime that we also no longer
build -- but it'll hopefully move the error a bit further back,
and copying the asan runtimes is needless work.)

TBR=pcc

Bug: 968434
Change-Id: I56528f2e82852d8c3145d657db77833321a6602c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1637032
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#664745}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b0ef5b0ca4d46a34d8d7568fbb07c53f2f5564c2
This commit is contained in:
Nico Weber 2019-05-30 15:21:40 +00:00 коммит произвёл Commit Bot
Родитель 5a8b627ed7
Коммит cf242b656c
2 изменённых файлов: 9 добавлений и 9 удалений

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

@ -41,7 +41,8 @@ group("deps") {
use_locally_built_instrumented_libraries) {
deps += [ "//third_party/instrumented_libraries:deps" ]
}
}
if (is_asan) {
# ASAN is supported on iOS but the runtime library depends on the compiler
# used (Chromium version of clang versus Xcode version of clang). Only copy
# the ASAN runtime on iOS if building with Chromium clang.
@ -58,13 +59,14 @@ group("deps") {
}
}
if ((is_mac || is_win || (is_ios && !use_xcode_clang)) && using_sanitizer) {
assert(!(is_win && is_asan && target_cpu == "x86"),
"ASan is only supported in 64-bit builds on Windows.")
if ((is_mac || is_win || (is_ios && !use_xcode_clang)) && is_asan) {
if (is_mac) {
_clang_rt_dso_path = "darwin/libclang_rt.asan_osx_dynamic.dylib"
} else if (is_ios) {
_clang_rt_dso_path = "darwin/libclang_rt.asan_iossim_dynamic.dylib"
} else if (is_win && target_cpu == "x86") {
_clang_rt_dso_path = "windows/clang_rt.asan_dynamic-i386.dll"
} else if (is_win && target_cpu == "x64") {
_clang_rt_dso_path = "windows/clang_rt.asan_dynamic-x86_64.dll"
}

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

@ -109,11 +109,9 @@ if (is_win) {
data += [ "$root_out_dir/ucrtbased.dll" ]
}
if (is_asan) {
if (current_cpu == "x64") {
data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-x86_64.dll" ]
} else {
data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-i386.dll" ]
}
assert(target_cpu == "x64",
"ASan is only supported in 64-bit builds on Windows.")
data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-x86_64.dll" ]
}
if (current_cpu != "arm64") {
data += [