Merge "Support blueprint_go_binary in PathForModuleSrc"

This commit is contained in:
Colin Cross
2021-05-06 23:29:22 +00:00
committed by Gerrit Code Review
2 changed files with 11 additions and 5 deletions

View File

@@ -24,6 +24,7 @@ import (
"strings"
"github.com/google/blueprint"
"github.com/google/blueprint/bootstrap"
"github.com/google/blueprint/pathtools"
)
@@ -449,6 +450,12 @@ func getPathsFromModuleDep(ctx ModuleWithDepsPathContext, path, moduleName, tag
return outputFiles, nil
} else if tag != "" {
return nil, fmt.Errorf("path dependency %q is not an output file producing module", path)
} else if goBinary, ok := module.(bootstrap.GoBinaryTool); ok {
if rel, err := filepath.Rel(PathForOutput(ctx).String(), goBinary.InstallPath()); err == nil {
return Paths{PathForOutput(ctx, rel).WithoutRel()}, nil
} else {
return nil, fmt.Errorf("cannot find output path for %q: %w", goBinary.InstallPath(), err)
}
} else if srcProducer, ok := module.(SourceFileProducer); ok {
return srcProducer.Srcs(), nil
} else {