Allow exporting of sdk members to be done per tag
Previously, every module added to an sdk directly through one of the
SdkMemberType specific properties, e.g. java_libs, was exported and
every module added automatically via a transitive dependencies was not
exported. This change allows that behavior to be customized per tag.
Bug: 186290299
Test: m art-module-sdk
- verify that this change does not affect its contents.
Change-Id: I563b5bcd823e61c23cdb706cfcbb13337963d550
diff --git a/sdk/sdk.go b/sdk/sdk.go
index 710c1f2..1c6002a 100644
--- a/sdk/sdk.go
+++ b/sdk/sdk.go
@@ -193,7 +193,8 @@
memberType: memberType,
- dependencyTag: android.DependencyTagForSdkMemberType(memberType),
+ // Dependencies added directly from member properties are always exported.
+ dependencyTag: android.DependencyTagForSdkMemberType(memberType, true),
}
listProperties = append(listProperties, memberListProperty)
@@ -255,22 +256,6 @@
return s.dynamicSdkMemberTypes.memberListProperties
}
-func (s *sdk) getExportedMembers() map[string]struct{} {
- // Collect all the exported members.
- exportedMembers := make(map[string]struct{})
-
- for _, memberListProperty := range s.memberListProperties() {
- names := memberListProperty.getter(s.dynamicMemberTypeListProperties)
-
- // Every member specified explicitly in the properties is exported by the sdk.
- for _, name := range names {
- exportedMembers[name] = struct{}{}
- }
- }
-
- return exportedMembers
-}
-
func (s *sdk) snapshot() bool {
return s.properties.Snapshot
}