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 | cf2fb56d5c6956aa70b9314afd37fa6f90eff19b (patch) | |
tree | f9abe466c67b9ca99adb91b2ff25529ca1096230 /src/engine/SCons/Script | |
parent | d3b9bfabb079ef00a2df296d8b1eb94411ec3075 (diff) | |
download | SCons-cf2fb56d5c6956aa70b9314afd37fa6f90eff19b.zip SCons-cf2fb56d5c6956aa70b9314afd37fa6f90eff19b.tar.gz SCons-cf2fb56d5c6956aa70b9314afd37fa6f90eff19b.tar.bz2 |
Eliminate multiple calls to os.stat() to fetch file info.
Diffstat (limited to 'src/engine/SCons/Script')
-rw-r--r-- | src/engine/SCons/Script/Main.py | 17 | ||||
-rw-r--r-- | src/engine/SCons/Script/SConscript.py | 5 |
2 files changed, 11 insertions, 11 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)) diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py index 7ca9993..af9d492 100644 --- a/src/engine/SCons/Script/SConscript.py +++ b/src/engine/SCons/Script/SConscript.py @@ -184,9 +184,8 @@ def _SConscript(fs, *files, **kw): # during the actual build phase. f.build() f.builder_set(None) - s = str(f) - if os.path.exists(s): - _file_ = open(s, "r") + if f.exists(): + _file_ = open(str(f), "r") if _file_: # Chdir to the SConscript directory. Use a path # name relative to the SConstruct file so that if |