Merge "Disable asan for static binaries"
diff --git a/cc/sanitize.go b/cc/sanitize.go
index 172aae7..08ffff4 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -141,9 +141,10 @@
ctx.ModuleErrorf("unknown global sanitizer option %s", globalSanitizers[0])
}
}
- if Bool(s.All_undefined) || Bool(s.Undefined) || Bool(s.Address) ||
- Bool(s.Thread) || Bool(s.Coverage) || Bool(s.Safestack) {
- sanitize.Properties.SanitizerEnabled = true
+
+ if ctx.staticBinary() {
+ s.Address = nil
+ s.Thread = nil
}
if Bool(s.All_undefined) {
@@ -157,6 +158,11 @@
// TODO(ccross): error for compile_multilib = "32"?
}
+ if Bool(s.All_undefined) || Bool(s.Undefined) || Bool(s.Address) ||
+ Bool(s.Thread) || Bool(s.Coverage) || Bool(s.Safestack) {
+ sanitize.Properties.SanitizerEnabled = true
+ }
+
if Bool(s.Coverage) {
if !Bool(s.Address) {
ctx.ModuleErrorf(`Use of "coverage" also requires "address"`)