aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java
diff options
context:
space:
mode:
authorGravatar Lukacs Berki <lberki@google.com>2015-02-19 13:36:06 +0000
committerGravatar Han-Wen Nienhuys <hanwen@google.com>2015-02-19 13:36:06 +0000
commit6916be2eede250ac166c1525a823417982b67818 (patch)
tree2cbeee538bb17b8c515c284c8eccab3afbd4ed8f /src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java
parentbfcb7f340d5b9967bb381e27eb78728fae2ddada (diff)
Remove BaselineCoverageArtifactsProvider in favor of an output group.
The only slightly different thing here is that now, instead of using target.getConfiguration().isCodeCoverageEnabled() we use BuildRequest.Options.collectCodeCoverage, but the only place where this is not the same I can think of is InputFileCT, which does not have baseline coverage files anyway. -- MOS_MIGRATED_REVID=86682774
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java b/src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java
index 30d9a83c33..49336877fd 100644
--- a/src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java
+++ b/src/main/java/com/google/devtools/build/lib/buildtool/BuildRequest.java
@@ -24,6 +24,8 @@ import com.google.common.collect.ImmutableSortedSet;
import com.google.devtools.build.lib.Constants;
import com.google.devtools.build.lib.analysis.BuildView;
import com.google.devtools.build.lib.analysis.TopLevelArtifactContext;
+import com.google.devtools.build.lib.analysis.TopLevelArtifactProvider;
+import com.google.devtools.build.lib.analysis.config.BuildConfiguration.Options;
import com.google.devtools.build.lib.analysis.config.InvalidConfigurationException;
import com.google.devtools.build.lib.exec.ExecutionOptions;
import com.google.devtools.build.lib.pkgcache.LoadingPhaseRunner;
@@ -43,6 +45,8 @@ import com.google.devtools.common.options.OptionsProvider;
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
+import java.util.TreeSet;
import java.util.UUID;
import java.util.concurrent.ExecutionException;
@@ -512,7 +516,20 @@ public class BuildRequest implements OptionsClassProvider {
getBuildOptions().compileOnly, getBuildOptions().compilationPrerequisitesOnly,
getBuildOptions().buildDefaultArtifacts,
getOptions(ExecutionOptions.class).testStrategy.equals("exclusive"),
- ImmutableSet.<String>copyOf(getBuildOptions().outputGroups), shouldRunTests());
+ determineOutputGroups(), shouldRunTests());
+ }
+
+ private ImmutableSet<String> determineOutputGroups() {
+ Set<String> current = new TreeSet<>();
+ current.addAll(getBuildOptions().outputGroups);
+ if (getOptions(Options.class).collectCodeCoverage
+ && !getBuildOptions().compileOnly
+ && !getBuildOptions().compilationPrerequisitesOnly
+ && runTests) {
+ current.add(TopLevelArtifactProvider.BASELINE_COVERAGE);
+ }
+
+ return ImmutableSet.copyOf(current);
}
public String getSymlinkPrefix() {