Re: Hard Rust requirements from May onward
Hi Antoni,
On Sat, 2025-11-01 at 10:51 -0400, Antoni Boucher wrote:
> As the maintainer of rustc_codegen_gcc 
> (https://github.com/rust-lang/rustc_codegen_gcc), I hope the project is 
> going to be ready enough in time to help here. My current priority is to 
> fix what is needed to be able to build Rust compilers for these platforms.
First of all, thanks a lot for your work on this! I have been trying to help
you with this effort on and off a bit and some folks are also working on it,
so I'm sure we will eventually get there.
FWIW, the ultimatum that Julian set doesn't really exist. There is nothing
that stops us from using a non-rustified version of APT for the time being
until we managed to bootstrap rustc using your code generation backend or
by using gccrs.
So, I don't think it's that urgent. But I guess posting messages like this
gets more attention in the news as the articles on X/Twitter, Hackernews,
LWN and Phoronix show which have adopted the phrasing used by Julian without
any reflection.
But I'm not going to engage in this kind of rage bait. I have said what I
think of this kind of discussion style and might remind people of this the
next time a heated discussion is kicked off because of some politically
incorrect phrases buried in an obscure fortunes package are found.
> But it would help me to get this ready faster if some people would help 
> with issues that are outside the scope of rustc_codegen_gcc but are 
> still needed to make this work. For instance, if you look at this issue 
> for m68k (https://github.com/rust-lang/rustc_codegen_gcc/issues/744) and 
> this issue for DEC Alpha 
> (https://github.com/rust-lang/rustc_codegen_gcc/issues/742), I would 
> appreciate help for things like:
> 
>   * linux-raw-sys does not support m68k.
>   * The rustix crate does not support m68k.
I can help get this done. Also for the other architectures.
>   * The bootstrap script fails to compile native GCC for m68k.
Do you have a bug reference for this?
>   * Possibly some alignment fixes for m68k either on the Rust side or on 
> the distro side (which wanted to switch to an alignment of 4 for pointers).
I need to perform some more tests with 32-bit alignment before we can make the
switch in Debian. But it's definitely work-in-progress.
>   * Create an Alpha target file
I assume you're talking about this:
https://github.com/rust-lang/rust/tree/master/compiler/rustc_target/src/spec/targets
How do I actually determine the data layout for non-LLVM architectures?
>   * Add handling of the Alpha ABI to the Rust compiler
I assume you're talking about the calling convention?
https://github.com/rust-lang/rust/tree/master/compiler/rustc_target/src/callconv
I have added both for several targets and I can certainly do that for Alpha, HPPA
and SuperH. I just need to understand how to wire architectures up when they don't
have an LLVM backend.
>   * Add Alpha to the code inserting metadata into object files
Which code part is this? Are you talking about the object crate?
>   * Add Alpha as a recognized architecture to be used in 
> #[cfg(target_arch = "alpha")].
>   * Add Alpha support to libc.
I can do that as well.
> Some of them do not require any compiler experience since they touch 
> non-compiler projects and none of these require GCC development 
> experience. I hope some people join this effort in order to get there 
> faster. As for me, I'll first focus on having a m68k rust compiler.
OK, thanks!
> Thanks for your help.
You're welcome! Thanks a lot for creating rustc_codegen_gcc and continuing to drive
it forward. I hope we will eventually be able to bootstrap rustc on the four remaining
architectures.
Adrian
-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Reply to: