[PATCH v2] winegcc: Only add -static-libgcc if -nodefaultlibs weren't given.
Chip Davis
cdavis at codeweavers.com
Mon Apr 6 12:44:39 CDT 2020
The flag does nothing if -nodefaultlibs or -nostdlib be given, because
the driver does not automatically link to libgcc/compiler-rt in that
case. Clang will warn about this, which is annoying, which clutters up
the output, and which makes it impossible to use -Werror when building
with Clang.
Signed-off-by: Chip Davis <cdavis at codeweavers.com>
---
Notes:
v2: Make sure we do add the flag for -print-libgcc-file-name.
tools/winegcc/winegcc.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
index 026bfe35de3..90b598667c0 100644
--- a/tools/winegcc/winegcc.c
+++ b/tools/winegcc/winegcc.c
@@ -508,7 +508,7 @@ static strarray *get_link_args( struct options *opts, const char *output_name )
strarray_add( flags, "-Wl,--large-address-aware" );
/* make sure we don't need a libgcc_s dll on Windows */
- strarray_add( flags, "-static-libgcc" );
+ if (!opts->nodefaultlibs && !opts->use_msvcrt) strarray_add( flags, "-static-libgcc" );
strarray_addall( link_args, flags );
return link_args;
@@ -977,6 +977,8 @@ static const char *find_libgcc(const strarray *prefix, const strarray *link_tool
int ret;
strarray_add( link, "-print-libgcc-file-name" );
+ /* make sure we don't need a libgcc_s dll on Windows */
+ strarray_add( link, "-static-libgcc" );
sout = dup( fileno(stdout) );
freopen( out, "w", stdout );
--
2.24.0
More information about the wine-devel
mailing list