diff options
Diffstat (limited to 'rust/compiler.go')
-rw-r--r-- | rust/compiler.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/rust/compiler.go b/rust/compiler.go index 9666ce296..98bbcb645 100644 --- a/rust/compiler.go +++ b/rust/compiler.go @@ -70,6 +70,8 @@ type compiler interface { unstrippedOutputFilePath() android.Path strippedOutputFilePath() android.OptionalPath + + crateRootPath(ctx ModuleContext) android.Path } func (compiler *baseCompiler) edition() string { @@ -537,6 +539,15 @@ func (compiler *baseCompiler) relativeInstallPath() string { return String(compiler.Properties.Relative_install_path) } +func (compiler *baseCompiler) crateRootPath(ctx ModuleContext) android.Path { + if compiler.Properties.Crate_root == nil { + path, _ := srcPathFromModuleSrcs(ctx, compiler.Properties.Srcs) + return path + } else { + return android.PathForModuleSrc(ctx, *compiler.Properties.Crate_root) + } +} + // Returns the Path for the main source file along with Paths for generated source files from modules listed in srcs. func srcPathFromModuleSrcs(ctx ModuleContext, srcs []string) (android.Path, android.Paths) { if len(srcs) == 0 { |