Jacek Caban : configure: Explicitly specify subsystem when using msvc target.

Alexandre Julliard julliard at winehq.org
Tue May 5 14:48:53 CDT 2020


Module: wine
Branch: master
Commit: c8905b2880aff43ce4660e751d54ecfc55deab2e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=c8905b2880aff43ce4660e751d54ecfc55deab2e

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Tue May  5 16:31:19 2020 +0200

configure: Explicitly specify subsystem when using msvc target.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 configure    | 14 +++++++++-----
 configure.ac |  8 ++++++--
 2 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/configure b/configure
index 47a2a25219..3c6c360a44 100755
--- a/configure
+++ b/configure
@@ -9847,6 +9847,7 @@ $as_echo "$wine_cv_crosscc" >&6; }
             done
 
                         llvm_target=$CROSSTARGET
+            llvm_cflags="-fuse-ld=lld"
             if test -z "$llvm_target"
             then
                 case $host_cpu in
@@ -9854,16 +9855,19 @@ $as_echo "$wine_cv_crosscc" >&6; }
                 *) llvm_target=$host_cpu-windows-gnu ;;
                 esac
             fi
-            as_ac_var=`$as_echo "ac_cv_crosscflags_-target $llvm_target -fuse-ld=lld" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -target $llvm_target -fuse-ld=lld" >&5
-$as_echo_n "checking whether the cross-compiler supports -target $llvm_target -fuse-ld=lld... " >&6; }
+            case $llvm_target in
+            *windows) llvm_cflags="$llvm_cflags -Wl,-subsystem:console" ;;
+            esac
+            as_ac_var=`$as_echo "ac_cv_crosscflags_-target $llvm_target $llvm_cflags" | $as_tr_sh`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -target $llvm_target $llvm_cflags" >&5
+$as_echo_n "checking whether the cross-compiler supports -target $llvm_target $llvm_cflags... " >&6; }
 if eval \${$as_ac_var+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   ac_wine_try_cflags_saved=$CFLAGS
 ac_wine_try_cflags_saved_cc=$CC
 ac_wine_try_cflags_saved_exeext=$ac_exeext
-CFLAGS="$CFLAGS $EXTRACROSSCFLAGS -nostartfiles -nodefaultlibs -target $llvm_target -fuse-ld=lld"
+CFLAGS="$CFLAGS $EXTRACROSSCFLAGS -nostartfiles -nodefaultlibs -target $llvm_target $llvm_cflags"
 CC="$CROSSCC"
 ac_exeext=".exe"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -9889,7 +9893,7 @@ if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
                                   EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -target $CROSSTARGET"
                                   DELAYLOADFLAG="-Wl,-delayload,"
 
-                                  CFLAGS="$CFLAGS -fuse-ld=lld"
+                                  CFLAGS="$CFLAGS $llvm_cflags"
 fi
         fi
         { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -fno-strict-aliasing" >&5
diff --git a/configure.ac b/configure.ac
index 103e81e285..d4a92d3cbb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1057,6 +1057,7 @@ then
 
             dnl Check if cross compiler supports -target argument
             llvm_target=$CROSSTARGET
+            llvm_cflags="-fuse-ld=lld"
             if test -z "$llvm_target"
             then
                 case $host_cpu in
@@ -1064,11 +1065,14 @@ then
                 *) llvm_target=$host_cpu-windows-gnu ;;
                 esac
             fi
-            WINE_TRY_CROSSCFLAGS([-target $llvm_target -fuse-ld=lld],
+            case $llvm_target in
+            *windows) llvm_cflags="$llvm_cflags -Wl,-subsystem:console" ;;
+            esac
+            WINE_TRY_CROSSCFLAGS([-target $llvm_target $llvm_cflags],
                                  [CROSSTARGET=$llvm_target
                                   EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -target $CROSSTARGET"
                                   AC_SUBST(DELAYLOADFLAG,["-Wl,-delayload,"])
-                                  CFLAGS="$CFLAGS -fuse-ld=lld"])
+                                  CFLAGS="$CFLAGS $llvm_cflags"])
         fi
         WINE_TRY_CROSSCFLAGS([-fno-strict-aliasing])
         dnl clang needs to be told to fail on unknown options




More information about the wine-cvs mailing list