Disable no-vendor-variant VNDK for CFI modules
If CFI is enabled for a module, no-vendor-variant VNDK will fail because CFI is not used for the vendor variant. Bug: 148638729 Test: Remove libstagefright_bufferpool@2.0 from the whitelist. Build on crosshatch is successful. Build on a ARM32 device with TARGET_VNDK_USE_CORE_VARIANT set and check no-vendor-variant VNDK is still enabled for libstagefright_bufferpool@2.0. Change-Id: Ib0a411d7ea769097186afa802751b0796527ec76
This commit is contained in:
parent
56bcaa6dc1
commit
1a5812a262
|
@ -1104,7 +1104,21 @@ func (library *libraryDecorator) install(ctx ModuleContext, file android.Path) {
|
|||
if ctx.isVndkSp() {
|
||||
library.baseInstaller.subDir = "vndk-sp"
|
||||
} else if ctx.isVndk() {
|
||||
if !ctx.mustUseVendorVariant() && !ctx.isVndkExt() {
|
||||
mayUseCoreVariant := true
|
||||
|
||||
if ctx.mustUseVendorVariant() {
|
||||
mayUseCoreVariant = false
|
||||
}
|
||||
|
||||
if ctx.isVndkExt() {
|
||||
mayUseCoreVariant = false
|
||||
}
|
||||
|
||||
if ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) && ctx.Arch().ArchType == android.Arm64 {
|
||||
mayUseCoreVariant = false
|
||||
}
|
||||
|
||||
if mayUseCoreVariant {
|
||||
library.checkSameCoreVariant = true
|
||||
if ctx.DeviceConfig().VndkUseCoreVariant() {
|
||||
library.useCoreVariant = true
|
||||
|
|
Loading…
Reference in New Issue