Merge "Revert "Revert "Add a coverage suffix to avoid Ninja file regene..."" into main am: ffb985e9bd

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/3238687

Change-Id: I49fbf7ac4214e4f811aad2510f3a57328d8c6c17
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Qing Shen
2024-08-23 23:25:13 +00:00
committed by Automerger Merge Worker
4 changed files with 25 additions and 9 deletions

View File

@@ -173,6 +173,13 @@ func (c Config) DisableVerifyOverlaps() bool {
return c.IsEnvTrue("DISABLE_VERIFY_OVERLAPS") || c.ReleaseDisableVerifyOverlaps() || !c.ReleaseDefaultModuleBuildFromSource()
}
func (c Config) CoverageSuffix() string {
if v := c.IsEnvTrue("EMMA_INSTRUMENT"); v {
return "coverage."
}
return ""
}
// MaxPageSizeSupported returns the max page size supported by the device. This
// value will define the ELF segment alignment for binaries (executables and
// shared libraries).

View File

@@ -37,8 +37,10 @@ func (p *productConfigModule) GenerateAndroidBuildActions(ctx ModuleContext) {
if targetProduct != "" {
targetProduct += "."
}
soongVariablesPath := PathForOutput(ctx, "soong."+targetProduct+"variables")
extraVariablesPath := PathForOutput(ctx, "soong."+targetProduct+"extra.variables")
coverageSuffix := ctx.Config().CoverageSuffix()
soongVariablesPath := PathForOutput(ctx, "soong."+targetProduct+coverageSuffix+"variables")
extraVariablesPath := PathForOutput(ctx, "soong."+targetProduct+coverageSuffix+"extra.variables")
rule := NewRuleBuilder(pctx, ctx)
rule.Command().BuiltTool("merge_json").

View File

@@ -1041,7 +1041,7 @@ func (c *configImpl) NamedGlobFile(name string) string {
func (c *configImpl) UsedEnvFile(tag string) string {
if v, ok := c.environ.Get("TARGET_PRODUCT"); ok {
return shared.JoinPath(c.SoongOutDir(), usedEnvFile+"."+v+"."+tag)
return shared.JoinPath(c.SoongOutDir(), usedEnvFile+"."+v+c.CoverageSuffix()+"."+tag)
}
return shared.JoinPath(c.SoongOutDir(), usedEnvFile+"."+tag)
}
@@ -1149,6 +1149,13 @@ func (c *configImpl) TargetProductOrErr() (string, error) {
return "", fmt.Errorf("TARGET_PRODUCT is not defined")
}
func (c *configImpl) CoverageSuffix() string {
if v := c.environ.IsEnvTrue("EMMA_INSTRUMENT"); v {
return ".coverage"
}
return ""
}
func (c *configImpl) TargetDevice() string {
return c.targetDevice
}
@@ -1520,7 +1527,7 @@ func (c *configImpl) SoongVarsFile() string {
if err != nil {
return filepath.Join(c.SoongOutDir(), "soong.variables")
} else {
return filepath.Join(c.SoongOutDir(), "soong."+targetProduct+".variables")
return filepath.Join(c.SoongOutDir(), "soong."+targetProduct+c.CoverageSuffix()+".variables")
}
}
@@ -1529,7 +1536,7 @@ func (c *configImpl) SoongExtraVarsFile() string {
if err != nil {
return filepath.Join(c.SoongOutDir(), "soong.extra.variables")
} else {
return filepath.Join(c.SoongOutDir(), "soong."+targetProduct+".extra.variables")
return filepath.Join(c.SoongOutDir(), "soong."+targetProduct+c.CoverageSuffix()+".extra.variables")
}
}
@@ -1538,7 +1545,7 @@ func (c *configImpl) SoongNinjaFile() string {
if err != nil {
return filepath.Join(c.SoongOutDir(), "build.ninja")
} else {
return filepath.Join(c.SoongOutDir(), "build."+targetProduct+".ninja")
return filepath.Join(c.SoongOutDir(), "build."+targetProduct+c.CoverageSuffix()+".ninja")
}
}
@@ -1550,11 +1557,11 @@ func (c *configImpl) CombinedNinjaFile() string {
}
func (c *configImpl) SoongAndroidMk() string {
return filepath.Join(c.SoongOutDir(), "Android-"+c.TargetProduct()+".mk")
return filepath.Join(c.SoongOutDir(), "Android-"+c.TargetProduct()+c.CoverageSuffix()+".mk")
}
func (c *configImpl) SoongMakeVarsMk() string {
return filepath.Join(c.SoongOutDir(), "make_vars-"+c.TargetProduct()+".mk")
return filepath.Join(c.SoongOutDir(), "make_vars-"+c.TargetProduct()+c.CoverageSuffix()+".mk")
}
func (c *configImpl) SoongBuildMetrics() string {

View File

@@ -41,7 +41,7 @@ const katiPackageSuffix = "-package"
// arguments.
func genKatiSuffix(ctx Context, config Config) {
// Construct the base suffix.
katiSuffix := "-" + config.TargetProduct()
katiSuffix := "-" + config.TargetProduct() + config.CoverageSuffix()
// Append kati arguments to the suffix.
if args := config.KatiArgs(); len(args) > 0 {