diff options
| author | Steven Knight <knight@baldmt.com> | 2004-09-18 23:02:56 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2004-09-18 23:02:56 (GMT) |
| commit | 07ba45e583a9f03e9a7b91212e165d45d1df1978 (patch) | |
| tree | 96f741d3e308c022c801036190067eab0d115b20 /src/engine/SCons/Node | |
| parent | 0d70cbb58a33aeca99b6e0b4d2f11c93a92dd670 (diff) | |
| download | SCons-07ba45e583a9f03e9a7b91212e165d45d1df1978.zip SCons-07ba45e583a9f03e9a7b91212e165d45d1df1978.tar.gz SCons-07ba45e583a9f03e9a7b91212e165d45d1df1978.tar.bz2 | |
Fix --debug=explain when the action is a Python function.
Diffstat (limited to 'src/engine/SCons/Node')
| -rw-r--r-- | src/engine/SCons/Node/__init__.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py index 0638375..47139fc 100644 --- a/src/engine/SCons/Node/__init__.py +++ b/src/engine/SCons/Node/__init__.py @@ -545,7 +545,7 @@ class Node: if self.has_builder(): executor = self.get_executor() - binfo.bact = executor.get_contents() + binfo.bact = executor.strfunction() binfo.bactsig = calc.module.signature(executor) sigs.append(binfo.bactsig) @@ -899,10 +899,13 @@ class Node: if len(lines) == 0: newact, newactsig = self.binfo.bact, self.binfo.bactsig - if old.bact != newact: - lines.append("the build action changed:\n" + - "%sold: %s\n" % (' '*15, old.bact) + - "%snew: %s\n" % (' '*15, newact)) + if old.bactsig != newactsig: + if old.bact == newact: + lines.append("the contents of the build action changed\n") + else: + lines.append("the build action changed:\n" + + "%sold: %s\n" % (' '*15, old.bact) + + "%snew: %s\n" % (' '*15, newact)) if len(lines) == 0: return "rebuilding `%s' for unknown reasons" % self |
