diff options
Diffstat (limited to 'android/apex.go')
-rw-r--r-- | android/apex.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/android/apex.go b/android/apex.go index 79d8cdda3..0d5cac812 100644 --- a/android/apex.go +++ b/android/apex.go @@ -257,6 +257,9 @@ type ApexProperties struct { } // Marker interface that identifies dependencies that are excluded from APEX contents. +// +// Unless the tag also implements the AlwaysRequireApexVariantTag this will prevent an apex variant +// from being created for the module. type ExcludeFromApexContentsTag interface { blueprint.DependencyTag @@ -264,6 +267,17 @@ type ExcludeFromApexContentsTag interface { ExcludeFromApexContents() } +// Marker interface that identifies dependencies that always requires an APEX variant to be created. +// +// It is possible for a dependency to require an apex variant but exclude the module from the APEX +// contents. See sdk.sdkMemberDependencyTag. +type AlwaysRequireApexVariantTag interface { + blueprint.DependencyTag + + // Return true if this tag requires that the target dependency has an apex variant. + AlwaysRequireApexVariant() bool +} + // Marker interface that identifies dependencies that should inherit the DirectlyInAnyApex state // from the parent to the child. For example, stubs libraries are marked as DirectlyInAnyApex if // their implementation is in an apex. |