Alexandre Julliard : winegcc: Use custom subsystem 'unixlib' instead of 'native' for Unix libraries.
Alexandre Julliard
julliard at winehq.org
Thu Aug 12 16:35:18 CDT 2021
Module: wine
Branch: master
Commit: 7d60d0d7bbc0138133d1968dc3802e2e79ab5b32
URL: https://source.winehq.org/git/wine.git/?a=commit;h=7d60d0d7bbc0138133d1968dc3802e2e79ab5b32
Author: Alexandre Julliard <julliard at winehq.org>
Date: Thu Aug 12 11:33:21 2021 +0200
winegcc: Use custom subsystem 'unixlib' instead of 'native' for Unix libraries.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/winepulse.drv/Makefile.in | 2 +-
tools/winegcc/winegcc.c | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/winepulse.drv/Makefile.in b/dlls/winepulse.drv/Makefile.in
index 4bf053d4e54..f98262bcf63 100644
--- a/dlls/winepulse.drv/Makefile.in
+++ b/dlls/winepulse.drv/Makefile.in
@@ -1,6 +1,6 @@
MODULE = winepulse.drv
IMPORTS = dxguid uuid winmm user32 advapi32 ole32
-EXTRALIBS = $(PULSE_LIBS) $(PTHREAD_LIBS) -Wl,--subsystem,native
+EXTRALIBS = $(PULSE_LIBS) $(PTHREAD_LIBS) -Wl,--subsystem,unixlib
EXTRAINCL = $(PULSE_CFLAGS)
EXTRADLLFLAGS = -mno-cygwin
diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
index 69c18b72b67..426336e4536 100644
--- a/tools/winegcc/winegcc.c
+++ b/tools/winegcc/winegcc.c
@@ -523,7 +523,7 @@ static strarray *get_link_args( struct options *opts, const char *output_name )
if (opts->unicode_app) strarray_add( flags, "-municode" );
if (opts->nodefaultlibs || opts->use_msvcrt) strarray_add( flags, "-nodefaultlibs" );
if (opts->nostartfiles || opts->use_msvcrt) strarray_add( flags, "-nostartfiles" );
- if (opts->subsystem) strarray_add( flags, strmake("-Wl,--subsystem,%s", opts->subsystem ));
+ if (opts->subsystem && strcmp(opts->subsystem, "unixlib")) strarray_add( flags, strmake("-Wl,--subsystem,%s", opts->subsystem ));
strarray_add( flags, "-Wl,--nxcompat" );
@@ -563,7 +563,7 @@ static strarray *get_link_args( struct options *opts, const char *output_name )
if (opts->nodefaultlibs || opts->use_msvcrt) strarray_add( flags, "-nodefaultlibs" );
if (opts->nostartfiles || opts->use_msvcrt) strarray_add( flags, "-nostartfiles" );
if (opts->image_base) strarray_add( flags, strmake("-Wl,-base:%s", opts->image_base ));
- if (opts->subsystem)
+ if (opts->subsystem && strcmp(opts->subsystem, "unixlib"))
strarray_add( flags, strmake("-Wl,-subsystem:%s", opts->subsystem ));
else
strarray_add( flags, strmake("-Wl,-subsystem:%s", opts->gui_app ? "windows" : "console" ));
@@ -1091,7 +1091,7 @@ static void add_library( struct options *opts, strarray *lib_dirs, strarray *fil
strarray_add(files, strmake("-a%s", fullname));
break;
case file_dll:
- if (opts->unix_lib && opts->subsystem && !strcmp(opts->subsystem, "native"))
+ if (opts->unix_lib && opts->subsystem && !strcmp(opts->subsystem, "unixlib"))
{
if (get_lib_type(opts->target_platform, lib_dirs, library, "", ".so", &unixlib) == file_so)
{
@@ -1177,7 +1177,7 @@ static const char *build_spec_obj( struct options *opts, const char *spec_file,
strarray_add(spec_args, entry_point);
}
- if (opts->subsystem)
+ if (opts->subsystem && strcmp( opts->subsystem, "unixlib" ))
{
strarray_add(spec_args, "--subsystem");
strarray_add(spec_args, opts->subsystem);
More information about the wine-cvs
mailing list