On 01/14/21 20:57, Philippe Mathieu-Daudé wrote: > On 1/14/21 8:49 PM, Laszlo Ersek wrote: >> On 01/14/21 18:45, Philippe Mathieu-Daudé wrote: >>> Globally declare in the main meson.build: >>> - the list of EDK2 targets, >>> - whether the EDK2 blobs have to be installed. >>> >>> Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> >>> --- >>> Patch trivial to review using 'git-diff --ignore-all-space' >>> --- >>> meson.build | 8 ++++++++ >>> pc-bios/descriptors/meson.build | 30 ++++++++++++++++-------------- >>> pc-bios/meson.build | 5 +---- >>> 3 files changed, 25 insertions(+), 18 deletions(-) >>> >>> diff --git a/meson.build b/meson.build >>> index 3d889857a09..ecc45d04d6a 100644 >>> --- a/meson.build >>> +++ b/meson.build >>> @@ -88,6 +88,14 @@ >>> } >>> endif >>> >>> +edk2_targets = [ 'arm-softmmu', 'aarch64-softmmu', 'i386-softmmu', >>> 'x86_64-softmmu' ] >>> +install_edk2_blobs = false >>> +if get_option('install_blobs') >>> + foreach target : target_dirs >>> + install_edk2_blobs = install_edk2_blobs or target in edk2_targets >>> + endforeach >>> +endif >>> + >>> ################## >>> # Compiler flags # >>> ################## >>> diff --git a/pc-bios/descriptors/meson.build >>> b/pc-bios/descriptors/meson.build >>> index 7040834573d..ac6ec66b007 100644 >>> --- a/pc-bios/descriptors/meson.build >>> +++ b/pc-bios/descriptors/meson.build >>> @@ -1,14 +1,16 @@ >>> -foreach f: [ >>> - '50-edk2-i386-secure.json', >>> - '50-edk2-x86_64-secure.json', >>> - '60-edk2-aarch64.json', >>> - '60-edk2-arm.json', >>> - '60-edk2-i386.json', >>> - '60-edk2-x86_64.json' >>> -] >>> - configure_file(input: files(f), >>> - output: f, >>> - configuration: {'DATADIR': qemu_datadir}, >>> - install: get_option('install_blobs'), >>> - install_dir: qemu_datadir / 'firmware') >>> -endforeach >>> +if install_edk2_blobs >>> + foreach f: [ >>> + '50-edk2-i386-secure.json', >>> + '50-edk2-x86_64-secure.json', >>> + '60-edk2-aarch64.json', >>> + '60-edk2-arm.json', >>> + '60-edk2-i386.json', >>> + '60-edk2-x86_64.json' >>> + ] >>> + configure_file(input: files(f), >>> + output: f, >>> + configuration: {'DATADIR': qemu_datadir}, >>> + install: get_option('install_blobs'), >>> + install_dir: qemu_datadir / 'firmware') >>> + endforeach >>> +endif >>> diff --git a/pc-bios/meson.build b/pc-bios/meson.build >>> index fab323af84e..6a341b6cea0 100644 >>> --- a/pc-bios/meson.build >>> +++ b/pc-bios/meson.build >>> @@ -1,7 +1,4 @@ >>> -if 'arm-softmmu' in target_dirs or \ >>> - 'aarch64-softmmu' in target_dirs or \ >>> - 'i386-softmmu' in target_dirs or \ >>> - 'x86_64-softmmu' in target_dirs >>> +if install_edk2_blobs >>> bzip2 = find_program('bzip2', required: true) >>> fds = [ >>> 'edk2-aarch64-code.fd', >>> >> >> I vaguely understand what this patch does (I haven't followed the meson >> conversion), but I'm unsure why it does that. >> >> Is this patch useful in itself, or only in preparation for patch#2? > > Well, something I forgot to mention is it disable the configure_file() > calls when arm/aarch64/i386/x86_64-softmmu targets are not selected. > > (currently if you configure a restricted set of targets, such > --target-list=riscv64-softmmu,ppc-softmmu, it is called, and > the json descriptors files are installed, even if these targets > don't require them). >
Oof, sorry for missing that. Reviewed-by: Laszlo Ersek <ler...@redhat.com> Laszlo