As best I can tell, on aarch64 and riscv64gc, the UEFI firmware is *required* for Redox to run. If not found, qemu will still run, but will get stuck.
It's better to error out explicitly and early.
This does not appear to be the case on x86_64 where skipping the firmware load still appears to boot Redox successfully, hence I didn't add the error there.
The /run/libvirt/nix-ovmf/* paths cannot be relied upon to exist. As far as I can tell, this is only available on NixOS with libvirtd enabled.
On the other hand, on any Nix platform, UEFI firmware binaries can be found relative to the the qemu binary (including when using nix shell).
Provide ACLOCAL_PATH explicitly to avoid the error:
+ autoreconf2.69 -fvi -I/mnt/redox/recipes/dev/gcc13/source/config -I/usr/share/aclocal
+ for f in $(find . -name configure.ac -o -name configure.in -type f | sort)
++ dirname ./zlib/contrib/minizip/configure.ac
+ echo '* autotools regen in '\''./zlib/contrib/minizip'\''...'
* autotools regen in './zlib/contrib/minizip'...
++ dirname ./zlib/contrib/minizip/configure.ac
+ cd ./zlib/contrib/minizip
+ autoreconf2.69 -fvi
-I/mnt/redox/recipes/dev/gcc13/source/config
-I/usr/share/aclocal
Makefile.am:1: error: Libtool library used but 'LIBTOOL' is undefined
Makefile.am:1: The usual way to define 'LIBTOOL' is to add 'LT_INIT'
Makefile.am:1: to 'configure.ac' and run 'aclocal' and 'autoconf' again.
Makefile.am:1:
Makefile.am:1: If 'LT_INIT' is in 'configure.ac', make sure
Makefile.am:1: its definition is in aclocal's search path.
Makefile.am:1:
Makefile.am:1: If you install Automake in its own prefix,
Makefile.am:1: you'll need to arrange for the Libtool m4 files
Makefile.am:1: to be found by aclocal. For info on this, see:
Makefile.am:1: https://gnu.org/s/automake/manual/automake.html#Libtool-library-used-but-LIBTOOL-is-undefined
autoreconf: automake failed with exit status: 1
cook host:gcc13 - failed
Failed to run [cd "recipes/dev/gcc13/source" && "bash" "-ex"]: exited with status exit status: 1
make: *** [mk/prefix.mk:250: prefix/x86_64-unknown-redox/gcc-freestanding-install] Error 1
missing LT_INIT