From fb9cdee044f1e67f06a85b01b6c0ce133843bad3 Mon Sep 17 00:00:00 2001 From: jcater Date: Fri, 27 Apr 2018 04:05:08 -0700 Subject: Ensure that all rules which (even very indirectly) call CppHelper.getToolchainFromPlatformConstraints declare that they require a cc toolchain. PiperOrigin-RevId: 194525415 --- .../google/devtools/build/lib/bazel/rules/java/BazelJavaBinaryRule.java | 2 ++ .../devtools/build/lib/bazel/rules/java/BazelJavaLibraryRule.java | 2 ++ .../google/devtools/build/lib/bazel/rules/java/BazelJavaTestRule.java | 2 ++ 3 files changed, 6 insertions(+) (limited to 'src/main/java/com/google/devtools/build') diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaBinaryRule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaBinaryRule.java index 4364f9ed45..59788c7160 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaBinaryRule.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaBinaryRule.java @@ -27,6 +27,7 @@ import com.google.devtools.build.lib.packages.AttributeMap; import com.google.devtools.build.lib.packages.RuleClass; import com.google.devtools.build.lib.packages.RuleClass.Builder; import com.google.devtools.build.lib.rules.cpp.CppConfiguration; +import com.google.devtools.build.lib.rules.cpp.CppRuleClasses; import com.google.devtools.build.lib.rules.java.JavaConfiguration; /** @@ -88,6 +89,7 @@ public final class BazelJavaBinaryRule implements RuleDefinition { .add( attr("$jacocorunner", LABEL).value(env.getToolsLabel( "//tools/jdk:JacocoCoverage"))) + .addRequiredToolchains(CppRuleClasses.ccToolchainTypeAttribute(env)) .build(); } diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaLibraryRule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaLibraryRule.java index 555f61ddc3..c2a040f445 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaLibraryRule.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaLibraryRule.java @@ -28,6 +28,7 @@ import com.google.devtools.build.lib.packages.RuleClass; import com.google.devtools.build.lib.packages.RuleClass.Builder; import com.google.devtools.build.lib.packages.SkylarkProviderIdentifier; import com.google.devtools.build.lib.rules.cpp.CppConfiguration; +import com.google.devtools.build.lib.rules.cpp.CppRuleClasses; import com.google.devtools.build.lib.rules.java.JavaConfiguration; import com.google.devtools.build.lib.rules.java.JavaInfo; import com.google.devtools.build.lib.rules.java.JavaSourceInfoProvider; @@ -156,6 +157,7 @@ public final class BazelJavaLibraryRule implements RuleDefinition { .allowedFileTypes()) .advertiseProvider(JavaSourceInfoProvider.class) .advertiseSkylarkProvider(SkylarkProviderIdentifier.forKey(JavaInfo.PROVIDER.getKey())) + .addRequiredToolchains(CppRuleClasses.ccToolchainTypeAttribute(env)) .build(); } diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaTestRule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaTestRule.java index 19e9ab806b..f8dc9f3133 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaTestRule.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/java/BazelJavaTestRule.java @@ -31,6 +31,7 @@ import com.google.devtools.build.lib.packages.RuleClass.Builder; import com.google.devtools.build.lib.packages.RuleClass.Builder.RuleClassType; import com.google.devtools.build.lib.packages.TriState; import com.google.devtools.build.lib.rules.cpp.CppConfiguration; +import com.google.devtools.build.lib.rules.cpp.CppRuleClasses; import com.google.devtools.build.lib.rules.java.JavaConfiguration; import com.google.devtools.build.lib.rules.java.JavaSemantics; @@ -105,6 +106,7 @@ public final class BazelJavaTestRule implements RuleDefinition {

*/ .add(attr("test_class", STRING)) + .addRequiredToolchains(CppRuleClasses.ccToolchainTypeAttribute(env)) .build(); } -- cgit v1.2.3