Commit Graph

43 Commits

Author SHA1 Message Date
Martin Nordholts 5e4e8da485 bootstrap.example.toml: Hint how to allow build.warnings
This commit turns "Actual" into "Expected" for the following problem:

Steps:
1. Do some quick and experimental local code changes in the compiler code.
2. Run `./x build`.
3. Observe `error: warnings are denied by `build.warnings` configuration`.
4. Decide to not care and want to allow warnings.
5. Search for `build.warnings` in **bootstrap.example.toml**

Actual:
No hits. You get frustrated because didn't learn how to allow warnings.

Expected:
You get a hit and can easily see how to allow warnings.
2026-03-26 19:49:38 +01:00
Jonathan Brouwer ed012ea19e Rollup merge of #152870 - mati865:mingw-disable-packed-debuginfo-in-bootstrap, r=Mark-Simulacrum
Do not enable split debuginfo for windows-gnu

Because rustc doesn't handle split debuginfo for these targets, enabling that option causes them to be missing some of the debuginfo.
2026-03-19 13:42:23 +01:00
Brent Kerby 7df748542c Add build.rustdoc option to bootstrap config 2026-02-20 10:11:07 -07:00
Mateusz Mikuła 4da823ba4b Do not enable split debuginfo for windows-gnu
Because rustc doesn't handle split debuginfo for these targets,
enabling that option causes them to be missing some of the debuginfo.
2026-02-19 22:25:31 +01:00
Manuel Drehwald f3b16d833f Change how we build offload as a single Step 2025-12-22 23:50:11 +01:00
Antoni Boucher 95c38b2bba Add libgccjit-libs-dir config 2025-12-15 08:35:17 -05:00
anishamahuli 4af0b97075 Warn about build.description compatibility issues 2025-11-26 11:06:38 -05:00
Karol Zwolak 6e63c39467 feat: add rust.rustflags and per target rustflags options to bootstrap.toml
This makes easy to persistently pass any flag to the compiler when
building rustc.
For example you can use a different linker by putting the following in
`bootstrap.toml`:
```toml
[rust]
rustflags = ["-Clinker=clang", "-Clink-arg=--ld-path=wild"]
```
2025-11-21 16:25:36 +01:00
Jeremy Fitzhardinge 972498c728 Build with -Zannotate-moves by default
Build rustc and tools with -Zannotate-moves by default. Adds toml config
options to set the annotation size limit.

This has no measurable effect on output binary size or compile time.
2025-11-17 11:01:21 -08:00
binarycat 8acea59362 Use yarn instead of npm in tidy 2025-11-17 10:58:13 +02:00
yukang 93a5c824e1 Add note for option llvm.download-ci-llvm 2025-11-13 20:24:47 +08:00
Zalathar dca8be933e Run the lldb_batchmode.py script in LLDB's embedded Python 2025-11-08 21:08:02 +11:00
Jakub Beránek 902cec2bc6 Allow manually opting in and out of Linux linker overrides 2025-10-06 10:30:46 +02:00
Jakub Beránek 3186902bfc Remove mention of compiletest-use-stage0-libtest from the bootstrap example config 2025-10-01 09:05:30 +02:00
Jakub Beránek 852aa20c90 Rename rust.use-lld to rust.bootstrap-override-lld 2025-09-26 20:21:21 +02:00
Erick Tryzelaar 7f55f5761c Allow windows resource compiler to be overridden
It is now required to provide a resource compiler on windows when
compiling rust. This allows toolchain builders to explicitly provide a
path to an alternative, such as llvm-rc, instead of the one that's
provided by the Windows SDK.
2025-09-18 16:50:02 +00:00
Haidong Zhang 929c9335dd Add parallel-frontend-threads to bootstrap.toml and enable multi-threaded parallel compilation 2025-09-16 17:53:29 +08:00
beepster4096 768dcbecdd add rust.break-on-ice to bootstrap.toml 2025-09-01 20:35:36 -07:00
Paul Murphy 148a07cbd0 Refactor *.optimized-compiler-builtins bootstrap options
Create a dedicated enum to abstract the different ways compiler-builtins
can be configured.

This also relaxes build.optimized-compiler-builtins to accept the path
of a library to match the behavior of <target>.optimized-compiler-builtins
override.
2025-08-25 16:08:36 -05:00
Paul Murphy 64cbe52849 Allow linking a prebuilt optimized compiler-rt builtins library
Extend the <target>.optimized-compiler-builtins bootstrap option to accept a
path to a prebuilt compiler-rt builtins library, and update compiler-builtins
to enable optimized builtins without building compiler-rt builtins.
2025-08-25 16:08:35 -05:00
Jakub Beránek 501837fa88 Rollup merge of #145426 - AMS21:fix_typos_bootstrap_example, r=lqd
Fix typos in bootstrap.example.toml

Founds these small typos while looking around.

`equivelent` -> `equivalent`
`recommeded` -> `recommended`

cheers :)
2025-08-15 16:04:00 +02:00
AMS21 cda2114c65 Fix typos in bootstrap.example.toml
equivelent -> equivalent
recommeded -> recommended
2025-08-15 09:57:24 +02:00
Jakub Beránek f2c2d3ebc3 Clarify that build.full-bootstrap is only used to affect uplifting, not stage selection 2025-08-15 08:23:57 +02:00
Jakub Beránek ca6e367e19 Clarify the behavior of rust.codegen-backends 2025-08-08 11:35:10 +02:00
Jieyou Xu 0cf6eb5f75 Introduce proper build.compiletest-allow-stage0 config option
In favor of the adhoc `COMPILETEST_FORCE_STAGE0` env var.
2025-07-30 19:54:16 +08:00
binarycat 4096582662 bootstrap: enable tidy auto extra checks on tools profile 2025-07-28 13:12:51 -05:00
Stypox 940aa20408 Add comment about features not part of "extra-features" 2025-07-14 09:37:25 +02:00
binarycat 90b2d24692 bootstrap: add build.tidy-extra-checks option 2025-07-02 10:53:55 -05:00
binarycat bedc0eaa9d bootstrap.example.toml: add note explaining toml 2025-06-20 11:35:53 -05:00
binarycat 01fbeb8065 update configure.py to handle new bootstrap.example.toml 2025-06-20 11:35:39 -05:00
binarycat 7eaf7386b9 bootstrap.example.toml: use less contextual format
prefixing each key with its section means you don't
need to scroll up 4 pages to see which section
a particular key is from.

target specific options were kept in old format
since the exact section name depends on the target,
so those options must now be moved to the bottom of
the file.
2025-06-17 12:26:58 -05:00
Stypox 17f69bfda0 Rename tool-config to tool and add docs 2025-06-12 13:58:38 +02:00
Stypox 8dac423f82 Add bootstrap option to compile a tool with features 2025-06-11 21:50:21 +02:00
Pietro Albini 4fe94badef add rust.debug-assertions-tools option 2025-04-29 11:05:06 +02:00
Chris Denton 009a84fbe1 Rollup merge of #138395 - Kobzol:ci-download-gcc, r=Mark-Simulacrum
Download GCC from CI on test builders

This should reduce the duration of the `x86_64-gnu-llvm-18` job, which runs on PR CI, which is currently the only one that builds GCC (outside of the x64 dist builder).

Since we handle the GCC download in the GCC step, and not eagerly in config, we can set this flag globally across all test builders, as it won't do anything unless they actually try to build GCC.

Opening as a draft to test if it works on CI, because I still need to implement logic to avoid the download if there are any local modifications to GCC (essentially the "if-unchanged" mode, although I want to try something a bit different).

r? ```@ghost```
2025-04-28 01:58:47 +00:00
Kivooeo 43d8d89b9e clarified bootstrap optimization agrs 2025-04-26 13:48:22 +05:00
Jakub Beránek 3d29e842a7 Fix download-ci-gcc key in bootstrap.example.toml 2025-04-23 11:04:39 +02:00
onur-ozkan 3f70f197f2 apply nit notes
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:33:11 +03:00
onur-ozkan 78cb4538ee document include in bootstrap.example.toml
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:33:06 +03:00
onur-ozkan 86a7ee603c create new option build.compiletest-use-stage0-libtest
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05 14:22:08 +03:00
bit-aloo b24083bccc Add new change-id option in bootstrap.example.toml and update the change-id description references 2025-03-28 08:40:24 +05:30
Chiichen fa0c951a27 doc: rename reference #create-a-configtoml to #create-a-bootstraptoml 2025-03-23 12:41:23 +08:00
bit-aloo 1954494ec9 change config.toml to bootstrap.toml for bootstrap module 2025-03-17 12:56:41 +05:30