Merge "mark platform un-availability"
This commit is contained in:
@@ -101,6 +101,16 @@ type ApexModule interface {
|
||||
// Tests if this module is available for the specified APEX or ":platform"
|
||||
AvailableFor(what string) bool
|
||||
|
||||
// Return true if this module is not available to platform (i.e. apex_available
|
||||
// property doesn't have "//apex_available:platform"), or shouldn't be available
|
||||
// to platform, which is the case when this module depends on other module that
|
||||
// isn't available to platform.
|
||||
NotAvailableForPlatform() bool
|
||||
|
||||
// Mark that this module is not available to platform. Set by the
|
||||
// check-platform-availability mutator in the apex package.
|
||||
SetNotAvailableForPlatform()
|
||||
|
||||
// Returns the highest version which is <= maxSdkVersion.
|
||||
// For example, with maxSdkVersion is 10 and versionList is [9,11]
|
||||
// it returns 9 as string
|
||||
@@ -126,6 +136,8 @@ type ApexProperties struct {
|
||||
Apex_available []string
|
||||
|
||||
Info ApexInfo `blueprint:"mutated"`
|
||||
|
||||
NotAvailableForPlatform bool `blueprint:"mutated"`
|
||||
}
|
||||
|
||||
// Marker interface that identifies dependencies that are excluded from APEX
|
||||
@@ -215,6 +227,14 @@ func (m *ApexModuleBase) AvailableFor(what string) bool {
|
||||
return CheckAvailableForApex(what, m.ApexProperties.Apex_available)
|
||||
}
|
||||
|
||||
func (m *ApexModuleBase) NotAvailableForPlatform() bool {
|
||||
return m.ApexProperties.NotAvailableForPlatform
|
||||
}
|
||||
|
||||
func (m *ApexModuleBase) SetNotAvailableForPlatform() {
|
||||
m.ApexProperties.NotAvailableForPlatform = true
|
||||
}
|
||||
|
||||
func (m *ApexModuleBase) DepIsInSameApex(ctx BaseModuleContext, dep Module) bool {
|
||||
// By default, if there is a dependency from A to B, we try to include both in the same APEX,
|
||||
// unless B is explicitly from outside of the APEX (i.e. a stubs lib). Thus, returning true.
|
||||
|
Reference in New Issue
Block a user