diff options
author | 2018-03-13 06:03:11 -0700 | |
---|---|---|
committer | 2018-03-13 06:05:30 -0700 | |
commit | b3cf83cd20f30d77e6768de651a3e652f86d6f78 (patch) | |
tree | 1f390652565c0bb7d1342962de9b6f8640add917 /src/main/java/com/google | |
parent | d95f1bf6ecca600096465dc858e0862b6539c46c (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')
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, |