diff options
author | lberki <lberki@google.com> | 2018-07-31 01:28:51 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-07-31 01:30:17 -0700 |
commit | 18c5e084d48c704d5afba65f27fa3785012d7326 (patch) | |
tree | cd376a2b2007028936d89b13f8ce222c2e93d1e8 /src/main/java/com/google/devtools/build/lib/rules/cpp | |
parent | fa7e49fb72a7f4c2f25107c6fb9550244ff54ac1 (diff) |
Only call filterDiscoveredHeaders() if include scanning is in effect.
This is a step towards making CppCompileAction work without input discovery.
This works because:
- filterDiscoveredHeaders() is not necessary if we don't discover any
- shouldPruneModules is always false if `shouldScanIncludes` is false (see CppCompileActionBuilder#shouldPruneModules())
RELNOTES: None.
PiperOrigin-RevId: 206721143
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java index 8c181ec7e4..5143793efa 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java @@ -437,9 +437,14 @@ public class CppCompileAction extends AbstractAction public Iterable<Artifact> discoverInputs(ActionExecutionContext actionExecutionContext) throws ActionExecutionException, InterruptedException { additionalInputs = findUsedHeaders(actionExecutionContext); + if (!shouldScanIncludes) { + return additionalInputs; + } + if (!shouldScanDotdFiles()) { additionalInputs = filterDiscoveredHeaders(actionExecutionContext, additionalInputs); } + if (!shouldPruneModules) { return additionalInputs; } |