diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2020-07-09 01:03:51 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2020-07-09 01:03:51 +0000 |
commit | c6eadab94c309a6fdda6247bf2b87cef39566bcd (patch) | |
tree | c3a05647d2d11f002c6a3f02eb9d854caf60e894 | |
parent | 033c2910d1231577df7e60230af976ef68deedb9 (diff) | |
parent | 03f3a9c1466f85105d3eba813a2b3ebbb96b402f (diff) | |
download | soong-c6eadab94c309a6fdda6247bf2b87cef39566bcd.tar.gz |
Snap for 6664334 from 03f3a9c1466f85105d3eba813a2b3ebbb96b402f to rvc-release
Change-Id: Ie5982bea4746d672269d2a4cf91b17467c64f8b0
-rw-r--r-- | android/config.go | 2 | ||||
-rw-r--r-- | cc/ccdeps.go | 18 | ||||
-rw-r--r-- | java/config/config.go | 3 | ||||
-rw-r--r-- | java/config/makevars.go | 2 | ||||
-rw-r--r-- | java/jacoco.go | 4 | ||||
-rw-r--r-- | java/jdeps.go | 18 |
6 files changed, 43 insertions, 4 deletions
diff --git a/android/config.go b/android/config.go index b6ef26848..3541f831e 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 225405cb4..b96d8b007 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 337355d80..95add017d 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 981a73638..b355fad87 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 bce9822f4..9162161d3 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 49e3de3cc..4f636a59f 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 { |