summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Taskmaster.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2002-12-17 14:01:28 (GMT)
committerSteven Knight <knight@baldmt.com>2002-12-17 14:01:28 (GMT)
commit72d46ff0afa7d688a2029a74b0a0084dcf439ba5 (patch)
tree82bd4d7ac5f2ad43b3624e4bd51755cf2bd85e4c /src/engine/SCons/Taskmaster.py
parent1f839d9933b456ba4ebb5098ce1f9ab01f398a94 (diff)
downloadSCons-72d46ff0afa7d688a2029a74b0a0084dcf439ba5.zip
SCons-72d46ff0afa7d688a2029a74b0a0084dcf439ba5.tar.gz
SCons-72d46ff0afa7d688a2029a74b0a0084dcf439ba5.tar.bz2
Refactor action execution so it's controlled by the interface-specific Taskmaster.Task class, not Node.build().
Diffstat (limited to 'src/engine/SCons/Taskmaster.py')
-rw-r--r--src/engine/SCons/Taskmaster.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/engine/SCons/Taskmaster.py b/src/engine/SCons/Taskmaster.py
index a32def4..043ce7d 100644
--- a/src/engine/SCons/Taskmaster.py
+++ b/src/engine/SCons/Taskmaster.py
@@ -60,11 +60,14 @@ class Task:
self.top = top
self.node = node
-
def prepare(self):
- """Called just before the task is executed."""
+ """Called just before the task is executed.
+
+ This unlinks all targets and makes all directories before
+ building anything."""
if self.targets[0].get_state() != SCons.Node.up_to_date:
- self.targets[0].prepare()
+ for t in self.targets:
+ t.prepare()
def execute(self):
"""Called to execute the task.