diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java index 3e77023af2..a7860d6bab 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeProvider.java @@ -331,11 +331,14 @@ public final class XcodeProvider implements TransitiveInfoProvider { */ public static final class Project { private final NestedSet<Artifact> inputsToXcodegen; + private final NestedSet<Artifact> additionalSources; private final ImmutableList<XcodeProvider> topLevelTargets; private Project( - NestedSet<Artifact> inputsToXcodegen, ImmutableList<XcodeProvider> topLevelTargets) { + NestedSet<Artifact> inputsToXcodegen, NestedSet<Artifact> additionalSources, + ImmutableList<XcodeProvider> topLevelTargets) { this.inputsToXcodegen = inputsToXcodegen; + this.additionalSources = additionalSources; this.topLevelTargets = topLevelTargets; } @@ -345,10 +348,13 @@ public final class XcodeProvider implements TransitiveInfoProvider { public static Project fromTopLevelTargets(Iterable<XcodeProvider> topLevelTargets) { NestedSetBuilder<Artifact> inputsToXcodegen = NestedSetBuilder.stableOrder(); + NestedSetBuilder<Artifact> additionalSources = NestedSetBuilder.stableOrder(); for (XcodeProvider target : topLevelTargets) { inputsToXcodegen.addTransitive(target.inputsToXcodegen); + additionalSources.addTransitive(target.additionalSources); } - return new Project(inputsToXcodegen.build(), ImmutableList.copyOf(topLevelTargets)); + return new Project(inputsToXcodegen.build(), additionalSources.build(), + ImmutableList.copyOf(topLevelTargets)); } /** @@ -358,6 +364,13 @@ public final class XcodeProvider implements TransitiveInfoProvider { public NestedSet<Artifact> getInputsToXcodegen() { return inputsToXcodegen; } + + /** + * Returns artifacts that are additional sources for the Xcodegen action. + */ + public NestedSet<Artifact> getAdditionalSources() { + return additionalSources; + } /** * Returns all the target controls that must be added to the xcodegen control. No other target |