[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 07/18] build: Deal with all of QAPI's .o in q
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v4 07/18] build: Deal with all of QAPI's .o in qapi/Makefile.objs |
Date: |
Thu, 14 Feb 2019 15:33:20 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Marc-André Lureau <address@hidden> writes:
> Hi
>
> On Thu, Feb 14, 2019 at 10:44 AM Markus Armbruster <address@hidden> wrote:
>>
>> Adding QAPI's .o to util-obj-y, common-obj-y and obj-y is spread over
>> three places: Makefile.objs takes care of target-independent generated
>> code, Makefile.target of target-dependent generated code, and
>> qapi/Makefile.objs of (target-independent) hand-written code.
>>
>> Do everything in qapi/Makefile.objs.
>>
>> Suggested-by: Paolo Bonzini <address@hidden>
>> Signed-off-by: Markus Armbruster <address@hidden>
>> ---
>> Makefile | 1 -
>> Makefile.objs | 13 -------------
>> Makefile.target | 3 +--
>> qapi/Makefile.objs | 19 +++++++++++++++++++
>> 4 files changed, 20 insertions(+), 16 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index 53d161b65f..a6de28677f 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -89,7 +89,6 @@ include $(SRC_PATH)/rules.mak
>>
>> GENERATED_FILES = qemu-version.h config-host.h qemu-options.def
>>
>> -#see Makefile.objs for the definition of QAPI_MODULES
>> GENERATED_QAPI_FILES = qapi/qapi-builtin-types.h qapi/qapi-builtin-types.c
>> GENERATED_QAPI_FILES += qapi/qapi-types.h qapi/qapi-types.c
>> GENERATED_QAPI_FILES += $(QAPI_MODULES:%=qapi/qapi-types-%.h)
>> diff --git a/Makefile.objs b/Makefile.objs
>> index bc78e26f55..4a266357a2 100644
>> --- a/Makefile.objs
>> +++ b/Makefile.objs
>> @@ -1,20 +1,7 @@
>> -QAPI_MODULES = block-core block char common crypto introspect job migration
>> -QAPI_MODULES += misc net rdma rocker run-state sockets tpm trace transaction
>> -QAPI_MODULES += ui
>> -
>> #######################################################################
>> # Common libraries for tools and emulators
>> stub-obj-y = stubs/ crypto/
>> util-obj-y = util/ qobject/ qapi/
>> -util-obj-y += qapi/qapi-builtin-types.o
>> -util-obj-y += qapi/qapi-types.o
>> -util-obj-y += $(QAPI_MODULES:%=qapi/qapi-types-%.o)
>> -util-obj-y += qapi/qapi-builtin-visit.o
>> -util-obj-y += qapi/qapi-visit.o
>> -util-obj-y += $(QAPI_MODULES:%=qapi/qapi-visit-%.o)
>> -util-obj-y += qapi/qapi-emit-events.o
>> -util-obj-y += qapi/qapi-events.o
>> -util-obj-y += $(QAPI_MODULES:%=qapi/qapi-events-%.o)
>>
>> chardev-obj-y = chardev/
>> slirp-obj-$(CONFIG_SLIRP) = slirp/
>> diff --git a/Makefile.target b/Makefile.target
>> index d8af835890..d6ce549388 100644
>> --- a/Makefile.target
>> +++ b/Makefile.target
>> @@ -148,6 +148,7 @@ ifdef CONFIG_SOFTMMU
>> obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o numa.o
>> obj-y += qtest.o
>> obj-y += hw/
>> +obj-y += qapi/
>> obj-y += memory.o
>> obj-y += memory_mapping.o
>> obj-y += dump.o
>> @@ -164,8 +165,6 @@ 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)
>> diff --git a/qapi/Makefile.objs b/qapi/Makefile.objs
>> index 33906ff321..da0000cbae 100644
>> --- a/qapi/Makefile.objs
>> +++ b/qapi/Makefile.objs
>> @@ -4,3 +4,22 @@ util-obj-y += string-input-visitor.o string-output-visitor.o
>> util-obj-y += opts-visitor.o qapi-clone-visitor.o
>> util-obj-y += qmp-event.o
>> util-obj-y += qapi-util.o
>> +
>> +QAPI_MODULES = block-core block char common crypto introspect job migration
>> +QAPI_MODULES += misc net rdma rocker run-state sockets tpm trace transaction
>> +QAPI_MODULES += ui
>> +
>> +util-obj-y += qapi-builtin-types.o
>> +util-obj-y += qapi-types.o
>> +util-obj-y += $(QAPI_MODULES:%=qapi-types-%.o)
>> +util-obj-y += qapi-builtin-visit.o
>> +util-obj-y += qapi-visit.o
>> +util-obj-y += $(QAPI_MODULES:%=qapi-visit-%.o)
>> +util-obj-y += qapi-emit-events.o
>> +util-obj-y += qapi-events.o
>> +util-obj-y += $(QAPI_MODULES:%=qapi-events-%.o)
>> +
>> +common-obj-y += qapi-commands.o
>> +common-obj-y += $(QAPI_MODULES:%=qapi-commands-%.o)
>
> You meant to remove it from /Makefile.objs I suppose?
Rats, missed one.
> Other than that,
> Reviewed-by: Marc-André Lureau <address@hidden>
Thanks!
- [Qemu-devel] [PATCH v4 16/18] Revert "qapi-events: add 'if' condition to implicit event enum", (continued)
- [Qemu-devel] [PATCH v4 16/18] Revert "qapi-events: add 'if' condition to implicit event enum", Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 04/18] qapi: Prepare for system modules other than 'builtin', Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 08/18] qapi: New module target.json, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 05/18] qapi: Generate QAPIEvent stuff into separate files, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 15/18] qapi: remove qmp_unregister_command(), Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 13/18] qapi: make query-cpu-model-expansion depend on s390 or x86, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 06/18] build-sys: move qmp-introspect per target, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 07/18] build: Deal with all of QAPI's .o in qapi/Makefile.objs, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 01/18] qapi: Belatedly document modular code generation, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 09/18] qapi: make rtc-reset-reinjection and SEV depend on TARGET_I386, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 12/18] qapi: make query-gic-capabilities depend on TARGET_ARM, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 14/18] qapi: make query-cpu-definitions depend on specific targets, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 03/18] qapi: Clean up modular built-in code generation a bit, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 17/18] qmp: Deprecate query-events in favor of query-qmp-schema, Markus Armbruster, 2019/02/14
- [Qemu-devel] [PATCH v4 10/18] qapi: make s390 commands depend on TARGET_S390X, Markus Armbruster, 2019/02/14