diff options
| author | onur-ozkan <work@onurozkan.dev> | 2023-12-28 17:27:59 +0300 |
|---|---|---|
| committer | onur-ozkan <work@onurozkan.dev> | 2023-12-28 17:27:59 +0300 |
| commit | 12190e5dd2f97a17d597eee23fb3f03b4b052d89 (patch) | |
| tree | cddeebe6a62b859bfd721b48c098dbebefa9a1a1 | |
| parent | a815c3b69c527c268015f017a88d88331f150a02 (diff) | |
| download | rust-12190e5dd2f97a17d597eee23fb3f03b4b052d89.tar.gz rust-12190e5dd2f97a17d597eee23fb3f03b4b052d89.zip | |
utilize the unused `llvm-tools` option
This field was not functioning as described in its comment in `config.example.toml`. Also, updated the default value to `true` to keep the bootstrapping behavior as it was before. Signed-off-by: onur-ozkan <work@onurozkan.dev>
| -rw-r--r-- | config.example.toml | 2 | ||||
| -rw-r--r-- | src/bootstrap/src/core/build_steps/compile.rs | 2 | ||||
| -rw-r--r-- | src/bootstrap/src/core/build_steps/dist.rs | 14 | ||||
| -rw-r--r-- | src/bootstrap/src/core/config/config.rs | 2 |
4 files changed, 11 insertions, 9 deletions
diff --git a/config.example.toml b/config.example.toml index dacc61a3e4c..f1ea6bac3ca 100644 --- a/config.example.toml +++ b/config.example.toml @@ -661,7 +661,7 @@ # Indicates whether some LLVM tools, like llvm-objdump, will be made available in the # sysroot. -#llvm-tools = false +#llvm-tools = true # Whether to deny warnings in crates #deny-warnings = true diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs index df4d1a43dab..dbb64583d56 100644 --- a/src/bootstrap/src/core/build_steps/compile.rs +++ b/src/bootstrap/src/core/build_steps/compile.rs @@ -1738,7 +1738,7 @@ impl Step for Assemble { if builder.config.rust_codegen_backends.contains(&INTERNER.intern_str("llvm")) { let llvm::LlvmResult { llvm_config, .. } = builder.ensure(llvm::Llvm { target: target_compiler.host }); - if !builder.config.dry_run() { + if !builder.config.dry_run() && builder.config.llvm_tools_enabled { let llvm_bin_dir = output(Command::new(llvm_config).arg("--bindir")); let llvm_bin_dir = Path::new(llvm_bin_dir.trim()); diff --git a/src/bootstrap/src/core/build_steps/dist.rs b/src/bootstrap/src/core/build_steps/dist.rs index 98e267713da..dd89f9ee4e2 100644 --- a/src/bootstrap/src/core/build_steps/dist.rs +++ b/src/bootstrap/src/core/build_steps/dist.rs @@ -2157,12 +2157,14 @@ impl Step for LlvmTools { tarball.set_overlay(OverlayKind::LLVM); tarball.is_preview(true); - // Prepare the image directory - let src_bindir = builder.llvm_out(target).join("bin"); - let dst_bindir = format!("lib/rustlib/{}/bin", target.triple); - for tool in LLVM_TOOLS { - let exe = src_bindir.join(exe(tool, target)); - tarball.add_file(&exe, &dst_bindir, 0o755); + if builder.config.llvm_tools_enabled { + // Prepare the image directory + let src_bindir = builder.llvm_out(target).join("bin"); + let dst_bindir = format!("lib/rustlib/{}/bin", target.triple); + for tool in LLVM_TOOLS { + let exe = src_bindir.join(exe(tool, target)); + tarball.add_file(&exe, &dst_bindir, 0o755); + } } // Copy libLLVM.so to the target lib dir as well, so the RPATH like diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs index f1e1b89d9ba..8e51af8ff18 100644 --- a/src/bootstrap/src/core/config/config.rs +++ b/src/bootstrap/src/core/config/config.rs @@ -1630,7 +1630,7 @@ impl Config { ); } - set(&mut config.llvm_tools_enabled, llvm_tools); + config.llvm_tools_enabled = llvm_tools.unwrap_or(true); config.rustc_parallel = parallel_compiler.unwrap_or(config.channel == "dev" || config.channel == "nightly"); config.rustc_default_linker = default_linker; |
