aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java
diff options
context:
space:
mode:
authorGravatar juliexxia <juliexxia@google.com>2018-02-13 12:44:21 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-02-13 12:46:14 -0800
commit6f9416ed9f966a153a3cb85b25104af059f4eb0a (patch)
treee4c0e4534d53cd74cac51475af51fb35d3e06994 /src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java
parent73e768e57727997db57901dbe23eb60b2c3efa95 (diff)
Implement the config(expr, word) cquery function.
expr - the expression to be evaluated word - the configuration (represented by the strings 'host', 'target', or 'null') to try to find the result(s) of 'expr' in. If some but not all results of expr can be found in the specified config, then the subset that can be is returned. If no results of expr can be found in the specified config, then an error is thrown. PiperOrigin-RevId: 185572590
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java b/src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java
index 3530399a9c..adc6b18113 100644
--- a/src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java
+++ b/src/main/java/com/google/devtools/build/lib/buildtool/BuildTool.java
@@ -66,6 +66,7 @@ import com.google.devtools.build.lib.profiler.ProfilePhase;
import com.google.devtools.build.lib.profiler.Profiler;
import com.google.devtools.build.lib.query2.CommonQueryOptions;
import com.google.devtools.build.lib.query2.ConfiguredTargetQueryEnvironment;
+import com.google.devtools.build.lib.query2.engine.QueryEnvironment.QueryFunction;
import com.google.devtools.build.lib.query2.engine.QueryEvalResult;
import com.google.devtools.build.lib.query2.engine.QueryException;
import com.google.devtools.build.lib.query2.engine.QueryExpression;
@@ -474,11 +475,16 @@ public final class BuildTool {
WalkableGraph walkableGraph =
SkyframeExecutorWrappingWalkableGraph.of(env.getSkyframeExecutor());
+ ImmutableList<QueryFunction> extraFunctions =
+ new ImmutableList.Builder<QueryFunction>()
+ .addAll(ConfiguredTargetQueryEnvironment.CQUERY_FUNCTIONS)
+ .addAll(env.getRuntime().getQueryFunctions())
+ .build();
ConfiguredTargetQueryEnvironment configuredTargetQueryEnvironment =
new ConfiguredTargetQueryEnvironment(
request.getKeepGoing(),
env.getReporter(),
- env.getRuntime().getQueryFunctions(),
+ extraFunctions,
targetConfig,
hostConfiguration,
env.newTargetPatternEvaluator().getOffset(),