diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java index d88c3bda3e..5f48a9db82 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java @@ -329,8 +329,15 @@ public final class ObjcProvider extends SkylarkClassObject implements Transitive public static final Key<String> LINKOPT = new Key<>(LINK_ORDER, "linkopt", String.class); /** - * Static libraries that are built from J2ObjC-translated Java code. + * Link time artifacts from dependencies. These do not fall into any other category such as + * libraries or archives, rather provide a way to add arbitrary data (e.g. Swift AST files) + * to the linker. The rule that adds these is also responsible to add the necessary linker flags + * in {@link #LINKOPT}. */ + public static final Key<Artifact> LINK_INPUTS = + new Key<>(LINK_ORDER, "link_inputs", Artifact.class); + + /** Static libraries that are built from J2ObjC-translated Java code. */ public static final Key<Artifact> J2OBJC_LIBRARY = new Key<>(LINK_ORDER, "j2objc_library", Artifact.class); @@ -368,9 +375,7 @@ public final class ObjcProvider extends SkylarkClassObject implements Transitive // Items which should not be propagated to dependents. private final ImmutableMap<Key<?>, NestedSet<?>> nonPropagatedItems; - /** - * All keys in ObjcProvider that will be passed in the corresponding Skylark provider. - */ + /** All keys in ObjcProvider that will be passed in the corresponding Skylark provider. */ static final ImmutableList<Key<?>> KEYS_FOR_SKYLARK = ImmutableList.<Key<?>>of( LIBRARY, @@ -394,6 +399,7 @@ public final class ObjcProvider extends SkylarkClassObject implements Transitive XIB, STRINGS, LINKOPT, + LINK_INPUTS, J2OBJC_LIBRARY, ROOT_MERGE_ZIP, INCLUDE, |