summaryrefslogtreecommitdiffstats
path: root/bin/scons-proc.py
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2010-03-08 16:56:14 (GMT)
committerSteven Knight <knight@baldmt.com>2010-03-08 16:56:14 (GMT)
commit091206d11bce4512dd11b9bf9ff25d6a8899b886 (patch)
tree897920db7cde361e044b8ab788ecef0878f04694 /bin/scons-proc.py
parent39430b2588036dc2b094f60ae149c5704d5c7800 (diff)
downloadSCons-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.py17
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):