summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Script/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Script/__init__.py')
-rw-r--r--src/engine/SCons/Script/__init__.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/engine/SCons/Script/__init__.py b/src/engine/SCons/Script/__init__.py
index 3b5a79d..9b5430f 100644
--- a/src/engine/SCons/Script/__init__.py
+++ b/src/engine/SCons/Script/__init__.py
@@ -71,19 +71,22 @@ class BuildTask(SCons.Taskmaster.Task):
if self.target.get_state() == SCons.Node.up_to_date:
if self.top:
print 'scons: "%s" is up to date.' % str(self.target)
- if print_tree:
- print
- print SCons.Util.render_tree(self.target, get_children)
else:
try:
self.target.build()
- if self.top and print_tree:
- print
- print SCons.Util.render_tree(self.target, get_children)
except BuildError, e:
sys.stderr.write("scons: *** [%s] Error %s\n" % (e.node, str(e.stat)))
raise
+ def executed(self):
+ SCons.Taskmaster.Task.executed(self)
+ # print the tree here instead of in execute() because
+ # this method is serialized, but execute isn't:
+ if print_tree and self.top:
+ print
+ print SCons.Util.render_tree(self.target, get_children)
+
+
def failed(self):
global ignore_errors
if ignore_errors: