Merge "Pass --preloaded-classes to boot image compilation."
This commit is contained in:
@@ -284,6 +284,9 @@ type bootImageConfig struct {
|
||||
|
||||
// Target-dependent fields.
|
||||
variants []*bootImageVariant
|
||||
|
||||
// Path of the preloaded classes file.
|
||||
preloadedClassesFile string
|
||||
}
|
||||
|
||||
// Target-dependent description of a boot image.
|
||||
@@ -686,6 +689,13 @@ func buildBootImageVariant(ctx android.ModuleContext, image *bootImageVariant, p
|
||||
cmd.FlagWithArg("--base=", ctx.Config().LibartImgDeviceBaseAddress())
|
||||
}
|
||||
|
||||
// We always expect a preloaded classes file to be available. However, if we cannot find it, it's
|
||||
// OK to not pass the flag to dex2oat.
|
||||
preloadedClassesPath := android.ExistentPathForSource(ctx, image.preloadedClassesFile)
|
||||
if preloadedClassesPath.Valid() {
|
||||
cmd.FlagWithInput("--preloaded-classes=", preloadedClassesPath.Path())
|
||||
}
|
||||
|
||||
cmd.
|
||||
FlagForEachInput("--dex-file=", image.dexPaths.Paths()).
|
||||
FlagForEachArg("--dex-location=", image.dexLocations).
|
||||
|
@@ -62,6 +62,7 @@ func genBootImageConfigRaw(ctx android.PathContext) map[string]*bootImageConfig
|
||||
installDirOnDevice: "system/framework",
|
||||
profileInstallPathInApex: "etc/boot-image.prof",
|
||||
modules: artModules,
|
||||
preloadedClassesFile: "art/build/boot/preloaded-classes",
|
||||
}
|
||||
|
||||
// Framework config for the boot image extension.
|
||||
@@ -74,6 +75,7 @@ func genBootImageConfigRaw(ctx android.PathContext) map[string]*bootImageConfig
|
||||
installDirOnHost: frameworkSubdir,
|
||||
installDirOnDevice: frameworkSubdir,
|
||||
modules: frameworkModules,
|
||||
preloadedClassesFile: "frameworks/base/config/preloaded-classes",
|
||||
}
|
||||
|
||||
return map[string]*bootImageConfig{
|
||||
|
Reference in New Issue
Block a user