summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Script
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/SCons/Script')
-rw-r--r--src/engine/SCons/Script/SConscript.py62
-rw-r--r--src/engine/SCons/Script/__init__.py6
2 files changed, 24 insertions, 44 deletions
diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py
index 1c17ee2..276ff4e 100644
--- a/src/engine/SCons/Script/SConscript.py
+++ b/src/engine/SCons/Script/SConscript.py
@@ -56,7 +56,6 @@ import traceback
def do_nothing(text): pass
HelpFunction = do_nothing
-default_targets = None
clean_targets = {}
arguments = {}
launch_dir = os.path.abspath(os.curdir)
@@ -356,27 +355,6 @@ def annotate(node):
# leave this disabled until we find a more efficient mechanism.
#SCons.Node.Annotate = annotate
-def Default(*targets):
- global default_targets
- if default_targets is None:
- default_targets = []
- for t in targets:
- if t is None:
- default_targets = []
- elif isinstance(t, SCons.Node.Node):
- default_targets.append(t)
- else:
- default_targets.extend(SCons.Node.arg2nodes(t,
- SCons.Node.FS.default_fs.Entry))
-
-def Local(*targets):
- for targ in targets:
- if isinstance(targ, SCons.Node.Node):
- targ.set_local()
- else:
- for t in SCons.Node.arg2nodes(targ, SCons.Node.FS.default_fs.Entry):
- t.set_local()
-
def Help(text):
HelpFunction(text)
@@ -390,10 +368,6 @@ def GetBuildPath(files):
return ret[0]
return ret
-def FindFile(file, dirs):
- nodes = SCons.Node.arg2nodes(dirs, SCons.Node.FS.default_fs.Dir)
- return SCons.Node.FS.find_file(file, nodes)
-
def Export(*vars):
for var in vars:
global_exports.update(compute_exports(var))
@@ -512,16 +486,6 @@ def Clean(target, files):
except KeyError:
clean_targets[target] = nodes
-def AddPreAction(files, action):
- nodes = SCons.Node.arg2nodes(files, SCons.Node.FS.default_fs.Entry)
- for n in nodes:
- n.add_pre_action(SCons.Action.Action(action))
-
-def AddPostAction(files, action):
- nodes = SCons.Node.arg2nodes(files, SCons.Node.FS.default_fs.Entry)
- for n in nodes:
- n.add_post_action(SCons.Action.Action(action))
-
def Exit(value=0):
sys.exit(value)
@@ -553,8 +517,6 @@ def BuildDefaultGlobals():
globals = {}
globals['Action'] = SCons.Action.Action
- globals['AddPostAction'] = AddPostAction
- globals['AddPreAction'] = AddPreAction
globals['Alias'] = Alias
globals['ARGUMENTS'] = arguments
globals['BuildDir'] = BuildDir
@@ -563,7 +525,6 @@ def BuildDefaultGlobals():
globals['Clean'] = Clean
globals['Configure'] = SCons.SConf.SConf
globals['CScan'] = SCons.Defaults.CScan
- globals['Default'] = Default
globals['DefaultEnvironment'] = SCons.Defaults.DefaultEnvironment
globals['Dir'] = SCons.Node.FS.default_fs.Dir
globals['EnsurePythonVersion'] = EnsurePythonVersion
@@ -572,7 +533,6 @@ def BuildDefaultGlobals():
globals['Exit'] = Exit
globals['Export'] = Export
globals['File'] = SCons.Node.FS.default_fs.File
- globals['FindFile'] = FindFile
globals['GetBuildPath'] = GetBuildPath
globals['GetCommandHandler'] = SCons.Action.GetCommandHandler
globals['GetJobs'] = GetJobs
@@ -581,7 +541,6 @@ def BuildDefaultGlobals():
globals['Help'] = Help
globals['Import'] = Import
globals['Literal'] = SCons.Util.Literal
- globals['Local'] = Local
globals['Options'] = Options
globals['ParseConfig'] = SCons.Util.ParseConfig
globals['Platform'] = SCons.Platform.Platform
@@ -602,4 +561,25 @@ def BuildDefaultGlobals():
globals['Tool'] = SCons.Tool.Tool
globals['Value'] = SCons.Node.Python.Value
globals['WhereIs'] = SCons.Util.WhereIs
+
+ class DefaultEnvironmentCall:
+ """ """
+ def __init__(self, method_name):
+ self.method_name = method_name
+ def __call__(self, *args, **kw):
+ method = getattr(SCons.Defaults.DefaultEnvironment(),
+ self.method_name)
+ return apply(method, args, kw)
+
+ EnvironmentMethods = [
+ 'AddPostAction',
+ 'AddPreAction',
+ 'Default',
+ 'FindFile',
+ 'Local',
+ ]
+
+ for name in EnvironmentMethods:
+ globals[name] = DefaultEnvironmentCall(name)
+
return globals
diff --git a/src/engine/SCons/Script/__init__.py b/src/engine/SCons/Script/__init__.py
index 3b5c9d9..3ab4ed0 100644
--- a/src/engine/SCons/Script/__init__.py
+++ b/src/engine/SCons/Script/__init__.py
@@ -883,16 +883,16 @@ def _main(args, parser):
# or not a file, so go ahead and keep it as a default
# target and let the engine sort it out:
return 1
- default_targets = SCons.Script.SConscript.default_targets
+ default_targets = SCons.Environment.DefaultTargets
if default_targets is None:
default_targets = []
else:
default_targets = filter(check_dir, default_targets)
- SCons.Script.SConscript.default_targets = default_targets
+ SCons.Environment.DefaultTargets = default_targets
target_top = None
lookup_top = None
- targets = SCons.Script.SConscript.default_targets
+ targets = SCons.Environment.DefaultTargets
if targets is None:
targets = [SCons.Node.FS.default_fs.Dir('.')]