aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java28
1 files changed, 18 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
index 06f6c87404..39a0e674ff 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredTargetFactory.java
@@ -221,15 +221,21 @@ public final class ConfiguredTargetFactory {
ListMultimap<Attribute, ConfiguredTarget> prerequisiteMap,
Set<ConfigMatchingProvider> configConditions) throws InterruptedException {
// Visibility computation and checking is done for every rule.
- RuleContext ruleContext = new RuleContext.Builder(env, rule, null,
- configuration, hostConfiguration,
- ruleClassProvider.getPrerequisiteValidator(),
- rule.getRuleClassObject().getConfigurationFragmentPolicy())
- .setVisibility(convertVisibility(prerequisiteMap, env.getEventHandler(), rule, null))
- .setPrerequisites(prerequisiteMap)
- .setConfigConditions(configConditions)
- .setUniversalFragment(ruleClassProvider.getUniversalFragment())
- .build();
+ RuleContext ruleContext =
+ new RuleContext.Builder(
+ env,
+ rule,
+ null,
+ configuration,
+ hostConfiguration,
+ ruleClassProvider.getPrerequisiteValidator(),
+ rule.getRuleClassObject().getConfigurationFragmentPolicy())
+ .setVisibility(convertVisibility(prerequisiteMap, env.getEventHandler(), rule, null))
+ .setPrerequisites(prerequisiteMap)
+ .setConfigConditions(configConditions)
+ .setUniversalFragment(ruleClassProvider.getUniversalFragment())
+ .setSkylarkProvidersRegistry(ruleClassProvider.getRegisteredSkylarkProviders())
+ .build();
if (ruleContext.hasErrors()) {
return null;
}
@@ -252,7 +258,9 @@ public final class ConfiguredTargetFactory {
if (rule.getRuleClassObject().isSkylarkExecutable()) {
// TODO(bazel-team): maybe merge with RuleConfiguredTargetBuilder?
return SkylarkRuleConfiguredTargetBuilder.buildRule(
- ruleContext, rule.getRuleClassObject().getConfiguredTargetFunction());
+ ruleContext,
+ rule.getRuleClassObject().getConfiguredTargetFunction(),
+ ruleClassProvider.getRegisteredSkylarkProviders());
} else {
RuleClass.ConfiguredTargetFactory<ConfiguredTarget, RuleContext> factory =
rule.getRuleClassObject().<ConfiguredTarget, RuleContext>getConfiguredTargetFactory();