(address . guix-patches@gnu.org)
Here is a patch that updates QEMU to 5.2.0-rc4.
The big change here is that the build system has changed to use Meson
and Ninja "under the hood", although this release still uses
`./configure && make` in a superficial way.
With this patch, the qemu and qemu-minimal packages build and can boot
Guix VMs created with the `guix system` commands.
There are still two open tasks that require assistance:
1) The patch that makes Sphinx build an info manual will need to be
adapted to the meson build system. Ideally, this would be submitted
upstream.
2) The ./configure step is considered "stale" in the build phase and
thus gets run twice. You can add "--trace" to #:make-flags to trace the
Makefile and try to understand what's wrong (shown below). I'm no Make
expert but, AFAICT, there are some PHONY targets that depend on the
output of the configure step, config-host.mak, so it may be an upstream
bug. But I might be misunderstanding it. I asked on the QEMU IRC but
didn't get a useful answer.
------
starting phase `build'
GNUmakefile:10: update target 'all' due to: force
echo 'changing dir to build for make ""...'
changing dir to build for make ""...
make -C build -f Makefile
make[1]: Entering directory '/tmp/guix-build-qemu-minimal-5.2.0-rc4.drv-0/qemu-5.2.0-rc4/build'
Makefile:109: update target 'config-host.mak' due to: /tmp/guix-build-qemu-minimal-5.2.0-rc4.drv-0/qemu-5.2.0-rc4/pc-bios
echo config-host.mak is out-of-date, running configure
config-host.mak is out-of-date, running configure
if test -f meson-private/coredata.dat; then \
./config.status --skip-meson; \
else \
./config.status && touch build.ninja.stamp; \
fi
------
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAl/H27sACgkQJkb6MLrK
fwiouQ/7BNBpaZZWUVSJqsfmcSfc7kw0EqNo+7GeeJhDMKK8yFh5tXh3GgatOoby
X9MHuiO0gMt+bKZSEbeSbmkd7jnzmDvmtjXvSl1zvEuY9vLEtwqPSAt/57bAJ8oR
16ofPYDo5l/WuluJ35DUyPoXkbGQWIHRF49YvauIZFma+893NXU1SdZ6mmFVs133
YxJlWpdmwYrfCM0+CkFDGg6ylV1gWi9QZsH+WOz75xNICVVhHWkpOmgvU1xNXxaP
TD6O/uwq7Gu+rvzfEhEo6oipMx9luuse0vkwzR5mWA/PJ7IZI/0QbnEQi4GeHMtP
bLvWAYt91CoueG3L9D8PaQx/Q7ETzymgetVZmK4ekcPXeooMxpTdIp5OfXG+ffgZ
DiPVCD7G0gMpxSTXL/H7htoIzMIJ1Mi0zdQb/2dunNMcwMf9Og5xLzVb/FCM07qB
RPoG3GRWQCA4njnXHhqiJbDGSXsa2/FxT0M5b+TFBo7hEbL78L4bhgWXDYcQ4kex
NFnqZSXMoiMwla5xAdo5ShzKy86xVTFLnlyCh2ozhS2PjWqCl9DFkyvsjUJGt5ak
8/RfuySIDdXnhkvUG2qwJg+wy32T9zSQ+T/58vusM1r8rC0fghXAMuWQcwqwFq7N
cR0nGchDr3XAiFJhebwZxyoXTkAI0J32Y2MSnQopT5JFUoauU8Y=
=X3Xo
-----END PGP SIGNATURE-----