aboutsummaryrefslogtreecommitdiff
path: root/docs/about
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2024-10-15 15:00:41 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2024-11-06 17:11:24 +0100
commitc2988dfbb0ecd30496625f8fb1afc52a74304259 (patch)
tree52df87b61c6e14d53f32019a8ae82b8b4306c413 /docs/about
parentce4a144cf817d401592918faa86f4903d3c78c3e (diff)
rust: allow older version of bindgen
Cope with the old version that is provided in Debian 12. --size_t-is-usize is needed on bindgen <0.61.0, and it was removed in bindgen 0.65.0, so check for it in meson.build. --merge-extern-blocks was added in 0.61.0. --formatter rustfmt was added in 0.65.0 and is the default, so remove it. Apart from Debian 12 and Ubuntu 22.04, all other supported distros have version 0.66.x of bindgen or newer (or do not have bindgen at all). Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'docs/about')
-rw-r--r--docs/about/build-platforms.rst12
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst
index b779eb5493..6102f00aec 100644
--- a/docs/about/build-platforms.rst
+++ b/docs/about/build-platforms.rst
@@ -107,6 +107,18 @@ Python build dependencies
required, it may be necessary to fetch python modules from the Python
Package Index (PyPI) via ``pip``, in order to build QEMU.
+Rust build dependencies
+ QEMU is generally conservative in adding new Rust dependencies, and all
+ of them are included in the distributed tarballs. One exception is the
+ bindgen tool, which is too big to package and distribute. The minimum
+ supported version of bindgen is 0.60.x. For distributions that do not
+ include bindgen or have an older version, it is recommended to install
+ a newer version using ``cargo install bindgen-cli``.
+
+ Developers may want to use Cargo-based tools in the QEMU source tree;
+ this requires Cargo 1.74.0. Note that Cargo is not required in order
+ to build QEMU.
+
Optional build dependencies
Build components whose absence does not affect the ability to build
QEMU may not be available in distros, or may be too old for QEMU's