summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Paul Duffin <paulduffin@google.com> 2020-01-14 14:06:09 +0000
committer Paul Duffin <paulduffin@google.com> 2020-01-15 11:17:57 +0000
commitfe1492223f07fd67fa61308d8653bc43ea843695 (patch)
tree1f7e4bcd0a988aa821101c130f65ff4a4c343675
parent78ac5b962e18e96ce1fb6c2619ed2f12faeb9dad (diff)
Exclude sdkMemberVersionedDepTag from visibility enforcement
The implicit dependency from an unversioned sdk member to the snapshot versions should be excluded from visibility enforcement as it provides no benefit and would require snapshot members to be visible to their original source modules which would complicate visibility handling. Also, corrects a spelling mistake in sdkMemberVersionedDepTag. Bug: 142940300 Test: m nothing Change-Id: Ib7ea6a3d3904d042dca0ea12f6b9196d40de970b
-rw-r--r--sdk/sdk.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/sdk/sdk.go b/sdk/sdk.go
index 44e5cbbe4..3b0752ff7 100644
--- a/sdk/sdk.go
+++ b/sdk/sdk.go
@@ -285,12 +285,15 @@ type dependencyTag struct {
// For dependencies from an in-development version of an SDK member to frozen versions of the same member
// e.g. libfoo -> libfoo.mysdk.11 and libfoo.mysdk.12
-type sdkMemberVesionedDepTag struct {
+type sdkMemberVersionedDepTag struct {
dependencyTag
member string
version string
}
+// Mark this tag so dependencies that use it are excluded from visibility enforcement.
+func (t sdkMemberVersionedDepTag) ExcludeFromVisibilityEnforcement() {}
+
// Step 1: create dependencies from an SDK module to its members.
func memberMutator(mctx android.BottomUpMutatorContext) {
if s, ok := mctx.Module().(*sdk); ok {
@@ -337,7 +340,7 @@ func memberInterVersionMutator(mctx android.BottomUpMutatorContext) {
if m, ok := mctx.Module().(android.SdkAware); ok && m.IsInAnySdk() {
if !m.ContainingSdk().Unversioned() {
memberName := m.MemberName()
- tag := sdkMemberVesionedDepTag{member: memberName, version: m.ContainingSdk().Version}
+ tag := sdkMemberVersionedDepTag{member: memberName, version: m.ContainingSdk().Version}
mctx.AddReverseDependency(mctx.Module(), tag, memberName)
}
}