Merge "Add support for experimentally enabling RBE support on specific rules."

This commit is contained in:
Ramy Medhat
2020-01-28 19:49:05 +00:00
committed by Gerrit Code Review
12 changed files with 122 additions and 21 deletions

View File

@@ -38,7 +38,7 @@ var (
// this, all java rules write into separate directories and then are combined into a .jar file
// (if the rule produces .class files) or a .srcjar file (if the rule produces .java files).
// .srcjar files are unzipped into a temporary directory when compiled with javac.
javac = pctx.AndroidRemoteStaticRule("javac", android.SUPPORTS_GOMA,
javac = pctx.AndroidRemoteStaticRule("javac", android.RemoteRuleSupports{Goma: true, RBE: true, RBEFlag: android.RBE_JAVAC},
blueprint.RuleParams{
Command: `rm -rf "$outDir" "$annoDir" "$srcJarDir" && mkdir -p "$outDir" "$annoDir" "$srcJarDir" && ` +
`${config.ZipSyncCmd} -d $srcJarDir -l $srcJarDir/list -f "*.java" $srcJars && ` +

View File

@@ -148,6 +148,20 @@ func init() {
return ""
})
pctx.VariableFunc("R8Wrapper", func(ctx android.PackageVarContext) string {
if override := ctx.Config().Getenv("R8_WRAPPER"); override != "" {
return override + " "
}
return ""
})
pctx.VariableFunc("D8Wrapper", func(ctx android.PackageVarContext) string {
if override := ctx.Config().Getenv("D8_WRAPPER"); override != "" {
return override + " "
}
return ""
})
pctx.HostJavaToolVariable("JacocoCLIJar", "jacoco-cli.jar")
pctx.HostBinToolVariable("ManifestCheckCmd", "manifest_check")

View File

@@ -22,10 +22,10 @@ import (
"android/soong/android"
)
var d8 = pctx.AndroidStaticRule("d8",
var d8 = pctx.AndroidRemoteStaticRule("d8", android.RemoteRuleSupports{RBE: true, RBEFlag: android.RBE_D8},
blueprint.RuleParams{
Command: `rm -rf "$outDir" && mkdir -p "$outDir" && ` +
`${config.D8Cmd} ${config.DexFlags} --output $outDir $d8Flags $in && ` +
`${config.D8Wrapper}${config.D8Cmd} ${config.DexFlags} --output $outDir $d8Flags $in && ` +
`${config.SoongZipCmd} $zipFlags -o $outDir/classes.dex.jar -C $outDir -f "$outDir/classes*.dex" && ` +
`${config.MergeZipsCmd} -D -stripFile "**/*.class" $out $outDir/classes.dex.jar $in`,
CommandDeps: []string{
@@ -36,11 +36,11 @@ var d8 = pctx.AndroidStaticRule("d8",
},
"outDir", "d8Flags", "zipFlags")
var r8 = pctx.AndroidStaticRule("r8",
var r8 = pctx.AndroidRemoteStaticRule("r8", android.RemoteRuleSupports{RBE: true, RBEFlag: android.RBE_R8},
blueprint.RuleParams{
Command: `rm -rf "$outDir" && mkdir -p "$outDir" && ` +
`rm -f "$outDict" && ` +
`${config.R8Cmd} ${config.DexFlags} -injars $in --output $outDir ` +
`${config.R8Wrapper}${config.R8Cmd} ${config.DexFlags} -injars $in --output $outDir ` +
`--force-proguard-compatibility ` +
`--no-data-resources ` +
`-printmapping $outDict ` +

View File

@@ -26,7 +26,7 @@ import (
"github.com/google/blueprint"
)
var kotlinc = pctx.AndroidRemoteStaticRule("kotlinc", android.SUPPORTS_GOMA,
var kotlinc = pctx.AndroidRemoteStaticRule("kotlinc", android.RemoteRuleSupports{Goma: true},
blueprint.RuleParams{
Command: `rm -rf "$classesDir" "$srcJarDir" "$kotlinBuildFile" "$emptyDir" && ` +
`mkdir -p "$classesDir" "$srcJarDir" "$emptyDir" && ` +
@@ -88,7 +88,7 @@ func kotlinCompile(ctx android.ModuleContext, outputFile android.WritablePath,
})
}
var kapt = pctx.AndroidRemoteStaticRule("kapt", android.SUPPORTS_GOMA,
var kapt = pctx.AndroidRemoteStaticRule("kapt", android.RemoteRuleSupports{Goma: true},
blueprint.RuleParams{
Command: `rm -rf "$srcJarDir" "$kotlinBuildFile" "$kaptDir" && mkdir -p "$srcJarDir" "$kaptDir" && ` +
`${config.ZipSyncCmd} -d $srcJarDir -l $srcJarDir/list -f "*.java" $srcJars && ` +