From d852e484d8114829ad2d7a98f075a823889f5469 Mon Sep 17 00:00:00 2001 From: cpeyser Date: Thu, 7 Sep 2017 22:16:06 +0200 Subject: Add a new toolchain type for c++. In order to do this, PlatformConfiguration is made a legal configuration fragment for every rule class. Add a default "dummy" c++ toolchain to prevent resolution errors when legacy toolchain selection logic is used. Add toolchain mocks to java and shell tests. PiperOrigin-RevId: 167901210 --- src/main/java/com/google/devtools/build/lib/packages/RuleClass.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main/java/com/google/devtools/build/lib/packages/RuleClass.java') diff --git a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java index dcf609261e..daa2e8ec1b 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java +++ b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java @@ -28,6 +28,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; +import com.google.common.collect.Lists; import com.google.common.collect.Ordering; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; @@ -997,6 +998,11 @@ public class RuleClass { return this; } + public Builder addRequiredToolchains(Label... toolchainLabels) { + Iterables.addAll(this.requiredToolchains, Lists.newArrayList(toolchainLabels)); + return this; + } + /** * Returns an Attribute.Builder object which contains a replica of the * same attribute in the parent rule if exists. -- cgit v1.2.3