[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] converting build system to Meson?
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] converting build system to Meson? |
Date: |
Thu, 7 Mar 2019 10:49:38 +0000 |
User-agent: |
Mutt/1.11.3 (2019-02-01) |
On Thu, Mar 07, 2019 at 11:40:05AM +0100, Paolo Bonzini wrote:
> On 07/03/19 07:39, Thomas Huth wrote:
> > On 06/03/2019 19.12, Paolo Bonzini wrote:
> >> Hi all,
> >>
> >> lately I have been thinking of converting the QEMU build system to
> >> Meson. Meson is a relatively new build system that can replace
> >> Autotools or hand-written Makefiles such as QEMU; as a die-hard
> >> Autotools fan, I must say that Meson is by far better than anything else
> >> that has ever tried to replace Autotools, and actually has the potential
> >> to do so.
> >>
> >> Advantages of Meson that directly matter for QEMU include:[...]
> >
> > I'm not objecting a new build system per se, but could you elaborate on
> > problems of the current QEMU build system that will be fixed by this
> > change?
>
> In order of importance:
>
> - Make lacks introspection abilities; people want to be able to quickly
> say "I don't have this security issue because I didn't compile this
> file". Make only gives you the build logs, which may not be easily
> accessible to the end user.
>
> - Makefile.objs unnesting does not apply throughout the tree, for
> example it does not apply to tests. We don't apply it there because it
> it is hard to extend Makefile.objs to dozens of targets and it would
> also be very very slow. The result is lack of homogeneity between
> places that use Makefile.objs and places that use Makefile.include.
>
> - Makefile.objs unnesting is hard to understand---granted, you rarely
> have to understand it because it mostly works, but we should consider
> whether it is a local optimum. For example, how many people know how to
> add a dynamically-loadd module to Makefile.objs?
We have a long standing bug in unnesting which breaks if two dirs
have a .c file with the same name and a per-o file library link:
https://lists.gnu.org/archive/html/qemu-devel/2018-06/msg02654.html
The nesting stuff is insanely clever, but it is also fragile and full
of dragons like this one.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
Re: [Qemu-devel] converting build system to Meson?, Daniel P . Berrangé, 2019/03/07
Re: [Qemu-devel] converting build system to Meson?, Paolo Bonzini, 2019/03/07
Re: [Qemu-devel] converting build system to Meson?,
Daniel P . Berrangé <=
Re: [Qemu-devel] converting build system to Meson?, Stefan Hajnoczi, 2019/03/07
Re: [Qemu-devel] converting build system to Meson?, Alex Bennée, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Paolo Bonzini, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Peter Maydell, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Daniel P . Berrangé, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Paolo Bonzini, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Marc-André Lureau, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Peter Maydell, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, Peter Maydell, 2019/03/07
- Re: [Qemu-devel] converting build system to Meson?, BALATON Zoltan, 2019/03/07