aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java
index a4a2ba5229..eda1d6a11e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcLibrary.java
@@ -15,6 +15,8 @@
package com.google.devtools.build.lib.rules.objc;
import static com.google.devtools.build.lib.collect.nestedset.Order.STABLE_ORDER;
+import static com.google.devtools.build.lib.rules.objc.ObjcProvider.JRE_LIBRARY;
+import static com.google.devtools.build.lib.rules.objc.ObjcProvider.LIBRARY;
import static com.google.devtools.build.lib.rules.objc.XcodeProductType.LIBRARY_STATIC;
import com.google.common.collect.ImmutableList;
@@ -63,14 +65,21 @@ public class J2ObjcLibrary implements RuleConfiguredTargetFactory {
.addEntryClasses(ruleContext.attributes().get("entry_classes", Type.STRING_LIST))
.build();
+ Iterable<ObjcProvider> jreDeps =
+ ruleContext.getPrerequisites("jre_deps", Mode.TARGET, ObjcProvider.class);
ObjcProvider.Builder objcProviderBuilder =
new ObjcProvider.Builder()
+ .addTransitiveAndPropagate(jreDeps)
.addTransitiveAndPropagate(
ruleContext.getPrerequisites("deps", Mode.TARGET, ObjcProvider.class));
+ for (ObjcProvider prereq : jreDeps) {
+ objcProviderBuilder.addTransitiveAndPropagate(JRE_LIBRARY, prereq.get(LIBRARY));
+ }
XcodeProvider.Builder xcodeProviderBuilder = new XcodeProvider.Builder();
XcodeSupport xcodeSupport =
new XcodeSupport(ruleContext)
+ .addJreDependencies(xcodeProviderBuilder)
.addDependencies(xcodeProviderBuilder, new Attribute("deps", Mode.TARGET));
ObjcProvider objcProvider = objcProviderBuilder.build();