configure: Disable Fortify if it's enabled by default, it's too broken.

This commit is contained in:
Alexandre Julliard 2010-10-22 17:13:57 +02:00
parent 32f9173998
commit 105793bff7
2 changed files with 46 additions and 68 deletions

90
configure vendored
View File

@ -12061,63 +12061,6 @@ $as_echo "$ac_cv_c_string_h_warnings" >&6; }
EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith" EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
fi fi
saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken unused result warnings" >&5
$as_echo_n "checking for broken unused result warnings... " >&6; }
if test "${ac_cv_c_unused_result_warnings+set}" = set; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <unistd.h>
int
main ()
{
write(2,"a",1)
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_unused_result_warnings=no
else
ac_cv_c_unused_result_warnings=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_unused_result_warnings" >&5
$as_echo "$ac_cv_c_unused_result_warnings" >&6; }
CFLAGS="$saved_CFLAGS"
if test "$ac_cv_c_unused_result_warnings" = "yes"
then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wno-unused-result" >&5
$as_echo_n "checking whether the compiler supports -Wno-unused-result... " >&6; }
if test "${ac_cv_cflags__Wno_unused_result+set}" = set; then :
$as_echo_n "(cached) " >&6
else
ac_wine_try_cflags_saved=$CFLAGS
CFLAGS="$CFLAGS -Wno-unused-result"
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__Wno_unused_result=yes
else
ac_cv_cflags__Wno_unused_result=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__Wno_unused_result" >&5
$as_echo "$ac_cv_cflags__Wno_unused_result" >&6; }
if test $ac_cv_cflags__Wno_unused_result = yes; then :
EXTRACFLAGS="$EXTRACFLAGS -Wno-unused-result"
fi
fi
if test "x$enable_maintainer_mode" = "xyes" if test "x$enable_maintainer_mode" = "xyes"
then then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Werror" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Werror" >&5
@ -12187,6 +12130,39 @@ $as_echo "#define DECLSPEC_HOTPATCH __attribute__((__ms_hook_prologue__))" >>con
fi fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for the need to disable Fortify" >&5
$as_echo_n "checking for the need to disable Fortify... " >&6; }
if test "${ac_cv_c_fortify_enabled+set}" = set; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
int
main ()
{
#if defined(__USE_FORTIFY_LEVEL) && __USE_FORTIFY_LEVEL > 0
#error Fortify enabled
#endif
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_fortify_enabled=no
else
ac_cv_c_fortify_enabled=yes
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_fortify_enabled" >&5
$as_echo "$ac_cv_c_fortify_enabled" >&6; }
if test "$ac_cv_c_fortify_enabled" = yes
then
EXTRACFLAGS="$EXTRACFLAGS -D_FORTIFY_SOURCE=0"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether external symbols need an underscore prefix" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether external symbols need an underscore prefix" >&5
$as_echo_n "checking whether external symbols need an underscore prefix... " >&6; } $as_echo_n "checking whether external symbols need an underscore prefix... " >&6; }
if test "${ac_cv_c_extern_prefix+set}" = set; then : if test "${ac_cv_c_extern_prefix+set}" = set; then :

View File

@ -1658,17 +1658,6 @@ then
EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith" EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
fi fi
dnl Fortify enables unused result warnings on a gazillion functions, making it useless
saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror"
AC_CACHE_CHECK([for broken unused result warnings], ac_cv_c_unused_result_warnings,
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <unistd.h>]], [[write(2,"a",1)]])],[ac_cv_c_unused_result_warnings=no],[ac_cv_c_unused_result_warnings=yes]))
CFLAGS="$saved_CFLAGS"
if test "$ac_cv_c_unused_result_warnings" = "yes"
then
WINE_TRY_CFLAGS([-Wno-unused-result])
fi
dnl Enable -Werror for maintainer mode dnl Enable -Werror for maintainer mode
if test "x$enable_maintainer_mode" = "xyes" if test "x$enable_maintainer_mode" = "xyes"
then then
@ -1691,6 +1680,19 @@ then
fi fi
fi fi
dnl **** Disable Fortify, it has too many false positives
AC_CACHE_CHECK([for the need to disable Fortify], ac_cv_c_fortify_enabled,
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],
[[#if defined(__USE_FORTIFY_LEVEL) && __USE_FORTIFY_LEVEL > 0
#error Fortify enabled
#endif]])],
[ac_cv_c_fortify_enabled=no],[ac_cv_c_fortify_enabled=yes]))
if test "$ac_cv_c_fortify_enabled" = yes
then
EXTRACFLAGS="$EXTRACFLAGS -D_FORTIFY_SOURCE=0"
fi
dnl **** Check for underscore on external symbols **** dnl **** Check for underscore on external symbols ****
AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix, AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,