diff options
| author | 2017-03-29 00:45:34 +0000 | |
|---|---|---|
| committer | 2017-03-29 00:45:35 +0000 | |
| commit | 9e3f627ea73b3982d8be5ad8b402b4264aab0b18 (patch) | |
| tree | cd69fab5269d4f15c83a29ca9093ecb41a87dd3d /cc | |
| parent | 32b692240f01023b92858b163790bf06d194f746 (diff) | |
| parent | 16b626b827c3ca214daf7ab69cad4c4f408aa47d (diff) | |
Merge "Export TSAN_RUNTIME_LIBRARY make variable"
Diffstat (limited to 'cc')
| -rw-r--r-- | cc/config/toolchain.go | 18 | ||||
| -rw-r--r-- | cc/makevars.go | 1 |
2 files changed, 12 insertions, 7 deletions
diff --git a/cc/config/toolchain.go b/cc/config/toolchain.go index 8fc4a21e4..527043701 100644 --- a/cc/config/toolchain.go +++ b/cc/config/toolchain.go @@ -207,20 +207,24 @@ func inList(s string, list []string) bool { return indexList(s, list) != -1 } -func AddressSanitizerRuntimeLibrary(t Toolchain) string { +func SanitizerRuntimeLibrary(t Toolchain, sanitizer string) string { arch := t.SanitizerRuntimeLibraryArch() if arch == "" { return "" } - return "libclang_rt.asan-" + arch + "-android.so" + return "libclang_rt." + sanitizer + "-" + arch + "-android.so" +} + +func AddressSanitizerRuntimeLibrary(t Toolchain) string { + return SanitizerRuntimeLibrary(t, "asan") } func UndefinedBehaviorSanitizerRuntimeLibrary(t Toolchain) string { - arch := t.SanitizerRuntimeLibraryArch() - if arch == "" { - return "" - } - return "libclang_rt.ubsan_standalone-" + arch + "-android.so" + return SanitizerRuntimeLibrary(t, "ubsan_standalone") +} + +func ThreadSanitizerRuntimeLibrary(t Toolchain) string { + return SanitizerRuntimeLibrary(t, "tsan") } func ToolPath(t Toolchain) string { diff --git a/cc/makevars.go b/cc/makevars.go index 200fafffe..dcde8285e 100644 --- a/cc/makevars.go +++ b/cc/makevars.go @@ -209,6 +209,7 @@ func makeVarsToolchain(ctx android.MakeVarsContext, secondPrefix string, if target.Os.Class == android.Device { ctx.Strict(secondPrefix+"ADDRESS_SANITIZER_RUNTIME_LIBRARY", strings.TrimSuffix(config.AddressSanitizerRuntimeLibrary(toolchain), ".so")) ctx.Strict(secondPrefix+"UBSAN_RUNTIME_LIBRARY", strings.TrimSuffix(config.UndefinedBehaviorSanitizerRuntimeLibrary(toolchain), ".so")) + ctx.Strict(secondPrefix+"TSAN_RUNTIME_LIBRARY", strings.TrimSuffix(config.ThreadSanitizerRuntimeLibrary(toolchain), ".so")) } // This is used by external/gentoo/... |