1 | """
|
2 | ysh/NINJA_subgraph.py
|
3 | """
|
4 |
|
5 | from __future__ import print_function
|
6 |
|
7 | from build.ninja_lib import log
|
8 |
|
9 | _ = log
|
10 |
|
11 |
|
12 | def NinjaGraph(ru):
|
13 | n = ru.n
|
14 |
|
15 | ru.comment('Generated by %s' % __name__)
|
16 |
|
17 | ru.py_binary('ysh/grammar_gen.py')
|
18 |
|
19 | n.rule(
|
20 | 'grammar-gen',
|
21 | # uses shell style
|
22 | command='_bin/shwrap/grammar_gen cpp $in $out_dir',
|
23 | description='grammar_gen cpp $in $out_dir')
|
24 |
|
25 | n.build(
|
26 | ['_gen/ysh/grammar_nt.h', '_gen/ysh/grammar_tables.cc'],
|
27 | 'grammar-gen',
|
28 | ['ysh/grammar.pgen2'],
|
29 | implicit=['_bin/shwrap/grammar_gen'],
|
30 | variables=[('out_dir', '_gen/ysh')],
|
31 | )
|
32 | n.newline()
|
33 |
|
34 | ru.cc_library('//ysh/grammar',
|
35 | srcs=['_gen/ysh/grammar_tables.cc'],
|
36 | deps=['//cpp/pgen2'],
|
37 | generated_headers=[
|
38 | '_gen/ysh/grammar_nt.h',
|
39 | ])
|