Module: wine Branch: master Commit: cff35d4de1bbc7fb51a0f0317fbb138fdcf25f0d URL: https://source.winehq.org/git/wine.git/?a=commit;h=cff35d4de1bbc7fb51a0f0317...
Author: Alexandre Julliard julliard@winehq.org Date: Fri Dec 6 10:40:00 2019 +0100
configure: Disable gcc control flow protection.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48161 Signed-off-by: Alexandre Julliard julliard@winehq.org
---
configure | 27 ++++++++++++++++++++++++++- configure.ac | 1 + 2 files changed, 27 insertions(+), 1 deletion(-)
diff --git a/configure b/configure index 5dc6347ee1..8e5bee0501 100755 --- a/configure +++ b/configure @@ -16875,7 +16875,32 @@ $as_echo "$ac_cv_c_gcc_strength_bug" >&6; } EXTRACFLAGS="$EXTRACFLAGS -fno-strength-reduce" fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fno-strict-aliasing" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fcf-protection=none" >&5 +$as_echo_n "checking whether the compiler supports -fcf-protection=none... " >&6; } +if ${ac_cv_cflags__fcf_protection_none+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_wine_try_cflags_saved=$CFLAGS +CFLAGS="$CFLAGS -fcf-protection=none" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int main(int argc, char **argv) { return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_cflags__fcf_protection_none=yes +else + ac_cv_cflags__fcf_protection_none=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +CFLAGS=$ac_wine_try_cflags_saved +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cflags__fcf_protection_none" >&5 +$as_echo "$ac_cv_cflags__fcf_protection_none" >&6; } +if test "x$ac_cv_cflags__fcf_protection_none" = xyes; then : + EXTRACFLAGS="$EXTRACFLAGS -fcf-protection=none" +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fno-strict-aliasing" >&5 $as_echo_n "checking whether the compiler supports -fno-strict-aliasing... " >&6; } if ${ac_cv_cflags__fno_strict_aliasing+:} false; then : $as_echo_n "(cached) " >&6 diff --git a/configure.ac b/configure.ac index b0ba094134..9b6bc2bc9f 100644 --- a/configure.ac +++ b/configure.ac @@ -2026,6 +2026,7 @@ then fi
dnl Check for some compiler flags + WINE_TRY_CFLAGS([-fcf-protection=none]) WINE_TRY_CFLAGS([-fno-strict-aliasing]) WINE_TRY_CFLAGS([-fexcess-precision=standard],[AC_SUBST(EXCESS_PRECISION_CFLAGS,"-fexcess-precision=standard")]) dnl clang needs to be told to fail on unknown options