Support mixed ASAN and non-ASAN host builds

am: b0f28957ae

Change-Id: I68e7600f0c7775550f17ac2e6131177afe0728f0
This commit is contained in:
Colin Cross
2016-09-20 16:57:13 +00:00
committed by android-build-merger
2 changed files with 13 additions and 14 deletions

View File

@@ -120,6 +120,7 @@ type BaseProperties struct {
AndroidMkSharedLibs []string `blueprint:"mutated"` AndroidMkSharedLibs []string `blueprint:"mutated"`
HideFromMake bool `blueprint:"mutated"` HideFromMake bool `blueprint:"mutated"`
PreventInstall bool `blueprint:"mutated"`
} }
type UnusedProperties struct { type UnusedProperties struct {
@@ -423,7 +424,7 @@ func (c *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
} }
c.outputFile = android.OptionalPathForPath(outputFile) c.outputFile = android.OptionalPathForPath(outputFile)
if c.installer != nil { if c.installer != nil && !c.Properties.PreventInstall {
c.installer.install(ctx, outputFile) c.installer.install(ctx, outputFile)
if ctx.Failed() { if ctx.Failed() {
return return

View File

@@ -354,22 +354,20 @@ func sanitizerMutator(t sanitizerType) func(android.BottomUpMutatorContext) {
modules := mctx.CreateVariations(t.String()) modules := mctx.CreateVariations(t.String())
modules[0].(*Module).sanitize.SetSanitizer(t, true) modules[0].(*Module).sanitize.SetSanitizer(t, true)
} else if c.sanitize.Properties.SanitizeDep { } else if c.sanitize.Properties.SanitizeDep {
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 := mctx.CreateVariations("", t.String())
modules[0].(*Module).sanitize.SetSanitizer(t, false) modules[0].(*Module).sanitize.SetSanitizer(t, false)
modules[1].(*Module).sanitize.SetSanitizer(t, true) modules[1].(*Module).sanitize.SetSanitizer(t, true)
modules[0].(*Module).sanitize.Properties.SanitizeDep = false modules[0].(*Module).sanitize.Properties.SanitizeDep = false
modules[1].(*Module).sanitize.Properties.SanitizeDep = false modules[1].(*Module).sanitize.Properties.SanitizeDep = false
if mctx.Device() {
modules[1].(*Module).sanitize.Properties.InData = true modules[1].(*Module).sanitize.Properties.InData = true
} else {
modules[0].(*Module).Properties.PreventInstall = true
}
if mctx.AConfig().EmbeddedInMake() { if mctx.AConfig().EmbeddedInMake() {
modules[0].(*Module).Properties.HideFromMake = true modules[0].(*Module).Properties.HideFromMake = true
} }
} }
}
c.sanitize.Properties.SanitizeDep = false c.sanitize.Properties.SanitizeDep = false
} }
} }