[pacman-dev] [PATCH 03/10] Add FORTIFY_SOURCE support
Allan McRae
allan at archlinux.org
Mon Sep 27 02:08:56 EDT 2010
Adds a check for the minimum mainline GCC version for FORTIFY_SOURCE
support and enables -D_FORTIFY_SOURCE=2 by default when building with
--enable-debug.
Signed-off-by: Allan McRae <allan at archlinux.org>
---
acinclude.m4 | 23 +++++++++++++++++++++++
configure.ac | 1 +
2 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/acinclude.m4 b/acinclude.m4
index 1524a3d..80b0ba0 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -4910,6 +4910,29 @@ AC_DEFUN([GCC_STACK_PROTECT_CC],[
fi
])
+dnl GCC_FORTIFY_SOURCE_CC
+dnl checks -D_FORTIFY_SOURCE with the C compiler, if it exists then updates
+dnl CFLAGS
+AC_DEFUN([GCC_FORTIFY_SOURCE_CC],[
+ AC_LANG_ASSERT(C)
+ if test "X$CC" != "X"; then
+ AC_MSG_CHECKING(for FORTIFY_SOURCE support)
+ AC_TRY_COMPILE([#include <features.h>], [
+ int main() {
+ #if !(__GNUC_PREREQ (4, 1) )
+ #error No FORTIFY_SOURCE support
+ #endif
+ return 0;
+ }
+ ], [
+ AC_MSG_RESULT(yes)
+ CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2"
+ ], [
+ AC_MSG_RESULT(no)
+ ])
+ fi
+])
+
dnl GCC_VISIBILITY_CC
dnl checks -fvisibility=internal with the C compiler, if it exists then
dnl defines ENABLE_VISIBILITY_CC in both configure script and Makefiles
diff --git a/configure.ac b/configure.ac
index b4570f5..76e36c8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -316,6 +316,7 @@ if test "x$debug" = "xyes" ; then
# Check for -fstack-protector availability
GCC_STACK_PROTECT_LIB
GCC_STACK_PROTECT_CC
+ GCC_FORTIFY_SOURCE_CC
CFLAGS="$CFLAGS -g -Wall -Werror"
else
AC_MSG_RESULT(no)
--
1.7.3
More information about the pacman-dev
mailing list