configure: Explicitly specify subsystem when using msvc target.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2020-05-05 16:31:19 +02:00 committed by Alexandre Julliard
parent 583ad67ff0
commit c8905b2880
2 changed files with 15 additions and 7 deletions

14
configure vendored
View File

@ -9847,6 +9847,7 @@ $as_echo "$wine_cv_crosscc" >&6; }
done done
llvm_target=$CROSSTARGET llvm_target=$CROSSTARGET
llvm_cflags="-fuse-ld=lld"
if test -z "$llvm_target" if test -z "$llvm_target"
then then
case $host_cpu in case $host_cpu in
@ -9854,16 +9855,19 @@ $as_echo "$wine_cv_crosscc" >&6; }
*) llvm_target=$host_cpu-windows-gnu ;; *) llvm_target=$host_cpu-windows-gnu ;;
esac esac
fi fi
as_ac_var=`$as_echo "ac_cv_crosscflags_-target $llvm_target -fuse-ld=lld" | $as_tr_sh` case $llvm_target in
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -target $llvm_target -fuse-ld=lld" >&5 *windows) llvm_cflags="$llvm_cflags -Wl,-subsystem:console" ;;
$as_echo_n "checking whether the cross-compiler supports -target $llvm_target -fuse-ld=lld... " >&6; } 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 : if eval \${$as_ac_var+:} false; then :
$as_echo_n "(cached) " >&6 $as_echo_n "(cached) " >&6
else else
ac_wine_try_cflags_saved=$CFLAGS ac_wine_try_cflags_saved=$CFLAGS
ac_wine_try_cflags_saved_cc=$CC ac_wine_try_cflags_saved_cc=$CC
ac_wine_try_cflags_saved_exeext=$ac_exeext 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" CC="$CROSSCC"
ac_exeext=".exe" ac_exeext=".exe"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext 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" EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -target $CROSSTARGET"
DELAYLOADFLAG="-Wl,-delayload," DELAYLOADFLAG="-Wl,-delayload,"
CFLAGS="$CFLAGS -fuse-ld=lld" CFLAGS="$CFLAGS $llvm_cflags"
fi fi
fi fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -fno-strict-aliasing" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -fno-strict-aliasing" >&5

View File

@ -1057,6 +1057,7 @@ then
dnl Check if cross compiler supports -target argument dnl Check if cross compiler supports -target argument
llvm_target=$CROSSTARGET llvm_target=$CROSSTARGET
llvm_cflags="-fuse-ld=lld"
if test -z "$llvm_target" if test -z "$llvm_target"
then then
case $host_cpu in case $host_cpu in
@ -1064,11 +1065,14 @@ then
*) llvm_target=$host_cpu-windows-gnu ;; *) llvm_target=$host_cpu-windows-gnu ;;
esac esac
fi 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 [CROSSTARGET=$llvm_target
EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -target $CROSSTARGET" EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -target $CROSSTARGET"
AC_SUBST(DELAYLOADFLAG,["-Wl,-delayload,"]) AC_SUBST(DELAYLOADFLAG,["-Wl,-delayload,"])
CFLAGS="$CFLAGS -fuse-ld=lld"]) CFLAGS="$CFLAGS $llvm_cflags"])
fi fi
WINE_TRY_CROSSCFLAGS([-fno-strict-aliasing]) WINE_TRY_CROSSCFLAGS([-fno-strict-aliasing])
dnl clang needs to be told to fail on unknown options dnl clang needs to be told to fail on unknown options