passt/test/find-arm64-firmware.sh
David Gibson b44e16ed6c tests: Search multiple places for aarch64 EDK2 bios image
Apparently qemu's ARM virt machine needs to be explicitly given a firmware
image, rather than just supplying a sane default.  Unfortunately the EDK2
firmware image we need isn't in the same place on all host distros.

Currently the test scripts hardcode the Debian location, meaning it will
break on hosts that have it somewhere else.  This patch searches multiple
locations for the firmware, and creates a local link during the asset build
phase, which the tests can then use.

For now it only searches the locations used by Debian and Fedora, but
that's a small improvement in robustness already, and can be later improved
further if we need to.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2022-07-14 01:32:42 +02:00

13 lines
232 B
Bash
Executable file

#! /bin/sh
LOCATIONS="/usr/share/qemu-efi-aarch64 /usr/share/edk2/aarch64"
for l in $LOCATIONS; do
if [ -f "$l/QEMU_EFI.fd" ]; then
ln -s "$l/QEMU_EFI.fd" "$1"
exit 0
fi
done
echo "Couldn't find QEMU_EFI.fd" >&2
exit 1