From: Paolo Bonzini <pbonzini@redhat.com>
To: Roman Bolshakov <r.bolshakov@yadro.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [PATCH v2 000/150] Meson integration for 5.2
Date: Mon, 17 Aug 2020 13:24:50 +0200 [thread overview]
Message-ID: <f8a9f236-7017-01a7-0a6d-06a2e18f95f1@redhat.com> (raw)
In-Reply-To: <20200817110254.GA98227@SPB-NB-133.local>
On 17/08/20 13:02, Roman Bolshakov wrote:
>
> Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
>
> On the next step, it might be good to drop configure in favor of meson
> configuration, so configure, build and test commands would be similar to
> libvirt:
>
> meson build
> ninja -C build
> meson test -C build
Well, there are quite a few steps needed to get there:
1) moving feature tests from configure to Meson is a no-brainer.
However it's better to first convert the unit tests to Meson and get rid
of the rest of rules.mak. This is because it's simpler to do this if
there are no uses left of CONFIG_* symbols in the Makefiles.
2) moving the rest of "make install" to Meson is even more of a
no-brainer. Marc-André has patches there. They also include a
conversion of the ROM build.
3) moving the bulk of the build from meson to ninja is possible and I
already have patches for it. It requires adding ninja as a build
dependency however. The main advantage here is getting rid of
Ninjatool. I'm not sure how moving the handling of submodules to Meson
would work, and that's needed in order to be able to build with "ninja
-C build".
4) I find "meson test" to be inferior in some respects to the QEMU's TAP
test harness. In particular, one feature of QEMU's Makefiles is that
you can cut-and-paste from "make V=1 output" into the shell. So that
part may take some time. I'd rather extend Meson so that it's possible
to write arbitrary test runners.
Thanks,
Paolo
next prev parent reply other threads:[~2020-08-17 11:25 UTC|newest]
Thread overview: 166+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-14 9:10 [PATCH v2 000/150] Meson integration for 5.2 Paolo Bonzini
2020-08-14 9:10 ` [PATCH 001/150] oss-fuzz/build: remove LIB_FUZZING_ENGINE Paolo Bonzini
2020-08-14 9:10 ` [PATCH 002/150] optionrom: simplify Makefile Paolo Bonzini
2020-08-14 9:10 ` [PATCH 003/150] pc-bios/s390-ccw: do not use rules.mak Paolo Bonzini
2020-08-14 9:11 ` [PATCH 004/150] trace: switch position of headers to what Meson requires Paolo Bonzini
2020-08-14 9:11 ` [PATCH 005/150] meson: rename included C source files to .c.inc Paolo Bonzini
2020-08-14 9:11 ` [PATCH 006/150] meson: rename .inc.h files to .h.inc Paolo Bonzini
2020-08-14 9:11 ` [PATCH 007/150] build-sys hack: ensure target directory is there Paolo Bonzini
2020-08-14 9:11 ` [PATCH 008/150] tests/vm: do not pollute configure with --efi-aarch64 Paolo Bonzini
2020-08-14 9:11 ` [PATCH 009/150] tests/vm: check for Python YAML parser in the Makefile Paolo Bonzini
2020-08-14 9:11 ` [PATCH 010/150] tests/docker: add test script for static linux-user builds Paolo Bonzini
2020-08-14 9:11 ` [PATCH 011/150] nsis: use "make DESTDIR=" instead of "make prefix=" Paolo Bonzini
2020-08-14 9:11 ` [PATCH 012/150] configure: do not include $(...) variables in config-host.mak Paolo Bonzini
2020-08-14 9:11 ` [PATCH 013/150] configure: expand path variables for meson configure Paolo Bonzini
2020-08-14 9:11 ` [PATCH 014/150] configure: prepare CFLAGS/CXXFLAGS/LDFLAGS for Meson Paolo Bonzini
2020-08-14 9:11 ` [PATCH 015/150] tests/vm: include setuptools Paolo Bonzini
2020-08-14 9:11 ` [PATCH 016/150] configure: integrate Meson in the build system Paolo Bonzini
2020-08-14 9:11 ` [PATCH 017/150] configure: generate Meson cross file Paolo Bonzini
2020-08-14 9:11 ` [PATCH 018/150] build-sys hack: link with whole .fa archives Paolo Bonzini
2020-08-14 9:11 ` [PATCH 019/150] build-sys: add meson submodule Paolo Bonzini
2020-08-14 9:11 ` [PATCH 020/150] meson: move summary to meson.build Paolo Bonzini
2020-08-14 9:11 ` [PATCH 021/150] meson: enable pie Paolo Bonzini
2020-08-14 9:11 ` [PATCH 022/150] meson: use coverage option Paolo Bonzini
2020-08-14 9:11 ` [PATCH 023/150] meson: add sparse support Paolo Bonzini
2020-08-14 9:11 ` [PATCH 024/150] meson: add testsuite Makefile generator Paolo Bonzini
2020-08-14 9:11 ` [PATCH 025/150] libqemuutil, qapi, trace: convert to meson Paolo Bonzini
2020-08-17 11:10 ` Roman Bolshakov
2020-08-17 13:38 ` Philippe Mathieu-Daudé
2020-08-17 13:44 ` Paolo Bonzini
2020-08-14 9:11 ` [PATCH 026/150] meson: add remaining generated tcg trace helpers Paolo Bonzini
2020-08-14 9:11 ` [PATCH 027/150] meson: add version.o Paolo Bonzini
2020-08-14 9:11 ` [PATCH 028/150] contrib/libvhost-user: convert to Meson Paolo Bonzini
2020-08-14 9:11 ` [PATCH 029/150] tools/virtiofsd: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 030/150] contrib/vhost-user-blk: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 031/150] vhost-user-scsi: add compatibility for libiscsi 1.9.0 Paolo Bonzini
2020-08-14 9:11 ` [PATCH 032/150] contrib/vhost-user-scsi: convert to Meson Paolo Bonzini
2020-08-14 9:11 ` [PATCH 033/150] contrib/rdmacm-mux: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 034/150] contrib/vhost-user-input: convert to meson Paolo Bonzini
2020-08-14 9:11 ` [PATCH 035/150] contrib/vhost-user-gpu: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 036/150] contrib/ivshmem: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 037/150] contrib/elf2dmp: " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 038/150] meson: add macos dependencies Paolo Bonzini
2020-08-14 9:11 ` [PATCH 039/150] meson: add solaris and Haiku libraries Paolo Bonzini
2020-08-14 9:11 ` [PATCH 040/150] meson: convert qemu-ga Paolo Bonzini
2020-08-14 9:11 ` [PATCH 041/150] meson: convert vss-win32 Paolo Bonzini
2020-08-14 9:11 ` [PATCH 042/150] meson: add msi generation Paolo Bonzini
2020-08-14 9:11 ` [PATCH 043/150] meson: convert dummy Windows qga/qemu-ga target Paolo Bonzini
2020-08-14 9:11 ` [PATCH 044/150] meson: add qemu-bridge-helper Paolo Bonzini
2020-08-14 9:11 ` [PATCH 045/150] meson: add qemu-keymap Paolo Bonzini
2020-08-14 9:11 ` [PATCH 046/150] meson: add qemu-edid Paolo Bonzini
2020-08-14 9:11 ` [PATCH 047/150] meson: add virtfs-proxy-helper Paolo Bonzini
2020-08-14 9:11 ` [PATCH 048/150] meson: keymap-gen Paolo Bonzini
2020-08-14 9:11 ` [PATCH 049/150] meson: generate qemu-version.h Paolo Bonzini
2020-08-14 9:11 ` [PATCH 050/150] meson: generate shader headers Paolo Bonzini
2020-08-14 9:11 ` [PATCH 051/150] meson: generate hxtool files Paolo Bonzini
2020-08-14 9:11 ` [PATCH 052/150] meson: handle edk2 bios and descriptors Paolo Bonzini
2020-08-14 9:11 ` [PATCH 053/150] meson: convert check-decodetree Paolo Bonzini
2020-08-14 9:11 ` [PATCH 054/150] meson: convert tests/fp and check-softfloat Paolo Bonzini
2020-08-14 9:11 ` [PATCH 055/150] meson: convert check-qapi-schema Paolo Bonzini
2020-08-14 9:11 ` [PATCH 056/150] meson: convert qom directory to Meson (tools part) Paolo Bonzini
2020-08-14 9:11 ` [PATCH 057/150] meson: convert authz directory to Meson Paolo Bonzini
2020-08-14 9:11 ` [PATCH 058/150] meson: convert crypto " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 059/150] meson: convert io " Paolo Bonzini
2020-08-14 9:11 ` [PATCH 060/150] meson: convert target/s390x/gen-features.h Paolo Bonzini
2020-08-14 9:11 ` [PATCH 061/150] meson: infrastructure for building emulators Paolo Bonzini
2020-08-14 9:11 ` [PATCH 062/150] meson: add modules infrastructure Paolo Bonzini
2020-08-14 9:11 ` [PATCH 063/150] meson: convert chardev directory to Meson (tools part) Paolo Bonzini
2020-08-14 9:12 ` [PATCH 064/150] meson: convert block Paolo Bonzini
2020-08-14 9:12 ` [PATCH 065/150] meson: qemu-{img,io,nbd} Paolo Bonzini
2020-08-14 9:12 ` [PATCH 066/150] meson: qemu-pr-helper Paolo Bonzini
2020-08-14 9:12 ` [PATCH 067/150] configure, Makefile; remove TOOLS and HELPERS-y variable Paolo Bonzini
2020-08-14 9:12 ` [PATCH 068/150] meson: convert chardev directory to Meson (emulator part) Paolo Bonzini
2020-08-14 9:12 ` [PATCH 069/150] meson: convert tests/qtest to meson Paolo Bonzini
2020-08-14 9:12 ` [PATCH 070/150] meson: convert audio directory to Meson Paolo Bonzini
2020-08-14 9:12 ` [PATCH 071/150] meson: convert ui " Paolo Bonzini
2020-08-14 9:12 ` [PATCH 072/150] meson: convert root " Paolo Bonzini
2020-08-14 9:12 ` [PATCH 073/150] meson: convert most of softmmu/ Paolo Bonzini
2020-08-14 9:12 ` [PATCH 074/150] meson: convert trace/ Paolo Bonzini
2020-08-14 9:12 ` [PATCH 075/150] meson: convert dump/ Paolo Bonzini
2020-08-14 9:12 ` [PATCH 076/150] meson: convert common QMP bits for qemu and qemu-storage-daemon Paolo Bonzini
2020-08-14 9:12 ` [PATCH 077/150] meson: convert qemu-storage-daemon Paolo Bonzini
2020-08-14 9:12 ` [PATCH 078/150] meson: convert replay directory to Meson Paolo Bonzini
2020-08-14 9:12 ` [PATCH 079/150] meson: convert migration " Paolo Bonzini
2020-08-14 9:12 ` [PATCH 080/150] meson: convert net " Paolo Bonzini
2020-08-14 9:12 ` [PATCH 081/150] meson: convert backends " Paolo Bonzini
2020-08-14 9:12 ` [PATCH 082/150] meson: convert fsdev/ Paolo Bonzini
2020-08-14 9:12 ` [PATCH 083/150] meson: convert disas directory to Meson Paolo Bonzini
2020-08-14 9:12 ` [PATCH 084/150] meson: convert qapi-specific to meson Paolo Bonzini
2020-08-14 9:12 ` [PATCH 085/150] meson: convert hw/xen Paolo Bonzini
2020-08-14 9:12 ` [PATCH 086/150] meson: convert hw/core Paolo Bonzini
2020-08-14 9:12 ` [PATCH 087/150] meson: convert hw/semihosting Paolo Bonzini
2020-08-14 9:12 ` [PATCH 088/150] meson: convert hw/nubus Paolo Bonzini
2020-08-14 9:12 ` [PATCH 089/150] meson: convert hw/smbios Paolo Bonzini
2020-08-14 9:12 ` [PATCH 090/150] meson: convert hw/mem Paolo Bonzini
2020-08-14 9:12 ` [PATCH 091/150] meson: convert hw/watchdog Paolo Bonzini
2020-08-14 9:12 ` [PATCH 092/150] meson: convert hw/virtio Paolo Bonzini
2020-08-14 9:12 ` [PATCH 093/150] meson: convert hw/vfio Paolo Bonzini
2020-08-14 9:12 ` [PATCH 094/150] meson: convert hw/usb Paolo Bonzini
2020-08-14 9:12 ` [PATCH 095/150] meson: convert hw/tpm Paolo Bonzini
2020-08-14 9:12 ` [PATCH 096/150] meson: convert hw/timer Paolo Bonzini
2020-08-14 9:12 ` [PATCH 097/150] meson: convert hw/rtc Paolo Bonzini
2020-08-14 9:12 ` [PATCH 098/150] meson: convert hw/ssi Paolo Bonzini
2020-08-14 9:12 ` [PATCH 099/150] meson: convert hw/sd Paolo Bonzini
2020-08-14 9:12 ` [PATCH 100/150] meson: convert hw/scsi Paolo Bonzini
2020-08-14 9:12 ` [PATCH 101/150] meson: convert hw/pcmcia Paolo Bonzini
2020-08-14 9:12 ` [PATCH 102/150] meson: convert hw/pci-host Paolo Bonzini
2020-08-14 9:12 ` [PATCH 103/150] meson: convert hw/pci-bridge Paolo Bonzini
2020-08-14 9:12 ` [PATCH 104/150] meson: convert hw/pci Paolo Bonzini
2020-08-14 9:12 ` [PATCH 105/150] meson: convert hw/nvram Paolo Bonzini
2020-08-14 9:12 ` [PATCH 106/150] meson: convert hw/rdma Paolo Bonzini
2020-08-14 9:12 ` [PATCH 107/150] meson: convert hw/net Paolo Bonzini
2020-08-14 9:12 ` [PATCH 108/150] meson: convert hw/misc Paolo Bonzini
2020-08-14 9:12 ` [PATCH 109/150] meson: convert hw/isa Paolo Bonzini
2020-08-14 9:12 ` [PATCH 110/150] meson: convert hw/ipmi Paolo Bonzini
2020-08-14 9:12 ` [PATCH 111/150] meson: convert hw/ipack Paolo Bonzini
2020-08-14 9:12 ` [PATCH 112/150] meson: convert hw/intc Paolo Bonzini
2020-08-14 9:12 ` [PATCH 113/150] meson: convert hw/input Paolo Bonzini
2020-08-14 9:12 ` [PATCH 114/150] meson: convert hw/ide Paolo Bonzini
2020-08-14 9:12 ` [PATCH 115/150] meson: convert hw/i2c Paolo Bonzini
2020-08-14 9:12 ` [PATCH 116/150] meson: convert hw/hyperv Paolo Bonzini
2020-08-14 9:12 ` [PATCH 117/150] meson: convert hw/gpio Paolo Bonzini
2020-08-14 9:12 ` [PATCH 118/150] meson: convert hw/dma Paolo Bonzini
2020-08-14 9:12 ` [PATCH 119/150] meson: convert hw/display Paolo Bonzini
2020-08-14 9:12 ` [PATCH 120/150] meson: convert hw/cpu Paolo Bonzini
2020-08-14 9:12 ` [PATCH 121/150] meson: convert hw/char Paolo Bonzini
2020-08-14 9:12 ` [PATCH 122/150] meson: convert hw/block Paolo Bonzini
2020-08-14 9:12 ` [PATCH 123/150] meson: convert hw/audio Paolo Bonzini
2020-08-14 9:13 ` [PATCH 124/150] meson: convert hw/adc Paolo Bonzini
2020-08-14 9:13 ` [PATCH 125/150] meson: convert hw/acpi Paolo Bonzini
2020-08-14 9:13 ` [PATCH 126/150] meson: convert hw/9pfs, cleanup Paolo Bonzini
2020-08-14 9:13 ` [PATCH 127/150] meson: convert hw/arch* Paolo Bonzini
2020-08-14 9:13 ` [PATCH 128/150] meson: target Paolo Bonzini
2020-08-14 9:13 ` [PATCH 129/150] meson: accel Paolo Bonzini
2020-08-14 9:13 ` [PATCH 130/150] meson: linux-user Paolo Bonzini
2020-08-14 9:13 ` [PATCH 131/150] meson: bsd-user Paolo Bonzini
2020-08-14 9:13 ` [PATCH 132/150] meson: cpu-emu Paolo Bonzini
2020-08-14 9:13 ` [PATCH 133/150] meson: plugins Paolo Bonzini
2020-08-14 9:13 ` [PATCH 134/150] meson: link emulators without Makefile.target Paolo Bonzini
2020-08-14 9:13 ` [PATCH 135/150] meson: convert systemtap files Paolo Bonzini
2020-08-14 9:13 ` [PATCH 136/150] rules.mak: remove version.o Paolo Bonzini
2020-08-14 9:13 ` [PATCH 137/150] remove Makefile.target Paolo Bonzini
2020-08-14 9:13 ` [PATCH 138/150] meson: sphinx-build Paolo Bonzini
2020-08-14 9:13 ` [PATCH 139/150] docs: automatically track manual dependencies Paolo Bonzini
2020-08-14 9:13 ` [PATCH 140/150] meson: build texi doc Paolo Bonzini
2020-08-14 9:13 ` [PATCH 141/150] meson: convert check-block Paolo Bonzini
2020-08-14 9:13 ` [PATCH 142/150] rules.mak: drop unneeded macros Paolo Bonzini
2020-08-14 9:13 ` [PATCH 143/150] meson: replace create-config with meson configure_file Paolo Bonzini
2020-08-14 9:13 ` [PATCH 144/150] meson: convert sample plugins Paolo Bonzini
2020-08-14 9:13 ` [PATCH 145/150] meson: move SDL and SDL-image detection to meson Paolo Bonzini
2020-08-14 9:13 ` [PATCH 146/150] meson: convert VNC and dependent libraries " Paolo Bonzini
2020-08-14 9:13 ` [PATCH 147/150] meson: convert po/ Paolo Bonzini
2020-08-14 9:13 ` [PATCH 148/150] meson: avoid unstable module warning with Meson 0.56.0 or newer Paolo Bonzini
2020-08-14 9:13 ` [PATCH 149/150] meson: update build-system documentation Paolo Bonzini
2020-08-14 9:13 ` [PATCH 150/150] docs: convert build system documentation to rST Paolo Bonzini
2020-08-14 10:49 ` [PATCH v2 000/150] Meson integration for 5.2 no-reply
2020-08-14 10:55 ` no-reply
2020-08-14 10:58 ` no-reply
2020-08-15 9:01 ` Howard Spoelstra
2020-08-17 11:02 ` Roman Bolshakov
2020-08-17 11:24 ` Paolo Bonzini [this message]
2020-08-17 11:49 ` Roman Bolshakov
2020-08-17 13:36 ` Philippe Mathieu-Daudé
2020-08-17 13:44 ` Paolo Bonzini
2020-08-17 12:26 ` Cornelia Huck
2020-08-17 13:57 ` Paolo Bonzini
2020-08-17 14:33 ` Cornelia Huck
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=f8a9f236-7017-01a7-0a6d-06a2e18f95f1@redhat.com \
--to=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=r.bolshakov@yadro.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).