about summary refs log tree commit diff
path: root/compiler/rustc_public/src
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2025-08-13 18:43:02 +0200
committerGitHub <noreply@github.com>2025-08-13 18:43:02 +0200
commit6f0746da4effaceae569ae69d4ea05758f49dff7 (patch)
treee2512815e298e22acc57ce79ac677c8947c99b92 /compiler/rustc_public/src
parenta6146fddcf87653df30cb3b8a99ce2784b4de055 (diff)
parentf40a784e12226f2eecd0e2ad605e43950a9a045f (diff)
downloadrust-6f0746da4effaceae569ae69d4ea05758f49dff7.tar.gz
rust-6f0746da4effaceae569ae69d4ea05758f49dff7.zip
Rollup merge of #145341 - Kobzol:codegen-backend-gcc, r=jieyouxu
Install libgccjit into the compiler's sysroot when cg_gcc is enabled

This PR installs the `libgccjit.so` library (which is essentially GCC) into the rustc sysroot (`stageN/lib` on Linux) when the GCC codegen backend is enabled. This allows using the GCC codegen backend "out of the box" with the resulting rustc. It would be nice to get rid of the `libgccjit.so.0` alias (https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Forcing.20unversioned.20dylib.20dependencies.20on.20Linux/with/534180740), but it's not blocking for this change.

You can try running `x build std --set 'rust.codegen-backends=["llvm", "gcc"]'` and then compiling a hello world with `rustc +stage1 -Zcodegen-backend=gcc main.rs`.

It is now also possible to build stage2 rustc when the GCC is configured to be the default codegen backend, without any further `LD_LIBRARY_PATH` hacks: `./x build compiler --stage 2 --set 'rust.codegen-backends=["gcc"]'`.

After this change, it should be pretty simple to add a dist/rustup step for actually shipping cg_gcc to end users.

CC ```@GuillaumeGomez```

r? ```@jieyouxu```
Diffstat (limited to 'compiler/rustc_public/src')
0 files changed, 0 insertions, 0 deletions