qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: marcandre.lureau@redhat.com, eblake@redhat.com
Subject: [Qemu-devel] [PATCH v5 16/18] Revert "qapi-events: add 'if' condition to implicit event enum"
Date: Thu, 14 Feb 2019 16:22:49 +0100	[thread overview]
Message-ID: <20190214152251.2073-17-armbru@redhat.com> (raw)
In-Reply-To: <20190214152251.2073-1-armbru@redhat.com>

This reverts commit 7bd263490590ee6fcf34ecb6203437e22f6e5a9c.

The commit applied the events' conditions to the members of enum
QAPIEvent.  Awkward, because it renders QAPIEvent unusable in
target-independent code as soon as we make an event target-dependent.
Reverting this has the following effects:

* ui/vnc.c can remain target independent.

* monitor_qapi_event_conf[] doesn't have to muck around with #ifdef.

* query-events again doesn't reflect conditionals.  I'm going to
  deprecate it in favor of query-qmp-schema.

Another option would be to split target-dependent parts off enum
QAPIEvent into a target-dependent enum.  Doesn't seem worthwhile right
now.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 scripts/qapi/events.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/scripts/qapi/events.py b/scripts/qapi/events.py
index 28bbc3745d..2067660be4 100644
--- a/scripts/qapi/events.py
+++ b/scripts/qapi/events.py
@@ -193,7 +193,9 @@ void %(event_emit)s(%(event_enum)s event, QDict *qdict);
             self._genc.add(gen_event_send(name, arg_type, boxed,
                                           self._event_enum_name,
                                           self._event_emit_name))
-        self._event_enum_members.append(QAPISchemaMember(name, ifcond))
+        # Note: we generate the enum member regardless of @ifcond, to
+        # keep the enumeration usable in target-independent code.
+        self._event_enum_members.append(QAPISchemaMember(name))
 
 
 def gen_events(schema, output_dir, prefix):
-- 
2.17.2

  parent reply	other threads:[~2019-02-14 15:23 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-14 15:22 [Qemu-devel] [PATCH v5 00/18] qapi: add #if pre-processor conditions to generated code (part 3) Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 01/18] qapi: Belatedly document modular code generation Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 02/18] qapi: Fix up documentation for recent commit a95291007b2 Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 03/18] qapi: Clean up modular built-in code generation a bit Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 04/18] qapi: Prepare for system modules other than 'builtin' Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 05/18] qapi: Generate QAPIEvent stuff into separate files Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 06/18] build-sys: move qmp-introspect per target Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 07/18] build: Deal with all of QAPI's .o in qapi/Makefile.objs Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 08/18] qapi: New module target.json Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 09/18] qapi: make rtc-reset-reinjection and SEV depend on TARGET_I386 Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 10/18] qapi: make s390 commands depend on TARGET_S390X Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 11/18] target.json: add a note about query-cpu* not being s390x-specific Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 12/18] qapi: make query-gic-capabilities depend on TARGET_ARM Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 13/18] qapi: make query-cpu-model-expansion depend on s390 or x86 Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 14/18] qapi: make query-cpu-definitions depend on specific targets Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 15/18] qapi: remove qmp_unregister_command() Markus Armbruster
2019-02-14 15:22 ` Markus Armbruster [this message]
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 17/18] qmp: Deprecate query-events in favor of query-qmp-schema Markus Armbruster
2019-02-14 15:22 ` [Qemu-devel] [PATCH v5 18/18] qapi: move RTC_CHANGE to the target schema Markus Armbruster
2019-02-14 15:24 ` [Qemu-devel] [PATCH v5 00/18] qapi: add #if pre-processor conditions to generated code (part 3) Markus Armbruster
2019-02-14 16:01   ` Eric Blake
2019-02-15  7:53     ` [Qemu-devel] Proper use of unnest-vars (was: [PATCH v5 00/18] qapi: add #if pre-processor conditions to generated code (part 3)) Markus Armbruster
2019-02-15  8:29       ` Paolo Bonzini
2019-02-15  9:26         ` [Qemu-devel] Proper use of unnest-vars Markus Armbruster

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190214152251.2073-17-armbru@redhat.com \
    --to=armbru@redhat.com \
    --cc=eblake@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).