about summary refs log tree commit diff
diff options
context:
space:
mode:
author许杰友 Jieyou Xu (Joe) <39484203+jieyouxu@users.noreply.github.com>2024-05-11 01:15:08 +0100
committerGitHub <noreply@github.com>2024-05-11 01:15:08 +0100
commit150633eea292e1815a471f1e283b1c64e2d8be17 (patch)
tree7bc4a4729947af89cc009e70e4b700452a73bc9e
parent6e1d94708a0a4a35ca7e46c6cac98adf62fe800e (diff)
parenteac0b3a1d1b8d1db8fa95c50e118de5b9471e5af (diff)
downloadrust-150633eea292e1815a471f1e283b1c64e2d8be17.tar.gz
rust-150633eea292e1815a471f1e283b1c64e2d8be17.zip
Rollup merge of #124233 - mati865:fix-support-for-upcoming-mingw-w64, r=petrochenkov
Add `-lmingwex` second time in `mingw_libs`

Upcoming mingw-w64 releases will contain small math functions refactor which moved implementation around. As a result functions like `lgamma`
now depend on libraries in this order:
`libmingwex.a` -> `libmsvcrt.a` -> `libmingwex.a`.

Fixes #124221
-rw-r--r--compiler/rustc_target/src/spec/base/windows_gnu.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/rustc_target/src/spec/base/windows_gnu.rs b/compiler/rustc_target/src/spec/base/windows_gnu.rs
index 25f02dc1451..1357de2dad1 100644
--- a/compiler/rustc_target/src/spec/base/windows_gnu.rs
+++ b/compiler/rustc_target/src/spec/base/windows_gnu.rs
@@ -40,6 +40,9 @@ pub fn opts() -> TargetOptions {
         //
         // See https://github.com/rust-lang/rust/pull/47483 for some more details.
         "-lmsvcrt",
+        // Math functions missing in MSVCRT (they are present in UCRT) require
+        // this dependency cycle: `libmingwex.a` -> `libmsvcrt.a` -> `libmingwex.a`.
+        "-lmingwex",
         "-luser32",
         "-lkernel32",
     ];