qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 01/14] trace: Add trace-events file for declarin


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 01/14] trace: Add trace-events file for declaring trace events
Date: Sun, 12 Sep 2010 18:16:40 +0100

On Sat, Sep 11, 2010 at 10:53 PM, Andreas Färber <address@hidden> wrote:
> Am 06.09.2010 um 17:13 schrieb Stefan Hajnoczi:
>
>> diff --git a/Makefile b/Makefile
>> index f95cc2f..3c5e6a0 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1,6 +1,6 @@
>> # Makefile for QEMU.
>>
>> -GENERATED_HEADERS = config-host.h
>> +GENERATED_HEADERS = config-host.h trace.h
>>
>> ifneq ($(wildcard config-host.mak),)
>> # Put the all: rule here so that config-host.mak can contain dependencies.
>> @@ -104,16 +104,24 @@ ui/vnc.o: QEMU_CFLAGS += $(VNC_TLS_CFLAGS)
>>
>> bt-host.o: QEMU_CFLAGS += $(BLUEZ_CFLAGS)
>>
>> +trace.h: $(SRC_PATH)/trace-events config-host.mak
>> +       $(call quiet-command,sh $(SRC_PATH)/tracetool --$(TRACE_BACKEND)
>> -h < $< > $@,"  GEN   $@")
>> +
>> +trace.c: $(SRC_PATH)/trace-events config-host.mak
>> +       $(call quiet-command,sh $(SRC_PATH)/tracetool --$(TRACE_BACKEND)
>> -c < $< > $@,"  GEN   $@")
>> +
>> +trace.o: trace.c $(GENERATED_HEADERS)
>
> There's a dependency issue hidden here: The user emulators recurse into
> *-user with just a dependency on trace.h. The build then fails because the
> target Makefile does not know how to build ../trace.o since the rule is in
> this Makefile instead.
>
> I noticed it with ppc-haiku-user but this should be visible with linux-user
> on a clean build, too.
>
> Adding trace.o or $(trace-obj-y) somewhere before subdir-libuser seems to
> help. I'll post a patch later on if no one beats me.

Your patch would be appreciated.  For the record, in order to reproduce it:
$ make distclean
$ ./configure --target-list=i386-linux-user
$ make
make[1]: *** No rule to make target `../trace.o', needed by `qemu-i386'.  Stop.

If one of the targets does build trace.o then the build completes
successfully.  That's why all targets build works fine.

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]