Module: wine Branch: master Commit: 8b7baa1128d974b6b9e4fc49853242e50d96c940 URL: https://gitlab.winehq.org/wine/wine/-/commit/8b7baa1128d974b6b9e4fc49853242e...
Author: Alexandre Julliard julliard@winehq.org Date: Mon Sep 12 12:46:18 2022 +0200
configure: Use --disable-stdcall-fixup for all PE builds.
---
configure | 34 ++++++++++++++++++++++++++++++++++ configure.ac | 3 ++- 2 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/configure b/configure index e77a4c87c2c..25bbb308cc1 100755 --- a/configure +++ b/configure @@ -11451,6 +11451,40 @@ printf "%s\n" "$ac_cv_crosscflags__fno_omit_frame_pointer" >&6; } if test "x$ac_cv_crosscflags__fno_omit_frame_pointer" = xyes then : EXTRACROSSCFLAGS="$EXTRACROSSCFLAGS -fno-omit-frame-pointer" +fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -Wl,--disable-stdcall-fixup" >&5 +printf %s "checking whether the cross-compiler supports -Wl,--disable-stdcall-fixup... " >&6; } +if test ${ac_cv_crosscflags__Wl___disable_stdcall_fixup+y} +then : + printf %s "(cached) " >&6 +else $as_nop + 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 -Wl,--disable-stdcall-fixup" +CC="$CROSSCC" +ac_exeext=".exe" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int __cdecl mainCRTStartup(void) { return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + ac_cv_crosscflags__Wl___disable_stdcall_fixup=yes +else $as_nop + ac_cv_crosscflags__Wl___disable_stdcall_fixup=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext +CFLAGS=$ac_wine_try_cflags_saved +CC=$ac_wine_try_cflags_saved_cc +ac_exeext=$ac_wine_try_cflags_saved_exeext +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_crosscflags__Wl___disable_stdcall_fixup" >&5 +printf "%s\n" "$ac_cv_crosscflags__Wl___disable_stdcall_fixup" >&6; } +if test "x$ac_cv_crosscflags__Wl___disable_stdcall_fixup" = xyes +then : + CROSSLDFLAGS="$CROSSLDFLAGS -Wl,--disable-stdcall-fixup" fi ;; x86_64) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the cross-compiler supports -Wno-format" >&5 printf %s "checking whether the cross-compiler supports -Wno-format... " >&6; } diff --git a/configure.ac b/configure.ac index 49d414e1d17..ed6d128d379 100644 --- a/configure.ac +++ b/configure.ac @@ -952,7 +952,8 @@ then WINE_TRY_CROSSCFLAGS([-Wabsolute-value])
case $host_cpu in - *i[[3456789]]86*) WINE_TRY_CROSSCFLAGS([-fno-omit-frame-pointer]) ;; + *i[[3456789]]86*) WINE_TRY_CROSSCFLAGS([-fno-omit-frame-pointer]) + WINE_TRY_CROSSCFLAGS([-Wl,--disable-stdcall-fixup],[CROSSLDFLAGS="$CROSSLDFLAGS -Wl,--disable-stdcall-fixup"]) ;; x86_64) WINE_TRY_CROSSCFLAGS([-Wno-format]) WINE_TRY_CROSSCFLAGS([-Wformat-overflow]) WINE_TRY_CROSSCFLAGS([-Wnonnull])