diff options
| author | bors <bors@rust-lang.org> | 2018-01-28 03:40:26 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-01-28 03:40:26 +0000 |
| commit | 87990a119aa1ce77f294253cde836518870b8032 (patch) | |
| tree | 9cc0f3775d3ce6f585df20d20a1d3a2dbfd063fe /src/rustllvm/RustWrapper.cpp | |
| parent | 6beb06ee5ef6f031aab7586211f1818d346033d6 (diff) | |
| parent | 884715c65420141dc06753f242a224462b120109 (diff) | |
| download | rust-87990a119aa1ce77f294253cde836518870b8032.tar.gz rust-87990a119aa1ce77f294253cde836518870b8032.zip | |
Auto merge of #47671 - alexcrichton:trans-c-api-only, r=Mark-Simulacrum
rustc: Load the `rustc_trans` crate at runtime Building on the work of #45684 this commit updates the compiler to unconditionally load the `rustc_trans` crate at runtime instead of linking to it at compile time. The end goal of this work is to implement #46819 where rustc will have multiple backends available to it to load. This commit starts off by removing the `extern crate rustc_trans` from the driver. This involved moving some miscellaneous functionality into the `TransCrate` trait and also required an implementation of how to locate and load the trans backend. This ended up being a little tricky because the sysroot isn't always the right location (for example `--sysroot` arguments) so some extra code was added as well to probe a directory relative to the current dll (the rustc_driver dll). Rustbuild has been updated accordingly as well to have a separate compilation invocation for the `rustc_trans` crate and assembly it accordingly into the sysroot. Finally, the distribution logic for the `rustc` package was also updated to slurp up the trans backends folder. A number of assorted fallout changes were included here as well to ensure tests pass and such, and they should all be commented inline.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
