diff options
author | William Deegan <bill@baddogconsulting.com> | 2019-04-02 21:24:58 (GMT) |
---|---|---|
committer | William Deegan <bill@baddogconsulting.com> | 2019-04-02 21:24:58 (GMT) |
commit | 0b9d8672365b01468fca5ba95594b92d307c94e9 (patch) | |
tree | 19abf0c29a77b17bc4df08aa6f2cddbe0f7ad110 /src/engine | |
parent | d79290b03480e810acca5a61368d7b254d22fda5 (diff) | |
download | SCons-0b9d8672365b01468fca5ba95594b92d307c94e9.zip SCons-0b9d8672365b01468fca5ba95594b92d307c94e9.tar.gz SCons-0b9d8672365b01468fca5ba95594b92d307c94e9.tar.bz2 |
Move target_peers to slots from attributes
Diffstat (limited to 'src/engine')
-rw-r--r-- | src/engine/SCons/Builder.py | 7 | ||||
-rw-r--r-- | src/engine/SCons/Node/__init__.py | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/engine/SCons/Builder.py b/src/engine/SCons/Builder.py index 010d5ff..bc243dd 100644 --- a/src/engine/SCons/Builder.py +++ b/src/engine/SCons/Builder.py @@ -563,6 +563,13 @@ class BuilderBase(object): tlist, slist = self._create_nodes(env, target, source) + # If there is more than one target ensure that if we need to reset + # the implicit list to new scan of dependency all targets implicit lists + # are cleared. (SCons GH Issue #2811 and MongoDB SERVER-33111) + if len(tlist) > 1: + for t in tlist: + t.target_peers = tlist + # Check for errors with the specified target/source lists. _node_errors(self, env, tlist, slist) diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index e4c8e6c..8e7699b 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -529,6 +529,7 @@ class Node(object, with_metaclass(NoSlotsPyPy)): __slots__ = ['sources', 'sources_set', + 'target_peers', '_specific_sources', 'depends', 'depends_set', @@ -797,7 +798,7 @@ class Node(object, with_metaclass(NoSlotsPyPy)): # https://github.com/SCons/scons/issues/2811 # https://jira.mongodb.org/browse/SERVER-33111 try: - for peer in parent.attributes.target_peers: + for peer in parent.target_peers: peer.implicit = None except AttributeError as e: pass |