Fix lib name resolution if extension is substring.
If a library happens to contain the extension as a substring in its
name, libNameFromFilePath will return a truncated library name. Change
this calculation to remove the last instance of the extension substring
instead.
Bug: 147140513
Test: Modified rust tests pass.
Change-Id: I0ed91e5f571ed5c4040ee15956a1598846aee43a
diff --git a/rust/rust.go b/rust/rust.go
index e2af6f0..e4f85f0 100644
--- a/rust/rust.go
+++ b/rust/rust.go
@@ -705,13 +705,15 @@
func linkPathFromFilePath(filepath android.Path) string {
return strings.Split(filepath.String(), filepath.Base())[0]
}
+
func libNameFromFilePath(filepath android.Path) string {
- libName := strings.Split(filepath.Base(), filepath.Ext())[0]
+ libName := strings.TrimSuffix(filepath.Base(), filepath.Ext())
if strings.HasPrefix(libName, "lib") {
libName = libName[3:]
}
return libName
}
+
func (mod *Module) DepsMutator(actx android.BottomUpMutatorContext) {
ctx := &depsContext{
BottomUpMutatorContext: actx,