aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Daniel Wagner-Hall <danielwh@google.com>2015-06-24 18:42:41 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2015-06-25 06:47:40 +0000
commitdfde4e5cd86f00c30bdedeed020844c861658b53 (patch)
treec3cc9eac5950b6f0e8f0ce99cc58faf8ef6e8cb8
parent78f2e94bbfa69c42bf58614da5df5d0bd51f8ab6 (diff)
experimental_ios_test: Support data dependencies
This CL makes me so unhappy. As a follow up, I may rename BaseRule and/or RuleBase. Because seriously, you guys, naming. -- MOS_MIGRATED_REVID=96795834
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ExperimentalIosTest.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java15
3 files changed, 18 insertions, 6 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ExperimentalIosTest.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ExperimentalIosTest.java
index cad88fe005..069963c298 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ExperimentalIosTest.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ExperimentalIosTest.java
@@ -38,7 +38,8 @@ public final class ExperimentalIosTest extends IosTest {
public ConfiguredTarget create(RuleContext ruleContext, ObjcCommon common,
XcodeProvider xcodeProvider, NestedSet<Artifact> filesToBuild) throws InterruptedException {
- Runfiles.Builder runfilesBuilder = new Runfiles.Builder();
+ Runfiles.Builder runfilesBuilder = new Runfiles.Builder()
+ .addRunfiles(ruleContext, RunfilesProvider.DEFAULT_RUNFILES);
NestedSetBuilder<Artifact> filesToBuildBuilder = NestedSetBuilder.<Artifact>stableOrder();
filesToBuildBuilder.addTransitive(filesToBuild);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java
index c70a25e735..2163ae0d4a 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java
@@ -47,7 +47,7 @@ public class ObjcProtoLibraryRule implements RuleDefinition {
The directly depended upon proto_library rules.
${SYNOPSIS}
<!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
- .add(attr("deps", LABEL_LIST)
+ .override(attr("deps", LABEL_LIST)
.allowedRuleClasses("proto_library", "filegroup")
.legacyAllowAnyFileType())
/* <!-- #BLAZE_RULE(objc_proto_library).ATTRIBUTE(options_file) -->
@@ -85,7 +85,9 @@ public class ObjcProtoLibraryRule implements RuleDefinition {
return RuleDefinition.Metadata.builder()
.name("objc_proto_library")
.factoryClass(ObjcProtoLibrary.class)
- .ancestors(BaseRuleClasses.BaseRule.class, ObjcRuleClasses.ObjcProtoRule.class)
+ .ancestors(
+ BaseRuleClasses.RuleBase.class,
+ ObjcRuleClasses.ObjcProtoRule.class)
.build();
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java
index 5207f1ecf0..88d0049e1e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java
@@ -28,6 +28,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.Artifact;
+import com.google.devtools.build.lib.analysis.BaseRuleClasses;
import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleContext;
@@ -597,7 +598,7 @@ public class ObjcRuleClasses {
The list of targets that are linked together to form the final bundle.
${SYNOPSIS}
<!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
- .add(attr("deps", LABEL_LIST)
+ .override(attr("deps", LABEL_LIST)
.direct_compile_time_input()
.allowedRuleClasses(ALLOWED_DEPS_RULE_CLASSES)
.allowedFileTypes())
@@ -630,7 +631,11 @@ public class ObjcRuleClasses {
return RuleDefinition.Metadata.builder()
.name("$objc_compiling_rule")
.type(RuleClassType.ABSTRACT)
- .ancestors(CompileDependencyRule.class, OptionsRule.class, CoptsRule.class)
+ .ancestors(
+ BaseRuleClasses.RuleBase.class,
+ CompileDependencyRule.class,
+ OptionsRule.class,
+ CoptsRule.class)
.build();
}
}
@@ -808,7 +813,11 @@ public class ObjcRuleClasses {
.name("$ios_test_base_rule")
.type(RuleClassType.ABSTRACT)
.ancestors(
- ReleaseBundlingRule.class, LinkingRule.class, XcodegenRule.class, SimulatorRule.class)
+ CompilingRule.class,
+ ReleaseBundlingRule.class,
+ LinkingRule.class,
+ XcodegenRule.class,
+ SimulatorRule.class)
.build();
}
}