aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcLibrary.java7
2 files changed, 8 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
index ea55f9adbc..5c9292969e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
@@ -90,7 +90,7 @@ import java.util.Set;
public final class ObjcCommon {
/** Filters fileset artifacts out of a group of artifacts. */
- public static Iterable<Artifact> filterFileset(Iterable<Artifact> artifacts) {
+ public static ImmutableList<Artifact> filterFileset(Iterable<Artifact> artifacts) {
ImmutableList.Builder<Artifact> inputs = ImmutableList.<Artifact>builder();
for (Artifact artifact : artifacts) {
if (!artifact.isFileset()) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcLibrary.java
index 7ad60f0c46..7785f22ee1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcLibrary.java
@@ -23,6 +23,7 @@ import com.google.devtools.build.lib.analysis.test.InstrumentedFilesProvider;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.rules.cpp.CcLinkParamsInfo;
+import com.google.devtools.build.lib.rules.cpp.CppCompilationContext;
import com.google.devtools.build.lib.rules.objc.ObjcCommon.ResourceAttributes;
import com.google.devtools.build.lib.syntax.Type;
import java.util.Map;
@@ -87,9 +88,15 @@ public class ObjcLibrary implements RuleConfiguredTargetFactory {
J2ObjcEntryClassProvider j2ObjcEntryClassProvider = new J2ObjcEntryClassProvider.Builder()
.addTransitive(ruleContext.getPrerequisites("deps", Mode.TARGET,
J2ObjcEntryClassProvider.class)).build();
+ CppCompilationContext cppCompilationContext =
+ new CppCompilationContext.Builder(ruleContext)
+ .addDeclaredIncludeSrcs(CompilationAttributes.Builder
+ .fromRuleContext(ruleContext).build().hdrs().toCollection())
+ .build();
return ObjcRuleClasses.ruleConfiguredTarget(ruleContext, filesToBuild.build())
.addNativeDeclaredProvider(common.getObjcProvider())
+ .addProvider(CppCompilationContext.class, cppCompilationContext)
.addProvider(J2ObjcEntryClassProvider.class, j2ObjcEntryClassProvider)
.addProvider(J2ObjcMappingFileProvider.class, j2ObjcMappingFileProvider)
.addProvider(