All of lore.kernel.org
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Thomas Huth" <thuth@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Richard Henderson" <rth@twiddle.net>,
	qemu-devel <qemu-devel@nongnu.org>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: Re: [Qemu-devel] converting build system to Meson?
Date: Sun, 10 Mar 2019 15:33:53 +0100	[thread overview]
Message-ID: <877ed6x0ha.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <CAFEAcA_RQU+HYczN4Z=vEL8U31---GTi_HOxg8y50pzX8p+p7Q@mail.gmail.com> (Peter Maydell's message of "Thu, 7 Mar 2019 10:13:13 +0000")

Peter Maydell <peter.maydell@linaro.org> writes:

> On Thu, 7 Mar 2019 at 06:39, Thomas Huth <thuth@redhat.com> wrote:
>> On 06/03/2019 19.12, Paolo Bonzini wrote:
>> > 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? Since apart from some minor glitches (with the *.mak file
>> dependencies for example), the current build system seems to work quite
>> well for me ... so at least I currently don't feel enough pain yet to do
>> such a big step, just because there is another new cool build system
>> around...
>
> Yes, that tends to be my view. Our current build system:
>  * has no dependencies that are problematic for older hosts
>    (contrast Meson, which needs Python 3.5, even if we take
>    the drastic step of shipping an entire build tool along
>    with QEMU; OSX python is 2.7 still)

By the time Meson is ready for us, and we're ready for Meson, chances
are even OS-X has moved on from Python 2.

https://pythonclock.org/

>  * is not particularly hard to deal with for the common cases
>    ("add new source file" is straightforward)

Yes.  Quite an achievement.

>  * covers all our requirements as far as I'm aware
>    (whereas you've listed a couple of places where Meson
>    would need changes/extensions to support things we do already)
>  * is generally flexible enough to be hackable to deal with odd
>    cases (it has escape mechanisms to generic-programmability,
>    even if they're ugly and awkward)

Yes, it's hackable, but it takes quite a hacker to hack it.  While it's
reasonably easy to do simple things in it with basic voodoo skills, the
learning curve goes up like the Zimbabwean inflation rate after that.  I
got plenty of experience in Make, and consider myself pretty fluent, yet
I find myself running to Paolo for help.

> So I think we'd need a more compelling reason to move right now.
> (This might change in the future, eg if Meson catches on to the
> extent that everybody is using it and competitors like CMake are
> more obviously eclipsed by it, in the way that git took over
> from svn and relegated mercurial and bzr to obscurity.)
>
> thanks
> -- PMM

  parent reply	other threads:[~2019-03-10 14:34 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-06 18:12 [Qemu-devel] converting build system to Meson? Paolo Bonzini
2019-03-06 18:50 ` Marc-André Lureau
2019-03-06 21:08   ` Paolo Bonzini
2019-03-07 10:29   ` Daniel P. Berrangé
2019-03-07  6:39 ` Thomas Huth
2019-03-07 10:13   ` Peter Maydell
2019-03-07 11:11     ` Paolo Bonzini
2019-03-07 11:29     ` Dr. David Alan Gilbert
2019-03-07 11:32       ` Peter Maydell
2019-03-07 11:49       ` Marc-André Lureau
2019-03-07 11:33     ` Daniel P. Berrangé
2019-03-10 14:21       ` Markus Armbruster
2019-03-10 14:33     ` Markus Armbruster [this message]
2019-03-11 16:30       ` Paolo Bonzini
2019-03-07 10:18   ` Daniel P. Berrangé
2019-03-07 10:40   ` Paolo Bonzini
2019-03-07 10:48     ` Peter Maydell
2019-03-07 11:06       ` Paolo Bonzini
2019-03-07 10:49     ` Daniel P. Berrangé
2019-03-07 10:33 ` Stefan Hajnoczi
2019-03-07 11:54 ` Alex Bennée
2019-03-07 12:56   ` Paolo Bonzini
2019-03-07 13:09     ` Peter Maydell
2019-03-07 13:22       ` Daniel P. Berrangé
2019-03-07 18:13       ` Paolo Bonzini
2019-03-07 18:17         ` Marc-André Lureau
2019-03-07 18:18           ` Peter Maydell
2019-03-07 18:19             ` Peter Maydell
2019-03-07 19:23             ` BALATON Zoltan
2019-03-07 19:50               ` Eric Blake
2019-03-07 20:28             ` Liviu Ionescu
2019-03-08 12:19             ` Daniel P. Berrangé
2019-03-07 19:04           ` Eric Blake
2019-03-07 19:24             ` Eric Blake
2019-03-08 12:21               ` Daniel P. Berrangé
2019-03-07 18:20         ` Alex Bennée
2019-03-08  6:47         ` Gerd Hoffmann
2019-03-08  6:58           ` Thomas Huth
2019-03-08 10:31           ` Peter Maydell
2019-03-08 11:58             ` Gerd Hoffmann
2019-03-08 12:03               ` Peter Maydell
2019-03-08 16:17                 ` Eric Blake
2019-03-08 16:26                   ` Peter Maydell
2019-03-08 16:32                   ` Paolo Bonzini
2019-03-08 16:36                     ` Peter Maydell
2019-03-11  1:09         ` Neal Gompa
2019-03-07 19:05       ` Cleber Rosa
2019-03-10 16:33         ` Markus Armbruster
2019-03-10 16:28 ` Markus Armbruster
2019-03-11  6:42   ` Thomas Huth
2019-03-11 10:14   ` Daniel P. Berrangé
2019-04-18  8:21 ` Markus Armbruster
2019-04-18  8:21   ` Markus Armbruster
2019-04-18  8:35   ` Paolo Bonzini
2019-04-18  8:35     ` Paolo Bonzini
2019-05-27 16:16 ` [Qemu-devel] Status update on Meson features needed by QEMU Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877ed6x0ha.fsf@dusky.pond.sub.org \
    --to=armbru@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.