aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
diff options
context:
space:
mode:
authorGravatar lberki <lberki@google.com>2018-03-13 06:03:11 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-13 06:05:30 -0700
commitb3cf83cd20f30d77e6768de651a3e652f86d6f78 (patch)
tree1f390652565c0bb7d1342962de9b6f8640add917 /src/main/java/com/google
parentd95f1bf6ecca600096465dc858e0862b6539c46c (diff)
Make DeployArchiveBuilder fetch the C++ toolchain identifier through
CcToolchainProvider instead of BuildConfiguration. This is a step towards removing BuildConfiguration#getPlatformName(). RELNOTES: None. PiperOrigin-RevId: 188862029
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainProvider.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/DeployArchiveBuilder.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaSemantics.java3
5 files changed, 13 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
index 4fdbc1a1d3..a939bdcc56 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
@@ -1513,7 +1513,12 @@ public class BuildConfiguration {
/**
* The platform string, suitable for use as a key into a MakeEnvironment.
+ *
+ * <p>Is only there for platform-dependent vardefs. Use
+ * {@link com.google.devtools.build.lib.rules.cpp.CcToolchainProvider#getToolchainIdentifier()
+ * instead.
*/
+ @Deprecated
public String getPlatformName() {
return platformName;
}
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
index af351fe66e..561ce8e641 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaSemantics.java
@@ -35,7 +35,6 @@ import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction;
import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction.ComputedSubstitution;
import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction.Substitution;
import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction.Template;
-import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.test.TestConfiguration;
import com.google.devtools.build.lib.bazel.rules.BazelConfiguration;
@@ -755,7 +754,7 @@ public class BazelJavaSemantics implements JavaSemantics {
@Override
public CustomCommandLine buildSingleJarCommandLine(
- BuildConfiguration configuration,
+ String toolchainIdentifier,
Artifact output,
String mainClass,
ImmutableList<String> manifestLines,
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainProvider.java
index 1b6ae1aa6e..13c9166f35 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcToolchainProvider.java
@@ -13,7 +13,6 @@
// limitations under the License.
package com.google.devtools.build.lib.rules.cpp;
-import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Function;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
@@ -265,10 +264,9 @@ public final class CcToolchainProvider extends ToolchainInfo {
return builtInIncludeDirectories;
}
- /** Returns the {@link CToolchain} for this toolchain. */
- @VisibleForTesting
- public CToolchain getToolchain() {
- return toolchainInfo.getToolchain();
+ /** Returns the identifier of the toolchain as specified in the {@code CToolchain} proto. */
+ public String getToolchainIdentifier() {
+ return toolchainInfo.getToolchainIdentifier();
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/DeployArchiveBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/java/DeployArchiveBuilder.java
index b0eaff9846..ffac9f8460 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/DeployArchiveBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/DeployArchiveBuilder.java
@@ -32,6 +32,7 @@ import com.google.devtools.build.lib.analysis.actions.SpawnAction;
import com.google.devtools.build.lib.collect.IterablesChain;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
+import com.google.devtools.build.lib.rules.cpp.CppHelper;
import com.google.devtools.build.lib.rules.java.JavaConfiguration.OneVersionEnforcementLevel;
import java.util.HashSet;
import java.util.List;
@@ -352,7 +353,8 @@ public class DeployArchiveBuilder {
CommandLine commandLine =
semantics.buildSingleJarCommandLine(
- ruleContext.getConfiguration(),
+ CppHelper.getToolchainUsingDefaultCcToolchainAttribute(ruleContext)
+ .getToolchainIdentifier(),
outputJar,
javaStartClass,
deployManifestLines,
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSemantics.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSemantics.java
index aac466b2b7..a7799e4f5d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSemantics.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSemantics.java
@@ -33,7 +33,6 @@ import com.google.devtools.build.lib.analysis.Runfiles.Builder;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.TemplateExpansionAction.ComputedSubstitution;
-import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
@@ -282,7 +281,7 @@ public interface JavaSemantics {
* (java code) and {@code resources} into {@code output}.
*/
CustomCommandLine buildSingleJarCommandLine(
- BuildConfiguration configuration,
+ String toolchainIdentifier,
Artifact output,
String mainClass,
ImmutableList<String> manifestLines,