[Qemu-devel] [PATCH v2 00/14] Generate a literal qobject for introspection

Marc-André Lureau posted 14 patches 6 years, 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170825105913.4060-1-marcandre.lureau@redhat.com
Test FreeBSD passed
Test checkpatch passed
Test docker passed
Test s390x passed
scripts/qapi-introspect.py         |  87 ++++++++++++---------
include/qapi/qmp/qdict.h           |   4 +-
include/qapi/qmp/qlit.h            |  56 ++++++++++++++
monitor.c                          |   2 +-
qobject/qlit.c                     | 121 ++++++++++++++++++++++++++++++
target/i386/cpu.c                  |   4 +-
tests/check-qjson.c                | 150 +++++++------------------------------
tests/check-qlit.c                 | 100 +++++++++++++++++++++++++
tests/test-qobject-input-visitor.c |  11 ++-
docs/devel/qapi-code-gen.txt       |  29 ++++---
qobject/Makefile.objs              |   2 +-
tests/Makefile.include             |   5 +-
12 files changed, 393 insertions(+), 178 deletions(-)
create mode 100644 include/qapi/qmp/qlit.h
create mode 100644 qobject/qlit.c
create mode 100644 tests/check-qlit.c
[Qemu-devel] [PATCH v2 00/14] Generate a literal qobject for introspection
Posted by Marc-André Lureau 6 years, 7 months ago
Hi,

This series is based on patches 2-5 from "[PATCH v2 00/54] qapi: add #if
pre-processor conditions to generated code". Generating a literal qobject
will allow to easily introduce #if conditionals from the original series.

v2:
- use QLIST_FOREACH_ENTRY for list comparison
- update qdict comparison to check for the size instead of doing a
  qdict copy
- commit message update
- add r-b tags

Marc-André Lureau (14):
  qdict: add qdict_put_null() helper
  qlit: move qlit from check-qjson to qobject/
  qlit: use QLit prefix consistently
  qlit: remove compound literals
  qlit: rename compare_litqobj_to_qobj() to qlit_equal_qobject()
  qlit: make qlit_equal_qobject return a bool
  qlit: make qlit_equal_qobject() take const arguments
  qlit: add QLIT_QNULL and QLIT_BOOL
  qlit: Replace open-coded qnum_get_int() by call
  tests: add qlit tests
  qlit: improve QLit dict vs qdict comparison
  qlit: improve QLit list vs qlist comparison
  qlit: add qobject_form_qlit()
  qapi: generate a literal qobject for introspection

 scripts/qapi-introspect.py         |  87 ++++++++++++---------
 include/qapi/qmp/qdict.h           |   4 +-
 include/qapi/qmp/qlit.h            |  56 ++++++++++++++
 monitor.c                          |   2 +-
 qobject/qlit.c                     | 121 ++++++++++++++++++++++++++++++
 target/i386/cpu.c                  |   4 +-
 tests/check-qjson.c                | 150 +++++++------------------------------
 tests/check-qlit.c                 | 100 +++++++++++++++++++++++++
 tests/test-qobject-input-visitor.c |  11 ++-
 docs/devel/qapi-code-gen.txt       |  29 ++++---
 qobject/Makefile.objs              |   2 +-
 tests/Makefile.include             |   5 +-
 12 files changed, 393 insertions(+), 178 deletions(-)
 create mode 100644 include/qapi/qmp/qlit.h
 create mode 100644 qobject/qlit.c
 create mode 100644 tests/check-qlit.c

-- 
2.14.1.146.gd35faa819


Re: [Qemu-devel] [PATCH v2 00/14] Generate a literal qobject for introspection
Posted by Markus Armbruster 6 years, 7 months ago
Marc-André Lureau <marcandre.lureau@redhat.com> writes:

> Hi,
>
> This series is based on patches 2-5 from "[PATCH v2 00/54] qapi: add #if
> pre-processor conditions to generated code". Generating a literal qobject
> will allow to easily introduce #if conditionals from the original series.
>
> v2:
> - use QLIST_FOREACH_ENTRY for list comparison
> - update qdict comparison to check for the size instead of doing a
>   qdict copy
> - commit message update
> - add r-b tags
>
> Marc-André Lureau (14):
>   qdict: add qdict_put_null() helper
>   qlit: move qlit from check-qjson to qobject/
>   qlit: use QLit prefix consistently
>   qlit: remove compound literals
>   qlit: rename compare_litqobj_to_qobj() to qlit_equal_qobject()
>   qlit: make qlit_equal_qobject return a bool
>   qlit: make qlit_equal_qobject() take const arguments
>   qlit: add QLIT_QNULL and QLIT_BOOL
>   qlit: Replace open-coded qnum_get_int() by call
>   tests: add qlit tests
>   qlit: improve QLit dict vs qdict comparison
>   qlit: improve QLit list vs qlist comparison
>   qlit: add qobject_form_qlit()
>   qapi: generate a literal qobject for introspection

PATCH 14 makes sense only together with work mentioned in its commit
message.  Without PATCH 14, PATCH 13 is left without a user.
Fortunately, PATCH 01-12 make sense on their own: applied to qapi-next.
PATCH 13-14 applied to qapi-not-next, to give you a suitable base for
respins of the remainder of "qapi: add #if pre-processor conditions to
generated code".