aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar jcater <jcater@google.com>2018-05-29 10:10:41 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-05-29 10:12:04 -0700
commit4b9b530d7e99582e350fa1dfc9c67114134fa1a2 (patch)
treed5687e4e8a2e445f05ca296d3f660049418f3662 /src
parentfa59fbf40a27e61b8def2ba0ce8bb3c0733070aa (diff)
Remove CcToolchainType rule.
PiperOrigin-RevId: 198413879
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/CcToolchainType.java71
2 files changed, 0 insertions, 73 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java
index 7d2775f122..b8067877b4 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/CcRules.java
@@ -16,7 +16,6 @@ package com.google.devtools.build.lib.bazel.rules;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider.RuleSet;
-import com.google.devtools.build.lib.bazel.rules.CcToolchainType.CcToolchainTypeRule;
import com.google.devtools.build.lib.bazel.rules.cpp.BazelCcBinaryRule;
import com.google.devtools.build.lib.bazel.rules.cpp.BazelCcImportRule;
import com.google.devtools.build.lib.bazel.rules.cpp.BazelCcLibraryRule;
@@ -62,7 +61,6 @@ public class CcRules implements RuleSet {
builder.addRuleDefinition(new CcHostToolchainAliasRule());
builder.addRuleDefinition(new CcLibcTopAlias());
builder.addRuleDefinition(new CcImportRule());
- builder.addRuleDefinition(new CcToolchainTypeRule());
builder.addRuleDefinition(new BazelCppRuleClasses.CcLinkingRule());
builder.addRuleDefinition(new BazelCppRuleClasses.CcDeclRule());
builder.addRuleDefinition(new BazelCppRuleClasses.CcBaseRule());
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcToolchainType.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/CcToolchainType.java
deleted file mode 100644
index a409ccf93f..0000000000
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/CcToolchainType.java
+++ /dev/null
@@ -1,71 +0,0 @@
-// Copyright 2017 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.devtools.build.lib.bazel.rules;
-
-import static com.google.devtools.build.lib.packages.Attribute.attr;
-import static com.google.devtools.build.lib.syntax.Type.STRING;
-
-import com.google.common.collect.ImmutableMap;
-import com.google.devtools.build.lib.analysis.BaseRuleClasses;
-import com.google.devtools.build.lib.analysis.PlatformConfiguration;
-import com.google.devtools.build.lib.analysis.RuleContext;
-import com.google.devtools.build.lib.analysis.RuleDefinition;
-import com.google.devtools.build.lib.analysis.RuleDefinitionEnvironment;
-import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
-import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.packages.RuleClass;
-import com.google.devtools.build.lib.rules.ToolchainType;
-import com.google.devtools.build.lib.rules.cpp.CppConfiguration;
-import com.google.devtools.build.lib.rules.cpp.CppRuleClasses;
-
-/** A toolchain type for the c++ toolchain. */
-public class CcToolchainType extends ToolchainType {
-
- /** Definition for {@code cc_toolchain_type}. */
- public static class CcToolchainTypeRule implements RuleDefinition {
- @Override
- public RuleClass build(RuleClass.Builder builder, RuleDefinitionEnvironment environment) {
- return builder
- .requiresConfigurationFragments(CppConfiguration.class, PlatformConfiguration.class)
- .addRequiredToolchains(CppRuleClasses.ccToolchainTypeAttribute(environment))
- .add(attr("$tools_repo", STRING).value(environment.getToolsRepository()))
- .removeAttribute("licenses")
- .removeAttribute("distribs")
- .build();
- }
-
- @Override
- public Metadata getMetadata() {
- return Metadata.builder()
- .name("cc_toolchain_type")
- .factoryClass(CcToolchainType.class)
- .ancestors(BaseRuleClasses.BaseRule.class)
- .build();
- }
- }
-
- private static ImmutableMap<Label, Class<? extends BuildConfiguration.Fragment>>
- createFragmentMap(RuleContext ruleContext) {
- return ImmutableMap.of(
- Label.parseAbsoluteUnchecked(
- ruleContext.attributes().get("$tools_repo", STRING) + "//tools/cpp:toolchain_type"),
- CppConfiguration.class);
- }
-
- public CcToolchainType() {
- // Call constructor with a function that can infer fragment map from a RuleContext.
- super(CcToolchainType::createFragmentMap, ImmutableMap.of());
- }
-}