diff options
| author | Steven Knight <knight@baldmt.com> | 2005-05-13 01:44:10 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2005-05-13 01:44:10 (GMT) |
| commit | f82f4ce830289473187299db9962f819ed74c877 (patch) | |
| tree | f9abe466c67b9ca99adb91b2ff25529ca1096230 /src/engine/SCons/Script/Main.py | |
| parent | f431ccfa16fad1d0db1009eacfdace4f80e9195e (diff) | |
| download | SCons-f82f4ce830289473187299db9962f819ed74c877.zip SCons-f82f4ce830289473187299db9962f819ed74c877.tar.gz SCons-f82f4ce830289473187299db9962f819ed74c877.tar.bz2 | |
Eliminate multiple calls to os.stat() to fetch file info.
Diffstat (limited to 'src/engine/SCons/Script/Main.py')
| -rw-r--r-- | src/engine/SCons/Script/Main.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/engine/SCons/Script/Main.py b/src/engine/SCons/Script/Main.py index fd2a914..7dcb987 100644 --- a/src/engine/SCons/Script/Main.py +++ b/src/engine/SCons/Script/Main.py @@ -191,16 +191,17 @@ class BuildTask(SCons.Taskmaster.Task): class CleanTask(SCons.Taskmaster.Task): """An SCons clean task.""" def show(self): - if (self.targets[0].has_builder() or self.targets[0].side_effect) \ - and not os.path.isdir(str(self.targets[0])): - display("Removed " + str(self.targets[0])) - if SCons.Environment.CleanTargets.has_key(self.targets[0]): - files = SCons.Environment.CleanTargets[self.targets[0]] + target = self.targets[0] + if (target.has_builder() or target.side_effect) and not target.isdir(): + display("Removed " + str(target)) + if SCons.Environment.CleanTargets.has_key(target): + files = SCons.Environment.CleanTargets[target] for f in files: SCons.Util.fs_delete(str(f), 0) def remove(self): - if self.targets[0].has_builder() or self.targets[0].side_effect: + target = self.targets[0] + if target.has_builder() or target.side_effect: for t in self.targets: try: removed = t.remove() @@ -209,8 +210,8 @@ class CleanTask(SCons.Taskmaster.Task): else: if removed: display("Removed " + str(t)) - if SCons.Environment.CleanTargets.has_key(self.targets[0]): - files = SCons.Environment.CleanTargets[self.targets[0]] + if SCons.Environment.CleanTargets.has_key(target): + files = SCons.Environment.CleanTargets[target] for f in files: SCons.Util.fs_delete(str(f)) |
