Paolo Bonzini | 809954e | 2021-09-23 06:55:29 -0400 | [diff] [blame] | 1 | roms = [] |
Paolo Bonzini | e49c0ef | 2021-09-23 06:55:28 -0400 | [diff] [blame] | 2 | if unpack_edk2_blobs |
Marc-André Lureau | bdcbea7 | 2019-07-15 21:22:31 +0400 | [diff] [blame] | 3 | fds = [ |
| 4 | 'edk2-aarch64-code.fd', |
| 5 | 'edk2-arm-code.fd', |
| 6 | 'edk2-arm-vars.fd', |
| 7 | 'edk2-i386-code.fd', |
| 8 | 'edk2-i386-secure-code.fd', |
| 9 | 'edk2-i386-vars.fd', |
| 10 | 'edk2-x86_64-code.fd', |
| 11 | 'edk2-x86_64-secure-code.fd', |
| 12 | ] |
| 13 | |
| 14 | foreach f : fds |
Paolo Bonzini | 809954e | 2021-09-23 06:55:29 -0400 | [diff] [blame] | 15 | roms += custom_target(f, |
Philippe Mathieu-Daudé | 6d21d60 | 2021-01-22 21:44:32 +0100 | [diff] [blame] | 16 | build_by_default: have_system, |
Marc-André Lureau | bdcbea7 | 2019-07-15 21:22:31 +0400 | [diff] [blame] | 17 | output: f, |
Paolo Bonzini | 0f45714 | 2021-11-08 10:45:30 +0100 | [diff] [blame] | 18 | input: files('@0@.bz2'.format(f)), |
Marc-André Lureau | bdcbea7 | 2019-07-15 21:22:31 +0400 | [diff] [blame] | 19 | capture: true, |
Paolo Bonzini | c8d5450 | 2020-10-16 03:32:52 -0400 | [diff] [blame] | 20 | install: get_option('install_blobs'), |
Marc-André Lureau | ab4c099 | 2020-08-26 15:04:16 +0400 | [diff] [blame] | 21 | install_dir: qemu_datadir, |
Marc-André Lureau | bdcbea7 | 2019-07-15 21:22:31 +0400 | [diff] [blame] | 22 | command: [ bzip2, '-dc', '@INPUT0@' ]) |
| 23 | endforeach |
| 24 | endif |
| 25 | |
Paolo Bonzini | 45f1eec | 2022-05-27 16:35:46 +0100 | [diff] [blame] | 26 | blobs = [ |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 27 | 'bios.bin', |
| 28 | 'bios-256k.bin', |
Gerd Hoffmann | 38edb51 | 2020-09-15 14:08:51 +0200 | [diff] [blame] | 29 | 'bios-microvm.bin', |
Gerd Hoffmann | 3bee1d1 | 2020-09-15 14:08:49 +0200 | [diff] [blame] | 30 | 'qboot.rom', |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 31 | 'vgabios.bin', |
| 32 | 'vgabios-cirrus.bin', |
| 33 | 'vgabios-stdvga.bin', |
| 34 | 'vgabios-vmware.bin', |
| 35 | 'vgabios-qxl.bin', |
| 36 | 'vgabios-virtio.bin', |
| 37 | 'vgabios-ramfb.bin', |
| 38 | 'vgabios-bochs-display.bin', |
| 39 | 'vgabios-ati.bin', |
| 40 | 'openbios-sparc32', |
| 41 | 'openbios-sparc64', |
| 42 | 'openbios-ppc', |
| 43 | 'QEMU,tcx.bin', |
| 44 | 'QEMU,cgthree.bin', |
| 45 | 'pxe-e1000.rom', |
| 46 | 'pxe-eepro100.rom', |
| 47 | 'pxe-ne2k_pci.rom', |
| 48 | 'pxe-pcnet.rom', |
| 49 | 'pxe-rtl8139.rom', |
| 50 | 'pxe-virtio.rom', |
| 51 | 'efi-e1000.rom', |
| 52 | 'efi-eepro100.rom', |
| 53 | 'efi-ne2k_pci.rom', |
| 54 | 'efi-pcnet.rom', |
| 55 | 'efi-rtl8139.rom', |
| 56 | 'efi-virtio.rom', |
| 57 | 'efi-e1000e.rom', |
| 58 | 'efi-vmxnet3.rom', |
| 59 | 'qemu-nsis.bmp', |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 60 | 'multiboot.bin', |
Marcus Hähnel | 48972f8 | 2021-10-20 14:55:04 +0200 | [diff] [blame] | 61 | 'multiboot_dma.bin', |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 62 | 'linuxboot.bin', |
| 63 | 'linuxboot_dma.bin', |
| 64 | 'kvmvapic.bin', |
| 65 | 'pvh.bin', |
| 66 | 's390-ccw.img', |
| 67 | 's390-netboot.img', |
| 68 | 'slof.bin', |
| 69 | 'skiboot.lid', |
| 70 | 'palcode-clipper', |
| 71 | 'u-boot.e500', |
| 72 | 'u-boot-sam460-20100605.bin', |
| 73 | 'qemu_vga.ndrv', |
| 74 | 'edk2-licenses.txt', |
| 75 | 'hppa-firmware.img', |
| 76 | 'opensbi-riscv32-generic-fw_dynamic.bin', |
| 77 | 'opensbi-riscv64-generic-fw_dynamic.bin', |
Havard Skinnemoen | d1cb5ed | 2020-09-10 22:20:53 -0700 | [diff] [blame] | 78 | 'npcm7xx_bootrom.bin', |
Alexey Kardashevskiy | 10717c2 | 2022-02-09 09:08:56 +0100 | [diff] [blame] | 79 | 'vof.bin', |
| 80 | 'vof-nvram.bin', |
Paolo Bonzini | 45f1eec | 2022-05-27 16:35:46 +0100 | [diff] [blame] | 81 | ] |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 82 | |
Paolo Bonzini | 6e0dc9d | 2023-08-28 11:43:06 +0200 | [diff] [blame] | 83 | dtc = find_program('dtc', required: false) |
| 84 | foreach f : [ |
| 85 | 'bamboo.dts', |
| 86 | 'canyonlands.dts', |
| 87 | 'petalogix-s3adsp1800.dts', |
| 88 | 'petalogix-ml605.dts', |
| 89 | ] |
| 90 | out = fs.replace_suffix(f, '.dtb') |
| 91 | if dtc.found() |
| 92 | custom_target(f, |
| 93 | build_by_default: have_system, |
| 94 | input: files(f), |
| 95 | output: out, |
| 96 | install: get_option('install_blobs'), |
| 97 | install_dir: qemu_datadir, |
| 98 | command: [ dtc, '-I', 'dts', '-O', 'dtb', '-o', '@OUTPUT@', '@INPUT0@' ]) |
| 99 | else |
| 100 | blobs += out |
| 101 | endif |
| 102 | endforeach |
| 103 | |
Akihiko Odaki | 882084a | 2022-06-24 23:50:38 +0900 | [diff] [blame] | 104 | if get_option('install_blobs') |
| 105 | install_data(blobs, install_dir: qemu_datadir) |
| 106 | endif |
Marc-André Lureau | b17cf89 | 2020-08-26 17:06:17 +0400 | [diff] [blame] | 107 | |
Marc-André Lureau | bdcbea7 | 2019-07-15 21:22:31 +0400 | [diff] [blame] | 108 | subdir('descriptors') |
Marc-André Lureau | 2874246 | 2019-09-19 20:24:43 +0400 | [diff] [blame] | 109 | subdir('keymaps') |