summaryrefslogtreecommitdiff
path: root/rust/compiler.go
diff options
context:
space:
mode:
authorIvan Lozano <ivanlozano@google.com>2019-10-31 19:38:29 -0700
committerIvan Lozano <ivanlozano@google.com>2019-11-04 09:20:08 -0800
commitad8b18b87260a83aeadb28d637f77474158fcdb1 (patch)
tree0362797ca4b2cf0d34eb14ad3cfd0ed61ad67dc0 /rust/compiler.go
parent5d0b3b7195e35199f48bc8cd685f0b5786487cfe (diff)
Enforce correct rust library file names.
rustc expects libraries and proc_macro filenames to conform to a particular format, alphanumeric with underscores and lib${crate_name}.*. Enforce this with a check when getStem() is called. This makes the crate_name property required for proc_macros and libraries. This also removes the notion of a default crate name derived from the module name. It's not needed for binaries, so this won't impact them. Bug: 143579265 Test: m -j crosvm.experimental Change-Id: I2770cf7d02dd4291c3d240d58d242b940098dcee
Diffstat (limited to 'rust/compiler.go')
-rw-r--r--rust/compiler.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/rust/compiler.go b/rust/compiler.go
index 3f028350a..85e8ba6aa 100644
--- a/rust/compiler.go
+++ b/rust/compiler.go
@@ -18,9 +18,10 @@ import (
"fmt"
"path/filepath"
+ "github.com/google/blueprint/proptools"
+
"android/soong/android"
"android/soong/rust/config"
- "github.com/google/blueprint/proptools"
)
func getEdition(compiler *baseCompiler) string {
@@ -64,7 +65,7 @@ type BaseCompilerProperties struct {
// list of C static library dependencies
Static_libs []string `android:"arch_variant"`
- // crate name (defaults to module name); if library, this must be the expected extern crate name
+ // crate name, required for libraries. This must be the expected extern crate name used in source
Crate_name string `android:"arch_variant"`
// list of features to enable for this crate
@@ -207,6 +208,7 @@ func (compiler *baseCompiler) getStemWithoutSuffix(ctx BaseModuleContext) string
return stem
}
+
func (compiler *baseCompiler) relativeInstallPath() string {
return String(compiler.Properties.Relative_install_path)
}