On 3/6/23 11:06, Daniel P. Berrangé wrote:
This offers developpers a simpler way to build QEMU with missing system
dependencies (ex, libslirp in my case), but also simplify the fallback build
definition of dtc/libfdt.
Do we actually need this facility though ? We've already determined
that every platform we need has libslirp now, and IIUC Thomas determined
recently that dtc is also available everywhere we need it to be.
libvfio-user can use Meson subprojects instead of submodules, too; and
with Pip support probably coming in 8.1, we can remove the meson
submodule. Then, the only mostly-mandatory submodule would be
keycodemapdb; SLOF requires a cross-compiler and the pre-built is binary
is shipped binary, while softfloat/testfloat are test only and maybe
could even be embedded. So there is a path towards getting rid of
submodules at least for the main QEMU build process.
Also, Windows installer builds could benefit from having wrapdb support
for the mandatory dependencies in Windows (pixman, zlib, glib, possibly
SDL).
Since they are unintrusive and easy to revert, I think we could include
patches 1-3 as experimental in 8.0, though I'm happy to oblige if people
disagree (and only include patch 1).
Paolo