From ed642330e7e522103dea6e7e0f6d48df7e5ca5e2 Mon Sep 17 00:00:00 2001 From: cpeyser Date: Thu, 3 Aug 2017 02:56:17 +0200 Subject: CppLinkAction decides execution platform based on action_configs. PiperOrigin-RevId: 164066205 --- .../devtools/build/lib/rules/cpp/CppLinkAction.java | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java') diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java index d86fa47619..e31dc4d396 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkAction.java @@ -58,7 +58,6 @@ import java.util.ArrayList; import java.util.Collection; import java.util.LinkedHashMap; import java.util.List; -import java.util.Map; import javax.annotation.Nullable; /** @@ -212,7 +211,7 @@ public final class CppLinkAction extends AbstractAction result.putAll(actionEnv); result.putAll(toolchainEnv); - if (!needsToRunOnMac()) { + if (!executionRequirements.contains(ExecutionRequirements.REQUIRES_DARWIN)) { // This prevents gcc from writing the unpredictable (and often irrelevant) // value of getcwd() into the debug info. result.put("PWD", "/proc/self/cwd"); @@ -258,7 +257,7 @@ public final class CppLinkAction extends AbstractAction } @Override - public Map getExecutionInfo() { + public ImmutableMap getExecutionInfo() { ImmutableMap.Builder result = ImmutableMap.builder(); for (String requirement : executionRequirements) { result.put(requirement, ""); @@ -295,10 +294,6 @@ public final class CppLinkAction extends AbstractAction return allLtoBackendArtifacts; } - private boolean needsToRunOnMac() { - return getHostSystemName().equals(CppConfiguration.MAC_SYSTEM_NAME); - } - @Override @ThreadCompatible public void execute(ActionExecutionContext actionExecutionContext) @@ -312,16 +307,11 @@ public final class CppLinkAction extends AbstractAction Artifact.addExpandedArtifacts( getMandatoryInputs(), allInputs, actionExecutionContext.getArtifactExpander()); - ImmutableMap executionInfo = ImmutableMap.of(); - if (needsToRunOnMac()) { - executionInfo = ImmutableMap.of(ExecutionRequirements.REQUIRES_DARWIN, ""); - } - Spawn spawn = new SimpleSpawn( this, ImmutableList.copyOf(getCommandLine()), getEnvironment(), - executionInfo, + getExecutionInfo(), ImmutableList.copyOf(allInputs), getOutputs().asList(), estimateResourceConsumptionLocal()); -- cgit v1.2.3