aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp
diff options
context:
space:
mode:
authorGravatar Janak Ramakrishnan <janakr@google.com>2015-04-13 16:35:05 +0000
committerGravatar Philipp Wollermann <philwo@google.com>2015-04-14 14:31:00 +0000
commiteb072aecd4a613266e0ffb1feba07a66344db174 (patch)
tree938dbd09192a031b1c5973667a8c2917d35c98b7 /src/main/java/com/google/devtools/build/lib/rules/cpp
parentece2f0d9845482ace2cf4c60484e63fd3fd125ba (diff)
Don't create duplicate ExtractInclusionActions just because user specifies the same header twice in their BUILD file.
-- MOS_MIGRATED_REVID=90995905
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/CppHelper.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
index 1ff7dd3545..14bfbf0b65 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
@@ -257,6 +257,10 @@ public class CppHelper {
Iterable<Artifact> prerequisites) {
Map<Artifact, Artifact> extractions = new HashMap<>();
for (Artifact prerequisite : prerequisites) {
+ if (extractions.containsKey(prerequisite)) {
+ // Don't create duplicate actions just because user specified same header file twice.
+ continue;
+ }
Artifact scanned = createExtractInclusions(ruleContext, prerequisite);
if (scanned != null) {
extractions.put(prerequisite, scanned);