Loading Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -289,6 +289,7 @@ bootstrap_go_package { "soong-dexpreopt", "soong-genrule", "soong-java-config", "soong-remoteexec", "soong-tradefed", ], srcs: [ Loading apex/builder.go +17 −9 Original line number Diff line number Diff line Loading @@ -582,19 +582,27 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { } a.outputFile = android.PathForModuleOut(ctx, a.Name()+suffix) rule := java.Signapk args := map[string]string{ "certificates": a.container_certificate_file.String() + " " + a.container_private_key_file.String(), "flags": "-a 4096", //alignment } implicits := android.Paths{ a.container_certificate_file, a.container_private_key_file, } if ctx.Config().IsEnvTrue("RBE_SIGNAPK") { rule = java.SignapkRE args["implicits"] = strings.Join(implicits.Strings(), ",") args["outCommaList"] = a.outputFile.String() } ctx.Build(pctx, android.BuildParams{ Rule: java.Signapk, Rule: rule, Description: "signapk", Output: a.outputFile, Input: unsignedOutputFile, Implicits: []android.Path{ a.container_certificate_file, a.container_private_key_file, }, Args: map[string]string{ "certificates": a.container_certificate_file.String() + " " + a.container_private_key_file.String(), "flags": "-a 4096", //alignment }, Implicits: implicits, Args: args, }) // Install to $OUT/soong/{target,host}/.../apex Loading java/app_builder.go +22 −8 Original line number Diff line number Diff line Loading @@ -26,16 +26,23 @@ import ( "github.com/google/blueprint/proptools" "android/soong/android" "android/soong/remoteexec" ) var ( Signapk = pctx.AndroidStaticRule("signapk", Signapk, SignapkRE = remoteexec.StaticRules(pctx, "signapk", blueprint.RuleParams{ Command: `${config.JavaCmd} ${config.JavaVmFlags} -Djava.library.path=$$(dirname ${config.SignapkJniLibrary}) ` + Command: `$reTemplate${config.JavaCmd} ${config.JavaVmFlags} -Djava.library.path=$$(dirname ${config.SignapkJniLibrary}) ` + `-jar ${config.SignapkCmd} $flags $certificates $in $out`, CommandDeps: []string{"${config.SignapkCmd}", "${config.SignapkJniLibrary}"}, }, "flags", "certificates") &remoteexec.REParams{Labels: map[string]string{"type": "tool", "name": "signapk"}, ExecStrategy: "${config.RESignApkExecStrategy}", Inputs: []string{"${config.SignapkCmd}", "$in", "$$(dirname ${config.SignapkJniLibrary})", "$implicits"}, OutputFiles: []string{"$outCommaList"}, ToolchainInputs: []string{"${config.JavaCmd}"}, Platform: map[string]string{remoteexec.PoolKey: "${config.REJavaPool}"}, }, []string{"flags", "certificates"}, []string{"implicits", "outCommaList"}) ) var combineApk = pctx.AndroidStaticRule("combineApk", Loading Loading @@ -90,16 +97,23 @@ func SignAppPackage(ctx android.ModuleContext, signedApk android.WritablePath, u deps = append(deps, lineageFile) } rule := Signapk args := map[string]string{ "certificates": strings.Join(certificateArgs, " "), "flags": strings.Join(flags, " "), } if ctx.Config().IsEnvTrue("RBE_SIGNAPK") { rule = SignapkRE args["implicits"] = strings.Join(deps.Strings(), ",") args["outCommaList"] = strings.Join(outputFiles.Strings(), ",") } ctx.Build(pctx, android.BuildParams{ Rule: Signapk, Rule: rule, Description: "signapk", Outputs: outputFiles, Input: unsignedApk, Implicits: deps, Args: map[string]string{ "certificates": strings.Join(certificateArgs, " "), "flags": strings.Join(flags, " "), }, Args: args, }) } Loading java/config/config.go +1 −0 Original line number Diff line number Diff line Loading @@ -151,6 +151,7 @@ func init() { pctx.VariableFunc("RED8ExecStrategy", remoteexec.EnvOverrideFunc("RBE_D8_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RER8ExecStrategy", remoteexec.EnvOverrideFunc("RBE_R8_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RETurbineExecStrategy", remoteexec.EnvOverrideFunc("RBE_TURBINE_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RESignApkExecStrategy", remoteexec.EnvOverrideFunc("RBE_SIGNAPK_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.HostJavaToolVariable("JacocoCLIJar", "jacoco-cli.jar") Loading Loading
Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -289,6 +289,7 @@ bootstrap_go_package { "soong-dexpreopt", "soong-genrule", "soong-java-config", "soong-remoteexec", "soong-tradefed", ], srcs: [ Loading
apex/builder.go +17 −9 Original line number Diff line number Diff line Loading @@ -582,19 +582,27 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) { } a.outputFile = android.PathForModuleOut(ctx, a.Name()+suffix) rule := java.Signapk args := map[string]string{ "certificates": a.container_certificate_file.String() + " " + a.container_private_key_file.String(), "flags": "-a 4096", //alignment } implicits := android.Paths{ a.container_certificate_file, a.container_private_key_file, } if ctx.Config().IsEnvTrue("RBE_SIGNAPK") { rule = java.SignapkRE args["implicits"] = strings.Join(implicits.Strings(), ",") args["outCommaList"] = a.outputFile.String() } ctx.Build(pctx, android.BuildParams{ Rule: java.Signapk, Rule: rule, Description: "signapk", Output: a.outputFile, Input: unsignedOutputFile, Implicits: []android.Path{ a.container_certificate_file, a.container_private_key_file, }, Args: map[string]string{ "certificates": a.container_certificate_file.String() + " " + a.container_private_key_file.String(), "flags": "-a 4096", //alignment }, Implicits: implicits, Args: args, }) // Install to $OUT/soong/{target,host}/.../apex Loading
java/app_builder.go +22 −8 Original line number Diff line number Diff line Loading @@ -26,16 +26,23 @@ import ( "github.com/google/blueprint/proptools" "android/soong/android" "android/soong/remoteexec" ) var ( Signapk = pctx.AndroidStaticRule("signapk", Signapk, SignapkRE = remoteexec.StaticRules(pctx, "signapk", blueprint.RuleParams{ Command: `${config.JavaCmd} ${config.JavaVmFlags} -Djava.library.path=$$(dirname ${config.SignapkJniLibrary}) ` + Command: `$reTemplate${config.JavaCmd} ${config.JavaVmFlags} -Djava.library.path=$$(dirname ${config.SignapkJniLibrary}) ` + `-jar ${config.SignapkCmd} $flags $certificates $in $out`, CommandDeps: []string{"${config.SignapkCmd}", "${config.SignapkJniLibrary}"}, }, "flags", "certificates") &remoteexec.REParams{Labels: map[string]string{"type": "tool", "name": "signapk"}, ExecStrategy: "${config.RESignApkExecStrategy}", Inputs: []string{"${config.SignapkCmd}", "$in", "$$(dirname ${config.SignapkJniLibrary})", "$implicits"}, OutputFiles: []string{"$outCommaList"}, ToolchainInputs: []string{"${config.JavaCmd}"}, Platform: map[string]string{remoteexec.PoolKey: "${config.REJavaPool}"}, }, []string{"flags", "certificates"}, []string{"implicits", "outCommaList"}) ) var combineApk = pctx.AndroidStaticRule("combineApk", Loading Loading @@ -90,16 +97,23 @@ func SignAppPackage(ctx android.ModuleContext, signedApk android.WritablePath, u deps = append(deps, lineageFile) } rule := Signapk args := map[string]string{ "certificates": strings.Join(certificateArgs, " "), "flags": strings.Join(flags, " "), } if ctx.Config().IsEnvTrue("RBE_SIGNAPK") { rule = SignapkRE args["implicits"] = strings.Join(deps.Strings(), ",") args["outCommaList"] = strings.Join(outputFiles.Strings(), ",") } ctx.Build(pctx, android.BuildParams{ Rule: Signapk, Rule: rule, Description: "signapk", Outputs: outputFiles, Input: unsignedApk, Implicits: deps, Args: map[string]string{ "certificates": strings.Join(certificateArgs, " "), "flags": strings.Join(flags, " "), }, Args: args, }) } Loading
java/config/config.go +1 −0 Original line number Diff line number Diff line Loading @@ -151,6 +151,7 @@ func init() { pctx.VariableFunc("RED8ExecStrategy", remoteexec.EnvOverrideFunc("RBE_D8_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RER8ExecStrategy", remoteexec.EnvOverrideFunc("RBE_R8_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RETurbineExecStrategy", remoteexec.EnvOverrideFunc("RBE_TURBINE_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.VariableFunc("RESignApkExecStrategy", remoteexec.EnvOverrideFunc("RBE_SIGNAPK_EXEC_STRATEGY", remoteexec.LocalExecStrategy)) pctx.HostJavaToolVariable("JacocoCLIJar", "jacoco-cli.jar") Loading