summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node/FS.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Node/FS.py')
-rw-r--r--src/engine/SCons/Node/FS.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index 6ccd146..61cd80c 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -499,6 +499,21 @@ class Dir(Entry):
self._sconsign = SCons.Sig.SConsignFile(self)
return self._sconsign
+ def __str__(self):
+ # Reimplemented from Entry since, unlike for
+ # Entry and File, we want to return the source
+ # path *even if* the builder is non-zero
+ # (which it always is for a directory)
+ if self.duplicate:
+ return self.path
+ else:
+ return self.srcpath
+
+ def exists(self):
+ # Again, directories are special...we don't care if their
+ # source path exists, we only care about the path.
+ return os.path.exists(self.path)
+
# XXX TODO?