Skip to content

Commit

Permalink
bootstrap: Expose LLVM_USE_LINKER cmake option to config.toml.
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelwoerister committed Jan 30, 2019
1 parent 4f534ff commit dc20c8c
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 0 deletions.
4 changes: 4 additions & 0 deletions config.toml.example
Expand Up @@ -96,6 +96,10 @@
# that your host compiler ships with libc++.
#use-libcxx = true

# The value specified here will be passed as `-DLLVM_USE_LINKER` to CMake.
#use-linker = "lld"


# =============================================================================
# General build configuration options
# =============================================================================
Expand Down
3 changes: 3 additions & 0 deletions src/bootstrap/config.rs
Expand Up @@ -77,6 +77,7 @@ pub struct Config {
pub llvm_experimental_targets: String,
pub llvm_link_jobs: Option<u32>,
pub llvm_version_suffix: Option<String>,
pub llvm_use_linker: Option<String>,

pub lld_enabled: bool,
pub lldb_enabled: bool,
Expand Down Expand Up @@ -255,6 +256,7 @@ struct Llvm {
version_suffix: Option<String>,
clang_cl: Option<String>,
use_libcxx: Option<bool>,
use_linker: Option<String>,
}

#[derive(Deserialize, Default, Clone)]
Expand Down Expand Up @@ -517,6 +519,7 @@ impl Config {
config.llvm_version_suffix = llvm.version_suffix.clone();
config.llvm_clang_cl = llvm.clang_cl.clone();
set(&mut config.llvm_use_libcxx, llvm.use_libcxx);
config.llvm_use_linker = llvm.use_linker.clone();
}

if let Some(ref rust) = toml.rust {
Expand Down
4 changes: 4 additions & 0 deletions src/bootstrap/native.rs
Expand Up @@ -231,6 +231,10 @@ impl Step for Llvm {
cfg.define("LLVM_VERSION_SUFFIX", suffix);
}

if let Some(ref linker) = builder.config.llvm_use_linker {
cfg.define("LLVM_USE_LINKER", linker);
}

if let Some(ref python) = builder.config.python {
cfg.define("PYTHON_EXECUTABLE", python);
}
Expand Down

0 comments on commit dc20c8c

Please sign in to comment.