From 05c2c9618f583ea4acd69b3fe5ae2a2922dd2ddc Mon Sep 17 00:00:00 2001 From: Roland Mc Grath Date: Tue, 8 May 2012 19:44:57 +0200 Subject: Warn if user requests __FORTIFY_SOURCE but it is disabled [BZ #13979] * include/features.h: Warn if user requests __FORTIFY_SOURCE checking but the checks are disabled for any reason. --- include/features.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/features.h b/include/features.h index c347555ead..c700871ba5 100644 --- a/include/features.h +++ b/include/features.h @@ -325,14 +325,18 @@ # define __USE_REENTRANT 1 #endif -#if defined _FORTIFY_SOURCE && _FORTIFY_SOURCE > 0 \ - && __GNUC_PREREQ (4, 1) && defined __OPTIMIZE__ && __OPTIMIZE__ > 0 -# if _FORTIFY_SOURCE > 1 +#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 -- cgit v1.2.3