[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 01/13] build-sys: move qmp-introspect per target
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH 01/13] build-sys: move qmp-introspect per target |
Date: |
Mon, 17 Dec 2018 08:06:00 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Marc-André Lureau <address@hidden> writes:
> The following patches are going to introduce per-target #ifdef in the
> schemas.
>
> The introspection data is statically generated once, and must thus be
> built per-target to reflect target-specific configuration.
>
> Drop "do_test_visitor_in_qmp_introspect(&qmp_schema_qlit)" since the
> schema is no longer in a common object. It is covered by the per-target
> query-qmp-schema test instead.
>
> Signed-off-by: Marc-André Lureau <address@hidden>
> ---
> tests/test-qobject-input-visitor.c | 1 -
> Makefile.objs | 2 --
> Makefile.target | 2 ++
> 3 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/tests/test-qobject-input-visitor.c
> b/tests/test-qobject-input-visitor.c
> index caa90b3d7e..609334adf6 100644
> --- a/tests/test-qobject-input-visitor.c
> +++ b/tests/test-qobject-input-visitor.c
> @@ -1271,7 +1271,6 @@ static void
> test_visitor_in_qmp_introspect(TestInputVisitorData *data,
> const void *unused)
> {
> do_test_visitor_in_qmp_introspect(data, &test_qmp_schema_qlit);
> - do_test_visitor_in_qmp_introspect(data, &qmp_schema_qlit);
> }
>
> int main(int argc, char **argv)
> diff --git a/Makefile.objs b/Makefile.objs
> index 56af0347d3..0388d5157d 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -13,7 +13,6 @@ util-obj-y += qapi/qapi-visit.o
> util-obj-y += $(QAPI_MODULES:%=qapi/qapi-visit-%.o)
> util-obj-y += qapi/qapi-events.o
> util-obj-y += $(QAPI_MODULES:%=qapi/qapi-events-%.o)
> -util-obj-y += qapi/qapi-introspect.o
>
> chardev-obj-y = chardev/
>
> @@ -94,7 +93,6 @@ common-obj-$(CONFIG_FDT) += device_tree.o
>
> common-obj-y += qapi/qapi-commands.o
> common-obj-y += $(QAPI_MODULES:%=qapi/qapi-commands-%.o)
> -common-obj-y += qapi/qapi-introspect.o
> common-obj-y += qmp.o hmp.o
> endif
>
> diff --git a/Makefile.target b/Makefile.target
> index 44ec4b630c..c882292ae1 100644
> --- a/Makefile.target
> +++ b/Makefile.target
> @@ -156,6 +156,8 @@ endif
>
> GENERATED_FILES += hmp-commands.h hmp-commands-info.h
>
> +obj-y += qapi/qapi-introspect.o
> +
> endif # CONFIG_SOFTMMU
>
> dummy := $(call unnest-vars,,obj-y)
Having to compile this multiple times is a bit sad, since it's fairly
big:
$ ls -lh qapi/qapi-introspect.c
-rw-rw-r--. 1 armbru armbru 518K Dec 17 07:56 qapi/qapi-introspect.c
$ size x86_64-softmmu/qapi/qapi-introspect.o
text data bss dec hex filename
16302 289472 48 305822 4aa9e x86_64-softmmu/qapi/qapi-introspect.o
To compile its target-independent part just once, we'd have to split it
up. May or may not improve compile time. We can figure it out when
compiling all of it multiple times bother us.
Reviewed-by: Markus Armbruster <address@hidden>
- [Qemu-devel] [PATCH 00/13] qapi: add #if pre-processor conditions to generated code (part 3), Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 01/13] build-sys: move qmp-introspect per target, Marc-André Lureau, 2018/12/16
- Re: [Qemu-devel] [PATCH 01/13] build-sys: move qmp-introspect per target,
Markus Armbruster <=
- [Qemu-devel] [PATCH 02/13] qapi-commands: don't initialize command list in qmp_init_marshall(), Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 03/13] qapi-commands: rename init_marshal() to register_commands(), Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 04/13] RFC: qapi: learn to split the schema by 'top-unit', Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 05/13] qapi: add a top-unit 'target' schema, Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 06/13] qapi: make rtc-reset-reinjection and SEV depend on TARGET_I386, Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 07/13] qapi: make s390 commands depend on TARGET_S390X, Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 08/13] target.json: add a note about query-cpu* not being s390x-specific, Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 09/13] qapi: make query-gic-capabilities depend on TARGET_ARM, Marc-André Lureau, 2018/12/16
- [Qemu-devel] [PATCH 10/13] qapi: make query-cpu-model-expansion depend on s390 or x86, Marc-André Lureau, 2018/12/16