qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Someone kill the in-tree build, please (was: MIPS qemu


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] Someone kill the in-tree build, please (was: MIPS qemu build failure)
Date: Fri, 18 Sep 2015 13:17:36 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Sep 18, 2015 at 02:06:39PM +0200, Markus Armbruster wrote:
> "Daniel P. Berrange" <address@hidden> writes:
> 
> > On Fri, Sep 18, 2015 at 09:53:31AM +0100, Leon Alrae wrote:
> >> On 18/09/2015 09:24, Daniel P. Berrange wrote:
> >> > On Thu, Sep 17, 2015 at 07:38:53PM +0100, Peter Maydell wrote:
> >> >> On 17 September 2015 at 19:21, Steve Ellcey <address@hidden> wrote:
> >> >>>
> >> >>> Following up to my own email.  Apparently the reason I get this error 
> >> >>> is
> >> >>> that I am building with "--disable-tools --disable-system".  I don't 
> >> >>> need
> >> >>> the tools and I don't have pixman on my build system so if I don't use
> >> >>> "--disable-tools --disable-system" I get an error about not having 
> >> >>> pixman
> >> >>> installed.
> >> >>
> >> >> We ship pixman as a git submodule so that you don't have to have
> >> >> a system pixman, though the configure options you're using should work.
> >> >>
> >> >>> When I do use "--disable-tools --disable-system" on the
> >> >>> configure line I get:
> >> >>>
> >> >>> make[1]: *** No rule to make target `../qom/object.o', needed by
> >> >>> `qemu-mips'.  Stop.
> >> >>> make: *** [subdir-mips-linux-user] Error 2
> >> >>> Error: Make command failed, stopping build.
> >> >>
> >> >> Daniel, this sounds like more fallout from your recent changes?
> >> > 
> >> > I've just tried './configure --enable-tools --disable-system && make' and
> >> > got a successful build, including the qemu-mips binary, so I wonder if
> >> > there's some stale build artifacts, or other configure CLI args
> >> 
> >> Note that Steve used --disable-tools, not enable. I just tried and it fails
> >> also for me:
> >
> > Opps, when I tested, I *did* in fact use --disable-tools - just my email
> > here was wrong.
> >
> >> $ ../qemu/configure --disable-tools --disable-system && make
> >> (...)
> >> make[1]: *** No rule to make target `../qom/object.o', needed by
> >> `qemu-aarch64'. Stop.
> >> make: *** [subdir-aarch64-linux-user] Error 2
> >
> > Ahh, this is useful.
> >
> > You have your build directory *outside* the QEMU source tree,
> > eg $GIT/../build, whereas I had been testing with $GIT/build
> > and an non-VPATH build.
> >
> > I can in fact reproduce if building completely outside the GIT tree
> > like you show.
> >
> > I'll look at producing a fix shortly...
> 
> Dropping the in-tree build entirely would save us from such unnecessary
> build breakages.  Unfortunately, I haven't been able to find the time to
> write a patch.  Any takers?

Preventing non-VPATH builds wouldn't have avoided the breakage in this
case, as it only occurred when multiple criteria were met. You needed
to have done a build with certain features disabled *and* done it
in a VPATH *and* for VPATH to have lived outside your $GIT checkout.
We'd only catch that if we added more combinations to the build checks
Peter does prior to merge.

I could see an argument for dropping non-VPATH builds, even though I do
typically use them myself, since VPATH vs non-VPATH is a constant source
of trouble in most projects. I don't think its so reasonable to dictate
to people /where/ they put their VPATHs - IMHO its acceptable to use
$GIT/build as a VPATH.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



reply via email to

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