diff options
| author | Josh Stone <jistone@redhat.com> | 2017-07-31 15:34:05 -0700 |
|---|---|---|
| committer | Josh Stone <jistone@redhat.com> | 2017-07-31 15:34:05 -0700 |
| commit | 1636a2cf41d79630ecc94f9a8b6d9e8bb501b048 (patch) | |
| tree | 9d675d0a2a3c1af0e51336c2d6bad9c3aef363ff /src/bootstrap | |
| parent | 2a6828e7f1ed3163a2797f0a111570ef130f7b6b (diff) | |
| download | rust-1636a2cf41d79630ecc94f9a8b6d9e8bb501b048.tar.gz rust-1636a2cf41d79630ecc94f9a8b6d9e8bb501b048.zip | |
Link LLVM tools dynamically
Set `LLVM_LINK_LLVM_DYLIB=ON` -- "If enabled, tools will be linked with the libLLVM shared library." Rust doesn't ship any of the LLVM tools, and only needs a few at all for some test cases, so statically linking the tools is just a waste of space. I've also had memory issues on slower machines with LLVM debuginfo enabled, when several tools start linking in parallel consuming several GBs each. With the default configuration, `build/x86_64-unknown-linux-gnu/llvm` was 1.5GB before, now down to 731MB. The difference is more drastic with `--enable-llvm-release-debuginfo`, from 28GB to "only" 13GB. This does not change the linking behavior of `rustc_llvm`.
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/native.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs index cfd20b02aaf..595f90be1dd 100644 --- a/src/bootstrap/native.rs +++ b/src/bootstrap/native.rs @@ -125,6 +125,7 @@ impl Step for Llvm { .define("WITH_POLLY", "OFF") .define("LLVM_ENABLE_TERMINFO", "OFF") .define("LLVM_ENABLE_LIBEDIT", "OFF") + .define("LLVM_LINK_LLVM_DYLIB", "ON") .define("LLVM_PARALLEL_COMPILE_JOBS", build.jobs().to_string()) .define("LLVM_TARGET_ARCH", target.split('-').next().unwrap()) .define("LLVM_DEFAULT_TARGET_TRIPLE", target); |
