diff options
author | 2016-05-27 18:06:55 +0000 | |
---|---|---|
committer | 2016-05-30 09:19:44 +0000 | |
commit | 660640d9976139626b59ea09d9d293eeaa8c83bc (patch) | |
tree | 1bfacec86d2f51346dfc22e1c1be37ba0e1d5a76 /src | |
parent | 6f418edf764a4dad4166ffcde49b0dbbc271214e (diff) |
Add documentation for apple_binary rule, making it visible for public consumption.
RELNOTES: Release apple_binary rule, for creating multi-architecture ("fat") objc/cc binaries and libraries, targeting ios platforms.
--
MOS_MIGRATED_REVID=123435699
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinaryRule.java | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinaryRule.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinaryRule.java index 0eddf23ec4..33920dec84 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinaryRule.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinaryRule.java @@ -60,6 +60,14 @@ public class AppleBinaryRule implements RuleDefinition { .add(attr(":cc_toolchain", LABEL) .cfg(AppleBinary.SPLIT_TRANSITION_PROVIDER) .value(ObjcRuleClasses.APPLE_TOOLCHAIN)) + /*<!-- #BLAZE_RULE(apple_binary).IMPLICIT_OUTPUTS --> + <ul> + <li><code><var>name</var>_lipobin</code>: the 'lipo'ed potentially multi-architecture + binary. All transitive dependencies and <code>srcs</code> are linked.</li> + <li><code><var>name</var>_.lipo.a</code>: a 'lipo'ed archive file linking together only + the <code>srcs</code> of this target.</li> + </ul> + <!-- #END_BLAZE_RULE.IMPLICIT_OUTPUTS -->*/ .setImplicitOutputsFunction( ImplicitOutputsFunction.fromFunctions(LIPOBIN, LIPO_ARCHIVE)) .build(); @@ -71,7 +79,22 @@ public class AppleBinaryRule implements RuleDefinition { .name("apple_binary") .factoryClass(AppleBinary.class) .ancestors(BaseRuleClasses.BaseRule.class, ObjcRuleClasses.LinkingRule.class, - ObjcRuleClasses.XcodegenRule.class, ObjcRuleClasses.SimulatorRule.class) + ObjcRuleClasses.SimulatorRule.class) .build(); } } + +/*<!-- #BLAZE_RULE (NAME = apple_binary, TYPE = BINARY, FAMILY = Objective-C) --> + +<p>This rule produces single- or multi-architecture ("fat") Objective-C libraries and/or binaries, +typically used in creating apple bundles, such as frameworks, extensions, or applications.</p> + +<p>The <code>lipo</code> tool is used to combine files of multiple architectures. The +<code>--ios_multi_cpus</code> flag controls which architectures are included in the output.</p> + +<p>This rule currently only supports building for ios architectures, though more platforms +will be supported in the future.</p> + +${IMPLICIT_OUTPUTS} + +<!-- #END_BLAZE_RULE -->*/ |