diff options
| author | Steven Knight <knight@baldmt.com> | 2004-02-24 06:19:49 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2004-02-24 06:19:49 (GMT) |
| commit | 4b3d35e6964da9108f1d55a8d0dbb2161300bd3f (patch) | |
| tree | 21ab8d3cc408214f1e550bf4df7a27c3b45115fe /src/engine/SCons/Environment.py | |
| parent | d8b17914c7e3983c6c68c7aea2f0a835f00ddb07 (diff) | |
| download | SCons-4b3d35e6964da9108f1d55a8d0dbb2161300bd3f.zip SCons-4b3d35e6964da9108f1d55a8d0dbb2161300bd3f.tar.gz SCons-4b3d35e6964da9108f1d55a8d0dbb2161300bd3f.tar.bz2 | |
Handle recursive substitution in overrides.
Diffstat (limited to 'src/engine/SCons/Environment.py')
| -rw-r--r-- | src/engine/SCons/Environment.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/engine/SCons/Environment.py b/src/engine/SCons/Environment.py index a626204..c6bc2a9 100644 --- a/src/engine/SCons/Environment.py +++ b/src/engine/SCons/Environment.py @@ -505,7 +505,10 @@ class Base: apply_tools(clone, tools, toolpath) # Apply passed-in variables after the new tools. - apply(clone.Replace, (), kw) + new = {} + for key, value in kw.items(): + new[key] = SCons.Util.scons_subst_once(value, self, key) + apply(clone.Replace, (), new) return clone def Detect(self, progs): @@ -561,7 +564,10 @@ class Base: env = copy.copy(self) env._dict = copy.copy(self._dict) env['__env__'] = env - env._dict.update(overrides) + new = {} + for key, value in overrides.items(): + new[key] = SCons.Util.scons_subst_once(value, self, key) + env._dict.update(new) return env else: return self |
