qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/5] buildsys: Do not use internal fdt library when asked for the system one
@ 2021-05-11 15:53 Philippe Mathieu-Daudé
  2021-05-11 15:53 ` [RFC PATCH 1/5] hw/mem/nvdimm: Use Kconfig 'imply' instead of 'depends on' Philippe Mathieu-Daudé
                   ` (5 more replies)
  0 siblings, 6 replies; 32+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-05-11 15:53 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Alexey Kardashevskiy, Greg Kurz, qemu-ppc,
	John Paul Adrian Glaubitz, Paolo Bonzini,
	Philippe Mathieu-Daudé,
	David Gibson

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




^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2021-05-14  8:24 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-11 15:53 [RFC PATCH 0/5] buildsys: Do not use internal fdt library when asked for the system one Philippe Mathieu-Daudé
2021-05-11 15:53 ` [RFC PATCH 1/5] hw/mem/nvdimm: Use Kconfig 'imply' instead of 'depends on' Philippe Mathieu-Daudé
2021-05-12  2:24   ` David Gibson
2021-05-12  3:57     ` Philippe Mathieu-Daudé
2021-05-12  4:53       ` Thomas Huth
2021-05-12  5:08         ` Philippe Mathieu-Daudé
2021-05-12  5:30           ` Thomas Huth
2021-05-12  7:02         ` David Gibson
2021-05-13 15:20           ` Paolo Bonzini
2021-05-13 23:33             ` David Gibson
2021-05-12  8:02   ` Paolo Bonzini
2021-05-11 15:53 ` [RFC PATCH 2/5] Kconfig: Declare 'FDT' host symbol Philippe Mathieu-Daudé
2021-05-12  7:37   ` Paolo Bonzini
2021-05-11 15:53 ` [RFC PATCH 3/5] hw/ppc: Have pSeries depends on libfdt (via host Kconfig FDT symbol) Philippe Mathieu-Daudé
2021-05-12  2:27   ` David Gibson
2021-05-12  8:01     ` Paolo Bonzini
2021-05-13  3:46       ` David Gibson
2021-05-12  7:45   ` Paolo Bonzini
2021-05-12  8:27     ` Philippe Mathieu-Daudé
2021-05-11 15:53 ` [RFC PATCH 4/5] hw/ppc/fdt: Drop dependency on libfdt Philippe Mathieu-Daudé
2021-05-12  2:30   ` David Gibson
2021-05-12  7:59     ` Paolo Bonzini
2021-05-13  3:46       ` David Gibson
2021-05-13 15:26         ` Paolo Bonzini
2021-05-13 23:35           ` David Gibson
2021-05-14  5:29             ` Paolo Bonzini
2021-05-14  8:22               ` Philippe Mathieu-Daudé
2021-05-11 15:53 ` [RFC PATCH 5/5] meson: Do not use internal fdt library if user asked for the system one Philippe Mathieu-Daudé
2021-05-12  7:32   ` Paolo Bonzini
2021-05-11 15:57 ` [RFC PATCH 0/5] buildsys: Do not use internal fdt library when " Philippe Mathieu-Daudé
2021-05-12  3:56   ` Philippe Mathieu-Daudé
2021-05-12  7:34     ` Paolo Bonzini

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).