Ignore some prebuilt vndk libs for trunk-stable next
Source tree may include prebuilt vndk snapshot libs that are newer than or equal to the PLATFORM_VNDK_VERSION. Ignore those prebuilt vndk snapshot libs. Bug: 296488609 Test: lunch cf_x86_64_phone-next-userdebug; m nothing Change-Id: I3adaf3b7636f53884f08540959d2ec2fddfb6921
This commit is contained in:
parent
c21f48def3
commit
f14beafb7c
3 changed files with 21 additions and 3 deletions
|
@ -80,6 +80,10 @@ func apexVndkMutator(mctx android.TopDownMutatorContext) {
|
|||
// config targets the 'current' VNDK (see `vndkVersion`).
|
||||
ab.Disable()
|
||||
}
|
||||
if proptools.String(ab.vndkProperties.Vndk_version) != "" &&
|
||||
apiLevel.GreaterThanOrEqualTo(android.ApiLevelOrPanic(mctx, mctx.DeviceConfig().PlatformVndkVersion())) {
|
||||
ab.Disable()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
12
cc/vndk.go
12
cc/vndk.go
|
@ -352,13 +352,21 @@ func IsForVndkApex(mctx android.BottomUpMutatorContext, m *Module) bool {
|
|||
return false
|
||||
}
|
||||
|
||||
// prebuilt vndk modules should match with device
|
||||
// TODO(b/142675459): Use enabled: to select target device in vndk_prebuilt_shared
|
||||
// When b/142675459 is landed, remove following check
|
||||
if p, ok := m.linker.(*vndkPrebuiltLibraryDecorator); ok && !p.MatchesWithDevice(mctx.DeviceConfig()) {
|
||||
if p, ok := m.linker.(*vndkPrebuiltLibraryDecorator); ok {
|
||||
// prebuilt vndk modules should match with device
|
||||
if !p.MatchesWithDevice(mctx.DeviceConfig()) {
|
||||
return false
|
||||
}
|
||||
|
||||
// ignore prebuilt vndk modules that are newer than or equal to the platform vndk version
|
||||
platformVndkApiLevel := android.ApiLevelOrPanic(mctx, mctx.DeviceConfig().PlatformVndkVersion())
|
||||
if platformVndkApiLevel.LessThanOrEqualTo(android.ApiLevelOrPanic(mctx, p.Version())) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
if lib, ok := m.linker.(libraryInterface); ok {
|
||||
// VNDK APEX for VNDK-Lite devices will have VNDK-SP libraries from core variants
|
||||
if mctx.DeviceConfig().VndkVersion() == "" {
|
||||
|
|
|
@ -131,6 +131,12 @@ func (p *vndkPrebuiltLibraryDecorator) singleSourcePath(ctx ModuleContext) andro
|
|||
|
||||
func (p *vndkPrebuiltLibraryDecorator) link(ctx ModuleContext,
|
||||
flags Flags, deps PathDeps, objs Objects) android.Path {
|
||||
platformVndkApiLevel := android.ApiLevelOrPanic(ctx, ctx.DeviceConfig().PlatformVndkVersion())
|
||||
if platformVndkApiLevel.LessThanOrEqualTo(android.ApiLevelOrPanic(ctx, p.Version())) {
|
||||
// This prebuilt VNDK module is not required for the current build
|
||||
ctx.Module().HideFromMake()
|
||||
return nil
|
||||
}
|
||||
|
||||
if !p.MatchesWithDevice(ctx.DeviceConfig()) {
|
||||
ctx.Module().HideFromMake()
|
||||
|
|
Loading…
Reference in a new issue