qemu/rust/qemu-api
Paolo Bonzini 2f9eec8f72 rust: build: establish a baseline of lints across all crates
Many lints that default to allow can be helpful in detecting bugs or
keeping the code style homogeneous.  Add them liberally, though perhaps
not as liberally as in hw/char/pl011/src/lib.rs.  In particular, enabling
entire groups can be problematic because of bitrot when new links are
added in the future.

For Clippy, this is actually a feature that is only present in Cargo
1.74.0 but, since we are not using Cargo to *build* QEMU, only developers
will need a new-enough cargo and only to run tools such as clippy.
The requirement does not apply to distros that are building QEMU.

Reviewed-by: Junjie Mao <junjie.mao@hotmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2024-12-10 18:44:06 +01:00
..
src rust: build: establish a baseline of lints across all crates 2024-12-10 18:44:06 +01:00
tests rust: fix a couple style issues from clippy 2024-12-10 18:44:06 +01:00
.gitignore rust: allow using build-root bindings.rs from cargo 2024-12-10 18:44:06 +01:00
build.rs rust: allow using build-root bindings.rs from cargo 2024-12-10 18:44:06 +01:00
Cargo.toml rust: cargo: store desired warning levels in workspace Cargo.toml 2024-12-10 18:44:06 +01:00
meson.build rust: cargo: store desired warning levels in workspace Cargo.toml 2024-12-10 18:44:06 +01:00
README.md rust: allow using build-root bindings.rs from cargo 2024-12-10 18:44:06 +01:00

QEMU bindings and API wrappers

This library exports helper Rust types, Rust macros and C FFI bindings for internal QEMU APIs.

The C bindings can be generated with bindgen, using this build target:

$ ninja bindings.inc.rs

Generate Rust documentation

To generate docs for this crate, including private items:

pyvenv/bin/meson devenv -w ../rust cargo doc --no-deps --document-private-items