Revert "Deduplicate APEX variants that would build identically"
This reverts commit d6b2525b003b5620b3745a79dce56093173504f5.
Reason for revert: <Breaks tests - confirmed by Forrest: b/165188843>
Change-Id: I7cb68cb87522415004390c0672dc774e0067b122
diff --git a/java/sdk_library.go b/java/sdk_library.go
index de16173..2aae42f 100644
--- a/java/sdk_library.go
+++ b/java/sdk_library.go
@@ -1376,22 +1376,22 @@
return android.Paths{jarPath.Path()}
}
-// Get the apex names for module, nil if it is for platform.
-func getApexNamesForModule(module android.Module) []string {
+// Get the apex name for module, "" if it is for platform.
+func getApexNameForModule(module android.Module) string {
if apex, ok := module.(android.ApexModule); ok {
- return apex.InApexes()
+ return apex.ApexVariationName()
}
- return nil
+ return ""
}
-// Check to see if the other module is within the same set of named APEXes as this module.
+// Check to see if the other module is within the same named APEX as this module.
//
// If either this or the other module are on the platform then this will return
// false.
-func withinSameApexesAs(module android.ApexModule, other android.Module) bool {
- names := module.InApexes()
- return len(names) > 0 && reflect.DeepEqual(names, getApexNamesForModule(other))
+func withinSameApexAs(module android.ApexModule, other android.Module) bool {
+ name := module.ApexVariationName()
+ return name != "" && getApexNameForModule(other) == name
}
func (module *SdkLibrary) sdkJars(ctx android.BaseModuleContext, sdkVersion sdkSpec, headerJars bool) android.Paths {
@@ -1410,7 +1410,7 @@
// Only allow access to the implementation library in the following condition:
// * No sdk_version specified on the referencing module.
// * The referencing module is in the same apex as this.
- if sdkVersion.kind == sdkPrivate || withinSameApexesAs(module, ctx.Module()) {
+ if sdkVersion.kind == sdkPrivate || withinSameApexAs(module, ctx.Module()) {
if headerJars {
return module.HeaderJars()
} else {
@@ -1949,7 +1949,7 @@
// For consistency with SdkLibrary make the implementation jar available to libraries that
// are within the same APEX.
implLibraryModule := module.implLibraryModule
- if implLibraryModule != nil && withinSameApexesAs(module, ctx.Module()) {
+ if implLibraryModule != nil && withinSameApexAs(module, ctx.Module()) {
if headerJars {
return implLibraryModule.HeaderJars()
} else {