diff options
author | Greg Estren <gregce@google.com> | 2015-11-13 17:25:36 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2015-11-16 09:00:29 +0000 |
commit | c5a352ffba8a195817c541c8450fb3958accf1df (patch) | |
tree | 9717d7388b0d3aa5637b3ae49648b3f90771cb47 /src/main/java/com/google/devtools/build/lib/skyframe | |
parent | f97a44798510160dcba7dbf600e2199ac1a4b145 (diff) |
Add the concept of a "universal" configuration fragment, which all
configurations contain regardless of whether their rules explicitly
require it.
This is used to ensure all rules have BazelConfiguration. That
fragment supplies the path to the shell, which powers
BuildConfiguration.getShExecutable(), which powers any rule that
generates a SpawnAction.
Since SpawnActions are such a ubiquitous pattern we only want to
accelerate going forward, there's no point not to make this
automatically available to every rule.
--
MOS_MIGRATED_REVID=107786879
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTargetFunction.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTargetFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTargetFunction.java index 280e1a2277..86a50b890d 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTargetFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTargetFunction.java @@ -145,6 +145,8 @@ public class TransitiveTargetFunction fragment.asSubclass(BuildConfiguration.Fragment.class)); } } + builder.getTransitiveConfigFragments().add( + ruleClassProvider.getUniversalFragment().asSubclass(BuildConfiguration.Fragment.class)); } return builder.build(errorLoadingTarget); |