Files
MINGW-packages/mingw-w64-libtool/0013-Allow-statically-linking-compiler-support-libraries-.patch
Christoph Reiter 31cf2ca0aa Re-add mingw libtool variant
It was removed in #10338 because it wasn't really used and the
msys one seemed good enough for autotools (via libtoolize), and
all packages using it were really just depending on libltdl.

Turns out some mingw packages use libtool directly and the msys
one has various things hardcoded for that environment, resulting
for example in wrongly named .dlls.

This adds back the mingw libtool with all patches synched from the
msys one and the Windows paths fixed up in the libtool script.
Also add it as a dependency to autotools, so we avoid sometimes
the msys one being used and sometimes the mingw one, which would
make it harded to debug.

Ideally this doesn't change anything for existing packages and
just fixes the ones using libtool directly, for example
mingw-w64-libvterm and mingw-w64-libtommath.

There is also a libtool integration test being added now in
https://github.com/msys2/msys2-tests/pull/45
2023-08-12 23:45:29 +02:00

39 lines
1.2 KiB
Diff

From b9f77cae8cfbe850e58cac686fcb4d246b5bfc51 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin@martin.st>
Date: Mon, 19 Aug 2019 13:34:51 +0300
Subject: [PATCH] Allow statically linking compiler support libraries when
linking a library
For cases with deplibs_check_method="file_magic ..." (as it is for mingw),
there were previously no way that a static library could be accepted
here.
---
build-aux/ltmain.in | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index e2fb2633..db4d775c 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -5870,8 +5870,15 @@ func_mode_link ()
fi
case $linkmode in
lib)
- # Linking convenience modules into shared libraries is allowed,
- # but linking other static libraries is non-portable.
+ # Linking convenience modules and compiler provided static libraries
+ # into shared libraries is allowed, but linking other static
+ # libraries is non-portable.
+ case $deplib in
+ */libgcc*.$libext | */libclang_rt*.$libext)
+ deplibs="$deplib $deplibs"
+ continue
+ ;;
+ esac
case " $dlpreconveniencelibs " in
*" $deplib "*) ;;
*)
--
2.17.1