The _set_errno function is defined in arm versions of msvcrt.dll,
and in all the newer numbered versions of msvcr*.dll, and UCRT.

This avoids issues with the recently added _vscprintf in libmsvcrt.a
which depends on _set_errno, which was present in libmingwex.a.
When linking with ld.bfd, a later library can't pull in symbols from
earlier libraries (unless specifying --start-group --end-group around
the list of those libraries).

Signed-off-by: Martin Storsjö <[email protected]>
---
 mingw-w64-crt/Makefile.am | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index e68d4f7c6..9c2c8adc2 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -283,6 +283,7 @@ src_msvcrt32=\
   misc/_free_locale.c \
   misc/_get_current_locale.c \
   misc/lc_locale_func.c \
+  misc/seterrno.c \
   misc/wassert.c \
   stdio/_scprintf.c \
   stdio/_vscprintf.c
@@ -296,7 +297,8 @@ src_msvcrt64=\
   misc/__p__wcmdln.c \
   misc/_create_locale.c \
   misc/_free_locale.c \
-  misc/_get_current_locale.c
+  misc/_get_current_locale.c \
+  misc/seterrno.c
 
 src_msvcrtarm32=\
   $(src_msvcrt) \
@@ -481,7 +483,7 @@ src_libmingwex=\
   misc/mempcpy.c         misc/mingw-aligned-malloc.c \
   misc/mingw_matherr.c   misc/mingw_mbwc_convert.c  misc/mingw_usleep.c     
misc/mingw_wcstod.c          misc/mingw_wcstof.c    \
   misc/mingw_wcstold.c \
-  misc/mkstemp.c             misc/seterrno.c         misc/sleep.c          \
+  misc/mkstemp.c         misc/sleep.c           \
   misc/strnlen.c         misc/strsafe.c         \
   misc/strtoimax.c       misc/strtoumax.c        misc/tdelete.c               
misc/tfind.c           \
   misc/tsearch.c         misc/twalk.c           \
-- 
2.25.1



_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to