vppapigen: make json in parallel
[vpp.git] / src / tools / vppapigen / vppapigen_crc.py
1 # CRC generation
2 import json
3
4 process_imports = True
5
6
7 #
8 # Plugin entry point
9 #
10 def run(output_dir, input_filename, s):
11     j = {}
12     major = 0
13     minor = 0
14     patch = 0
15     if "version" in s["Option"]:
16         v = s["Option"]["version"]
17         (major, minor, patch) = v.split(".")
18     j["_version"] = {"major": major, "minor": minor, "patch": patch}
19     for t in s["Define"]:
20         j[t.name] = {"crc": f"{t.crc:#08x}", "version": major, "options": t.options}
21     return json.dumps(j, indent=4, separators=(",", ": "))