aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
diff options
context:
space:
mode:
authorGravatar elenairina <elenairina@google.com>2017-07-11 16:51:56 +0200
committerGravatar László Csomor <laszlocsomor@google.com>2017-07-11 18:26:17 +0200
commitec9027911dda9074c27b2889b0dbb0db68d856bf (patch)
tree41485df52c7e55d81738e23e5ba880a725b0e639 /src/main/java/com/google
parent64a6c153fe3650d1c28b5f5b44dd41032f0c28cc (diff)
Expose current java_toolchain target to Skylark.
This value can be passed in Skylark to java_common.compile#java_toolchain in order to avoid incompatibility issues when the value of --java_toolchain uses a different Java version. PiperOrigin-RevId: 161528114
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
index 4d3359161c..75ad63bde0 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
@@ -444,6 +444,18 @@ public class JavaSkylarkCommon {
.build();
}
+ @SkylarkCallable(
+ name = "java_toolchain_attr",
+ doc = "Creates a dependency on the current Java toolchain. Should only be used in the "
+ + "attribute dictionary of a rule definition.",
+ structField = true
+ )
+ public SkylarkAttr.Descriptor getJavaToolchainAttribute() {
+ return new SkylarkAttr.Descriptor(
+ "java_toolchain_attr",
+ new Attribute.Builder<>("", BuildType.LABEL).value(JavaSemantics.JAVA_TOOLCHAIN));
+ }
+
private static StrictDepsMode getStrictDepsMode(String strictDepsMode) {
switch (strictDepsMode) {
case "OFF":