aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2015-04-16 15:12:37 +0000
committerGravatar Kristina Chodorow <kchodorow@google.com>2015-04-16 18:38:49 +0000
commit29b05c8e6c48b4028a06cd788d833506cce090eb (patch)
treedc5852c6c7d4e713d2bc3b746379cb558b55fdb2 /src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
parent352b9da0d738b56112252e97d601297852233fdd (diff)
RELNOTES:Observe "non_propagated_deps" on objc rules in generated XCode project files.
-- MOS_MIGRATED_REVID=91300378
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
index e176346570..db59f0112a 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
@@ -107,11 +107,26 @@ public final class XcodeSupport {
* @return this xcode support
*/
XcodeSupport addDependencies(Builder xcodeProviderBuilder, Attribute attribute) {
- Iterable<XcodeProvider> dependencies = ruleContext.getPrerequisites(
- attribute.getName(), attribute.getAccessMode(), XcodeProvider.class);
+ xcodeProviderBuilder.addPropagatedDependencies(
+ ruleContext.getPrerequisites(
+ attribute.getName(), attribute.getAccessMode(), XcodeProvider.class),
+ ObjcRuleClasses.objcConfiguration(ruleContext));
+ return this;
+ }
- xcodeProviderBuilder
- .addDependencies(dependencies, ObjcRuleClasses.objcConfiguration(ruleContext));
+ /**
+ * Adds non-propagated dependencies to the given provider builder from the given attribute.
+ *
+ * <p>A non-propagated dependency will not be linked into the final app bundle and can only serve
+ * as a compile-only dependency for its direct dependent.
+ *
+ * @return this xcode support
+ */
+ XcodeSupport addNonPropagatedDependencies(Builder xcodeProviderBuilder, Attribute attribute) {
+ xcodeProviderBuilder.addNonPropagatedDependencies(
+ ruleContext.getPrerequisites(
+ attribute.getName(), attribute.getAccessMode(), XcodeProvider.class),
+ ObjcRuleClasses.objcConfiguration(ruleContext));
return this;
}
}