On Tue, Sep 01, 2020 at 03:03:02PM +0200, Ján Tomko wrote: > On a Sunday in 2020, Toolybird wrote: > > Hi, > > > > Just a heads up on my experiences with the new build system. > > > > Arch Linux > > meson-0.55.1 > > > > Overall, it looks good, so well done! > > > > Just a couple of minor things I noted: > > > > 1. Arch uses a meson wrapper script (arch-meson) that sets: > > > > --buildtype plain > > > > Does this affect the 'meson' available for end users? Or this > is just for the packaging system? (I'm not familiar with Arch) > > If it affects end users, I'd say it's a bug in Arch. > > > This seems to trigger a bug in meson that results in copious bogus compiler warnings: > > > > cc1: warning: ‘-Wformat-y2k’ ignored without ‘-Wformat’ [-Wformat-y2k] > > cc1: warning: ‘-Wformat-extra-args’ ignored without ‘-Wformat’ [-Wformat-extra-args] > > cc1: warning: ‘-Wformat-zero-length’ ignored without ‘-Wformat’ [-Wformat-zero-length] > > cc1: warning: ‘-Wformat-contains-nul’ ignored without ‘-Wformat’ [-Wformat-contains-nul] > > cc1: warning: ‘-Wformat-security’ ignored without ‘-Wformat’ [-Wformat-security] > > > > which of course breaks -Werror builds. > > > > I can easily work around it by setting `-D git_werror=disabled' or even better still: > > > > CFLAGS+=" -Wall" arch-meson... > > > > Maybe this github issue is related?: > > > > https://github.com/mesonbuild/meson/issues/7399 > > > > According to the quick guide: > https://mesonbuild.com/Quick-guide.html > > The command line switch --buildtype=plain tells Meson not to add its own flags > to the command line. This gives the packager total control on used flags. > > So it does not format the warning level (which we specify via default_options), > but it honors all the cflags we added manually (warnigs above -Wall + > -Werror if building from git). > > I'm not sure making it easier to ignore warnings is a worthwhile task, > especially when you already mentioned the easy workaround. This is not arch specific. Try running this: meson --buildtype=plain build && ninja -C build and it will fail if done from git repository where we automatically enable -Werror. > > 2. Arch currently builds libvirt with support for ZFS. Seeing as ZFS is not in the distro proper, a simple Autoconf tweak is used: > > > > ZFS=/usr/bin/zfs ZPOOL=/usr/bin/zpool \ > > ./configure ... > > > > I still haven't found out why we check for runtime dependencies at > compile-time. I guess there are other places like this that should be eventually fixed but nobody bothered to do it. Pavel
Attachment:
signature.asc
Description: PGP signature