summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Taskmaster.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Taskmaster.py')
-rw-r--r--src/engine/SCons/Taskmaster.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/engine/SCons/Taskmaster.py b/src/engine/SCons/Taskmaster.py
index 4de35f0..9a5011b 100644
--- a/src/engine/SCons/Taskmaster.py
+++ b/src/engine/SCons/Taskmaster.py
@@ -52,6 +52,7 @@ __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
import SCons.compat
+import operator
import string
import sys
import traceback
@@ -577,8 +578,8 @@ class Taskmaster:
# when they've finished building, our implicit dependency
# list will get cleared and we'll re-scan the newly-built
# file(s) for updated implicit dependencies.
- map(lambda n, P=node: n.add_to_waiting_parents(P), not_started)
- node.ref_count = len(set(not_started))
+ added = map(lambda n, P=node: n.add_to_waiting_parents(P), not_started)
+ node.ref_count = node.ref_count + reduce(operator.add, added, 0)
# Now we add these derived targets to the candidates
# list so they can be examined and built. We have to
@@ -612,8 +613,8 @@ class Taskmaster:
# so that when they've finished building, our implicit
# dependency list will get cleared and we'll re-scan the
# newly-built file(s) for updated implicit dependencies.
- map(lambda n, P=node: n.add_to_waiting_parents(P), not_built)
- node.ref_count = len(set(not_built))
+ added = map(lambda n, P=node: n.add_to_waiting_parents(P), not_built)
+ node.ref_count = node.ref_count + reduce(operator.add, added, 0)
if S: S.not_built = S.not_built + 1
if T: