Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c9a2d07 authored by Roland Levillain's avatar Roland Levillain Committed by Oliver Nguyen
Browse files

Rename native code coverage paths product variables in Soong.

Rename `CoveragePath` and `CoverageExcludePaths` as
`NativeCoveragePath` and `NativeCoverageExcludePaths` (resp.).
Also rename function `android.CoverageEnabledForPath` as
`android.NativeCoverageEnabledForPath`.

Test: m nothing
Bug: 158212027
Merged-In: Id2c11a638e88088096420b537effa866d7667304
Change-Id: Id2c11a638e88088096420b537effa866d7667304
parent 16e8b049
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -1049,15 +1049,20 @@ func (c *deviceConfig) ClangCoverageEnabled() bool {
	return Bool(c.config.productVariables.ClangCoverage)
}

func (c *deviceConfig) CoverageEnabledForPath(path string) bool {
// NativeCoverageEnabledForPath returns whether (GCOV- or Clang-based) native
// code coverage is enabled for path. By default, coverage is not enabled for a
// given path unless it is part of the NativeCoveragePaths product variable (and
// not part of the NativeCoverageExcludePaths product variable). Value "*" in
// NativeCoveragePaths represents any path.
func (c *deviceConfig) NativeCoverageEnabledForPath(path string) bool {
	coverage := false
	if c.config.productVariables.CoveragePaths != nil {
		if InList("*", c.config.productVariables.CoveragePaths) || HasAnyPrefix(path, c.config.productVariables.CoveragePaths) {
	if c.config.productVariables.NativeCoveragePaths != nil {
		if InList("*", c.config.productVariables.NativeCoveragePaths) || HasAnyPrefix(path, c.config.productVariables.NativeCoveragePaths) {
			coverage = true
		}
	}
	if coverage && c.config.productVariables.CoverageExcludePaths != nil {
		if HasAnyPrefix(path, c.config.productVariables.CoverageExcludePaths) {
	if coverage && c.config.productVariables.NativeCoverageExcludePaths != nil {
		if HasAnyPrefix(path, c.config.productVariables.NativeCoverageExcludePaths) {
			coverage = false
		}
	}
+5 −5
Original line number Diff line number Diff line
@@ -256,8 +256,8 @@ type productVariables struct {
	NativeLineCoverage         *bool    `json:",omitempty"`
	Native_coverage            *bool    `json:",omitempty"`
	ClangCoverage              *bool    `json:",omitempty"`
	CoveragePaths        []string `json:",omitempty"`
	CoverageExcludePaths []string `json:",omitempty"`
	NativeCoveragePaths        []string `json:",omitempty"`
	NativeCoverageExcludePaths []string `json:",omitempty"`

	DevicePrefer32BitApps        *bool `json:",omitempty"`
	DevicePrefer32BitExecutables *bool `json:",omitempty"`
+1 −1
Original line number Diff line number Diff line
@@ -175,7 +175,7 @@ func (cov *coverage) begin(ctx BaseModuleContext) {

		if needCoverageVariant {
			// Coverage variant is actually built with coverage if enabled for its module path
			needCoverageBuild = ctx.DeviceConfig().CoverageEnabledForPath(ctx.ModuleDir())
			needCoverageBuild = ctx.DeviceConfig().NativeCoverageEnabledForPath(ctx.ModuleDir())
		}
	}