summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Environment.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Environment.py')
-rw-r--r--src/engine/SCons/Environment.py17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/engine/SCons/Environment.py b/src/engine/SCons/Environment.py
index 468c9b4..dcac716 100644
--- a/src/engine/SCons/Environment.py
+++ b/src/engine/SCons/Environment.py
@@ -72,17 +72,10 @@ class Environment:
"""
def __init__(self, **kw):
- self._dict = {}
- if kw.has_key('BUILDERS'):
- builders = kw['BUILDERS']
- if not type(builders) is types.ListType:
- kw['BUILDERS'] = [builders]
- else:
- import SCons.Defaults
- kw['BUILDERS'] = SCons.Defaults.Builders[:]
- if not kw.has_key('ENV'):
- import SCons.Defaults
- kw['ENV'] = SCons.Defaults.ENV.copy()
+ import SCons.Defaults
+ self._dict = copy.deepcopy(SCons.Defaults.ConstructionEnvironment)
+ if kw.has_key('BUILDERS') and type(kw['BUILDERS']) != type([]):
+ kw['BUILDERS'] = [kw['BUILDERS']]
self._dict.update(copy.deepcopy(kw))
class BuilderWrapper:
@@ -107,7 +100,7 @@ class Environment:
kw['env'] = self
apply(self.builder.execute, (), kw)
- for b in kw['BUILDERS']:
+ for b in self._dict['BUILDERS']:
setattr(self, b.name, BuilderWrapper(self, b))