Handle errors from RunBlueprint(). am: c357c81f48 am: 200e0a8672 am: e3816e619a am: 112fa9b71f

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2627181

Change-Id: I0058980ce2e6167f827e75a192ded70087773a6e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Lukacs T. Berki
2023-06-21 13:54:21 +00:00
committed by Automerger Merge Worker
2 changed files with 15 additions and 7 deletions

View File

@@ -124,7 +124,8 @@ func runMixedModeBuild(ctx *android.Context, extraNinjaDeps []string) string {
return ctx.Config().BazelContext.InvokeBazel(ctx.Config(), ctx)
}
ctx.SetBeforePrepareBuildActionsHook(bazelHook)
ninjaDeps := bootstrap.RunBlueprint(cmdlineArgs.Args, bootstrap.DoEverything, ctx.Context, ctx.Config())
ninjaDeps, err := bootstrap.RunBlueprint(cmdlineArgs.Args, bootstrap.DoEverything, ctx.Context, ctx.Config())
maybeQuit(err, "")
ninjaDeps = append(ninjaDeps, extraNinjaDeps...)
bazelPaths, err := readFileLines(ctx.Config().Getenv("BAZEL_DEPS_FILE"))
@@ -185,10 +186,11 @@ func runApiBp2build(ctx *android.Context, extraNinjaDeps []string) string {
}
// Run the loading and analysis phase
ninjaDeps := bootstrap.RunBlueprint(cmdlineArgs.Args,
ninjaDeps, err := bootstrap.RunBlueprint(cmdlineArgs.Args,
bootstrap.StopBeforePrepareBuildActions,
ctx.Context,
ctx.Config())
maybeQuit(err, "")
ninjaDeps = append(ninjaDeps, extraNinjaDeps...)
// Add the globbed dependencies
@@ -218,7 +220,7 @@ func runApiBp2build(ctx *android.Context, extraNinjaDeps []string) string {
// }
//
// If we don't generate f/b/api/BUILD, foo.contribution will be unbuildable.
err := createBazelWorkspace(codegenContext, absoluteApiBp2buildDir, true)
err = createBazelWorkspace(codegenContext, absoluteApiBp2buildDir, true)
maybeQuit(err, "")
ninjaDeps = append(ninjaDeps, codegenContext.AdditionalNinjaDeps()...)
@@ -412,12 +414,13 @@ func writeBuildGlobsNinjaFile(ctx *android.Context) []string {
defer ctx.EventHandler.End("globs_ninja_file")
globDir := bootstrap.GlobDirectory(ctx.Config().SoongOutDir(), globListDir)
bootstrap.WriteBuildGlobsNinjaFile(&bootstrap.GlobSingleton{
err := bootstrap.WriteBuildGlobsNinjaFile(&bootstrap.GlobSingleton{
GlobLister: ctx.Globs,
GlobFile: globFile,
GlobDir: globDir,
SrcDir: ctx.SrcDir(),
}, ctx.Config())
maybeQuit(err, "")
return bootstrap.GlobFileListFiles(globDir)
}
@@ -444,7 +447,8 @@ func runSoongOnlyBuild(ctx *android.Context, extraNinjaDeps []string) string {
stopBefore = bootstrap.DoEverything
}
ninjaDeps := bootstrap.RunBlueprint(cmdlineArgs.Args, stopBefore, ctx.Context, ctx.Config())
ninjaDeps, err := bootstrap.RunBlueprint(cmdlineArgs.Args, stopBefore, ctx.Context, ctx.Config())
maybeQuit(err, "")
ninjaDeps = append(ninjaDeps, extraNinjaDeps...)
globListFiles := writeBuildGlobsNinjaFile(ctx)
@@ -803,8 +807,9 @@ func runBp2Build(ctx *android.Context, extraNinjaDeps []string, metricsDir strin
// from the regular Modules.
ctx.EventHandler.Do("bootstrap", func() {
blueprintArgs := cmdlineArgs
bootstrapDeps := bootstrap.RunBlueprint(blueprintArgs.Args,
bootstrapDeps, err := bootstrap.RunBlueprint(blueprintArgs.Args,
bootstrap.StopBeforePrepareBuildActions, ctx.Context, ctx.Config())
maybeQuit(err, "")
ninjaDeps = append(ninjaDeps, bootstrapDeps...)
})

View File

@@ -445,7 +445,10 @@ func bootstrapBlueprint(ctx Context, config Config) {
// since `bootstrap.ninja` is regenerated unconditionally, we ignore the deps, i.e. little
// reason to write a `bootstrap.ninja.d` file
_ = bootstrap.RunBlueprint(blueprintArgs, bootstrap.DoEverything, blueprintCtx, blueprintConfig)
_, err := bootstrap.RunBlueprint(blueprintArgs, bootstrap.DoEverything, blueprintCtx, blueprintConfig)
if err != nil {
ctx.Fatal(err)
}
}
func checkEnvironmentFile(ctx Context, currentEnv *Environment, envFile string) {