summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Action.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2003-05-07 11:52:31 (GMT)
committerSteven Knight <knight@baldmt.com>2003-05-07 11:52:31 (GMT)
commit28cc07ab75b300171d03395b7dedfae5a77cdc2d (patch)
tree4786f243ee697a57bff6b8cb7c268b310627ae95 /src/engine/SCons/Action.py
parentaaf2cbb74e00fdc89da432d18e9fe40bb7de3b9d (diff)
downloadSCons-28cc07ab75b300171d03395b7dedfae5a77cdc2d.zip
SCons-28cc07ab75b300171d03395b7dedfae5a77cdc2d.tar.gz
SCons-28cc07ab75b300171d03395b7dedfae5a77cdc2d.tar.bz2
Improve new post-PathList refactoring performance. (Charles Crain)
Diffstat (limited to 'src/engine/SCons/Action.py')
-rw-r--r--src/engine/SCons/Action.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/engine/SCons/Action.py b/src/engine/SCons/Action.py
index befac1e..49b0cb1 100644
--- a/src/engine/SCons/Action.py
+++ b/src/engine/SCons/Action.py
@@ -262,8 +262,10 @@ class CommandAction(ActionBase):
if not SCons.Util.is_List(cmd):
cmd = [ cmd ]
return SCons.Util.scons_subst(string.join(map(str, cmd)),
- env, SCons.Util.SUBST_RAW,
- target, source)
+ env,
+ SCons.Util.SUBST_RAW,
+ SCons.Util.target_prep(target),
+ SCons.Util.source_prep(source))
def get_contents(self, target, source, env):
"""Return the signature contents of this action's command line.
@@ -277,7 +279,8 @@ class CommandAction(ActionBase):
return SCons.Util.scons_subst(string.join(map(str, cmd)),
env,
SCons.Util.SUBST_SIG,
- target, source)
+ SCons.Util.target_prep(target),
+ SCons.Util.source_prep(source))
class CommandGeneratorAction(ActionBase):
"""Class for command-generator actions."""
@@ -403,6 +406,8 @@ class ListAction(ActionBase):
Simple concatenation of the signatures of the elements.
"""
+ target = SCons.Util.target_prep(target)
+ source = SCons.Util.source_prep(source)
return string.join(map(lambda x, t=target, s=source, e=env:
x.get_contents(t, s, e),
self.list),