Merge "Group mixed mode and normal soong build"

This commit is contained in:
Paul Duffin
2022-11-14 22:30:26 +00:00
committed by Gerrit Code Review

View File

@@ -153,7 +153,7 @@ func newConfig(availableEnv map[string]string) android.Config {
// Bazel-enabled mode. Attaches a mutator to queue Bazel requests, adds a
// BeforePrepareBuildActionsHook to invoke Bazel, and then uses Bazel metadata
// for modules that should be handled by Bazel.
func runMixedModeBuild(configuration android.Config, ctx *android.Context, extraNinjaDeps []string) {
func runMixedModeBuild(configuration android.Config, ctx *android.Context, extraNinjaDeps []string) string {
ctx.EventHandler.Begin("mixed_build")
defer ctx.EventHandler.End("mixed_build")
@@ -176,6 +176,7 @@ func runMixedModeBuild(configuration android.Config, ctx *android.Context, extra
ninjaDeps = append(ninjaDeps, globListFiles...)
writeDepFile(cmdlineArgs.OutFile, ctx.EventHandler, ninjaDeps)
return cmdlineArgs.OutFile
}
// Run the code-generation phase to convert BazelTargetModules to BUILD files.
@@ -344,11 +345,19 @@ func doChosenActivity(ctx *android.Context, configuration android.Config, extraN
// Blueprint to BUILD files before everything else.
runBp2Build(configuration, extraNinjaDeps, metricsDir)
return bp2buildMarker
} else if configuration.IsMixedBuildsEnabled() {
runMixedModeBuild(configuration, ctx, extraNinjaDeps)
} else if configuration.BuildMode == android.ApiBp2build {
return runApiBp2build(configuration, extraNinjaDeps)
} else {
if configuration.IsMixedBuildsEnabled() {
return runMixedModeBuild(configuration, ctx, extraNinjaDeps)
} else {
return runSoongOnlyBuild(configuration, ctx, extraNinjaDeps)
}
}
}
// runSoongOnlyBuild runs the standard Soong build in a number of different modes.
func runSoongOnlyBuild(configuration android.Config, ctx *android.Context, extraNinjaDeps []string) string {
var stopBefore bootstrap.StopBefore
if configuration.BuildMode == android.GenerateModuleGraph {
stopBefore = bootstrap.StopBeforeWriteNinja
@@ -389,8 +398,6 @@ func doChosenActivity(ctx *android.Context, configuration android.Config, extraN
// above
writeDepFile(cmdlineArgs.OutFile, ctx.EventHandler, ninjaDeps)
}
}
return cmdlineArgs.OutFile
}