]>
Commit | Line | Data |
---|---|---|
fb0bc835 MA |
1 | #!/usr/bin/env python |
2 | # QAPI generator | |
3 | # | |
4 | # This work is licensed under the terms of the GNU GPL, version 2 or later. | |
5 | # See the COPYING file in the top-level directory. | |
6 | ||
7 | import sys | |
8 | from qapi.common import parse_command_line, QAPISchema | |
9 | from qapi.types import gen_types | |
10 | from qapi.visit import gen_visit | |
11 | from qapi.commands import gen_commands | |
12 | from qapi.events import gen_events | |
13 | from qapi.introspect import gen_introspect | |
14 | from qapi.doc import gen_doc | |
15 | ||
16 | ||
17 | def main(argv): | |
18 | (input_file, output_dir, prefix, opts) = \ | |
19 | parse_command_line('bu', ['builtins', 'unmask-non-abi-names']) | |
20 | ||
21 | opt_builtins = False | |
22 | opt_unmask = False | |
23 | ||
24 | for o, a in opts: | |
25 | if o in ('-b', '--builtins'): | |
26 | opt_builtins = True | |
27 | if o in ('-u', '--unmask-non-abi-names'): | |
28 | opt_unmask = True | |
29 | ||
30 | schema = QAPISchema(input_file) | |
31 | ||
32 | gen_types(schema, output_dir, prefix, opt_builtins) | |
33 | gen_visit(schema, output_dir, prefix, opt_builtins) | |
34 | gen_commands(schema, output_dir, prefix) | |
35 | gen_events(schema, output_dir, prefix) | |
36 | gen_introspect(schema, output_dir, prefix, opt_unmask) | |
37 | gen_doc(schema, output_dir, prefix) | |
38 | ||
39 | ||
40 | if __name__ == '__main__': | |
41 | main(sys.argv) |