Il 22/01/2013 11:00, Stefan Hajnoczi ha scritto:
>> > I also just spent a long time trying to figure out why
>> > my MacOS system wouldn't build after a git pull; turns
>> > out that:
>> > (1) we used to have a generated trace.h and we don't any more
>> > (2) make distclean doesn't remove trace.h
>> > (3) #include "trace.h" prefers the out of date generated one
>> > to the new non-generated one in include/
>> > 
>> > I have no idea whether we can make qemu's build process more
>> > resistant to that kind of diachronic change, but I mention it
>> > anyway :-)
> Yes, this is an annoying weakness in the build system.  But I think we
> should not solve it with more make sophistication because we seem
> incapable of handling the current level of complexity already :).

To some extent there's nothing you can do.  The only solution is to
lower the build system churn---personally I'm satisfied with the current
level of complexity, so I'll stop contributing to it. :)

Forbidding in-tree builds is too much IMO, they're okay for occasional
builders, but people using the git tree probably had better switch to
out-of-tree if only because a "rm -rf _build" will fix any problem.  We
still have the buildbots to notify us about in-tree build problems, and
of course people submitting build system patches should test both scenarios.

Paolo

Reply via email to