Attempt to fix the issue reported by John when building with an outdated libfdt.
For now it changes: hw/ppc/spapr_hcall.c: In function =E2=80=98h_update_dt=E2=80=99: hw/ppc/spapr_hcall.c:1966:9: warning: implicit declaration of function =E2= =80=98fdt_check_full=E2=80=99; did you mean =E2=80=98fdt_check_header=E2=80= =99? [-Wimplicit-function-declaration] 1966 | if (fdt_check_full(fdt, cb)) { | ^~~~~~~~~~~~~~ | fdt_check_header hw/ppc/spapr_hcall.c:1966:9: warning: nested extern declaration of =E2=80= =98fdt_check_full=E2=80=99 [-Wnested-externs] [...] /usr/bin/ld: libqemu-ppc64-softmmu.fa.p/hw_ppc_spapr_hcall.c.o: in function= `h_update_dt': hw/ppc/spapr_hcall.c:1966: undefined reference to `fdt_check_full' collect2: error: ld returned 1 exit status by: qemu/meson.build:1352:4: ERROR: Running configure command failed. The following clauses were found for PSERIES CONFIG_PSERIES=3Dy config PSERIES depends on FDT which is not better, but one step at a time... John said: https://gitlab.com/qemu-project/qemu/-/issues/255#note_572421108 Distributions usually don't used embedded copies of libraries, so the configure script should require the correct minimum version. Personally I'd rather allow users to build the most of QEMU with what is available, that is all possible machines except pSeries, making pSeries machine selected by default and deselected if not possible, with this change: -- >8 -- diff --git a/default-configs/devices/ppc64-softmmu.mak b/default-configs/devi= ces/ppc64-softmmu.mak index cca52665d90..62339661fca 100644 --- a/default-configs/devices/ppc64-softmmu.mak +++ b/default-configs/devices/ppc64-softmmu.mak @@ -5,6 +5,3 @@ include ppc-softmmu.mak # For PowerNV CONFIG_POWERNV=3Dy - -# For pSeries -CONFIG_PSERIES=3Dy diff --git a/hw/ppc/Kconfig b/hw/ppc/Kconfig index 3935b73456f..706debd4fee 100644 --- a/hw/ppc/Kconfig +++ b/hw/ppc/Kconfig @@ -1,5 +1,6 @@ config PSERIES bool + default y depends on FDT imply PCI_DEVICES imply TEST_DEVICES --- But I suppose it breaks user expectations. Thoughts? Regards, Phil. Philippe Mathieu-Daud=C3=A9 (5): hw/mem/nvdimm: Use Kconfig 'imply' instead of 'depends on' Kconfig: Declare 'FDT' host symbol hw/ppc: Have pSeries depends on libfdt (via host Kconfig FDT symbol) hw/ppc/fdt: Drop dependency on libfdt meson: Do not use internal fdt library if user asked for the system one default-configs/devices/ppc64-softmmu.mak | 1 - meson.build | 2 +- Kconfig.host | 3 +++ hw/arm/Kconfig | 1 + hw/i386/Kconfig | 1 + hw/mem/Kconfig | 2 -- hw/ppc/Kconfig | 2 ++ hw/ppc/meson.build | 8 ++++---- 8 files changed, 12 insertions(+), 8 deletions(-) --=20 2.26.3