Meson 1.7.0 and 1.8.0 include improved support for Rust, namely: * support for "objects" in Rust executables * support for doctest targets * invoking clippy and rustdoc
Use it to remove BQL-related hacks, fix --enable-modules --enable-rust and also simplify the Meson logic for building the qemu-api crate (which may help splitting the crate, too). Note that this does *not* yet require 1.8.1 for all of QEMU; the requirement is only there if Rust is enabled. Paolo Supersedes: <20250405100603.253421-1-pbonz...@redhat.com> Paolo Bonzini (6): meson: update to version 1.8.1 rust: use "objects" for Rust executables as well build, dockerfiles: add support for detecting rustdoc rust: add qemu-api doctests to "meson test" rust: cell: remove support for running doctests with "cargo test --doc" rust: use native Meson support for clippy and rustdoc docs/devel/rust.rst | 12 ++++--- configure | 16 +++++++++ meson.build | 4 ++- .gitlab-ci.d/buildtest-template.yml | 3 +- .gitlab-ci.d/buildtest.yml | 11 ++----- rust/clippy.toml => clippy.toml | 0 python/scripts/vendor.py | 4 +-- python/wheels/meson-1.5.0-py3-none-any.whl | Bin 959846 -> 0 bytes python/wheels/meson-1.8.1-py3-none-any.whl | Bin 0 -> 1013001 bytes pythondeps.toml | 2 +- rust/Cargo.toml | 1 - rust/meson.build | 14 ++------ rust/qemu-api/meson.build | 31 +++++++----------- rust/qemu-api/src/cell.rs | 22 +++++-------- scripts/rust/rustc_args.py | 5 +-- .../dockerfiles/fedora-rust-nightly.docker | 2 ++ tests/docker/dockerfiles/ubuntu2204.docker | 1 + tests/lcitool/mappings.yml | 6 +++- tests/lcitool/refresh | 3 ++ 19 files changed, 69 insertions(+), 68 deletions(-) rename rust/clippy.toml => clippy.toml (100%) delete mode 100644 python/wheels/meson-1.5.0-py3-none-any.whl create mode 100644 python/wheels/meson-1.8.1-py3-none-any.whl -- 2.49.0