qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@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: Thu, 7 Mar 2019 11:33:09 +0000	[thread overview]
Message-ID: <20190307113309.GN32268@redhat.com> (raw)
In-Reply-To: <CAFEAcA_RQU+HYczN4Z=vEL8U31---GTi_HOxg8y50pzX8p+p7Q@mail.gmail.com>

On Thu, Mar 07, 2019 at 10:13:13AM +0000, Peter Maydell wrote:
> 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.)

I don't think we'll see the same level of domination as you see with
git, for a number of reasons.

It is compelling enough though that I think it will ultimately win
over autotools for newly started projects with little difficulty.
Everyone I know grumbles about autoconf & m4, and libtool, so they
won't be missed. 

Switching SCM is relatively straightforward as for most projects it
doesn't affect the way the code works. At simplest you can just copy
the code into git & away you go. If you want to preseve history there
are many convertors from SVN/CVS and of course free project hosting
on github just re-inforces the benefits.

Switching build systems by comparison requires careful technical
work whose burden increases as the complexity of the project increases.
This is a much larger barrier than seen with GIT conversions. So I think
it will have a harder time getting existing projects to convert than
was seen getting projeects from switch to GIT. This is true of any
build system conversion though, not just meson. There's no real scope
for automatic conversions to help her.

Most major modern programming languages comes some kind of standard
build system. So while meson can work with non-C languages it is not
likely to make much headway there IMHO.

Even if we don't switch build systems in the near term, I think it
is worth watching the space & being open to the idea at some point.

I think our current build system does put off contributors. I'm
personally put off touching any make based build system that is
not using autoconf/automake. Project specific hand crafted make
files have their own new way to doing things you have to learn
and so for a long time I dared not try changing anything complex
in QEMU's build.

As long term contributors we've built enough enough knowledge to
QEMU to consider our build system attractive or even "simple",
which skews our view of the benefits of alternatives to people
without this tribal knowledge.

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 :|

  parent reply	other threads:[~2019-03-07 11:33 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é [this message]
2019-03-10 14:21       ` Markus Armbruster
2019-03-10 14:33     ` Markus Armbruster
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=20190307113309.GN32268@redhat.com \
    --to=berrange@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).