Allow module gets its own output files using non-empty-string tag

Test: CI
Bug: 339477385
Change-Id: I332c377ad59d9355cb44ee18b85a56e37580e7b6
This commit is contained in:
mrziwang
2024-06-20 09:53:33 -07:00
parent 26faf1b321
commit 4295359c12

View File

@@ -2524,8 +2524,7 @@ func outputFilesForModule(ctx PathContext, module blueprint.Module, tag string)
// *inter-module-communication*.
// If mctx module is the same as the param module the output files are obtained
// from outputFiles property of module base, to avoid both setting and
// reading OutputFilesProvider before GenerateBuildActions is finished. Also
// only empty-string-tag is supported in this case.
// reading OutputFilesProvider before GenerateBuildActions is finished.
// If a module doesn't have the OutputFilesProvider, nil is returned.
func outputFilesForModuleFromProvider(ctx PathContext, module blueprint.Module, tag string) (Paths, error) {
// TODO: support OutputFilesProvider for singletons
@@ -2546,6 +2545,8 @@ func outputFilesForModuleFromProvider(ctx PathContext, module blueprint.Module,
} else {
if tag == "" {
return mctx.Module().base().outputFiles.DefaultOutputFiles, nil
} else if taggedOutputFiles, hasTag := mctx.Module().base().outputFiles.TaggedOutputFiles[tag]; hasTag {
return taggedOutputFiles, nil
} else {
return nil, fmt.Errorf("unsupported tag %q for module getting its own output files", tag)
}