aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
index 1e5e45f462..7c7d216ffb 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
@@ -50,15 +50,18 @@ public class ToolchainInfo extends SkylarkClassObject {
public static final SkylarkProviderIdentifier SKYLARK_IDENTIFIER =
SkylarkProviderIdentifier.forKey(SKYLARK_CONSTRUCTOR.getKey());
+ private final ClassObjectConstructor.Key toolchainConstructorKey;
private final ImmutableList<ConstraintValueInfo> execConstraints;
private final ImmutableList<ConstraintValueInfo> targetConstraints;
public ToolchainInfo(
+ ClassObjectConstructor.Key toolchainConstructorKey,
Iterable<ConstraintValueInfo> execConstraints,
Iterable<ConstraintValueInfo> targetConstraints,
Map<String, Object> toolchainData,
Location loc) {
this(
+ toolchainConstructorKey,
ImmutableList.copyOf(execConstraints),
ImmutableList.copyOf(targetConstraints),
toolchainData,
@@ -66,6 +69,7 @@ public class ToolchainInfo extends SkylarkClassObject {
}
public ToolchainInfo(
+ ClassObjectConstructor.Key toolchainConstructorKey,
ImmutableList<ConstraintValueInfo> execConstraints,
ImmutableList<ConstraintValueInfo> targetConstraints,
Map<String, Object> toolchainData,
@@ -73,16 +77,22 @@ public class ToolchainInfo extends SkylarkClassObject {
super(
SKYLARK_CONSTRUCTOR,
ImmutableMap.<String, Object>builder()
+ .put("toolchain_type", toolchainConstructorKey)
.put("exec_compatible_with", execConstraints)
.put("target_compatible_with", targetConstraints)
.putAll(toolchainData)
.build(),
loc);
+ this.toolchainConstructorKey = toolchainConstructorKey;
this.execConstraints = execConstraints;
this.targetConstraints = targetConstraints;
}
+ public ClassObjectConstructor.Key toolchainConstructorKey() {
+ return toolchainConstructorKey;
+ }
+
@SkylarkCallable(
name = "exec_compatible_with",
doc = "The constraints on the execution platforms this toolchain supports.",