mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-24 20:48:55 +00:00
52b8e42869
Ensure that every Cargo.toml dependency on a third-party crates.io crate specifies at least a major version, or a minor version for 0.x crates, to ensure that if a new major version is published, it cannot cause API breaks. The versions are selected to match the ones already in Cargo.lock, so this should have no functional change, but it will help prevent new "*" versions from being introduced via copy-and-paste. For rationale, see the Cargo FAQ: <https://doc.rust-lang.org/cargo/faq.html#can-libraries-use--as-a-version-for-their-dependencies> `minijail`, `audio_streams`, and `cras` are left as "*" for now, since they have unusual situations (imported from a submodule and/or replaced at build time with ebuild magic). BUG=None TEST=tools/dev_container tools/presubmit TEST=verify Cargo.lock is unchanged Change-Id: Ifa18199f812f01d2d10bfb4146b3353c1a76527c Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/5555656 Reviewed-by: Frederick Mayle <fmayle@google.com> Commit-Queue: Daniel Verkamp <dverkamp@chromium.org> |
||
---|---|---|
.. | ||
src | ||
build.rs | ||
Cargo.toml | ||
README.md |
Perfetto Rust wrapper
The following instructions are based on tools/impl/bindgen-common.sh
When the Perfetto C API is updated, in order to regenerate the bindings:
- Download the bindgen cmdline tool.
- Run the bindgen command. If you are in crosvm:
$ bindgen third_party/perfetto/include/perfetto/tracing/ctrace.h --disable-header-comment --no-layout-tests --no-doc-comments --with-derive-default --size_t-is-usize -o ./perfetto/src/bindings.rs
- Add the following to the top of the new bindings.rs file:
#![allow(clippy::missing_safety_doc)] #![allow(clippy::upper_case_acronyms)] #![allow(non_upper_case_globals)] #![allow(non_camel_case_types)] #![allow(non_snake_case)] #![allow(dead_code)]
- Finally, add a copyright header to the bindings.