configure: Use -fno-omit-frame-pointer when available.

This commit is contained in:
Austin English 2011-10-18 12:17:37 -07:00 committed by Alexandre Julliard
parent 0aa30c4673
commit 5cfe7db185
2 changed files with 33 additions and 0 deletions

28
configure vendored
View File

@ -12014,6 +12014,34 @@ if test $ac_cv_cflags__Wwrite_strings = yes; then :
EXTRACFLAGS="$EXTRACFLAGS -Wwrite-strings" EXTRACFLAGS="$EXTRACFLAGS -Wwrite-strings"
fi fi
case $host_cpu in
*i[3456789]86*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fno-omit-frame-pointer" >&5
$as_echo_n "checking whether the compiler supports -fno-omit-frame-pointer... " >&6; }
if ${ac_cv_cflags__fno_omit_frame_pointer+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_wine_try_cflags_saved=$CFLAGS
CFLAGS="$CFLAGS -fno-omit-frame-pointer"
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__fno_omit_frame_pointer=yes
else
ac_cv_cflags__fno_omit_frame_pointer=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__fno_omit_frame_pointer" >&5
$as_echo "$ac_cv_cflags__fno_omit_frame_pointer" >&6; }
if test $ac_cv_cflags__fno_omit_frame_pointer = yes; then :
EXTRACFLAGS="$EXTRACFLAGS -fno-omit-frame-pointer"
fi ;;
esac
saved_CFLAGS="$CFLAGS" saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wpointer-arith -Werror" CFLAGS="$CFLAGS -Wpointer-arith -Werror"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken string.h that generates warnings with -Wpointer-arith" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken string.h that generates warnings with -Wpointer-arith" >&5

View File

@ -1684,6 +1684,11 @@ then
WINE_TRY_CFLAGS([-Wunused-but-set-parameter]) WINE_TRY_CFLAGS([-Wunused-but-set-parameter])
WINE_TRY_CFLAGS([-Wwrite-strings]) WINE_TRY_CFLAGS([-Wwrite-strings])
dnl gcc-4.6+ omits frame pointers by default, breaking some copy protections
case $host_cpu in
*i[[3456789]]86*) WINE_TRY_CFLAGS([-fno-omit-frame-pointer]) ;;
esac
dnl Check for noisy string.h dnl Check for noisy string.h
saved_CFLAGS="$CFLAGS" saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wpointer-arith -Werror" CFLAGS="$CFLAGS -Wpointer-arith -Werror"