From b36ab1a1a0355d15d692e2b6ff5955cae1275174 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Wed, 25 May 2016 12:35:53 -0700 Subject: [PATCH] Fix sanitize host builds Host builds don't have a separate place to install asan modules, so only create a single variant for them. Change-Id: I81f7090debd7935db778f8600d8cbc86dd53b1cb --- cc/sanitize.go | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/cc/sanitize.go b/cc/sanitize.go index 1bc1351b3..27d778ecb 100644 --- a/cc/sanitize.go +++ b/cc/sanitize.go @@ -331,18 +331,24 @@ func sanitizerMutator(t sanitizerType) func(android.BottomUpMutatorContext) { if d, ok := c.linker.(baseLinkerInterface); ok && d.isDependencyRoot() && c.sanitize.Sanitizer(t) { modules := mctx.CreateVariations(t.String()) modules[0].(*Module).sanitize.SetSanitizer(t, true) - if mctx.AConfig().EmbeddedInMake() { + if mctx.AConfig().EmbeddedInMake() && !c.Host() { modules[0].(*Module).sanitize.Properties.InData = true } } else if c.sanitize.Properties.SanitizeDep { - modules := mctx.CreateVariations("", t.String()) - modules[0].(*Module).sanitize.SetSanitizer(t, false) - modules[1].(*Module).sanitize.SetSanitizer(t, true) - modules[0].(*Module).sanitize.Properties.SanitizeDep = false - modules[1].(*Module).sanitize.Properties.SanitizeDep = false - modules[1].(*Module).sanitize.Properties.InData = true - if mctx.AConfig().EmbeddedInMake() { - modules[0].(*Module).Properties.HideFromMake = true + if c.Host() { + modules := mctx.CreateVariations(t.String()) + modules[0].(*Module).sanitize.SetSanitizer(t, true) + modules[0].(*Module).sanitize.Properties.SanitizeDep = false + } else { + modules := mctx.CreateVariations("", t.String()) + modules[0].(*Module).sanitize.SetSanitizer(t, false) + modules[1].(*Module).sanitize.SetSanitizer(t, true) + modules[0].(*Module).sanitize.Properties.SanitizeDep = false + modules[1].(*Module).sanitize.Properties.SanitizeDep = false + modules[1].(*Module).sanitize.Properties.InData = true + if mctx.AConfig().EmbeddedInMake() { + modules[0].(*Module).Properties.HideFromMake = true + } } } c.sanitize.Properties.SanitizeDep = false