Merge "Override package name for VNDK APEX" am: 405c7ab959
am: c457e7876d
Change-Id: I39b2041e52cab1d465049e727e57b7ae3fbcd6e3
This commit is contained in:
@@ -724,7 +724,13 @@ func (a *apexBundle) DepIsInSameApex(ctx android.BaseModuleContext, dep android.
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (a *apexBundle) getCertString(ctx android.BaseModuleContext) string {
|
func (a *apexBundle) getCertString(ctx android.BaseModuleContext) string {
|
||||||
certificate, overridden := ctx.DeviceConfig().OverrideCertificateFor(ctx.ModuleName())
|
moduleName := ctx.ModuleName()
|
||||||
|
// VNDK APEXes share the same certificate. To avoid adding a new VNDK version to the OVERRIDE_* list,
|
||||||
|
// we check with the pseudo module name to see if its certificate is overridden.
|
||||||
|
if a.vndkApex {
|
||||||
|
moduleName = vndkApexName
|
||||||
|
}
|
||||||
|
certificate, overridden := ctx.DeviceConfig().OverrideCertificateFor(moduleName)
|
||||||
if overridden {
|
if overridden {
|
||||||
return ":" + certificate
|
return ":" + certificate
|
||||||
}
|
}
|
||||||
|
@@ -350,8 +350,8 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) {
|
|||||||
implicitInputs = append(implicitInputs, cannedFsConfig, a.fileContexts, a.private_key_file, a.public_key_file)
|
implicitInputs = append(implicitInputs, cannedFsConfig, a.fileContexts, a.private_key_file, a.public_key_file)
|
||||||
optFlags = append(optFlags, "--pubkey "+a.public_key_file.String())
|
optFlags = append(optFlags, "--pubkey "+a.public_key_file.String())
|
||||||
|
|
||||||
manifestPackageName, overridden := ctx.DeviceConfig().OverrideManifestPackageNameFor(a.Name())
|
manifestPackageName := a.getOverrideManifestPackageName(ctx)
|
||||||
if overridden {
|
if manifestPackageName != "" {
|
||||||
optFlags = append(optFlags, "--override_apk_package_name "+manifestPackageName)
|
optFlags = append(optFlags, "--override_apk_package_name "+manifestPackageName)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -536,3 +536,21 @@ func (a *apexBundle) buildFilesInfo(ctx android.ModuleContext) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *apexBundle) getOverrideManifestPackageName(ctx android.ModuleContext) string {
|
||||||
|
// For VNDK APEXes, check "com.android.vndk" in PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES
|
||||||
|
// to see if it should be overridden because their <apex name> is dynamically generated
|
||||||
|
// according to its VNDK version.
|
||||||
|
if a.vndkApex {
|
||||||
|
overrideName, overridden := ctx.DeviceConfig().OverrideManifestPackageNameFor(vndkApexName)
|
||||||
|
if overridden {
|
||||||
|
return strings.Replace(*a.properties.Apex_name, vndkApexName, overrideName, 1)
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
manifestPackageName, overridden := ctx.DeviceConfig().OverrideManifestPackageNameFor(a.Name())
|
||||||
|
if overridden {
|
||||||
|
return manifestPackageName
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
@@ -26,7 +26,8 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
vndkApexNamePrefix = "com.android.vndk.v"
|
vndkApexName = "com.android.vndk"
|
||||||
|
vndkApexNamePrefix = vndkApexName + ".v"
|
||||||
)
|
)
|
||||||
|
|
||||||
// apex_vndk creates a special variant of apex modules which contains only VNDK libraries.
|
// apex_vndk creates a special variant of apex modules which contains only VNDK libraries.
|
||||||
|
Reference in New Issue
Block a user