Merge "Determine GC type based on BUILT_KERNEL_VERSION_FILE." into main am: d8cb9505f8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2919746 Change-Id: I8f5460e206ecfb91af61346b7e2a15f78fced4fa Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -617,7 +617,8 @@ func (d *dexpreoptBootJars) GenerateAndroidBuildActions(ctx android.ModuleContex
|
||||
|
||||
// GenerateSingletonBuildActions generates build rules for the dexpreopt config for Make.
|
||||
func (d *dexpreoptBootJars) GenerateSingletonBuildActions(ctx android.SingletonContext) {
|
||||
d.dexpreoptConfigForMake = android.PathForOutput(ctx, getDexpreoptDirName(ctx), "dexpreopt.config")
|
||||
d.dexpreoptConfigForMake =
|
||||
android.PathForOutput(ctx, dexpreopt.GetDexpreoptDirName(ctx), "dexpreopt.config")
|
||||
writeGlobalConfigForMake(ctx, d.dexpreoptConfigForMake)
|
||||
}
|
||||
|
||||
@@ -1066,8 +1067,8 @@ func buildBootImageVariant(ctx android.ModuleContext, image *bootImageVariant, p
|
||||
cmd.FlagWithArg("--instruction-set-features=", global.InstructionSetFeatures[arch])
|
||||
}
|
||||
|
||||
if global.EnableUffdGc && image.target.Os == android.Android {
|
||||
cmd.Flag("--runtime-arg").Flag("-Xgc:CMC")
|
||||
if image.target.Os == android.Android {
|
||||
cmd.Text("$(cat").Input(globalSoong.UffdGcFlag).Text(")")
|
||||
}
|
||||
|
||||
if global.BootFlags != "" {
|
||||
@@ -1235,7 +1236,7 @@ func bootFrameworkProfileRule(ctx android.ModuleContext, image *bootImageConfig)
|
||||
func dumpOatRules(ctx android.ModuleContext, image *bootImageConfig) {
|
||||
var allPhonies android.Paths
|
||||
name := image.name
|
||||
global := dexpreopt.GetGlobalConfig(ctx)
|
||||
globalSoong := dexpreopt.GetGlobalSoongConfig(ctx)
|
||||
for _, image := range image.variants {
|
||||
arch := image.target.Arch.ArchType
|
||||
suffix := arch.String()
|
||||
@@ -1247,6 +1248,7 @@ func dumpOatRules(ctx android.ModuleContext, image *bootImageConfig) {
|
||||
output := android.PathForOutput(ctx, name+"."+suffix+".oatdump.txt")
|
||||
rule := android.NewRuleBuilder(pctx, ctx)
|
||||
imageLocationsOnHost, _ := image.imageLocations()
|
||||
|
||||
cmd := rule.Command().
|
||||
BuiltTool("oatdump").
|
||||
FlagWithInputList("--runtime-arg -Xbootclasspath:", image.dexPathsDeps.Paths(), ":").
|
||||
@@ -1254,8 +1256,8 @@ func dumpOatRules(ctx android.ModuleContext, image *bootImageConfig) {
|
||||
FlagWithArg("--image=", strings.Join(imageLocationsOnHost, ":")).Implicits(image.imagesDeps.Paths()).
|
||||
FlagWithOutput("--output=", output).
|
||||
FlagWithArg("--instruction-set=", arch.String())
|
||||
if global.EnableUffdGc && image.target.Os == android.Android {
|
||||
cmd.Flag("--runtime-arg").Flag("-Xgc:CMC")
|
||||
if image.target.Os == android.Android {
|
||||
cmd.Text("$(cat").Input(globalSoong.UffdGcFlag).Text(")")
|
||||
}
|
||||
rule.Build("dump-oat-"+name+"-"+suffix, "dump oat "+name+" "+arch.String())
|
||||
|
||||
|
@@ -115,7 +115,7 @@ func genBootImageConfigRaw(ctx android.PathContext) map[string]*bootImageConfig
|
||||
func genBootImageConfigs(ctx android.PathContext) map[string]*bootImageConfig {
|
||||
return ctx.Config().Once(bootImageConfigKey, func() interface{} {
|
||||
targets := dexpreoptTargets(ctx)
|
||||
deviceDir := android.PathForOutput(ctx, getDexpreoptDirName(ctx))
|
||||
deviceDir := android.PathForOutput(ctx, dexpreopt.GetDexpreoptDirName(ctx))
|
||||
|
||||
configs := genBootImageConfigRaw(ctx)
|
||||
|
||||
@@ -234,12 +234,3 @@ func init() {
|
||||
func dexpreoptConfigMakevars(ctx android.MakeVarsContext) {
|
||||
ctx.Strict("DEXPREOPT_BOOT_JARS_MODULES", strings.Join(defaultBootImageConfig(ctx).modules.CopyOfApexJarPairs(), ":"))
|
||||
}
|
||||
|
||||
func getDexpreoptDirName(ctx android.PathContext) string {
|
||||
prefix := "dexpreopt_"
|
||||
targets := ctx.Config().Targets[android.Android]
|
||||
if len(targets) > 0 {
|
||||
return prefix + targets[0].Arch.ArchType.String()
|
||||
}
|
||||
return prefix + "unknown_target"
|
||||
}
|
||||
|
Reference in New Issue
Block a user