summaryrefslogtreecommitdiffstats
path: root/misc/ninja_syntax.py
diff options
context:
space:
mode:
authorNicolas Despres <nicolas.despres@gmail.com>2016-02-06 08:37:51 (GMT)
committerNicolas Despres <nicolas.despres@gmail.com>2016-02-06 08:37:51 (GMT)
commitd3c7da58930fd5985712e4410b271086eef02b37 (patch)
tree82d34384689a9ef1eb2b49948c1fe081ee4e4048 /misc/ninja_syntax.py
parentbc4f7bf75271601d7fcec04109bf1e4af4c66ad5 (diff)
downloadNinja-d3c7da58930fd5985712e4410b271086eef02b37.zip
Ninja-d3c7da58930fd5985712e4410b271086eef02b37.tar.gz
Ninja-d3c7da58930fd5985712e4410b271086eef02b37.tar.bz2
Add support for implicit outputs in ninja_syntax.py.
Diffstat (limited to 'misc/ninja_syntax.py')
-rw-r--r--misc/ninja_syntax.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/misc/ninja_syntax.py b/misc/ninja_syntax.py
index 73d2209..5c52ea2 100644
--- a/misc/ninja_syntax.py
+++ b/misc/ninja_syntax.py
@@ -60,7 +60,7 @@ class Writer(object):
self.variable('deps', deps, indent=1)
def build(self, outputs, rule, inputs=None, implicit=None, order_only=None,
- variables=None):
+ variables=None, implicit_outputs=None):
outputs = as_list(outputs)
out_outputs = [escape_path(x) for x in outputs]
all_inputs = [escape_path(x) for x in as_list(inputs)]
@@ -73,6 +73,11 @@ class Writer(object):
order_only = [escape_path(x) for x in as_list(order_only)]
all_inputs.append('||')
all_inputs.extend(order_only)
+ if implicit_outputs:
+ implicit_outputs = [escape_path(x)
+ for x in as_list(implicit_outputs)]
+ out_outputs.append('|')
+ out_outputs.extend(implicit_outputs)
self._line('build %s: %s' % (' '.join(out_outputs),
' '.join([rule] + all_inputs)))