[PATCH 0/2] rust: switch from bilge to bitfield-struct

Paolo Bonzini <[email protected]>
Newsgroups org.nongnu.qemu-rust,org.nongnu.qemu-devel
Message-ID <[email protected]>
The bilge crate is heavily reliant on traits and, because trait functions
are never const, it does not work well with const; also important is
that bilge's support for the zerocopy crate is tied to an older version
and has never been updated.

The bitfield-struct crate, instead, is built from the ground up to
support const, and has much simpler code with fewer dependencies.
Its use is pretty much the same: device code does not change at
all, only register declarations do.  So, switch to it before it's
too late.

Paolo

Based-on: <[email protected]>

Paolo Bonzini (2):
  rust: pl011: switch from bilge to bitfield-struct
  rust: remove bilge crate

 Cargo.lock                                    |  71 +-----------
 Cargo.toml                                    |   1 +
 rust/hw/char/pl011/Cargo.toml                 |   3 +-
 rust/hw/char/pl011/src/registers.rs           | 108 +++++++++---------
 rust/migration/src/vmstate.rs                 |  45 +-------
 scripts/archive-source.sh                     |   7 +-
 scripts/make-release                          |   4 +-
 subprojects/.gitignore                        |   8 +-
 subprojects/arbitrary-int-1-rs.wrap           |   9 --
 subprojects/bilge-0.2-rs.wrap                 |   9 --
 subprojects/bilge-impl-0.2-rs.wrap            |   9 --
 subprojects/bitfield-struct-0.13-rs.wrap      |   6 +
 subprojects/either-1-rs.wrap                  |   9 --
 subprojects/itertools-0.11-rs.wrap            |   9 --
 .../proc-macro-error-1-rs/meson/meson.build   |   3 -
 subprojects/proc-macro-error-1-rs.wrap        |  10 --
 subprojects/proc-macro-error-attr-1-rs.wrap   |   9 --
 17 files changed, 71 insertions(+), 249 deletions(-)
 delete mode 100644 subprojects/arbitrary-int-1-rs.wrap
 delete mode 100644 subprojects/bilge-0.2-rs.wrap
 delete mode 100644 subprojects/bilge-impl-0.2-rs.wrap
 create mode 100644 subprojects/bitfield-struct-0.13-rs.wrap
 delete mode 100644 subprojects/either-1-rs.wrap
 delete mode 100644 subprojects/itertools-0.11-rs.wrap
 delete mode 100644 subprojects/packagefiles/proc-macro-error-1-rs/meson/meson.build
 delete mode 100644 subprojects/proc-macro-error-1-rs.wrap
 delete mode 100644 subprojects/proc-macro-error-attr-1-rs.wrap

-- 
2.55.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.