aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/apple
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2018-03-06 16:15:11 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-06 16:18:46 -0800
commite2d200f32a7242898a5c976837bd3b8e6dfed62c (patch)
tree98a6fb3b0bbe3d8438aff9206d5ff77cf19870c3 /src/main/java/com/google/devtools/build/lib/rules/apple
parenta854d6c0d3d222bbd4ff2a532d48ddd91718908c (diff)
Expose an actions provider on RuleConfiguredTarget instances.
Given a target (for example from a skylark aspect), one will be able to access a list of actions that the target generated using "target.actions". This is without additional memory footprint. Actions themselves are not fully exposed to skylark (and thus there isn't much meaning to gather from them in skylark yet). Access methods will follow soon. RELNOTES: None. PiperOrigin-RevId: 188098079
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/apple')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/apple/BUILD1
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfig.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfigAlias.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/apple/XcodeVersion.java3
4 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD
index a40e8f8ad9..4ad39bc4f1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/rules/apple/BUILD
@@ -17,6 +17,7 @@ java_library(
"//src/main/java/com/google/devtools/build/lib:packages-internal",
"//src/main/java/com/google/devtools/build/lib:skylarkinterface",
"//src/main/java/com/google/devtools/build/lib:syntax",
+ "//src/main/java/com/google/devtools/build/lib/actions",
"//src/main/java/com/google/devtools/build/lib/analysis/skylark/annotations",
"//src/main/java/com/google/devtools/build/lib/cmdline",
"//src/main/java/com/google/devtools/build/lib/concurrent",
diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfig.java b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfig.java
index abb00c0a21..d9ae4a09c4 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfig.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfig.java
@@ -22,6 +22,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
import com.google.common.collect.Maps;
import com.google.common.collect.Streams;
+import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
@@ -50,7 +51,7 @@ public class XcodeConfig implements RuleConfiguredTargetFactory {
@Override
public ConfiguredTarget create(RuleContext ruleContext)
- throws InterruptedException, RuleErrorException {
+ throws InterruptedException, RuleErrorException, ActionConflictException {
AppleConfiguration appleConfig = ruleContext.getFragment(AppleConfiguration.class);
AppleCommandLineOptions appleOptions = appleConfig.getOptions();
XcodeVersionRuleData defaultVersion = ruleContext.getPrerequisite(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfigAlias.java b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfigAlias.java
index a2d89f201b..677ff91a57 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfigAlias.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeConfigAlias.java
@@ -15,6 +15,7 @@
package com.google.devtools.build.lib.rules.apple;
import com.google.common.collect.ImmutableMap;
+import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException;
import com.google.devtools.build.lib.analysis.AliasProvider;
import com.google.devtools.build.lib.analysis.BaseRuleClasses;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
@@ -38,7 +39,7 @@ import com.google.devtools.build.lib.rules.AliasConfiguredTarget;
public class XcodeConfigAlias implements RuleConfiguredTargetFactory {
@Override
public ConfiguredTarget create(RuleContext ruleContext)
- throws InterruptedException, RuleErrorException {
+ throws InterruptedException, RuleErrorException, ActionConflictException {
ConfiguredTarget actual = (ConfiguredTarget) ruleContext.getPrerequisite(
XcodeConfigRule.XCODE_CONFIG_ATTR_NAME, Mode.TARGET);
return new AliasConfiguredTarget(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeVersion.java b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeVersion.java
index f341cbca45..6529c5b014 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeVersion.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/apple/XcodeVersion.java
@@ -14,6 +14,7 @@
package com.google.devtools.build.lib.rules.apple;
+import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
@@ -27,7 +28,7 @@ public class XcodeVersion implements RuleConfiguredTargetFactory {
@Override
public ConfiguredTarget create(RuleContext ruleContext)
- throws InterruptedException, RuleErrorException {
+ throws InterruptedException, RuleErrorException, ActionConflictException {
XcodeVersionRuleData ruleData =
new XcodeVersionRuleData(ruleContext.getLabel(), ruleContext.getRule());