Use OutputFilesProvider on Import, AARImport and AndroidAppImport

In the context of incremental soong, the output files
inter-module-communication will be through OutputFilesProvider.
The OutputFileProducer interface will be deprecated.

Test: CI
Bug: 339477385
Change-Id: I51ccf59f97cb8a790642cb4463c479feaf18058a
This commit is contained in:
mrziwang
2024-07-09 10:41:55 -07:00
parent ad111586a7
commit 68786d81de
5 changed files with 24 additions and 51 deletions

View File

@@ -2752,6 +2752,9 @@ func (j *Import) GenerateAndroidBuildActions(ctx android.ModuleContext) {
StubsLinkType: j.stubsLinkType,
// TODO(b/289117800): LOCAL_ACONFIG_FILES for prebuilts
})
ctx.SetOutputFiles(android.Paths{j.combinedImplementationFile}, "")
ctx.SetOutputFiles(android.Paths{j.combinedImplementationFile}, ".jar")
}
func (j *Import) maybeInstall(ctx android.ModuleContext, jarName string, outputFile android.Path) {
@@ -2772,17 +2775,6 @@ func (j *Import) maybeInstall(ctx android.ModuleContext, jarName string, outputF
ctx.InstallFile(installDir, jarName, outputFile)
}
func (j *Import) OutputFiles(tag string) (android.Paths, error) {
switch tag {
case "", ".jar":
return android.Paths{j.combinedImplementationFile}, nil
default:
return nil, fmt.Errorf("unsupported module reference tag %q", tag)
}
}
var _ android.OutputFileProducer = (*Import)(nil)
func (j *Import) HeaderJars() android.Paths {
return android.PathsIfNonNil(j.combinedHeaderFile)
}