This is the next part of the firmware cross compilation story, and shows a little more the direction I would like for QEMU's configure script.
It basically does half of half of the work: it only looks at firmware that's distributed with QEMU (optionrom, s390-ccw, vof) and does not do docker cross compilers yet. However, the important part is taking infrastructure from the recently-cleaned-up tests/tcg/configure.sh, and moving it in the main configure script so that others can use it. tests/tcg is actually very close to being buildable as a standalone project, so I actually expect the compiler tests to move back to tests/tcg, as a "configure" script of sorts which would run at Make time after the docker images are built. The "Cygnus" (GCC/binutils/gdb) tree has a similar idea of "configure" doing only bare-bones tree-wide configuration, with the rest left for Make time; so that's where I took inspiration from. Paolo Paolo Bonzini (12): tests/tcg: merge configure.sh back into main configure script configure: add missing cross compiler fallbacks configure: handle host compiler in probe_target_compiler configure: introduce --cross-prefix-*= configure: include more binutils in tests/tcg makefile configure, meson: move symlinking of ROMs to meson configure: move symlink configuration earlier configure: enable cross-compilation of s390-ccw pc-bios/optionrom: detect -fno-pie pc-bios/optionrom: compile with -Wno-array-bounds configure: enable cross-compilation of optionrom configure: enable cross compilation of vof configure | 597 +++++++++++++++++++++++++++++++---- pc-bios/meson.build | 18 +- pc-bios/optionrom/Makefile | 8 +- pc-bios/s390-ccw/Makefile | 9 +- pc-bios/s390-ccw/netboot.mak | 2 +- pc-bios/vof/Makefile | 17 +- tests/Makefile.include | 3 +- tests/tcg/configure.sh | 376 ---------------------- 8 files changed, 564 insertions(+), 466 deletions(-) delete mode 100755 tests/tcg/configure.sh -- 2.35.1