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.java22
1 files changed, 9 insertions, 13 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 03212b9fc2..1e14df9dc6 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
@@ -38,7 +38,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.events.Event;
import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.rules.cpp.CppConfigurationLoader.CppConfigurationParameters;
-import com.google.devtools.build.lib.rules.cpp.CppLinkActionConfigs.CppLinkPlatform;
import com.google.devtools.build.lib.rules.cpp.Link.LinkTargetType;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
@@ -54,6 +53,7 @@ import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig.LipoM
import com.google.devtools.common.options.OptionsParsingException;
import com.google.protobuf.TextFormat;
import com.google.protobuf.TextFormat.ParseException;
+
import java.io.Serializable;
import java.util.ArrayList;
import java.util.EnumSet;
@@ -683,7 +683,6 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
return result.build();
}
-
private boolean linkActionsAreConfigured(CToolchain toolchain) {
for (LinkTargetType type : LinkTargetType.values()) {
boolean typeIsConfigured = false;
@@ -714,17 +713,6 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
return toolchain;
}
try {
- if (!linkActionsAreConfigured(toolchain)) {
- if (getTargetLibc().equals("macosx")) {
- TextFormat.merge(
- CppLinkActionConfigs.getCppLinkActionConfigs(CppLinkPlatform.MAC), toolchainBuilder);
- } else {
- TextFormat.merge(
- CppLinkActionConfigs.getCppLinkActionConfigs(CppLinkPlatform.LINUX),
- toolchainBuilder);
- }
- }
-
if (!features.contains("dependency_file")) {
// Gcc options:
// -MD turns on .d file output as a side-effect (doesn't imply -E)
@@ -869,8 +857,12 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
+ " flag_set {"
+ " action: 'c-compile'"
+ " action: 'c++-compile'"
+ + " 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: '-fprofile-generate=%{fdo_instrument_path}'"
@@ -956,8 +948,12 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
+ " }"
+ " }"
+ " flag_set {"
+ + " 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'"