about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc
diff options
context:
space:
mode:
authorMiguel Ojeda <ojeda@kernel.org>2024-02-24 20:55:23 +0100
committerMiguel Ojeda <ojeda@kernel.org>2024-04-30 09:43:42 +0200
commit7e4955e5027f5cc333884690070e57cbb2618378 (patch)
treef8ef2ef7a7bd81e08dcdde490900d8e6f36791aa /compiler/rustc_codegen_gcc
parent57da90eedde5b6333a2fd3bba43e55ba8312daf8 (diff)
downloadrust-7e4955e5027f5cc333884690070e57cbb2618378.tar.gz
rust-7e4955e5027f5cc333884690070e57cbb2618378.zip
rustc: document the jobserver
Explicitly document that the jobserver may be used by `rustc` and show
the warning to increase the chances that this document is found when
searching for solutions online.

In particular, add a section about the interaction with build systems,
which is intended to contain recommendations on how to integrate `rustc`
with different built systems.

For GNU Make, recommend using the `+` indicator. In addition, add a
note about the issue with GNU Make 4.3 since it is important that users
realize they should do this even if they do not expect parallelism from
`rustc`.  Finally, show how to workaround the issue of `$(shell ...)`
calls in recursive Make (which e.g. was needed for the Linux kernel).

The GNU Make 4.4 case under `--jobserver-style=pipe` is not added since
it got fixed after Rust 1.76.0 already (i.e. `rustc` will not warn if
it finds the negative file descriptors).

For CMake, recommend using `JOB_SERVER_AWARE` and show a workaround using
`$(MAKE)` for earlier versions (when using the Makefile generator).

From: https://github.com/rust-lang/rust/issues/120515
Cc: @petrochenkov @belovdv @weihanglo @bjorn3
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Diffstat (limited to 'compiler/rustc_codegen_gcc')
0 files changed, 0 insertions, 0 deletions