diff options
| author | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2017-10-16 03:20:01 +0300 |
|---|---|---|
| committer | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2017-10-16 03:22:17 +0300 |
| commit | 0577b60832627e774337456ecbb9bfc9dbb0b0fc (patch) | |
| tree | a1243abb48b2a56e4fd68bbb4d3a76e5c2ad158b /src/bootstrap | |
| parent | 89d9ce4ec3c134ab62e9eea18a9620face8f88b7 (diff) | |
| download | rust-0577b60832627e774337456ecbb9bfc9dbb0b0fc.tar.gz rust-0577b60832627e774337456ecbb9bfc9dbb0b0fc.zip | |
Re-enable linker override for cross-compilation
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/lib.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs index 63dc17910f0..6ac919d3fbd 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs @@ -661,8 +661,9 @@ impl Build { /// Returns the path to the linker for the given target if it needs to be overriden. fn linker(&self, target: Interned<String>) -> Option<&Path> { - if let Some(config) = self.config.target_config.get(&target) { - config.linker.as_ref().map(|p| &**p) + if let Some(linker) = self.config.target_config.get(&target) + .and_then(|c| c.linker.as_ref()) { + Some(linker) } else if target != self.config.build && !target.contains("msvc") && !target.contains("emscripten") { Some(self.cc(target)) |
