diff options
| author | Steven Knight <knight@baldmt.com> | 2004-08-19 14:12:31 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2004-08-19 14:12:31 (GMT) |
| commit | d46e54c513203adf47bf4e3f12970522dee547af (patch) | |
| tree | b9931ed664818436b76c4b6ed116bb3ca5f274da /src/engine | |
| parent | 1c53f32fbf5244ade7c2b428295e4f1489626e78 (diff) | |
| download | SCons-d46e54c513203adf47bf4e3f12970522dee547af.zip SCons-d46e54c513203adf47bf4e3f12970522dee547af.tar.gz SCons-d46e54c513203adf47bf4e3f12970522dee547af.tar.bz2 | |
Delete() should not blow up if what it's deleting doesn't exist.
Diffstat (limited to 'src/engine')
| -rw-r--r-- | src/engine/SCons/Defaults.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/engine/SCons/Defaults.py b/src/engine/SCons/Defaults.py index 8100869..c75ac25 100644 --- a/src/engine/SCons/Defaults.py +++ b/src/engine/SCons/Defaults.py @@ -181,14 +181,18 @@ def copy_func(dest, src): Copy = ActionFactory(copy_func, lambda dest, src: 'Copy("%s", "%s")' % (dest, src)) -def delete_func(entry): +def delete_func(entry, must_exist=0): + if not must_exist and not os.path.exists(entry): + return None if os.path.isfile(entry): return os.unlink(entry) else: return shutil.rmtree(entry, 1) -Delete = ActionFactory(delete_func, - lambda entry: 'Delete("%s")' % entry) +def delete_strfunc(entry, must_exist=0): + return 'Delete("%s")' % entry + +Delete = ActionFactory(delete_func, delete_strfunc) Mkdir = ActionFactory(os.makedirs, lambda dir: 'Mkdir("%s")' % dir) |
