Alexandre Julliard : configure: Disable Fortify if it's enabled by default, it's too broken.
Alexandre Julliard
julliard at winehq.org
Fri Oct 22 12:30:48 CDT 2010
Module: wine
Branch: master
Commit: 105793bff75f6a869bd9ccfb390b2f88fa861235
URL: http://source.winehq.org/git/wine.git/?a=commit;h=105793bff75f6a869bd9ccfb390b2f88fa861235
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Oct 22 17:13:57 2010 +0200
configure: Disable Fortify if it's enabled by default, it's too broken.
---
configure | 90 +++++++++++++++++++++------------------------------------
configure.ac | 24 ++++++++-------
2 files changed, 46 insertions(+), 68 deletions(-)
diff --git a/configure b/configure
index 122e443..5de5f5c 100755
--- a/configure
+++ b/configure
@@ -12061,63 +12061,6 @@ $as_echo "$ac_cv_c_string_h_warnings" >&6; }
EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
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"
then
{ $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
+{ $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_n "checking whether external symbols need an underscore prefix... " >&6; }
if test "${ac_cv_c_extern_prefix+set}" = set; then :
diff --git a/configure.ac b/configure.ac
index a13fc92..9a84cf3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1658,17 +1658,6 @@ then
EXTRACFLAGS="$EXTRACFLAGS -Wpointer-arith"
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
if test "x$enable_maintainer_mode" = "xyes"
then
@@ -1691,6 +1680,19 @@ then
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 ****
AC_CACHE_CHECK([whether external symbols need an underscore prefix], ac_cv_c_extern_prefix,
More information about the wine-cvs
mailing list