Alexandre Julliard : winegcc: Only use a constructor for dll modules.
Alexandre Julliard
julliard at winehq.org
Wed Apr 15 15:55:42 CDT 2020
Module: wine
Branch: master
Commit: b336a084d650b9d0e59fc2a1120229794c3c3327
URL: https://source.winehq.org/git/wine.git/?a=commit;h=b336a084d650b9d0e59fc2a1120229794c3c3327
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Apr 15 17:52:04 2020 +0200
winegcc: Only use a constructor for dll modules.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
tools/winegcc/winegcc.c | 16 +++-------------
1 file changed, 3 insertions(+), 13 deletions(-)
diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
index 7d55e19866..b2a4f9189e 100644
--- a/tools/winegcc/winegcc.c
+++ b/tools/winegcc/winegcc.c
@@ -532,20 +532,10 @@ static strarray *get_link_args( struct options *opts, const char *output_name )
strarray_add( link_args, "-Wl,-Bsymbolic" );
if (!opts->noshortwchar && opts->target_cpu == CPU_ARM)
strarray_add( flags, "-Wl,--no-wchar-size-warning" );
-
- /* Try all options first - this is likely to succeed on modern compilers */
- if (!try_link( opts->prefix, link_args, "-Wl,-z,defs -Wl,-init,__wine_spec_init,-fini,_wine_spec_fini" ))
- {
+ if (!try_link( opts->prefix, link_args, "-Wl,-z,defs" ))
strarray_add( flags, "-Wl,-z,defs" );
- strarray_add( flags, "-Wl,-init,__wine_spec_init,-fini,__wine_spec_fini" );
- }
- else /* otherwise figure out which ones are allowed */
- {
- if (!try_link( opts->prefix, link_args, "-Wl,-z,defs" ))
- strarray_add( flags, "-Wl,-z,defs" );
- if (!try_link( opts->prefix, link_args, "-Wl,-init,__wine_spec_init,-fini,_wine_spec_fini" ))
- strarray_add( flags, "-Wl,-init,__wine_spec_init,-fini,__wine_spec_fini" );
- }
+ if (opts->shared && !try_link( opts->prefix, link_args, "-Wl,-init,__wine_spec_init" ))
+ strarray_add( flags, "-Wl,-init,__wine_spec_init" );
strarray_addall( link_args, flags );
return link_args;
More information about the wine-cvs
mailing list