diff options
author | 2024-01-05 18:10:47 +0000 | |
---|---|---|
committer | 2024-01-05 18:10:47 +0000 | |
commit | cf132236e744e19a0e55338c24e7ba6fc4569d4d (patch) | |
tree | f2c9362f9c1abfdca7562ea02d93d0ef1da0cafc /java | |
parent | 80abaa85e861d0121addde6cb607acd6a4ce3f29 (diff) | |
parent | d3f7d1a44c2ea75072197b0e610c07216ba92ae2 (diff) |
Merge "Translate --custom-package aapt2 flag for ResourceProcessorBusyBox" into main
Diffstat (limited to 'java')
-rw-r--r-- | java/aar.go | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/java/aar.go b/java/aar.go index 2ad8fdff4..eb07e0fb2 100644 --- a/java/aar.go +++ b/java/aar.go @@ -544,7 +544,7 @@ func (a *aapt) buildActions(ctx android.ModuleContext, opts aaptBuildActionOptio if a.useResourceProcessorBusyBox() { rJar := android.PathForModuleOut(ctx, "busybox/R.jar") - resourceProcessorBusyBoxGenerateBinaryR(ctx, rTxt, a.mergedManifestFile, rJar, staticDeps, a.isLibrary) + resourceProcessorBusyBoxGenerateBinaryR(ctx, rTxt, a.mergedManifestFile, rJar, staticDeps, a.isLibrary, a.aaptProperties.Aaptflags) aapt2ExtractExtraPackages(ctx, extraPackages, rJar) transitiveRJars = append(transitiveRJars, rJar) a.rJar = rJar @@ -604,7 +604,7 @@ var resourceProcessorBusyBox = pctx.AndroidStaticRule("resourceProcessorBusyBox" // using Bazel's ResourceProcessorBusyBox tool, which is faster than compiling the R.java files and // supports producing classes for static dependencies that only include resources from that dependency. func resourceProcessorBusyBoxGenerateBinaryR(ctx android.ModuleContext, rTxt, manifest android.Path, - rJar android.WritablePath, transitiveDeps transitiveAarDeps, isLibrary bool) { + rJar android.WritablePath, transitiveDeps transitiveAarDeps, isLibrary bool, aaptFlags []string) { var args []string var deps android.Paths @@ -621,6 +621,17 @@ func resourceProcessorBusyBoxGenerateBinaryR(ctx android.ModuleContext, rTxt, ma args = append(args, "--finalFields=false") } + for i, arg := range aaptFlags { + const AAPT_CUSTOM_PACKAGE = "--custom-package" + if strings.HasPrefix(arg, AAPT_CUSTOM_PACKAGE) { + pkg := strings.TrimSpace(strings.TrimPrefix(arg, AAPT_CUSTOM_PACKAGE)) + if pkg == "" && i+1 < len(aaptFlags) { + pkg = aaptFlags[i+1] + } + args = append(args, "--packageForR "+pkg) + } + } + deps = append(deps, rTxt, manifest) ctx.Build(pctx, android.BuildParams{ @@ -1194,7 +1205,7 @@ func (a *AARImport) GenerateAndroidBuildActions(ctx android.ModuleContext) { linkFlags, linkDeps, nil, overlayRes, transitiveAssets, nil, nil) a.rJar = android.PathForModuleOut(ctx, "busybox/R.jar") - resourceProcessorBusyBoxGenerateBinaryR(ctx, a.rTxt, a.manifest, a.rJar, nil, true) + resourceProcessorBusyBoxGenerateBinaryR(ctx, a.rTxt, a.manifest, a.rJar, nil, true, nil) aapt2ExtractExtraPackages(ctx, a.extraAaptPackagesFile, a.rJar) |