diff options
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.java | 28 |
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(); |