aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java
index 0896387458..e0c6399d8f 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/cpp/BazelCppRuleClasses.java
@@ -393,13 +393,18 @@ public class BazelCppRuleClasses {
<!-- #END_BLAZE_RULE.ATTRIBUTE -->*/
.add(attr("nocopts", STRING))
/*<!-- #BLAZE_RULE($cc_rule).ATTRIBUTE(linkstatic) -->
- Link the binary in mostly-static mode.
- By default this option is on for <code>cc_binary</code> and off for <code>cc_test</code>.
+ For <a href="${link cc_binary}"><code>cc_binary</code></a> and
+ <a href="${link cc_test}"><code>cc_test</code></a>: link the binary in mostly-static
+ mode. For <code>cc_library.link_static</code>: see below.
<p>
- If enabled, this tells the build tool to link in <code>.a</code>'s instead of
- <code>.so</code>'s for user libraries whenever possible. Some system libraries may
- still be linked dynamically, as are libraries for which there's no static library. So
- the resulting binary will be dynamically linked, hence only <i>mostly</i> static.
+ By default this option is on for <code>cc_binary</code> and off for the rest.
+ </p>
+ <p>
+ If enabled and this is a binary or test, this option tells the build tool to link in
+ <code>.a</code>'s instead of <code>.so</code>'s for user libraries whenever possible.
+ Some system libraries may still be linked dynamically, as are libraries for which
+ there's no static library. So the resulting binary will be dynamically linked, hence
+ only <i>mostly</i> static.
</p>
<p>There are really three different ways to link an executable:</p>
<ul>
@@ -417,7 +422,7 @@ public class BazelCppRuleClasses {
</ul>
<p>
The <code>linkstatic</code> attribute has a different meaning if used on a
- <a href="#cc_library"><code>cc_library()</code></a> rule.
+ <a href="${link cc_library}"><code>cc_library()</code></a> rule.
For a C++ library, <code>linkstatic=1</code> indicates that only
static linking is allowed, so no <code>.so</code> will be produced.
</p>