diff options
Diffstat (limited to 'src/engine/SCons/Script/SConscript.py')
-rw-r--r-- | src/engine/SCons/Script/SConscript.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py index 4bc8bd3..30f6933 100644 --- a/src/engine/SCons/Script/SConscript.py +++ b/src/engine/SCons/Script/SConscript.py @@ -413,6 +413,12 @@ class SConsEnvironment(SCons.Environment.Base): # as global functions. # + def Configure(self, *args, **kw): + if not SCons.Script.SConscript.sconscript_reading: + raise SCons.Errors.UserError, "Calling Configure from Builders is not supported." + kw['_depth'] = kw.get('_depth', 0) + 1 + return apply(SCons.Environment.Base.Configure, (self,)+args, kw) + def Default(self, *targets): global DefaultCalled global DefaultTargets @@ -527,6 +533,12 @@ SCons.Environment.Environment = SConsEnvironment def Options(files=None, args=Arguments): return SCons.Options.Options(files, args) +def Configure(*args, **kw): + if not SCons.Script.SConscript.sconscript_reading: + raise SCons.Errors.UserError, "Calling Configure from Builders is not supported." + kw['_depth'] = 1 + return apply(SCons.SConf.SConf, args, kw) + # _DefaultEnvironmentProxy = None @@ -646,7 +658,7 @@ def BuildDefaultGlobals(): 'Action' : SCons.Action.Action, 'BoolOption' : SCons.Options.BoolOption, 'Builder' : SCons.Builder.Builder, - 'Configure' : SCons.SConf.SConf, + 'Configure' : Configure, 'EnumOption' : SCons.Options.EnumOption, 'Environment' : SCons.Environment.Environment, 'ListOption' : SCons.Options.ListOption, |