rust/compiler/rustc_codegen_ssa/src
Matthias Krüger eac6f07380
Rollup merge of #123436 - amyspark:allow-msvc-to-use-meson-and-mingw-import-libraries, r=petrochenkov
linker: Allow MSVC to use import libraries following the Meson/MinGW convention

Hi all,

This PR implements support for `MsvcLinker` to use import libraries following Meson and the MinGW toolchain's naming convention. Meson [follows the `libfoo.dll.a` naming convention](https://mesonbuild.com/FAQ.html#why-does-building-my-project-with-msvc-output-static-libraries-called-libfooa) to disambiguate between static and import libraries.

This support already existed for static libraries (see #100101), but not for dynamic libraries. The latter case was added by duplicating the logic in `native_libs::find_native_static_library`, but a separate case was added in `link_dylib_by_name` for the Windows CRT libraries which must be handled by the linker itself.

See for prerequisites #129366, #126094, and #128370.

All feedback is appreciated!

Fixes #122455

cc `@sdroege` `@nirbheek`
2024-09-16 18:34:00 +02:00
..
back Rollup merge of #123436 - amyspark:allow-msvc-to-use-meson-and-mingw-import-libraries, r=petrochenkov 2024-09-16 18:34:00 +02:00
debuginfo Also fix if in else 2024-09-11 17:24:01 -04:00
mir simd_shuffle: require index argument to be a vector 2024-09-14 14:43:24 +02:00
traits Don't leave debug locations for constants sitting on the builder indefinitely. 2024-09-06 23:12:18 +00:00
assert_module_sources.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
base.rs Rename struct_tail_erasing_lifetimes to struct_tail_for_codegen 2024-08-08 12:15:16 -04:00
codegen_attrs.rs Simplify some nested if statements 2024-09-11 13:45:23 -04:00
common.rs Rollup merge of #128206 - bjorn3:import_lib_writing_refactor, r=jieyouxu 2024-08-07 15:59:35 +02:00
errors.rs Always use ar_archive_writer for import libs 2024-08-17 19:10:46 +00:00
lib.rs Add warn(unreachable_pub) to rustc_codegen_ssa. 2024-08-16 08:46:57 +10:00
meth.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
mono_item.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
size_of_val.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
target_features.rs Disallow enabling features without their implied features 2024-08-07 00:45:00 -04:00