summaryrefslogtreecommitdiff
path: root/java/app.go
diff options
context:
space:
mode:
author Zi Wang <mrziwang@google.com> 2024-07-11 01:24:10 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2024-07-11 01:24:10 +0000
commit256772f02c96cedbad1d1d135f55f48b33bf9afc (patch)
treead8cf69cd4817730cc2ffe72b25ee8091c50d3bc /java/app.go
parent05f3927c090e32ab2ff4260f1e2d847dfef13a9a (diff)
parent9f7b9f4a9ab77d1816e8ae30ac8339e335fb7e92 (diff)
Merge "Use OutputFilesProvider on java modules" into main
Diffstat (limited to 'java/app.go')
-rw-r--r--java/app.go41
1 files changed, 16 insertions, 25 deletions
diff --git a/java/app.go b/java/app.go
index e8c9bfe5a..fc2294c24 100644
--- a/java/app.go
+++ b/java/app.go
@@ -1017,6 +1017,22 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) {
isPrebuilt: false,
},
)
+
+ a.setOutputFiles(ctx)
+}
+
+func (a *AndroidApp) setOutputFiles(ctx android.ModuleContext) {
+ ctx.SetOutputFiles([]android.Path{a.proguardOptionsFile}, ".aapt.proguardOptionsFile")
+ if a.aaptSrcJar != nil {
+ ctx.SetOutputFiles([]android.Path{a.aaptSrcJar}, ".aapt.srcjar")
+ }
+ if a.rJar != nil {
+ ctx.SetOutputFiles([]android.Path{a.rJar}, ".aapt.jar")
+ }
+ ctx.SetOutputFiles([]android.Path{a.outputFile}, ".apk")
+ ctx.SetOutputFiles([]android.Path{a.exportPackage}, ".export-package.apk")
+ ctx.SetOutputFiles([]android.Path{a.aapt.manifestPath}, ".manifest.xml")
+ setOutputFiles(ctx, a.Library.Module)
}
type appDepsInterface interface {
@@ -1207,31 +1223,6 @@ func (a *AndroidApp) DepIsInSameApex(ctx android.BaseModuleContext, dep android.
return a.Library.DepIsInSameApex(ctx, dep)
}
-// For OutputFileProducer interface
-func (a *AndroidApp) OutputFiles(tag string) (android.Paths, error) {
- switch tag {
- // In some instances, it can be useful to reference the aapt-generated flags from another
- // target, e.g., system server implements services declared in the framework-res manifest.
- case ".aapt.proguardOptionsFile":
- return []android.Path{a.proguardOptionsFile}, nil
- case ".aapt.srcjar":
- if a.aaptSrcJar != nil {
- return []android.Path{a.aaptSrcJar}, nil
- }
- case ".aapt.jar":
- if a.rJar != nil {
- return []android.Path{a.rJar}, nil
- }
- case ".apk":
- return []android.Path{a.outputFile}, nil
- case ".export-package.apk":
- return []android.Path{a.exportPackage}, nil
- case ".manifest.xml":
- return []android.Path{a.aapt.manifestPath}, nil
- }
- return a.Library.OutputFiles(tag)
-}
-
func (a *AndroidApp) Privileged() bool {
return Bool(a.appProperties.Privileged)
}