about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-06-16 01:07:45 +0000
committerbors <bors@rust-lang.org>2024-06-16 01:07:45 +0000
commitbc3618f31ea3866e6abea6995ec3979d12ffc65d (patch)
treeea63b025dc3202369055fa5c012a33e96efee777
parentd5b34a28cfdb46b5f9ea35727151802ef7881c4e (diff)
parentb4df72aae2a7f9ac13d4497e03f0681b6fec2010 (diff)
downloadrust-bc3618f31ea3866e6abea6995ec3979d12ffc65d.tar.gz
rust-bc3618f31ea3866e6abea6995ec3979d12ffc65d.zip
Auto merge of #126479 - Kobzol:disable-llvm-linker-by-default, r=onur-ozkan
Disable `llvm-bitcode-linker` in the default bootstrap profiles

I don't think that we really need to enable `llvm-bitcode-linker` in the default bootstrap profiles, since it seems that it is only useful for running `nvptx` tests. It should be enabled on CI, which it is, and that should be enough. People can enable it easily locally, if they want.

The linker causes occasionally some rebuild issues (https://github.com/rust-lang/rust/issues/122491, https://github.com/rust-lang/rust/issues/126464), but more importantly it is just needless work to build it locally.

I kept it enabled for `dist`, because it is distributed as a `rustup` component (for some reason it's not included in `extended`? not sure).

Fixes: https://github.com/rust-lang/rust/issues/126464
-rw-r--r--config.example.toml4
-rw-r--r--src/bootstrap/defaults/config.compiler.toml2
-rw-r--r--src/bootstrap/defaults/config.dist.toml2
-rw-r--r--src/bootstrap/defaults/config.library.toml2
-rw-r--r--src/bootstrap/defaults/config.tools.toml2
5 files changed, 3 insertions, 9 deletions
diff --git a/config.example.toml b/config.example.toml
index fb45493ec4a..76541ee4e9e 100644
--- a/config.example.toml
+++ b/config.example.toml
@@ -657,7 +657,7 @@
 # whether to set it as rustc's default linker on `x86_64-unknown-linux-gnu`. This will also only be
 # when *not* building an external LLVM (so only when using `download-ci-llvm` or building LLVM from
 # the in-tree source): setting `llvm-config` in the `[target.x86_64-unknown-linux-gnu]` section will
-# make this default to false. 
+# make this default to false.
 #lld = false in all cases, except on `x86_64-unknown-linux-gnu` as described above, where it is true
 
 # Indicates whether LLD will be used to link Rust crates during bootstrap on
@@ -676,7 +676,7 @@
 #llvm-tools = true
 
 # Indicates whether the `self-contained` llvm-bitcode-linker, will be made available
-# in the sysroot
+# in the sysroot. It is required for running nvptx tests.
 #llvm-bitcode-linker = false
 
 # Whether to deny warnings in crates
diff --git a/src/bootstrap/defaults/config.compiler.toml b/src/bootstrap/defaults/config.compiler.toml
index fd2da246990..789586b58f7 100644
--- a/src/bootstrap/defaults/config.compiler.toml
+++ b/src/bootstrap/defaults/config.compiler.toml
@@ -19,8 +19,6 @@ lto = "off"
 # Forces frame pointers to be used with `-Cforce-frame-pointers`.
 # This can be helpful for profiling at a small performance cost.
 frame-pointers = true
-# Build the llvm-bitcode-linker as it is required for running nvptx tests
-llvm-bitcode-linker = true
 
 [llvm]
 # Having this set to true disrupts compiler development workflows for people who use `llvm.download-ci-llvm = true`
diff --git a/src/bootstrap/defaults/config.dist.toml b/src/bootstrap/defaults/config.dist.toml
index f3c6ffc9bd5..d06930f2b9d 100644
--- a/src/bootstrap/defaults/config.dist.toml
+++ b/src/bootstrap/defaults/config.dist.toml
@@ -16,7 +16,7 @@ download-ci-llvm = false
 # Make sure they don't get set when installing from source.
 channel = "nightly"
 download-rustc = false
-# Build the llvm-bitcode-linker as it is required for running nvptx tests
+# Build the llvm-bitcode-linker
 llvm-bitcode-linker = true
 
 [dist]
diff --git a/src/bootstrap/defaults/config.library.toml b/src/bootstrap/defaults/config.library.toml
index 4a1a49b7275..087544397f5 100644
--- a/src/bootstrap/defaults/config.library.toml
+++ b/src/bootstrap/defaults/config.library.toml
@@ -10,8 +10,6 @@ bench-stage = 0
 incremental = true
 # Make the compiler and standard library faster to build, at the expense of a ~20% runtime slowdown.
 lto = "off"
-# Build the llvm-bitcode-linker as it is required for running nvptx tests
-llvm-bitcode-linker = true
 
 [llvm]
 # Will download LLVM from CI if available on your platform.
diff --git a/src/bootstrap/defaults/config.tools.toml b/src/bootstrap/defaults/config.tools.toml
index 94c8b724cbf..6e6c3660027 100644
--- a/src/bootstrap/defaults/config.tools.toml
+++ b/src/bootstrap/defaults/config.tools.toml
@@ -12,8 +12,6 @@ incremental = true
 # Using these defaults will download the stage2 compiler (see `download-rustc`
 # setting) and the stage2 toolchain should therefore be used for these defaults.
 download-rustc = "if-unchanged"
-# Build the llvm-bitcode-linker as it is required for running nvptx tests
-llvm-bitcode-linker = true
 
 [build]
 # Document with the in-tree rustdoc by default, since `download-rustc` makes it quick to compile.