aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
index 319610243b..07e87246ee 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
@@ -802,7 +802,13 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
+ " flag_set {"
+ " action: 'c-compile'"
+ " action: 'c++-compile'"
- + " action: 'c++-link'"
+ + " action: 'c++-link-static-library'"
+ + " action: 'c++-link-pic-static-library'"
+ + " action: 'c++-link-interface-dynamic-library'"
+ + " action: 'c++-link-dynamic-library'"
+ + " action: 'c++-link-alwayslink-static-library'"
+ + " action: 'c++-link-alwayslink-pic-static-library'"
+ + " action: 'c++-link-executable'"
+ " flag_group {"
+ " flag: '-Xgcc-only=-fprofile-generate=%{fdo_instrument_path}'"
+ " flag: '-Xclang-only=-fprofile-instr-generate=%{fdo_instrument_path}'"
@@ -891,7 +897,13 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
+ " }"
+ " }"
+ " flag_set {"
- + " action: 'c++-link'"
+ + " action: 'c++-link-static-library'"
+ + " action: 'c++-link-pic-static-library'"
+ + " action: 'c++-link-interface-dynamic-library'"
+ + " action: 'c++-link-dynamic-library'"
+ + " action: 'c++-link-always-link-static-library'"
+ + " action: 'c++-link-always-link-pic-static-library'"
+ + " action: 'c++-link-executable'"
+ " flag_group {"
+ " flag: '-lgcov'"
+ " }"
@@ -1026,6 +1038,13 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
}
/**
+ * Returns the path of the crosstool.
+ */
+ public PathFragment getCrosstoolTopPathFragment() {
+ return crosstoolTopPathFragment;
+ }
+
+ /**
* Returns the system name which is required by the toolchain to run.
*/
public String getHostSystemName() {