From: Matt Jolly <kan...@gentoo.org>

This patchset slots Rust, adds `rust.eclass`, a helper eclass for slotted Rust,
and updates `cargo.eclass` to take advantage of the new slotted Rust, requiring 
a
revbump of dependent packages.

The intent is to immediately deprecate and shortly remove legacy Rust slots
and the virtual package which do nothing but inflict pain on developers and 
users.

There are several example ebuilds using the new eclass attached.

These patches, along with a mega-commit containing required revbumps for
every cargo.eclass ebuild (a vast majority of the rust ecosystem) are
also available for comment as a PR. The intent is to merge the PR when
all cargo eclass packages have been revbumped and tested and the eclass
has been reviewed.

https://github.com/gentoo/gentoo/pull/39218

I'm about 100 cargo eclass ebuilds deep at this point. Please do not
merge anything that uses the Cargo eclass (or any new Rust packages,
really) until this is (hopefully) merged in a few days.

Some example ebuilds have been included to demonstrate usage of 
the eclass for anything more complex than just `inherit rust`.

Please let me know if you have any concerns or feedback and I'll address
them promptly.

Cheers,

Matt

Matt Jolly (10):
  rust.eclass: Introduce new eclass for slotted Rust
  cargo: update for rust eclass
  dev-lang/rust: port to llvm-r1 and slot (-r100)
  profiles/arch/mips: use.mask system-llvm on rust-1.71.1-r100
  dev-lang/rust-bin: llvm-r1 and slot (-r100)
  dev-lang/rust{,-bin}: -r100: Drop the `profiler` USE.
  www-client/chromium: example chromium with slotted rust
  www-client/firefox: add 132.0-r1 - rust and llvm-r1 eclasses
  gnome-base/librsvg: rust eclass
  net-libs/rustls-ffi: rust slot

 dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild |  233 +++
 dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild |  243 +++
 dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild |  243 +++
 dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild |  245 +++
 dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild |  248 +++
 dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild |  252 +++
 dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild |  249 +++
 dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild |  250 +++
 dev-lang/rust-common/Manifest                 |    4 +
 .../rust-common/rust-common-1.81.0.ebuild     |   42 +
 .../rust-common/rust-common-1.82.0.ebuild     |   42 +
 dev-lang/rust/rust-1.71.1-r100.ebuild         |  726 +++++++++
 dev-lang/rust/rust-1.74.1-r100.ebuild         |  762 +++++++++
 dev-lang/rust/rust-1.75.0-r100.ebuild         |  765 +++++++++
 dev-lang/rust/rust-1.77.1-r100.ebuild         |  764 +++++++++
 dev-lang/rust/rust-1.79.0-r100.ebuild         |  767 +++++++++
 dev-lang/rust/rust-1.80.1-r100.ebuild         |  765 +++++++++
 dev-lang/rust/rust-1.81.0-r100.ebuild         |  766 +++++++++
 dev-lang/rust/rust-1.82.0-r100.ebuild         |  773 +++++++++
 eclass/cargo.eclass                           |   46 +-
 eclass/rust.eclass                            |  480 ++++++
 gnome-base/librsvg/librsvg-2.58.2-r1.ebuild   |  421 +++++
 .../rustls-ffi/rustls-ffi-0.13.0-r1.ebuild    |  107 ++
 profiles/arch/mips/package.use.mask           |    4 +
 .../chromium/chromium-130.0.6723.91-r1.ebuild | 1387 +++++++++++++++++
 www-client/firefox/firefox-132.0-r1.ebuild    | 1341 ++++++++++++++++
 26 files changed, 11912 insertions(+), 13 deletions(-)
 create mode 100644 dev-lang/rust-bin/rust-bin-1.71.1-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.74.1-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.75.0-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.77.1-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.79.0-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.80.1-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.81.0-r100.ebuild
 create mode 100644 dev-lang/rust-bin/rust-bin-1.82.0-r100.ebuild
 create mode 100644 dev-lang/rust-common/Manifest
 create mode 100644 dev-lang/rust-common/rust-common-1.81.0.ebuild
 create mode 100644 dev-lang/rust-common/rust-common-1.82.0.ebuild
 create mode 100644 dev-lang/rust/rust-1.71.1-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.74.1-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.75.0-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.77.1-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.79.0-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.80.1-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.81.0-r100.ebuild
 create mode 100644 dev-lang/rust/rust-1.82.0-r100.ebuild
 create mode 100644 eclass/rust.eclass
 create mode 100644 gnome-base/librsvg/librsvg-2.58.2-r1.ebuild
 create mode 100644 net-libs/rustls-ffi/rustls-ffi-0.13.0-r1.ebuild
 create mode 100644 www-client/chromium/chromium-130.0.6723.91-r1.ebuild
 create mode 100644 www-client/firefox/firefox-132.0-r1.ebuild

-- 
2.47.0


Reply via email to