diff options
| author | Gary Oberbrunner <garyo@oberbrunner.com> | 2013-11-02 20:27:42 (GMT) |
|---|---|---|
| committer | Gary Oberbrunner <garyo@oberbrunner.com> | 2013-11-02 20:27:42 (GMT) |
| commit | cc202cdc15cd156c458ad9a2f94b2e9145be3ec2 (patch) | |
| tree | 69c4681b26c8c9d2e94d7c7d24bbe764ec19e4ad /src/engine/SCons/Node/__init__.py | |
| parent | 6660a1b75c021994ccf352bb5314935d533b7994 (diff) | |
| parent | 54eaf41e5eadd05c73b0ad21223f73c4ed47684f (diff) | |
| download | SCons-cc202cdc15cd156c458ad9a2f94b2e9145be3ec2.zip SCons-cc202cdc15cd156c458ad9a2f94b2e9145be3ec2.tar.gz SCons-cc202cdc15cd156c458ad9a2f94b2e9145be3ec2.tar.bz2 | |
Merge pull request #88: various usability enhancements
* Allow multiple --debug= values
* Add support for a readonly cache (--cache-readonly)
* Always print stats if requested
* Generally try harder to print out a message on build errors
Diffstat (limited to 'src/engine/SCons/Node/__init__.py')
| -rw-r--r-- | src/engine/SCons/Node/__init__.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index c114281..d353245 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -58,6 +58,10 @@ from SCons.Debug import Trace def classname(obj): return str(obj.__class__).split('.')[-1] +# Set to false if we're doing a dry run. There's more than one of these +# little treats +do_store_info = True + # Node states # # These are in "priority" order, so that the maximum value for any @@ -215,6 +219,7 @@ class Node(object): self.env = None self.state = no_state self.precious = None + self.pseudo = False self.noclean = 0 self.nocache = 0 self.cached = 0 # is this node pulled from cache? @@ -386,6 +391,13 @@ class Node(object): self.clear() + if self.pseudo: + if self.exists(): + raise SCons.Errors.UserError("Pseudo target " + str(self) + " must not exist") + else: + if not self.exists() and do_store_info: + SCons.Warnings.warn(SCons.Warnings.TargetNotBuiltWarning, + "Cannot find target " + str(self) + " after building") self.ninfo.update(self) def visited(self): @@ -789,6 +801,10 @@ class Node(object): """Set the Node's precious value.""" self.precious = precious + def set_pseudo(self, pseudo = True): + """Set the Node's precious value.""" + self.pseudo = pseudo + def set_noclean(self, noclean = 1): """Set the Node's noclean value.""" # Make sure noclean is an integer so the --debug=stree |
