diff options
author | Steven Knight <knight@baldmt.com> | 2010-03-08 16:56:14 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2010-03-08 16:56:14 (GMT) |
commit | 091206d11bce4512dd11b9bf9ff25d6a8899b886 (patch) | |
tree | 897920db7cde361e044b8ab788ecef0878f04694 /bin/scons-proc.py | |
parent | 39430b2588036dc2b094f60ae149c5704d5c7800 (diff) | |
download | SCons-091206d11bce4512dd11b9bf9ff25d6a8899b886.zip SCons-091206d11bce4512dd11b9bf9ff25d6a8899b886.tar.gz SCons-091206d11bce4512dd11b9bf9ff25d6a8899b886.tar.bz2 |
Handle different signatures for global or env versions of functions
by the signature specification from the <scons_function> tag to
the <arguments> tag.
Diffstat (limited to 'bin/scons-proc.py')
-rw-r--r-- | bin/scons-proc.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/bin/scons-proc.py b/bin/scons-proc.py index 41ff09a..a02ee6d 100644 --- a/bin/scons-proc.py +++ b/bin/scons-proc.py @@ -291,14 +291,19 @@ class Function(Proxy): return ['\n', "'\\" + '"'*69 + '\n'] def initial_chunks(self): try: - x = self.arguments + arguments = self.arguments except AttributeError: - x = '()' + arguments = ['()'] result = [] - if self.global_signature != "0": - result.append('.TP\n.RI %s%s\n' % (self.name, x)) - if self.env_signature != "0": - result.append('.TP\n.IR env .%s%s\n' % (self.name, x)) + for arg in arguments: + try: + signature = arg.signature + except AttributeError: + signature = "both" + if signature in ('both', 'global'): + result.append('.TP\n.RI %s%s\n' % (self.name, arg)) + if signature in ('both', 'env'): + result.append('.TP\n.IR env .%s%s\n' % (self.name, arg)) return result class Tool(Proxy): |