Add build tracing
This creates a rotating build.trace.gz in the out directory that can be loaded with chrome://tracing. It'll include start and end timings for make/soong/kati/ninja, and it will import and time-correct the ninja log files. Test: m -j; load out/build.trace.gz in chrome://tracing Test: multiproduct_kati -keep; load out/multiproduct*/build.trace.gz Change-Id: Ic060fa9515eb88d95dbe16712479dae9dffcf626
This commit is contained in:
@@ -20,6 +20,9 @@ import (
|
||||
)
|
||||
|
||||
func runSoongBootstrap(ctx Context, config Config) {
|
||||
ctx.BeginTrace("bootstrap soong")
|
||||
defer ctx.EndTrace()
|
||||
|
||||
cmd := exec.CommandContext(ctx.Context, "./bootstrap.bash")
|
||||
env := config.Environment().Copy()
|
||||
env.Set("BUILDDIR", config.SoongOutDir())
|
||||
@@ -37,6 +40,9 @@ func runSoongBootstrap(ctx Context, config Config) {
|
||||
}
|
||||
|
||||
func runSoong(ctx Context, config Config) {
|
||||
ctx.BeginTrace("soong")
|
||||
defer ctx.EndTrace()
|
||||
|
||||
cmd := exec.CommandContext(ctx.Context, filepath.Join(config.SoongOutDir(), "soong"), "-w", "dupbuild=err")
|
||||
if config.IsVerbose() {
|
||||
cmd.Args = append(cmd.Args, "-v")
|
||||
|
Reference in New Issue
Block a user