Blob Blame History Raw
diff -rup c/include/features.h d/include/features.h
--- c/include/features.h	2012-05-08 21:26:45.294191922 -0600
+++ d/include/features.h	2012-05-08 21:32:42.889297128 -0600
@@ -309,19 +309,18 @@
 # define __USE_REENTRANT	1
 #endif
 
-#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 \
-    && defined __OPTIMIZE__ && __OPTIMIZE__ > 0
-# if !__GNUC_PREREQ (4, 1)
-#  ifdef __GNUC_RH_RELEASE__
-#   warning _FORTIFY_SOURCE supported only with GCC 4.1 and later
-#  endif
-#  define __USE_FORTIFY_LEVEL 0
+#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0
+# if !defined __OPTIMIZE__ || __OPTIMIZE__ <= 0
+#  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
+# elif !__GNUC_PREREQ (4, 1)
+#  warning _FORTIFY_SOURCE requires GCC 4.1 or later
 # elif _FORTIFY_SOURCE > 1
 #  define __USE_FORTIFY_LEVEL 2
 # else
 #  define __USE_FORTIFY_LEVEL 1
 # endif
-#else
+#endif
+#ifndef __USE_FORTIFY_LEVEL
 # define __USE_FORTIFY_LEVEL 0
 #endif