summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Taskmaster.py
diff options
context:
space:
mode:
authorGary Oberbrunner <garyo@oberbrunner.com>2011-03-01 00:48:34 (GMT)
committerGary Oberbrunner <garyo@oberbrunner.com>2011-03-01 00:48:34 (GMT)
commitf6027721b125af34862d1ba7ca5ba2205a09e1fe (patch)
tree42c19eb88c9178695c1c3a268b61140ea40ab637 /src/engine/SCons/Taskmaster.py
parent925ece49f121303e558f9d63b1c138f814465fc8 (diff)
downloadSCons-f6027721b125af34862d1ba7ca5ba2205a09e1fe.zip
SCons-f6027721b125af34862d1ba7ca5ba2205a09e1fe.tar.gz
SCons-f6027721b125af34862d1ba7ca5ba2205a09e1fe.tar.bz2
New debug option --debug=prepare to watch targets being prepared
Diffstat (limited to 'src/engine/SCons/Taskmaster.py')
-rw-r--r--src/engine/SCons/Taskmaster.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/engine/SCons/Taskmaster.py b/src/engine/SCons/Taskmaster.py
index 8cf5595..58a8d90 100644
--- a/src/engine/SCons/Taskmaster.py
+++ b/src/engine/SCons/Taskmaster.py
@@ -66,6 +66,7 @@ NODE_UP_TO_DATE = SCons.Node.up_to_date
NODE_EXECUTED = SCons.Node.executed
NODE_FAILED = SCons.Node.failed
+print_prepare = 0 # set by option --debug=prepare
# A subsystem for recording stats about how different Nodes are handled by
# the main Taskmaster loop. There's no external control here (no need for
@@ -161,6 +162,7 @@ class Task(object):
unlink underlying files and make all necessary directories before
the Action is actually called to build the targets.
"""
+ global print_prepare
T = self.tm.trace
if T: T.write(self.trace_message(u'Task.prepare()', self.node))
@@ -186,8 +188,14 @@ class Task(object):
executor = self.targets[0].get_executor()
executor.prepare()
for t in executor.get_action_targets():
+ if print_prepare:
+ print "Preparing target %s..."%t
+ for s in t.side_effects:
+ print "...with side-effect %s..."%s
t.prepare()
for s in t.side_effects:
+ if print_prepare:
+ print "...Preparing side-effect %s..."%s
s.prepare()
def get_target(self):