Pass pctx and ctx to NewRuleBuilder

Enable the RuleBuilder and RuleBuilderCommand methods to access
the BuilderContext by passing it to NewRuleBuilder instead of
RuleBuilder.Build.

Test: genrule_test.go
Test: rule_builder_test.go
Test: m checkbuild
Change-Id: I63e6597e19167393876dc2259d6f521363b7dabc
This commit is contained in:
Colin Cross
2020-11-16 17:32:30 -08:00
parent 33e1763094
commit f1a035e6be
39 changed files with 348 additions and 314 deletions

View File

@@ -247,16 +247,16 @@ func (m *syspropLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext)
m.latestApiFile = android.PathForSource(ctx, ctx.ModuleDir(), "api", baseModuleName+"-latest.txt")
// dump API rule
rule := android.NewRuleBuilder()
rule := android.NewRuleBuilder(pctx, ctx)
m.dumpedApiFile = android.PathForModuleOut(ctx, "api-dump.txt")
rule.Command().
BuiltTool(ctx, "sysprop_api_dump").
BuiltTool("sysprop_api_dump").
Output(m.dumpedApiFile).
Inputs(android.PathsForModuleSrc(ctx, m.properties.Srcs))
rule.Build(pctx, ctx, baseModuleName+"_api_dump", baseModuleName+" api dump")
rule.Build(baseModuleName+"_api_dump", baseModuleName+" api dump")
// check API rule
rule = android.NewRuleBuilder()
rule = android.NewRuleBuilder(pctx, ctx)
// 1. compares current.txt to api-dump.txt
// current.txt should be identical to api-dump.txt.
@@ -284,7 +284,7 @@ func (m *syspropLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext)
rule.Command().
Text("( ").
BuiltTool(ctx, "sysprop_api_checker").
BuiltTool("sysprop_api_checker").
Input(m.latestApiFile).
Input(m.currentApiFile).
Text(" || ( echo").Flag("-e").
@@ -297,7 +297,7 @@ func (m *syspropLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext)
Text("touch").
Output(m.checkApiFileTimeStamp)
rule.Build(pctx, ctx, baseModuleName+"_check_api", baseModuleName+" check api")
rule.Build(baseModuleName+"_check_api", baseModuleName+" check api")
}
func (m *syspropLibrary) AndroidMk() android.AndroidMkData {