aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2020-07-09 01:03:51 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2020-07-09 01:03:51 +0000
commitc6eadab94c309a6fdda6247bf2b87cef39566bcd (patch)
treec3a05647d2d11f002c6a3f02eb9d854caf60e894
parent033c2910d1231577df7e60230af976ef68deedb9 (diff)
parent03f3a9c1466f85105d3eba813a2b3ebbb96b402f (diff)
downloadbuild_soong-c6eadab94c309a6fdda6247bf2b87cef39566bcd.tar.gz
build_soong-c6eadab94c309a6fdda6247bf2b87cef39566bcd.tar.bz2
build_soong-c6eadab94c309a6fdda6247bf2b87cef39566bcd.zip
Snap for 6664334 from 03f3a9c1466f85105d3eba813a2b3ebbb96b402f to rvc-release
Change-Id: Ie5982bea4746d672269d2a4cf91b17467c64f8b0
-rw-r--r--android/config.go2
-rw-r--r--cc/ccdeps.go18
-rw-r--r--java/config/config.go3
-rw-r--r--java/config/makevars.go2
-rw-r--r--java/jacoco.go4
-rw-r--r--java/jdeps.go18
6 files changed, 43 insertions, 4 deletions
diff --git a/android/config.go b/android/config.go
index b6ef2684..3541f831 100644
--- a/android/config.go
+++ b/android/config.go
@@ -1053,7 +1053,7 @@ func (c *deviceConfig) SamplingPGO() bool {
// represents any path.
func (c *deviceConfig) JavaCoverageEnabledForPath(path string) bool {
coverage := false
- if c.config.productVariables.JavaCoveragePaths == nil ||
+ if len(c.config.productVariables.JavaCoveragePaths) == 0 ||
InList("*", c.config.productVariables.JavaCoveragePaths) ||
HasAnyPrefix(path, c.config.productVariables.JavaCoveragePaths) {
coverage = true
diff --git a/cc/ccdeps.go b/cc/ccdeps.go
index 225405cb..b96d8b00 100644
--- a/cc/ccdeps.go
+++ b/cc/ccdeps.go
@@ -38,8 +38,11 @@ func ccDepsGeneratorSingleton() android.Singleton {
}
type ccdepsGeneratorSingleton struct {
+ outputPath android.Path
}
+var _ android.SingletonMakeVarsProvider = (*ccdepsGeneratorSingleton)(nil)
+
const (
// Environment variables used to control the behavior of this singleton.
envVariableCollectCCDeps = "SOONG_COLLECT_CC_DEPS"
@@ -110,6 +113,21 @@ func (c *ccdepsGeneratorSingleton) GenerateBuildActions(ctx android.SingletonCon
if err != nil {
ctx.Errorf(err.Error())
}
+ c.outputPath = ccfpath
+
+ // This is necessary to satisfy the dangling rules check as this file is written by Soong rather than a rule.
+ ctx.Build(pctx, android.BuildParams{
+ Rule: android.Touch,
+ Output: ccfpath,
+ })
+}
+
+func (c *ccdepsGeneratorSingleton) MakeVars(ctx android.MakeVarsContext) {
+ if c.outputPath == nil {
+ return
+ }
+
+ ctx.DistForGoal("general-tests", c.outputPath)
}
func parseCompilerCCParameters(ctx android.SingletonContext, params []string) ccParameters {
diff --git a/java/config/config.go b/java/config/config.go
index 337355d8..95add017 100644
--- a/java/config/config.go
+++ b/java/config/config.go
@@ -34,7 +34,8 @@ var (
DefaultLambdaStubsLibrary = "core-lambda-stubs"
SdkLambdaStubsPath = "prebuilts/sdk/tools/core-lambda-stubs.jar"
- DefaultJacocoExcludeFilter = []string{"org.junit.*", "org.jacoco.*", "org.mockito.*"}
+ DefaultMakeJacocoExcludeFilter = []string{"org.junit.*", "org.jacoco.*", "org.mockito.*"}
+ DefaultJacocoExcludeFilter = []string{"org.junit.**", "org.jacoco.**", "org.mockito.**"}
InstrumentFrameworkModules = []string{
"framework",
diff --git a/java/config/makevars.go b/java/config/makevars.go
index 981a7363..b355fad8 100644
--- a/java/config/makevars.go
+++ b/java/config/makevars.go
@@ -64,7 +64,7 @@ func makeVarsProvider(ctx android.MakeVarsContext) {
ctx.Strict("ZIPSYNC", "${ZipSyncCmd}")
ctx.Strict("JACOCO_CLI_JAR", "${JacocoCLIJar}")
- ctx.Strict("DEFAULT_JACOCO_EXCLUDE_FILTER", strings.Join(DefaultJacocoExcludeFilter, ","))
+ ctx.Strict("DEFAULT_JACOCO_EXCLUDE_FILTER", strings.Join(DefaultMakeJacocoExcludeFilter, ","))
ctx.Strict("EXTRACT_JAR_PACKAGES", "${ExtractJarPackagesCmd}")
diff --git a/java/jacoco.go b/java/jacoco.go
index bce9822f..9162161d 100644
--- a/java/jacoco.go
+++ b/java/jacoco.go
@@ -25,6 +25,7 @@ import (
"github.com/google/blueprint/proptools"
"android/soong/android"
+ "android/soong/java/config"
)
var (
@@ -76,7 +77,8 @@ func (j *Module) jacocoModuleToZipCommand(ctx android.ModuleContext) string {
if err != nil {
ctx.PropertyErrorf("jacoco.include_filter", "%s", err.Error())
}
- excludes, err := jacocoFiltersToSpecs(j.properties.Jacoco.Exclude_filter)
+ // Also include the default list of classes to exclude from instrumentation.
+ excludes, err := jacocoFiltersToSpecs(append(j.properties.Jacoco.Exclude_filter, config.DefaultJacocoExcludeFilter...))
if err != nil {
ctx.PropertyErrorf("jacoco.exclude_filter", "%s", err.Error())
}
diff --git a/java/jdeps.go b/java/jdeps.go
index 49e3de3c..4f636a59 100644
--- a/java/jdeps.go
+++ b/java/jdeps.go
@@ -34,8 +34,11 @@ func jDepsGeneratorSingleton() android.Singleton {
}
type jdepsGeneratorSingleton struct {
+ outputPath android.Path
}
+var _ android.SingletonMakeVarsProvider = (*jdepsGeneratorSingleton)(nil)
+
const (
// Environment variables used to modify behavior of this singleton.
envVariableCollectJavaDeps = "SOONG_COLLECT_JAVA_DEPS"
@@ -96,6 +99,21 @@ func (j *jdepsGeneratorSingleton) GenerateBuildActions(ctx android.SingletonCont
if err != nil {
ctx.Errorf(err.Error())
}
+ j.outputPath = jfpath
+
+ // This is necessary to satisfy the dangling rules check as this file is written by Soong rather than a rule.
+ ctx.Build(pctx, android.BuildParams{
+ Rule: android.Touch,
+ Output: jfpath,
+ })
+}
+
+func (j *jdepsGeneratorSingleton) MakeVars(ctx android.MakeVarsContext) {
+ if j.outputPath == nil {
+ return
+ }
+
+ ctx.DistForGoal("general-tests", j.outputPath)
}
func createJsonFile(moduleInfos map[string]android.IdeInfo, jfpath android.WritablePath) error {