Make LLVM version suffix independent of rustc version on dev channel

Remove rustc version from LLVM version suffix on dev channel, avoiding
the need for full rebuilds when moving between commits with different
LLVM submodule & rustc version.
This commit is contained in:
Tomasz Miąsko 2020-04-05 00:00:00 +00:00
parent 39b62533c7
commit 7c5a4cdd66
2 changed files with 10 additions and 5 deletions

View File

@ -84,8 +84,9 @@
#link-shared = false
# When building llvm, this configures what is being appended to the version.
# If absent, we let the version as-is.
#version-suffix = "-rust"
# The default is "-rust-$version-$channel", except for dev channel where rustc
# version number is omitted. To use LLVM version as is, provide an empty string.
#version-suffix = "-rust-dev"
# On MSVC you can compile LLVM with clang-cl, but the test suite doesn't pass
# with clang-cl, so this is special in that it only compiles LLVM with clang-cl

View File

@ -235,10 +235,14 @@ impl Step for Llvm {
if !suffix.is_empty() {
cfg.define("LLVM_VERSION_SUFFIX", suffix);
}
} else if builder.config.channel == "dev" {
// Changes to a version suffix require a complete rebuild of the LLVM.
// To avoid rebuilds during a time of version bump, don't include rustc
// release number on the dev channel.
cfg.define("LLVM_VERSION_SUFFIX", "-rust-dev");
} else {
let default_suffix =
format!("-rust-{}-{}", channel::CFG_RELEASE_NUM, builder.config.channel);
cfg.define("LLVM_VERSION_SUFFIX", default_suffix);
let suffix = format!("-rust-{}-{}", channel::CFG_RELEASE_NUM, builder.config.channel);
cfg.define("LLVM_VERSION_SUFFIX", suffix);
}
if let Some(ref linker) = builder.config.llvm_use_linker {