Export art dexpreopt image zip file

Test: m  out/target/product/generic_arm64/boot.zip
Bug: 144491400
Change-Id: I84342703ac614e072b0cde8c6f5597dc8cffbc65
This commit is contained in:
Colin Cross 2019-12-04 13:16:01 -08:00 committed by Calin Juravle
parent e06c84e103
commit 31bf00dac3
2 changed files with 5 additions and 3 deletions

View file

@ -217,7 +217,7 @@ func (d *dexpreoptBootJars) GenerateBuildActions(ctx android.SingletonContext) {
// Always create the default boot image first, to get a unique profile rule for all images. // Always create the default boot image first, to get a unique profile rule for all images.
d.defaultBootImage = buildBootImage(ctx, defaultBootImageConfig(ctx)) d.defaultBootImage = buildBootImage(ctx, defaultBootImageConfig(ctx))
// Create boot image for the ART apex (build artifacts are accessed via the global boot image config). // Create boot image for the ART apex (build artifacts are accessed via the global boot image config).
buildBootImage(ctx, artBootImageConfig(ctx)) d.otherImages = append(d.otherImages, buildBootImage(ctx, artBootImageConfig(ctx)))
if global.GenerateApexImage { if global.GenerateApexImage {
// Create boot images for the JIT-zygote experiment. // Create boot images for the JIT-zygote experiment.
d.otherImages = append(d.otherImages, buildBootImage(ctx, apexBootImageConfig(ctx))) d.otherImages = append(d.otherImages, buildBootImage(ctx, apexBootImageConfig(ctx)))
@ -598,7 +598,6 @@ func (d *dexpreoptBootJars) MakeVars(ctx android.MakeVarsContext) {
ctx.Strict("DEXPREOPT_BOOTCLASSPATH_DEX_FILES", strings.Join(image.dexPathsDeps.Strings(), " ")) ctx.Strict("DEXPREOPT_BOOTCLASSPATH_DEX_FILES", strings.Join(image.dexPathsDeps.Strings(), " "))
ctx.Strict("DEXPREOPT_BOOTCLASSPATH_DEX_LOCATIONS", strings.Join(image.dexLocationsDeps, " ")) ctx.Strict("DEXPREOPT_BOOTCLASSPATH_DEX_LOCATIONS", strings.Join(image.dexLocationsDeps, " "))
ctx.Strict("DEXPREOPT_IMAGE_LOCATIONS", strings.Join(image.imageLocations, ":")) ctx.Strict("DEXPREOPT_IMAGE_LOCATIONS", strings.Join(image.imageLocations, ":"))
ctx.Strict("DEXPREOPT_IMAGE_ZIP_"+image.name, image.zip.String())
var imageNames []string var imageNames []string
for _, current := range append(d.otherImages, image) { for _, current := range append(d.otherImages, image) {
@ -619,6 +618,8 @@ func (d *dexpreoptBootJars) MakeVars(ctx android.MakeVarsContext) {
if current.zip != nil { if current.zip != nil {
} }
} }
ctx.Strict("DEXPREOPT_IMAGE_ZIP_"+current.name, current.zip.String())
} }
ctx.Strict("DEXPREOPT_IMAGE_NAMES", strings.Join(imageNames, " ")) ctx.Strict("DEXPREOPT_IMAGE_NAMES", strings.Join(imageNames, " "))
} }

View file

@ -226,12 +226,13 @@ func genBootImageConfigs(ctx android.PathContext) map[string]*bootImageConfig {
c.images[arch] = imageDir.Join(ctx, imageName) c.images[arch] = imageDir.Join(ctx, imageName)
c.imagesDeps[arch] = c.moduleFiles(ctx, imageDir, ".art", ".oat", ".vdex") c.imagesDeps[arch] = c.moduleFiles(ctx, imageDir, ".art", ".oat", ".vdex")
} }
c.zip = c.dir.Join(ctx, c.name+".zip")
} }
// specific to the framework config // specific to the framework config
frameworkCfg.dexPathsDeps = append(artCfg.dexPathsDeps, frameworkCfg.dexPathsDeps...) frameworkCfg.dexPathsDeps = append(artCfg.dexPathsDeps, frameworkCfg.dexPathsDeps...)
frameworkCfg.imageLocations = append(artCfg.imageLocations, frameworkCfg.imageLocations...) frameworkCfg.imageLocations = append(artCfg.imageLocations, frameworkCfg.imageLocations...)
frameworkCfg.zip = frameworkCfg.dir.Join(ctx, frameworkCfg.stem+".zip")
return configs return configs
}).(map[string]*bootImageConfig) }).(map[string]*bootImageConfig)