diff options
Diffstat (limited to 'src/engine/SCons/Node/__init__.py')
-rw-r--r-- | src/engine/SCons/Node/__init__.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index 03705f7..02c14bb 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -70,11 +70,14 @@ class Node: self.bsig = None self.csig = None self.use_signature = 1 + self.precious = None def build(self): """Actually build the node. Return the status from the build.""" if not self.builder: return None + if not self.precious: + self.remove() try: stat = self.builder.execute(env = self.env.Dictionary(), target = self, source = self.sources) @@ -164,6 +167,14 @@ class Node: """Set the signature of the node's content.""" self.csig = csig + def set_precious(self, precious = 1): + """Set the Node's precious value.""" + self.precious = precious + + def remove(self): + """Remove this Node's external object: no-op by default.""" + pass + def add_dependency(self, depend): """Adds dependencies. The depend argument must be a list.""" self._add_child(self.depends, depend) |