Feed GitInfos from Config to Build
Signed-off-by: onur-ozkan <work@onurozkan.dev>
This commit is contained in:
parent
4f1be92153
commit
90745bd1ed
2 changed files with 31 additions and 10 deletions
|
|
@ -342,6 +342,15 @@ pub struct Config {
|
|||
pub out: PathBuf,
|
||||
pub rust_info: channel::GitInfo,
|
||||
|
||||
pub cargo_info: channel::GitInfo,
|
||||
pub rust_analyzer_info: channel::GitInfo,
|
||||
pub clippy_info: channel::GitInfo,
|
||||
pub miri_info: channel::GitInfo,
|
||||
pub rustfmt_info: channel::GitInfo,
|
||||
pub enzyme_info: channel::GitInfo,
|
||||
pub in_tree_llvm_info: channel::GitInfo,
|
||||
pub in_tree_gcc_info: channel::GitInfo,
|
||||
|
||||
// These are either the stage0 downloaded binaries or the locally installed ones.
|
||||
pub initial_cargo: PathBuf,
|
||||
pub initial_rustc: PathBuf,
|
||||
|
|
@ -1797,6 +1806,19 @@ impl Config {
|
|||
config.omit_git_hash = omit_git_hash.unwrap_or(default);
|
||||
config.rust_info = GitInfo::new(config.omit_git_hash, &config.src);
|
||||
|
||||
config.cargo_info = GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/cargo"));
|
||||
config.rust_analyzer_info =
|
||||
GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/rust-analyzer"));
|
||||
config.clippy_info =
|
||||
GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/clippy"));
|
||||
config.miri_info = GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/miri"));
|
||||
config.rustfmt_info =
|
||||
GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/rustfmt"));
|
||||
config.enzyme_info =
|
||||
GitInfo::new(config.omit_git_hash, &config.src.join("src/tools/enzyme"));
|
||||
config.in_tree_llvm_info = GitInfo::new(false, &config.src.join("src/llvm-project"));
|
||||
config.in_tree_gcc_info = GitInfo::new(false, &config.src.join("src/gcc"));
|
||||
|
||||
// We need to override `rust.channel` if it's manually specified when using the CI rustc.
|
||||
// This is because if the compiler uses a different channel than the one specified in config.toml,
|
||||
// tests may fail due to using a different channel than the one used by the compiler during tests.
|
||||
|
|
|
|||
|
|
@ -305,18 +305,17 @@ impl Build {
|
|||
#[cfg(not(unix))]
|
||||
let is_sudo = false;
|
||||
|
||||
let omit_git_hash = config.omit_git_hash;
|
||||
let rust_info = GitInfo::new(omit_git_hash, &src);
|
||||
let cargo_info = GitInfo::new(omit_git_hash, &src.join("src/tools/cargo"));
|
||||
let rust_analyzer_info = GitInfo::new(omit_git_hash, &src.join("src/tools/rust-analyzer"));
|
||||
let clippy_info = GitInfo::new(omit_git_hash, &src.join("src/tools/clippy"));
|
||||
let miri_info = GitInfo::new(omit_git_hash, &src.join("src/tools/miri"));
|
||||
let rustfmt_info = GitInfo::new(omit_git_hash, &src.join("src/tools/rustfmt"));
|
||||
let enzyme_info = GitInfo::new(omit_git_hash, &src.join("src/tools/enzyme"));
|
||||
let rust_info = config.rust_info.clone();
|
||||
let cargo_info = config.cargo_info.clone();
|
||||
let rust_analyzer_info = config.rust_analyzer_info.clone();
|
||||
let clippy_info = config.clippy_info.clone();
|
||||
let miri_info = config.miri_info.clone();
|
||||
let rustfmt_info = config.rustfmt_info.clone();
|
||||
let enzyme_info = config.enzyme_info.clone();
|
||||
|
||||
// we always try to use git for LLVM builds
|
||||
let in_tree_llvm_info = GitInfo::new(false, &src.join("src/llvm-project"));
|
||||
let in_tree_gcc_info = GitInfo::new(false, &src.join("src/gcc"));
|
||||
let in_tree_llvm_info = config.in_tree_llvm_info.clone();
|
||||
let in_tree_gcc_info = config.in_tree_gcc_info.clone();
|
||||
|
||||
let initial_target_libdir_str = if config.dry_run() {
|
||||
"/dummy/lib/path/to/lib/".to_string()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue