Install current VNDK libs to the versioned directories.

If PLATFORM_VNDK_VERSION has a version $VER other than "current",
install current VNDK libs to /system/lib[64]/vndk[-sp]-$VER.
Otherwise, they will be installed to /system/lib[64]/vndk[-sp].

Bug: 69883025
Test: device boot
Change-Id: Ifa8564f39687dab5b407bf2178b13022625a94f3
This commit is contained in:
Justin Yun 2017-12-07 17:18:15 +09:00
parent 160cdbe773
commit 8fe1212261
3 changed files with 13 additions and 7 deletions

View file

@ -648,6 +648,10 @@ func (c *deviceConfig) VndkVersion() string {
return String(c.config.ProductVariables.DeviceVndkVersion)
}
func (c *deviceConfig) PlatformVndkVersion() string {
return String(c.config.ProductVariables.Platform_vndk_version)
}
func (c *deviceConfig) ExtraVndkVersions() []string {
return c.config.ProductVariables.ExtraVndkVersions
}

View file

@ -111,6 +111,7 @@ type productVariables struct {
Platform_sdk_final *bool `json:",omitempty"`
Platform_version_active_codenames []string `json:",omitempty"`
Platform_version_future_codenames []string `json:",omitempty"`
Platform_vndk_version *string `json:",omitempty"`
DeviceName *string `json:",omitempty"`
DeviceArch *string `json:",omitempty"`

View file

@ -720,13 +720,14 @@ func (library *libraryDecorator) toc() android.OptionalPath {
func (library *libraryDecorator) install(ctx ModuleContext, file android.Path) {
if library.shared() {
if ctx.Device() {
if ctx.useVndk() {
if ctx.isVndkSp() {
library.baseInstaller.subDir = "vndk-sp"
} else if ctx.isVndk() {
library.baseInstaller.subDir = "vndk"
}
if ctx.Device() && ctx.useVndk() {
if ctx.isVndkSp() {
library.baseInstaller.subDir = "vndk-sp"
} else if ctx.isVndk() {
library.baseInstaller.subDir = "vndk"
}
if ctx.isVndk() && ctx.DeviceConfig().PlatformVndkVersion() != "current" {
library.baseInstaller.subDir += "-" + ctx.DeviceConfig().PlatformVndkVersion()
}
}
library.baseInstaller.install(ctx, file)