[libvirt] [PATCH v3 08/11] hyperv: update wmi code generator.
Matthias Bolte
matthias.bolte at googlemail.com
Sat Apr 1 12:22:40 UTC 2017
2017-03-30 22:41 GMT+02:00 Dawid Zamirski <dzamirski at datto.com>:
> This patch updates the code generator that outputs C headers and code
> for WMI classes. It has been updated to handle multiple versions (or
> namespaces) of the same class which were introduced with Hyperv 2012+
> ---
>
> changes in v3:
> * do not change file mode
> * restore accidentally deleted copyright notice
>
> src/hyperv/hyperv_wmi_generator.py | 387 +++++++++++++++++++++++++++----------
> 1 file changed, 283 insertions(+), 104 deletions(-)
>
> diff --git a/src/hyperv/hyperv_wmi_generator.py b/src/hyperv/hyperv_wmi_generator.py
> index 8c62882..ccad04d 100755
> --- a/src/hyperv/hyperv_wmi_generator.py
> +++ b/src/hyperv/hyperv_wmi_generator.py
> @@ -279,31 +467,22 @@ def main():
> if block is not None:
> if line == "end":
> if block[0][1].startswith("class"):
> - cls = parse_class(block)
> - classes_by_name[cls.name] = cls
> + parse_class(block)
>
> block = None
> else:
> block.append((number, line))
>
> - # write output files
> - notice = "/* Generated by hyperv_wmi_generator.py */\n\n\n\n"
> -
> - header.write(notice)
> - source.write(notice)
> - classes_typedef.write(notice)
> - classes_header.write(notice)
> - classes_source.write(notice)
> -
> - names = classes_by_name.keys()
> + names = wmi_classes_by_name.keys()
> names.sort()
>
> for name in names:
> - header.write(classes_by_name[name].generate_header())
> - source.write(classes_by_name[name].generate_source())
> - classes_typedef.write(classes_by_name[name].generate_classes_typedef())
> - classes_header.write(classes_by_name[name].generate_classes_header())
> - classes_source.write(classes_by_name[name].generate_classes_source())
> + cls = wmi_classes_by_name[name]
> + cls.prepare()
> +
> + classes_typedef.write(cls.generate_classes_typedef())
> + classes_header.write(cls.generate_classes_header())
> + classes_source.write(cls.generate_classes_source())
You're dropping the notice comment from the generated files. Is this
intentional?
--
Matthias Bolte
http://photron.blogspot.com
More information about the libvir-list
mailing list