[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 05/15] meson: compile bundled device trees
From: |
Paolo Bonzini |
Subject: |
[PATCH 05/15] meson: compile bundled device trees |
Date: |
Sat, 2 Sep 2023 14:59:24 +0200 |
If dtc is available, compile the .dts files in the pc-bios directory
instead of using the precompiled binaries.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
pc-bios/Makefile | 19 -------------------
pc-bios/meson.build | 25 +++++++++++++++++++++----
2 files changed, 21 insertions(+), 23 deletions(-)
delete mode 100644 pc-bios/Makefile
diff --git a/pc-bios/Makefile b/pc-bios/Makefile
deleted file mode 100644
index 315288df84e..00000000000
--- a/pc-bios/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# NOTE: only compilable with x86 cross compile tools
-#
-include ../config-host.mak
-
-DEFINES=
-
-TARGETS=
-
-all: $(TARGETS)
-
-%.o: %.S
- $(CC) $(DEFINES) -c -o $@ $<
-
-%.dtb: %.dts
- dtc -I dts -O dtb -o $@ $<
-
-clean:
- rm -f $(TARGETS) *.o *~
diff --git a/pc-bios/meson.build b/pc-bios/meson.build
index a7224ef4699..e67fa433a1b 100644
--- a/pc-bios/meson.build
+++ b/pc-bios/meson.build
@@ -57,10 +57,6 @@ blobs = [
'efi-e1000e.rom',
'efi-vmxnet3.rom',
'qemu-nsis.bmp',
- 'bamboo.dtb',
- 'canyonlands.dtb',
- 'petalogix-s3adsp1800.dtb',
- 'petalogix-ml605.dtb',
'multiboot.bin',
'multiboot_dma.bin',
'linuxboot.bin',
@@ -84,6 +80,27 @@ blobs = [
'vof-nvram.bin',
]
+dtc = find_program('dtc', required: false)
+foreach f : [
+ 'bamboo.dts',
+ 'canyonlands.dts',
+ 'petalogix-s3adsp1800.dts',
+ 'petalogix-ml605.dts',
+]
+ out = fs.replace_suffix(f, '.dtb')
+ if dtc.found()
+ custom_target(f,
+ build_by_default: have_system,
+ input: files(f),
+ output: out,
+ install: get_option('install_blobs'),
+ install_dir: qemu_datadir,
+ command: [ dtc, '-I', 'dts', '-O', 'dtb', '-o', '@OUTPUT@', '@INPUT0@'
])
+ else
+ blobs += out
+ endif
+endforeach
+
if get_option('install_blobs')
install_data(blobs, install_dir: qemu_datadir)
endif
--
2.41.0
- [PATCH v2 00/15] configure cleanups for QEMU 8.2, Paolo Bonzini, 2023/09/02
- [PATCH 01/15] meson: do not unnecessarily use cmake for dependencies, Paolo Bonzini, 2023/09/02
- [PATCH 02/15] meson: update unsupported host/CPU messages, Paolo Bonzini, 2023/09/02
- [PATCH 03/15] configure: remove HOST_CC, Paolo Bonzini, 2023/09/02
- [PATCH 04/15] configure: create native file with contents of $host_cc, Paolo Bonzini, 2023/09/02
- [PATCH 05/15] meson: compile bundled device trees,
Paolo Bonzini <=
- [PATCH 06/15] configure: remove boolean variables for targets, Paolo Bonzini, 2023/09/02
- [PATCH 07/15] configure: move --enable-debug-tcg to meson, Paolo Bonzini, 2023/09/02
- [PATCH 08/15] meson: test for CONFIG_TCG in config_all, Paolo Bonzini, 2023/09/02
- [PATCH 09/15] contrib/plugins: use an independent makefile, Paolo Bonzini, 2023/09/02
- [PATCH 10/15] configure: unify recursion into sub-Makefiles, Paolo Bonzini, 2023/09/02
- [PATCH 12/15] configure, meson: remove CONFIG_SOLARIS from config-host.mak, Paolo Bonzini, 2023/09/02
- [PATCH 11/15] configure, meson: move --enable-plugins to meson, Paolo Bonzini, 2023/09/02