See the dev-lang/rust commit message for most of the details. This works well enough to build packages like sys-apps/ripgrep. It doesn't yet build Firefox or pkgcraft (bugs filed upstream already).
The reason I'm sending this series is for the new USE_EXPAND called RUST_SUPPORTED_CODEGEN_BACKENDS. This is needed to: a) control what dev-lang/rust builds, and b) allow ebuilds to indicate if they don't work with a certain backend. All of this is for dev-lang/rust but with gcc on the back via libgccjit, it is not the same as gccrs (sys-devel/gcc[rust]) which is a fullblown Rust FE. This series is available as a PR at https://github.com/gentoo/gentoo/pull/44347. Bug: https://bugs.gentoo.org/965182 Sam James (3): dev-lang/rust: support rustc_codegen_gcc (alternative codegen backend) rust.eclass: add RUST_SUPPORTED_CODEGEN_BACKENDS toolchain.eclass: needs LLVM codegen backend for Rust for now dev-lang/rust/Manifest | 1 + .../files/rustc_codegen_gcc-avoid-oom.patch | 176 +++++++++++++ .../rust/files/rustc_codegen_gcc-dist.patch | 236 ++++++++++++++++++ ...degen_gcc-include-lib-path-bootstrap.patch | 108 ++++++++ dev-lang/rust/rust-1.91.0.ebuild | 119 +++++++-- dev-lang/rust/rust-9999.ebuild | 121 +++++++-- eclass/rust.eclass | 19 ++ eclass/toolchain.eclass | 2 + profiles/base/make.defaults | 2 +- profiles/base/package.use.force | 4 + profiles/base/package.use.mask | 5 + .../desc/rust_codegen_backends.desc | 7 +- profiles/desc/rust_sysroots.desc | 2 +- 13 files changed, 764 insertions(+), 38 deletions(-) create mode 100644 dev-lang/rust/files/rustc_codegen_gcc-avoid-oom.patch create mode 100644 dev-lang/rust/files/rustc_codegen_gcc-dist.patch create mode 100644 dev-lang/rust/files/rustc_codegen_gcc-include-lib-path-bootstrap.patch copy acct-group/clock/clock-0.ebuild => profiles/desc/rust_codegen_backends.desc (51%) -- 2.51.2
