diff options
author | Adam Gross <grossag@vmware.com> | 2020-01-15 00:44:24 (GMT) |
---|---|---|
committer | Adam Gross <grossag@vmware.com> | 2020-01-15 00:44:24 (GMT) |
commit | 50154d0eb7afc564cb13e47c7524fcf2f6ff0450 (patch) | |
tree | 89f52f7a3d33c350592a7eba98dc5580bbbff6b7 /src/engine/SCons | |
parent | 589b0a4a29353df1d1fe4177eae578fc6754f7ac (diff) | |
download | SCons-50154d0eb7afc564cb13e47c7524fcf2f6ff0450.zip SCons-50154d0eb7afc564cb13e47c7524fcf2f6ff0450.tar.gz SCons-50154d0eb7afc564cb13e47c7524fcf2f6ff0450.tar.bz2 |
Add name parameter as requested in PR
Diffstat (limited to 'src/engine/SCons')
-rw-r--r-- | src/engine/SCons/Environment.py | 4 | ||||
-rw-r--r-- | src/engine/SCons/Node/Python.py | 9 | ||||
-rw-r--r-- | src/engine/SCons/Node/PythonTests.py | 5 |
3 files changed, 13 insertions, 5 deletions
diff --git a/src/engine/SCons/Environment.py b/src/engine/SCons/Environment.py index 3e23196..099d143 100644 --- a/src/engine/SCons/Environment.py +++ b/src/engine/SCons/Environment.py @@ -2220,10 +2220,10 @@ class Base(SubstitutionEnvironment): else: return [self.subst(arg)] - def Value(self, value, built_value=None): + def Value(self, value, built_value=None, name=None): """ """ - return SCons.Node.Python.ValueWithMemo(value, built_value) + return SCons.Node.Python.ValueWithMemo(value, built_value, name) def VariantDir(self, variant_dir, src_dir, duplicate=1): variant_dir = self.arg2nodes(variant_dir, self.fs.Dir)[0] diff --git a/src/engine/SCons/Node/Python.py b/src/engine/SCons/Node/Python.py index 385a645..8437385 100644 --- a/src/engine/SCons/Node/Python.py +++ b/src/engine/SCons/Node/Python.py @@ -88,7 +88,7 @@ class Value(SCons.Node.Node): NodeInfo = ValueNodeInfo BuildInfo = ValueBuildInfo - def __init__(self, value, built_value=None): + def __init__(self, value, built_value=None, name=None): SCons.Node.Node.__init__(self) self.value = value self.changed_since_last_build = 6 @@ -98,7 +98,10 @@ class Value(SCons.Node.Node): # Set a name so it can be a child of a node and not break # its parent's implementation of Node.get_contents. - self.name = value + if name: + self.name = name + else: + self.name = str(value) def str_for_display(self): return repr(self.value) @@ -181,7 +184,7 @@ class Value(SCons.Node.Node): return contents -def ValueWithMemo(value, built_value=None): +def ValueWithMemo(value, built_value=None, name=None): global _memo_lookup_map # No current support for memoizing a value that needs to be built. diff --git a/src/engine/SCons/Node/PythonTests.py b/src/engine/SCons/Node/PythonTests.py index da71074..302bb59 100644 --- a/src/engine/SCons/Node/PythonTests.py +++ b/src/engine/SCons/Node/PythonTests.py @@ -64,6 +64,11 @@ class ValueTestCase(unittest.TestCase): v2.build() assert v2.built_value == 'faked', v2.built_value + v3 = SCons.Node.Python.Value(b'\x00\x0F', name='name') + v3.executor = fake_executor() + v3.build() + assert v3.built_value == 'faked', v3.built_value + def test_read(self): """Test the Value.read() method """ |