aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java
diff options
context:
space:
mode:
authorGravatar mjhalupka <mjhalupka@google.com>2018-03-22 13:37:38 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-22 13:38:49 -0700
commit5d7fa7ba5d93a1fe35353b05882698b0d74d90f7 (patch)
tree3dc1c360c768c18ccdcdbc5607d98216a2a4f77b /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java
parent62af2b4763510033cf824a4c6d1e59e566002361 (diff)
Add a DefaultBuildOptions specifying default build flags that may differ from the provided defaults in Options classes. These are used to create BuildOptionsDiffForReconstruction, which lets us store only the diffs in our BuildConfigurationValue.Keys.
PiperOrigin-RevId: 190117455
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java
index 8b3d23daf5..f4940066c8 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeDependencyResolver.java
@@ -124,11 +124,15 @@ public final class SkyframeDependencyResolver extends DependencyResolver {
@Nullable
@Override
protected List<BuildConfiguration> getConfigurations(
- FragmentClassSet fragments, Iterable<BuildOptions> buildOptions)
+ FragmentClassSet fragments,
+ Iterable<BuildOptions> buildOptions,
+ BuildOptions defaultBuildOptions)
throws InvalidConfigurationException, InterruptedException {
List<SkyKey> keys = new ArrayList<>();
for (BuildOptions options : buildOptions) {
- keys.add(BuildConfigurationValue.key(fragments, options));
+ keys.add(
+ BuildConfigurationValue.key(
+ fragments, BuildOptions.diffForReconstruction(defaultBuildOptions, options)));
}
Map<SkyKey, ValueOrException<InvalidConfigurationException>> configValues =
env.getValuesOrThrow(keys, InvalidConfigurationException.class);