On 7/5/24 09:19, Paolo Bonzini wrote:
Since boards can express their dependency on libfdt and
system/device_tree.c, only leave TARGET_NEED_FDT if the target has a
hard dependency.

By default, unless --enable-libfdt is passed (in which case the
dependency is mandatory, as usual for --enable-* options) or the
target is mention in --target-list, those emulators will be skipped if
libfdt is not present.

Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
---
  configs/targets/aarch64-softmmu.mak      |  1 +
  configs/targets/arm-softmmu.mak          |  1 +
  configs/targets/i386-softmmu.mak         |  1 -
  configs/targets/loongarch64-softmmu.mak  |  1 +
  configs/targets/microblaze-softmmu.mak   |  1 +
  configs/targets/microblazeel-softmmu.mak |  1 +
  configs/targets/mips64el-softmmu.mak     |  1 -
  configs/targets/or1k-softmmu.mak         |  1 +
  configs/targets/ppc-softmmu.mak          |  1 -
  configs/targets/ppc64-softmmu.mak        |  1 +
  configs/targets/riscv32-softmmu.mak      |  1 +
  configs/targets/riscv64-softmmu.mak      |  1 +
  configs/targets/rx-softmmu.mak           |  1 +
  configs/targets/x86_64-softmmu.mak       |  1 -
  meson.build                              | 14 ++++++++++----
  .gitlab-ci.d/buildtest.yml               |  7 ++++---
  16 files changed, 24 insertions(+), 11 deletions(-)


-  if 'TARGET_NEED_FDT' in config_target
-    fdt_required += target
+  if 'TARGET_NEED_FDT' in config_target and not fdt.found()
+    if default_targets
+      warning('Disabling ' + target + 'due to missing libfdt')

Nice.

Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>

+    else
+      fdt_required += target
+    endif
+    continue
    endif


Reply via email to