Emit LOCAL_CHECK_SAME_VNDK_VARIANTS

If a VNDK library does not require using different core and vendor
variants, emit LOCAL_CHECK_SAME_VNDK_VARIANTS so that the two variants
can be checked for identicalness.

Bug: 145157349
Test: With the corresponding change in build/make, remove libbinder
      from build/soong/cc/config/vndk.go and check a build fails
      even without TARGET_VNDK_USE_CORE_VARIANT set.

Change-Id: I7698edf9a24b0df150c0e4f7d8dd4926f053eee8
This commit is contained in:
Vic Yang
2020-01-08 14:32:28 -08:00
parent 62c085d7fe
commit d92090fb29
2 changed files with 10 additions and 3 deletions

View File

@@ -385,7 +385,8 @@ type libraryDecorator struct {
// If useCoreVariant is true, the vendor variant of a VNDK library is
// not installed.
useCoreVariant bool
useCoreVariant bool
checkSameCoreVariant bool
// Decorated interafaces
*baseCompiler
@@ -1096,8 +1097,11 @@ func (library *libraryDecorator) install(ctx ModuleContext, file android.Path) {
if ctx.isVndkSp() {
library.baseInstaller.subDir = "vndk-sp"
} else if ctx.isVndk() {
if ctx.DeviceConfig().VndkUseCoreVariant() && !ctx.mustUseVendorVariant() {
library.useCoreVariant = true
if !ctx.mustUseVendorVariant() {
library.checkSameCoreVariant = true
if ctx.DeviceConfig().VndkUseCoreVariant() {
library.useCoreVariant = true
}
}
library.baseInstaller.subDir = "vndk"
}