Recognise the Google-signed ART APEXes as well.

Test: `m nothing` in internal tree
Bug: 180325915
Change-Id: I83eb660ad7cb480fba2a7874ee7e7f9d35646871
This commit is contained in:
Martin Stjernholm 2021-02-16 19:55:58 +00:00
parent c572b5bf62
commit db5138230d
1 changed files with 17 additions and 1 deletions

View File

@ -210,6 +210,15 @@ import (
// apps instead of the Framework boot image extension (see DEXPREOPT_USE_ART_IMAGE and UseArtImage).
//
var artApexNames = []string{
"com.android.art",
"com.android.art.debug",
"com.android.art,testing",
"com.google.android.art",
"com.google.android.art.debug",
"com.google.android.art.testing",
}
func init() {
RegisterDexpreoptBootJarsComponents(android.InitRegistrationContext)
}
@ -485,7 +494,14 @@ func getBootImageJar(ctx android.SingletonContext, image *bootImageConfig, modul
switch image.name {
case artBootImageName:
if apexInfo.InApexByBaseName("com.android.art") || apexInfo.InApexByBaseName("com.android.art.debug") || apexInfo.InApexByBaseName("com.android.art,testing") {
inArtApex := false
for _, n := range artApexNames {
if apexInfo.InApexByBaseName(n) {
inArtApex = true
break
}
}
if inArtApex {
// ok: found the jar in the ART apex
} else if name == "jacocoagent" && ctx.Config().IsEnvTrue("EMMA_INSTRUMENT_FRAMEWORK") {
// exception (skip and continue): Jacoco platform variant for a coverage build