Generate boot image profiles even if dexpreopt is disabled.
Bug: 280440941 Test: - 1. Patch ag/22302622 to disable dexpreopt. 2. See boot image profiles still generated. Change-Id: I1bf05ade53fa83f3dba46f28a8f9246ba1fdf664
This commit is contained in:
@@ -506,10 +506,6 @@ func (b *BootclasspathFragmentModule) DepsMutator(ctx android.BottomUpMutatorCon
|
||||
}
|
||||
}
|
||||
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return
|
||||
}
|
||||
|
||||
// Add a dependency onto the dex2oat tool which is needed for creating the boot image. The
|
||||
// path is retrieved from the dependency by GetGlobalSoongConfig(ctx).
|
||||
dexpreopt.RegisterToolDeps(ctx)
|
||||
@@ -901,10 +897,6 @@ func (b *BootclasspathFragmentModule) produceHiddenAPIOutput(ctx android.ModuleC
|
||||
|
||||
// produceBootImageFiles builds the boot image files from the source if it is required.
|
||||
func (b *BootclasspathFragmentModule) produceBootImageFiles(ctx android.ModuleContext, imageConfig *bootImageConfig) bootImageOutputs {
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return bootImageOutputs{}
|
||||
}
|
||||
|
||||
// Only generate the boot image if the configuration does not skip it.
|
||||
return b.generateBootImageBuildActions(ctx, imageConfig)
|
||||
}
|
||||
@@ -932,6 +924,13 @@ func (b *BootclasspathFragmentModule) generateBootImageBuildActions(ctx android.
|
||||
// Build boot image files for the host variants.
|
||||
buildBootImageVariantsForBuildOs(ctx, imageConfig, profile)
|
||||
|
||||
// If dexpreopt of boot image jars should be skipped, generate only a profile.
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return bootImageOutputs{
|
||||
profile: profile,
|
||||
}
|
||||
}
|
||||
|
||||
// Build boot image files for the android variants.
|
||||
bootImageFiles := buildBootImageVariantsForAndroidOs(ctx, imageConfig, profile)
|
||||
|
||||
|
@@ -500,9 +500,6 @@ func (d *dexpreoptBootJars) GenerateAndroidBuildActions(ctx android.ModuleContex
|
||||
|
||||
// Generate build rules for boot images.
|
||||
func (d *dexpreoptBootJars) GenerateSingletonBuildActions(ctx android.SingletonContext) {
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return
|
||||
}
|
||||
if dexpreopt.GetCachedGlobalSoongConfig(ctx) == nil {
|
||||
// No module has enabled dexpreopting, so we assume there will be no boot image to make.
|
||||
return
|
||||
@@ -1014,6 +1011,10 @@ func (d *dexpreoptBootJars) MakeVars(ctx android.MakeVarsContext) {
|
||||
ctx.Strict("DEXPREOPT_IMAGE_PROFILE_LICENSE_METADATA", image.profileLicenseMetadataFile.String())
|
||||
}
|
||||
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return
|
||||
}
|
||||
|
||||
global := dexpreopt.GetGlobalConfig(ctx)
|
||||
dexPaths, dexLocations := bcpForDexpreopt(ctx, global.PreoptWithUpdatableBcp)
|
||||
ctx.Strict("DEXPREOPT_BOOTCLASSPATH_DEX_FILES", strings.Join(dexPaths.Strings(), " "))
|
||||
|
@@ -103,10 +103,6 @@ func (b *platformBootclasspathModule) OutputFiles(tag string) (android.Paths, er
|
||||
func (b *platformBootclasspathModule) DepsMutator(ctx android.BottomUpMutatorContext) {
|
||||
b.hiddenAPIDepsMutator(ctx)
|
||||
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return
|
||||
}
|
||||
|
||||
// Add a dependency onto the dex2oat tool which is needed for creating the boot image. The
|
||||
// path is retrieved from the dependency by GetGlobalSoongConfig(ctx).
|
||||
dexpreopt.RegisterToolDeps(ctx)
|
||||
@@ -187,11 +183,6 @@ func (b *platformBootclasspathModule) GenerateAndroidBuildActions(ctx android.Mo
|
||||
bootDexJarByModule := b.generateHiddenAPIBuildActions(ctx, b.configuredModules, b.fragments)
|
||||
buildRuleForBootJarsPackageCheck(ctx, bootDexJarByModule)
|
||||
|
||||
// Nothing to do if skipping the dexpreopt of boot image jars.
|
||||
if SkipDexpreoptBootJars(ctx) {
|
||||
return
|
||||
}
|
||||
|
||||
b.generateBootImageBuildActions(ctx, platformModules, apexModules)
|
||||
}
|
||||
|
||||
@@ -429,6 +420,12 @@ func (b *platformBootclasspathModule) generateBootImage(ctx android.ModuleContex
|
||||
// Build a profile for the image config and then use that to build the boot image.
|
||||
profile := bootImageProfileRule(ctx, imageConfig)
|
||||
|
||||
// If dexpreopt of boot image jars should be skipped, generate only a profile.
|
||||
global := dexpreopt.GetGlobalConfig(ctx)
|
||||
if global.DisablePreoptBootImages {
|
||||
return
|
||||
}
|
||||
|
||||
// Build boot image files for the android variants.
|
||||
androidBootImageFiles := buildBootImageVariantsForAndroidOs(ctx, imageConfig, profile)
|
||||
|
||||
|
Reference in New Issue
Block a user