qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Michael Tokarev <mjt@tls.msk.ru>,
	QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [PULL v6 000/150] Meson-based build system
Date: Thu, 20 Aug 2020 01:20:13 +0200	[thread overview]
Message-ID: <627b7282-5e3f-f53c-28db-ff7afdd3bf9e@redhat.com> (raw)
In-Reply-To: <CAFEAcA-RF4T43zeNMBb_NWaOqWOVS6H5iiRN4s4ocvnGgN65bw@mail.gmail.com>

On 19/08/20 23:11, Peter Maydell wrote:
> On Wed, 19 Aug 2020 at 20:44, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> However, this change was already in the first series that was posted
>> like a year ago...
> 
> It's a hundred-and-fifty patch series, and I can't review everything.
> I took it on trust that it would be basically a drop-in replacement
> for our current makefile setup.

Everybody has a different bar for the kind of change they accept; some
people really would have liked to keep in-tree builds, others consider
it already a drop-in replacement if "./configure && make && make
install" works.  Some consider building contrib/ tools by default a bad
idea, others consider it a necessity because of bitrot.  My objective in
using Meson is, among other things, also to establish conventions and
make them easy to follow, and to set a standard for how much we want to
bend over in the interest of backwards compatibility.

I wasn't expecting a full review; wide testing is just as important, as
shown by the amount of papercuts that were hiding at a point where the
patches were already functional.  That's why your input has been
invaluable with respect to both code coverage and usability
improvements.  It will also result in better CI since we now know the
delta between e.g. GitLab + tests/docker + tests/vm and your battery of
builds (for example tests/tcg MIPS is not covered by GitLab CI!).

My complaint was only that, until last week nobody even tried to apply
and make the patches, and therefore some of the input I got surprised
me.  I can guarantee that backwards-compatibility and incremental
adoption has been one of the design goals from the beginning (even
though it wasn't perfectly realized until y'all shaked it down).  QEMU
is the only project _ever_ to switch to Meson without requiring a flag
day and with full support for old->new incremental builds, and that is
because I know how much you and many others in the community value all
that.  At the same time, I had never considered the position of binaries
(especially when the new one is shorter :)).

But anyway, I don't want this minor complaint to detract from how
grateful I am for your and everybody else's shared effort.  I have now
written down the list of changes introduced by the switch, at
https://wiki.qemu.org/Features/Meson/Next.  I am confident that Meson
will win you over sooner rather than later!

Thanks,

Paolo

---
* automatically generate dependencies for sphinx manuals [Peter]
* fixes for ARM KVM build [Peter]
* work around old libiscsi in vhost-user-scsi.c [Peter]
* hack to support default c:/Program Files/QEMU prefix on mingw cross
compilation [Peter, Howard]
* added --enable-gettext/--disable-gettext [Peter]
* test for setuptools presence [Peter]
* fixes for Darwin [Peter, Roman]
* do not invoke system Meson through Python, always use embedded Meson
with --python [Roman]
* improvements and fixes to clean and distclean targets [Stefano]
* avoid (incorrect?) ubsan failure from CONFIG_BDRV_*_WHITELIST [Alexander]
* move --s390-pgste to Meson, removed QEMU_CFLAGS/QEMU_LDFLAGS for
config-target.mak
* remove some dead configure assignments
* update build system docs on how to add configure options, convert to rST
* moved installation of edk2 blobs and descriptors to Meson [Daniel]
* build and install elf2dmp on Windows too [Daniel]
* included headers renamed to .c.inc instead of .inc
* Simplified/rewrote handling of the modules variable [Howard]
* Fixed access to gdb-xml files [Howard]
* Fixed cross-compilation failure due to mingw prefix [Howard]
* Fixed sub-makefiles that include config-host.mak
* fixed error splat when doing "make" from unconfigured build directory
* use --native-file to list tools chosen by configure
* fixes for Windows (SDL, Wixl)
* C++ compiler not mandatory anymore
* remove useless .. search path for modules
* fix incremental build [Peter]
* work around sdl bug [Peter]
* fix w32 Ubuntu build [Peter]
* disable rdmacm-mux and vhost-user-blk build by default [Peter]
* allow cut-and-paste from config.status [Peter]
* support builds with nonworking C++ compiler [Peter]
* do not link gio into --disable-system builds [Peter]
* new patch to preserve compatibility symlinks from previous binary
locations [Peter]
* fixed cut-and-paste error in linux-user/mips/meson.build [Peter]
* preserve compatibility check-block target even if no block tests are
defined [Peter]



  reply	other threads:[~2020-08-19 23:21 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-19 14:35 [PULL v6 000/150] Meson-based build system Paolo Bonzini
2020-08-19 18:12 ` Peter Maydell
2020-08-19 18:16   ` Peter Maydell
2020-08-19 19:05     ` Peter Maydell
2020-08-19 19:31       ` Paolo Bonzini
2020-08-19 20:07     ` Philippe Mathieu-Daudé
2020-08-19 22:27       ` Paolo Bonzini
2020-08-19 18:57   ` Michael Tokarev
2020-08-19 19:04     ` Peter Maydell
2020-08-19 19:44       ` Paolo Bonzini
2020-08-19 21:11         ` Peter Maydell
2020-08-19 23:20           ` Paolo Bonzini [this message]
2020-08-20  8:51             ` Peter Maydell
2020-08-19 20:15   ` 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=627b7282-5e3f-f53c-28db-ff7afdd3bf9e@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=mjt@tls.msk.ru \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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).