From a5f64f03968266f14c81c5ef47609adc6fe07520 Mon Sep 17 00:00:00 2001 From: Cole Faust Date: Tue, 14 Feb 2023 17:50:31 -0800 Subject: [PATCH] Convert RuleBuilder to static rule in buildRuleToGenerateIndex This saves ~34kb from the build.ninja file. Test: Presubmits Change-Id: I8fa4974e4f1509be7938c774e536d15a63534753 --- java/config/config.go | 1 + java/hiddenapi.go | 29 +++++++++++++++++------------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/java/config/config.go b/java/config/config.go index 7c22076ae..293eb9230 100644 --- a/java/config/config.go +++ b/java/config/config.go @@ -195,6 +195,7 @@ func init() { pctx.HostBinToolVariable("ManifestMergerCmd", "manifest-merger") pctx.HostBinToolVariable("Class2NonSdkList", "class2nonsdklist") + pctx.HostBinToolVariable("MergeCsvCommand", "merge_csv") pctx.HostBinToolVariable("HiddenAPI", "hiddenapi") hostBinToolVariableWithSdkToolsPrebuilt("Aapt2Cmd", "aapt2") diff --git a/java/hiddenapi.go b/java/hiddenapi.go index cf9c7ad7a..c4fc65f2e 100644 --- a/java/hiddenapi.go +++ b/java/hiddenapi.go @@ -20,10 +20,17 @@ import ( "android/soong/android" ) -var hiddenAPIGenerateCSVRule = pctx.AndroidStaticRule("hiddenAPIGenerateCSV", blueprint.RuleParams{ - Command: "${config.Class2NonSdkList} --stub-api-flags ${stubAPIFlags} $in $outFlag $out", - CommandDeps: []string{"${config.Class2NonSdkList}"}, -}, "outFlag", "stubAPIFlags") +var ( + hiddenAPIGenerateCSVRule = pctx.AndroidStaticRule("hiddenAPIGenerateCSV", blueprint.RuleParams{ + Command: "${config.Class2NonSdkList} --stub-api-flags ${stubAPIFlags} $in $outFlag $out", + CommandDeps: []string{"${config.Class2NonSdkList}"}, + }, "outFlag", "stubAPIFlags") + + hiddenAPIGenerateIndexRule = pctx.AndroidStaticRule("hiddenAPIGenerateIndex", blueprint.RuleParams{ + Command: "${config.MergeCsvCommand} --zip_input --key_field signature --output=$out $in", + CommandDeps: []string{"${config.MergeCsvCommand}"}, + }) +) type hiddenAPI struct { // True if the module containing this structure contributes to the hiddenapi information or has @@ -216,14 +223,12 @@ func buildRuleToGenerateMetadata(ctx android.ModuleContext, desc string, classes // created by the unsupported app usage annotation processor during compilation of the class // implementation jar. func buildRuleToGenerateIndex(ctx android.ModuleContext, desc string, classesJars android.Paths, indexCSV android.WritablePath) { - rule := android.NewRuleBuilder(pctx, ctx) - rule.Command(). - BuiltTool("merge_csv"). - Flag("--zip_input"). - Flag("--key_field signature"). - FlagWithOutput("--output=", indexCSV). - Inputs(classesJars) - rule.Build(desc, desc) + ctx.Build(pctx, android.BuildParams{ + Rule: hiddenAPIGenerateIndexRule, + Description: desc, + Inputs: classesJars, + Output: indexCSV, + }) } var hiddenAPIEncodeDexRule = pctx.AndroidStaticRule("hiddenAPIEncodeDex", blueprint.RuleParams{