diff mbox series

[v4,07/18] build: Deal with all of QAPI's .o in qapi/Makefile.objs

Message ID 20190214093053.1400-8-armbru@redhat.com
State New
Headers show
Series qapi: add #if pre-processor conditions to generated code (part 3) | expand

Commit Message

Markus Armbruster Feb. 14, 2019, 9:30 a.m. UTC
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 <pbonzini@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 Makefile           |  1 -
 Makefile.objs      | 13 -------------
 Makefile.target    |  3 +--
 qapi/Makefile.objs | 19 +++++++++++++++++++
 4 files changed, 20 insertions(+), 16 deletions(-)

Comments

Marc-André Lureau Feb. 14, 2019, 10:59 a.m. UTC | #1
Hi

On Thu, Feb 14, 2019 at 10:44 AM Markus Armbruster <armbru@redhat.com> 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 <pbonzini@redhat.com>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
>  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?

Other than that,
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

> +
> +obj-y += qapi-introspect.o
> --
> 2.17.2
>
>
Markus Armbruster Feb. 14, 2019, 2:33 p.m. UTC | #2
Marc-André Lureau <marcandre.lureau@gmail.com> writes:

> Hi
>
> On Thu, Feb 14, 2019 at 10:44 AM Markus Armbruster <armbru@redhat.com> 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 <pbonzini@redhat.com>
>> Signed-off-by: Markus Armbruster <armbru@redhat.com>
>> ---
>>  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 <marcandre.lureau@redhat.com>

Thanks!
diff mbox series

Patch

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)
+
+obj-y += qapi-introspect.o