]> git.lizzy.rs Git - rust.git/commit - src/tools/rust-analyzer
Rollup merge of #90782 - ricobbe:binutils-dlltool, r=michaelwoerister
authorMatthias Krüger <matthias.krueger@famsik.de>
Tue, 18 Jan 2022 21:00:42 +0000 (22:00 +0100)
committerGitHub <noreply@github.com>
Tue, 18 Jan 2022 21:00:42 +0000 (22:00 +0100)
commitdd621a4c5cd967815cdf5ffcbe598a6fd9a3b839
tree4d52652e8f1fe926c2ffda05281527bff162348b
parent9ad5d82f822b3cb67637f11be2e65c5662b66ec0
parent0cf7fd1208f79a0f1cbf6341871bf6eaa0319abb
Rollup merge of #90782 - ricobbe:binutils-dlltool, r=michaelwoerister

Implement raw-dylib support for windows-gnu

Add support for `#[link(kind = "raw-dylib")]` on windows-gnu targets.  Work around binutils's linker's inability to read import libraries produced by LLVM by calling out to the binutils `dlltool` utility to create an import library from a temporary .DEF file; this approach is effectively a slightly refined version of `@mati865's` earlier attempt at this strategy in PR #88801.  (In particular, this attempt at this strategy adds support for `#[link_ordinal(...)]` as well.)

In support of #58713.
compiler/rustc_interface/src/tests.rs
compiler/rustc_metadata/src/native_libs.rs
compiler/rustc_session/src/options.rs
src/test/ui/rfc-2627-raw-dylib/link-ordinal-multiple.rs