Make all Nameless modules have unique names
Nameless modules still have to have unique names to avoid collisions
when sorting by name. Give them all pointer suffixes, and rename
NamelessModule to NamespacelessModule
Fixes: 235475711
Test: soong_config_modules_test.go
Change-Id: Ib2d34e8bcbb4f988bf00c1012511494f54d9a53e
diff --git a/android/soong_config_modules.go b/android/soong_config_modules.go
index bd73645..df12e0a 100644
--- a/android/soong_config_modules.go
+++ b/android/soong_config_modules.go
@@ -172,7 +172,7 @@
"soong_config_module_type_import_" + fmt.Sprintf("%p", m)
}
-func (*soongConfigModuleTypeImport) Nameless() {}
+func (*soongConfigModuleTypeImport) Namespaceless() {}
func (*soongConfigModuleTypeImport) GenerateAndroidBuildActions(ModuleContext) {}
// Create dummy modules for soong_config_module_type and soong_config_*_variable
@@ -279,9 +279,9 @@
}
func (m *soongConfigModuleTypeModule) Name() string {
- return m.properties.Name
+ return m.properties.Name + fmt.Sprintf("%p", m)
}
-func (*soongConfigModuleTypeModule) Nameless() {}
+func (*soongConfigModuleTypeModule) Namespaceless() {}
func (*soongConfigModuleTypeModule) GenerateAndroidBuildActions(ctx ModuleContext) {}
type soongConfigStringVariableDummyModule struct {
@@ -314,15 +314,15 @@
}
func (m *soongConfigStringVariableDummyModule) Name() string {
- return m.properties.Name
+ return m.properties.Name + fmt.Sprintf("%p", m)
}
-func (*soongConfigStringVariableDummyModule) Nameless() {}
+func (*soongConfigStringVariableDummyModule) Namespaceless() {}
func (*soongConfigStringVariableDummyModule) GenerateAndroidBuildActions(ctx ModuleContext) {}
func (m *soongConfigBoolVariableDummyModule) Name() string {
- return m.properties.Name
+ return m.properties.Name + fmt.Sprintf("%p", m)
}
-func (*soongConfigBoolVariableDummyModule) Nameless() {}
+func (*soongConfigBoolVariableDummyModule) Namespaceless() {}
func (*soongConfigBoolVariableDummyModule) GenerateAndroidBuildActions(ctx ModuleContext) {}
// importModuleTypes registers the module factories for a list of module types defined