On 16 November 2010 18:58, Anthony Liguori <anth...@codemonkey.ws> wrote: > On 11/16/2010 12:54 PM, Peter Maydell wrote: >> If I add a ".PHONY: trace" or change the "trace" target >> name to "tracexyzzy" then this fixes the problem. > > Curious, care to send a patch? I think I'm not seeing this because I build > with srcdir != objdir.
Ah, yes, if I build in a different directory to the sources I can build without having to patch the makefiles. (That feature of configure doesn't seem to be documented anywhere, unless I've missed something.) Anyway, patch sent. I opted to tidy up the makefile a little to avoid either an ugly target name or a GNU-makeism. I fiddled configure so I could test the CONFIG_SYSTEMTAP_TRACE bit despite not having systemtap on this machine, but it would be good if a real systemtap user could check it. A couple of oddities I noticed along the way: (1) How do you get configure to enable CONFIG_SYSTEMTAP_TRACE? The condition is: if test "$trace_backend" = "dtrace" -a "$trace_backend_stap" = "yes" ; then echo "CONFIG_SYSTEMTAP_TRACE=y" >> $config_host_mak fi but trace_backend_stap is only set inside code guarded by if test "$trace_backend" = "ust" ... so as far as I can tell the two halves of the -a will never both be true. (2) in Makefile.target, the blank line after the all: line: > all: $(PROGS) $(STPFILES) > > # Dummy command so that make thinks it has done something > @true is I think a bit misleading although it is valid makefile syntax. I suspect it got added by accident. -- PMM