summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Action.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2002-05-02 12:16:24 (GMT)
committerSteven Knight <knight@baldmt.com>2002-05-02 12:16:24 (GMT)
commit14b0749ef9a6232ad1375f750baf00e0fea14e56 (patch)
treed8ee5ca620e66bb2cd782cb22bbc7cca0731a09d /src/engine/SCons/Action.py
parent35a9fe7b3a3575367b74fbaf84f5336ee4ca5573 (diff)
downloadSCons-14b0749ef9a6232ad1375f750baf00e0fea14e56.zip
SCons-14b0749ef9a6232ad1375f750baf00e0fea14e56.tar.gz
SCons-14b0749ef9a6232ad1375f750baf00e0fea14e56.tar.bz2
Fix for long-line LINKCOM signatures on WIN32; add a for_signature argument to command generators. (Charles Crain)
Diffstat (limited to 'src/engine/SCons/Action.py')
-rw-r--r--src/engine/SCons/Action.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/engine/SCons/Action.py b/src/engine/SCons/Action.py
index 1941e1a..94af6bd 100644
--- a/src/engine/SCons/Action.py
+++ b/src/engine/SCons/Action.py
@@ -395,13 +395,14 @@ class CommandGeneratorAction(ActionBase):
def __init__(self, generator):
self.generator = generator
- def __generate(self, kw):
+ def __generate(self, kw, for_signature):
import SCons.Util
# Wrap the environment dictionary in an EnvDictProxy
# object to make variable interpolation easier for the
# client.
args = copy.copy(kw)
+ args['for_signature'] = for_signature
if args.has_key("env") and not isinstance(args["env"], EnvDictProxy):
args["env"] = EnvDictProxy(args["env"])
@@ -417,7 +418,7 @@ class CommandGeneratorAction(ActionBase):
return gen_cmd
def execute(self, **kw):
- return apply(self.__generate(kw).execute, (), kw)
+ return apply(self.__generate(kw, 0).execute, (), kw)
def get_contents(self, **kw):
"""Return the signature contents of this action's command line.
@@ -425,7 +426,7 @@ class CommandGeneratorAction(ActionBase):
This strips $(-$) and everything in between the string,
since those parts don't affect signatures.
"""
- return apply(self.__generate(kw).get_contents, (), kw)
+ return apply(self.__generate(kw, 1).get_contents, (), kw)
class LazyCmdGenerator:
"""This is a simple callable class that acts as a command generator.