Patchwork [v2,18/21] qapi: Makefile changes to build test-visiter

login
register
mail settings
Submitter Michael Roth
Date June 3, 2011, 10:33 p.m.
Message ID <1307140399-9023-19-git-send-email-mdroth@linux.vnet.ibm.com>
Download mbox | patch
Permalink /patch/98680/
State New
Headers show

Comments

Michael Roth - June 3, 2011, 10:33 p.m.
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
---
 Makefile      |   14 ++++++++++++++
 Makefile.objs |    7 +++++++
 2 files changed, 21 insertions(+), 0 deletions(-)
Luiz Capitulino - June 8, 2011, 5:39 p.m.
On Fri,  3 Jun 2011 17:33:16 -0500
Michael Roth <mdroth@linux.vnet.ibm.com> wrote:

> 
> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>

This doesn't build:

~/src/qmp-unstable/build (qapi-review)/ mk test-visiter
  GEN   qapi-generated/test-qapi-types.h
  GEN   qapi-generated/test-qapi-visit.h
  CC    qapi/qmp-input-visiter.o
  CC    qapi/qmp-output-visiter.o
/home/lcapitulino/src/qmp-unstable/qapi/qmp-input-visiter.c:239:1: fatal error: opening dependency file qapi/qmp-input-visiter.d: No such file or directory
compilation terminated.
/home/lcapitulino/src/qmp-unstable/qapi/qmp-output-visiter.c:180:1: fatal error: opening dependency file qapi/qmp-output-visiter.d: No such file or directory
compilation terminated.
make: *** [qapi/qmp-output-visiter.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [qapi/qmp-input-visiter.o] Error 1
~/src/qmp-unstable/build (qapi-review)/ 

I guess this is happening because all qapi files being added by this series
are not built. A patch adding a C file should also update the relevant
Makefile so tha the c file can be built and tested (if possible).

> ---
>  Makefile      |   14 ++++++++++++++
>  Makefile.objs |    7 +++++++
>  2 files changed, 21 insertions(+), 0 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index cf318c8..7176176 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -145,6 +145,19 @@ check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
>  check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
>  check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
>  
> +qapi-dir := qapi-generated
> +$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
> +
> +$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
> +$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-" < $<, "  GEN   $@")
> +$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
> +$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-" < $<, "  GEN   $@")
> +
> +test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
> +test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
> +
>  QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
>  
>  clean:
> @@ -157,6 +170,7 @@ clean:
>  	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
>  	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
>  	rm -f trace-dtrace.h trace-dtrace.h-timestamp
> +	rm -rf $(qapi-dir)
>  	$(MAKE) -C tests clean
>  	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
>  	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
> diff --git a/Makefile.objs b/Makefile.objs
> index eb264d9..9b77d10 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -362,6 +362,13 @@ endif
>  
>  libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
>  
> +######################################################################
> +# qapi
> +
> +qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
> +qapi-nested-y += qmp-registry.o qmp-dispatch.o
> +qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
> +
>  vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
>  
>  vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
Michael Roth - June 8, 2011, 5:55 p.m.
On 06/08/2011 12:39 PM, Luiz Capitulino wrote:
> On Fri,  3 Jun 2011 17:33:16 -0500
> Michael Roth<mdroth@linux.vnet.ibm.com>  wrote:
>
>>
>> Signed-off-by: Michael Roth<mdroth@linux.vnet.ibm.com>
>
> This doesn't build:
>
> ~/src/qmp-unstable/build (qapi-review)/ mk test-visiter
>    GEN   qapi-generated/test-qapi-types.h
>    GEN   qapi-generated/test-qapi-visit.h
>    CC    qapi/qmp-input-visiter.o
>    CC    qapi/qmp-output-visiter.o
> /home/lcapitulino/src/qmp-unstable/qapi/qmp-input-visiter.c:239:1: fatal error: opening dependency file qapi/qmp-input-visiter.d: No such file or directory
> compilation terminated.
> /home/lcapitulino/src/qmp-unstable/qapi/qmp-output-visiter.c:180:1: fatal error: opening dependency file qapi/qmp-output-visiter.d: No such file or directory
> compilation terminated.
> make: *** [qapi/qmp-output-visiter.o] Error 1
> make: *** Waiting for unfinished jobs....
> make: *** [qapi/qmp-input-visiter.o] Error 1
> ~/src/qmp-unstable/build (qapi-review)/
>
> I guess this is happening because all qapi files being added by this series
> are not built. A patch adding a C file should also update the relevant
> Makefile so tha the c file can be built and tested (if possible).

Hmm, this commit builds for me with `./configure && make clean && make 
test-visiter`.

Is there something different about your build process, like a seperate 
output directory or something?

>
>> ---
>>   Makefile      |   14 ++++++++++++++
>>   Makefile.objs |    7 +++++++
>>   2 files changed, 21 insertions(+), 0 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index cf318c8..7176176 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -145,6 +145,19 @@ check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
>>   check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
>>   check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
>>
>> +qapi-dir := qapi-generated
>> +$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
>> +
>> +$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
>> +$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
>> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
>> +$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
>> +$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
>> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
>> +
>> +test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
>> +test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
>> +
>>   QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
>>
>>   clean:
>> @@ -157,6 +170,7 @@ clean:
>>   	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
>>   	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
>>   	rm -f trace-dtrace.h trace-dtrace.h-timestamp
>> +	rm -rf $(qapi-dir)
>>   	$(MAKE) -C tests clean
>>   	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
>>   	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
>> diff --git a/Makefile.objs b/Makefile.objs
>> index eb264d9..9b77d10 100644
>> --- a/Makefile.objs
>> +++ b/Makefile.objs
>> @@ -362,6 +362,13 @@ endif
>>
>>   libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
>>
>> +######################################################################
>> +# qapi
>> +
>> +qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
>> +qapi-nested-y += qmp-registry.o qmp-dispatch.o
>> +qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
>> +
>>   vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
>>
>>   vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
>
Luiz Capitulino - June 8, 2011, 6 p.m.
On Wed, 08 Jun 2011 12:55:29 -0500
Michael Roth <mdroth@linux.vnet.ibm.com> wrote:

> On 06/08/2011 12:39 PM, Luiz Capitulino wrote:
> > On Fri,  3 Jun 2011 17:33:16 -0500
> > Michael Roth<mdroth@linux.vnet.ibm.com>  wrote:
> >
> >>
> >> Signed-off-by: Michael Roth<mdroth@linux.vnet.ibm.com>
> >
> > This doesn't build:
> >
> > ~/src/qmp-unstable/build (qapi-review)/ mk test-visiter
> >    GEN   qapi-generated/test-qapi-types.h
> >    GEN   qapi-generated/test-qapi-visit.h
> >    CC    qapi/qmp-input-visiter.o
> >    CC    qapi/qmp-output-visiter.o
> > /home/lcapitulino/src/qmp-unstable/qapi/qmp-input-visiter.c:239:1: fatal error: opening dependency file qapi/qmp-input-visiter.d: No such file or directory
> > compilation terminated.
> > /home/lcapitulino/src/qmp-unstable/qapi/qmp-output-visiter.c:180:1: fatal error: opening dependency file qapi/qmp-output-visiter.d: No such file or directory
> > compilation terminated.
> > make: *** [qapi/qmp-output-visiter.o] Error 1
> > make: *** Waiting for unfinished jobs....
> > make: *** [qapi/qmp-input-visiter.o] Error 1
> > ~/src/qmp-unstable/build (qapi-review)/
> >
> > I guess this is happening because all qapi files being added by this series
> > are not built. A patch adding a C file should also update the relevant
> > Makefile so tha the c file can be built and tested (if possible).
> 
> Hmm, this commit builds for me with `./configure && make clean && make 
> test-visiter`.
> 
> Is there something different about your build process, like a seperate 
> output directory or something?

Yes, I use a different build dir.

> 
> >
> >> ---
> >>   Makefile      |   14 ++++++++++++++
> >>   Makefile.objs |    7 +++++++
> >>   2 files changed, 21 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/Makefile b/Makefile
> >> index cf318c8..7176176 100644
> >> --- a/Makefile
> >> +++ b/Makefile
> >> @@ -145,6 +145,19 @@ check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
> >>   check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
> >>   check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
> >>
> >> +qapi-dir := qapi-generated
> >> +$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
> >> +
> >> +$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
> >> +$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
> >> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
> >> +$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
> >> +$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
> >> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
> >> +
> >> +test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
> >> +test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
> >> +
> >>   QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
> >>
> >>   clean:
> >> @@ -157,6 +170,7 @@ clean:
> >>   	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
> >>   	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
> >>   	rm -f trace-dtrace.h trace-dtrace.h-timestamp
> >> +	rm -rf $(qapi-dir)
> >>   	$(MAKE) -C tests clean
> >>   	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
> >>   	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
> >> diff --git a/Makefile.objs b/Makefile.objs
> >> index eb264d9..9b77d10 100644
> >> --- a/Makefile.objs
> >> +++ b/Makefile.objs
> >> @@ -362,6 +362,13 @@ endif
> >>
> >>   libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
> >>
> >> +######################################################################
> >> +# qapi
> >> +
> >> +qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
> >> +qapi-nested-y += qmp-registry.o qmp-dispatch.o
> >> +qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
> >> +
> >>   vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
> >>
> >>   vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
> >
>
Anthony Liguori - June 8, 2011, 6:12 p.m.
On 06/08/2011 12:39 PM, Luiz Capitulino wrote:
> On Fri,  3 Jun 2011 17:33:16 -0500
> Michael Roth<mdroth@linux.vnet.ibm.com>  wrote:
>
>>
>> Signed-off-by: Michael Roth<mdroth@linux.vnet.ibm.com>
>
> This doesn't build:
>
> ~/src/qmp-unstable/build (qapi-review)/ mk test-visiter
>    GEN   qapi-generated/test-qapi-types.h
>    GEN   qapi-generated/test-qapi-visit.h
>    CC    qapi/qmp-input-visiter.o
>    CC    qapi/qmp-output-visiter.o
> /home/lcapitulino/src/qmp-unstable/qapi/qmp-input-visiter.c:239:1: fatal error: opening dependency file qapi/qmp-input-visiter.d: No such file or directory
> compilation terminated.
> /home/lcapitulino/src/qmp-unstable/qapi/qmp-output-visiter.c:180:1: fatal error: opening dependency file qapi/qmp-output-visiter.d: No such file or directory
> compilation terminated.

There's a mkdir at the end of configure.  You'll need to add qapi to it.

Regards,

Anthony Liguori

> make: *** [qapi/qmp-output-visiter.o] Error 1
> make: *** Waiting for unfinished jobs....
> make: *** [qapi/qmp-input-visiter.o] Error 1
> ~/src/qmp-unstable/build (qapi-review)/
>
> I guess this is happening because all qapi files being added by this series
> are not built. A patch adding a C file should also update the relevant
> Makefile so tha the c file can be built and tested (if possible).
>
>> ---
>>   Makefile      |   14 ++++++++++++++
>>   Makefile.objs |    7 +++++++
>>   2 files changed, 21 insertions(+), 0 deletions(-)
>>
>> diff --git a/Makefile b/Makefile
>> index cf318c8..7176176 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -145,6 +145,19 @@ check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
>>   check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
>>   check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
>>
>> +qapi-dir := qapi-generated
>> +$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
>> +
>> +$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
>> +$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
>> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
>> +$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
>> +$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
>> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
>> +
>> +test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
>> +test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
>> +
>>   QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
>>
>>   clean:
>> @@ -157,6 +170,7 @@ clean:
>>   	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
>>   	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
>>   	rm -f trace-dtrace.h trace-dtrace.h-timestamp
>> +	rm -rf $(qapi-dir)
>>   	$(MAKE) -C tests clean
>>   	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
>>   	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
>> diff --git a/Makefile.objs b/Makefile.objs
>> index eb264d9..9b77d10 100644
>> --- a/Makefile.objs
>> +++ b/Makefile.objs
>> @@ -362,6 +362,13 @@ endif
>>
>>   libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
>>
>> +######################################################################
>> +# qapi
>> +
>> +qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
>> +qapi-nested-y += qmp-registry.o qmp-dispatch.o
>> +qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
>> +
>>   vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
>>
>>   vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
>
>
Luiz Capitulino - June 8, 2011, 6:16 p.m.
On Wed, 08 Jun 2011 13:12:50 -0500
Anthony Liguori <anthony@codemonkey.ws> wrote:

> On 06/08/2011 12:39 PM, Luiz Capitulino wrote:
> > On Fri,  3 Jun 2011 17:33:16 -0500
> > Michael Roth<mdroth@linux.vnet.ibm.com>  wrote:
> >
> >>
> >> Signed-off-by: Michael Roth<mdroth@linux.vnet.ibm.com>
> >
> > This doesn't build:
> >
> > ~/src/qmp-unstable/build (qapi-review)/ mk test-visiter
> >    GEN   qapi-generated/test-qapi-types.h
> >    GEN   qapi-generated/test-qapi-visit.h
> >    CC    qapi/qmp-input-visiter.o
> >    CC    qapi/qmp-output-visiter.o
> > /home/lcapitulino/src/qmp-unstable/qapi/qmp-input-visiter.c:239:1: fatal error: opening dependency file qapi/qmp-input-visiter.d: No such file or directory
> > compilation terminated.
> > /home/lcapitulino/src/qmp-unstable/qapi/qmp-output-visiter.c:180:1: fatal error: opening dependency file qapi/qmp-output-visiter.d: No such file or directory
> > compilation terminated.
> 
> There's a mkdir at the end of configure.  You'll need to add qapi to it.

Yeah, that fixed it.

> 
> Regards,
> 
> Anthony Liguori
> 
> > make: *** [qapi/qmp-output-visiter.o] Error 1
> > make: *** Waiting for unfinished jobs....
> > make: *** [qapi/qmp-input-visiter.o] Error 1
> > ~/src/qmp-unstable/build (qapi-review)/
> >
> > I guess this is happening because all qapi files being added by this series
> > are not built. A patch adding a C file should also update the relevant
> > Makefile so tha the c file can be built and tested (if possible).
> >
> >> ---
> >>   Makefile      |   14 ++++++++++++++
> >>   Makefile.objs |    7 +++++++
> >>   2 files changed, 21 insertions(+), 0 deletions(-)
> >>
> >> diff --git a/Makefile b/Makefile
> >> index cf318c8..7176176 100644
> >> --- a/Makefile
> >> +++ b/Makefile
> >> @@ -145,6 +145,19 @@ check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
> >>   check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
> >>   check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
> >>
> >> +qapi-dir := qapi-generated
> >> +$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
> >> +
> >> +$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
> >> +$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
> >> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
> >> +$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
> >> +$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
> >> +	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-"<  $<, "  GEN   $@")
> >> +
> >> +test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
> >> +test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
> >> +
> >>   QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
> >>
> >>   clean:
> >> @@ -157,6 +170,7 @@ clean:
> >>   	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
> >>   	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
> >>   	rm -f trace-dtrace.h trace-dtrace.h-timestamp
> >> +	rm -rf $(qapi-dir)
> >>   	$(MAKE) -C tests clean
> >>   	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
> >>   	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
> >> diff --git a/Makefile.objs b/Makefile.objs
> >> index eb264d9..9b77d10 100644
> >> --- a/Makefile.objs
> >> +++ b/Makefile.objs
> >> @@ -362,6 +362,13 @@ endif
> >>
> >>   libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
> >>
> >> +######################################################################
> >> +# qapi
> >> +
> >> +qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
> >> +qapi-nested-y += qmp-registry.o qmp-dispatch.o
> >> +qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
> >> +
> >>   vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
> >>
> >>   vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
> >
> >
>

Patch

diff --git a/Makefile b/Makefile
index cf318c8..7176176 100644
--- a/Makefile
+++ b/Makefile
@@ -145,6 +145,19 @@  check-qlist: check-qlist.o qlist.o qint.o $(CHECK_PROG_DEPS)
 check-qfloat: check-qfloat.o qfloat.o $(CHECK_PROG_DEPS)
 check-qjson: check-qjson.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o qjson.o json-streamer.o json-lexer.o json-parser.o error.o qerror.o qemu-error.o $(CHECK_PROG_DEPS)
 
+qapi-dir := qapi-generated
+$(qapi-obj-y) test-visiter.o: QEMU_CFLAGS += -I $(qapi-dir)
+
+$(qapi-dir)/test-qapi-types.c: $(qapi-dir)/test-qapi-types.h
+$(qapi-dir)/test-qapi-types.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-types.py
+	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-types.py -o "$(qapi-dir)" -p "test-" < $<, "  GEN   $@")
+$(qapi-dir)/test-qapi-visit.c: $(qapi-dir)/test-qapi-visit.h
+$(qapi-dir)/test-qapi-visit.h: $(SRC_PATH)/qapi-schema-test.json $(SRC_PATH)/scripts/qapi-visit.py
+	$(call quiet-command,python $(SRC_PATH)/scripts/qapi-visit.py -o "$(qapi-dir)" -p "test-" < $<, "  GEN   $@")
+
+test-visiter.o: $(addprefix $(qapi-dir)/, test-qapi-types.c test-qapi-types.h test-qapi-visit.c test-qapi-visit.h)
+test-visiter: test-visiter.o qfloat.o qint.o qdict.o qstring.o qlist.o qbool.o $(qapi-obj-y) error.o osdep.o qemu-malloc.o $(oslib-obj-y) qjson.o json-streamer.o json-lexer.o json-parser.o qerror.o qemu-error.o qemu-tool.o $(qapi-dir)/test-qapi-visit.o $(qapi-dir)/test-qapi-types.o
+
 QEMULIBS=libhw32 libhw64 libuser libdis libdis-user
 
 clean:
@@ -157,6 +170,7 @@  clean:
 	rm -f trace.c trace.h trace.c-timestamp trace.h-timestamp
 	rm -f trace-dtrace.dtrace trace-dtrace.dtrace-timestamp
 	rm -f trace-dtrace.h trace-dtrace.h-timestamp
+	rm -rf $(qapi-dir)
 	$(MAKE) -C tests clean
 	for d in $(ALL_SUBDIRS) $(QEMULIBS) libcacard; do \
 	if test -d $$d; then $(MAKE) -C $$d $@ || exit 1; fi; \
diff --git a/Makefile.objs b/Makefile.objs
index eb264d9..9b77d10 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -362,6 +362,13 @@  endif
 
 libcacard-y = cac.o event.o vcard.o vreader.o vcard_emul_nss.o vcard_emul_type.o card_7816.o
 
+######################################################################
+# qapi
+
+qapi-nested-y = qmp-input-visiter.o qmp-output-visiter.o qapi-dealloc-visiter.o
+qapi-nested-y += qmp-registry.o qmp-dispatch.o
+qapi-obj-y = $(addprefix qapi/, $(qapi-nested-y))
+
 vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
 
 vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)