mirror of
https://github.com/moparisthebest/pacman
synced 2025-01-01 17:08:08 -05:00
Do not enable _FORTIFY_SOURCE without optimization
With glibc-2.16, using -D_FORTIFY_SOURCE requires that optimization (-O) be used or it will prodice a warning message. Enable -Werror in our test for _FORTIFY_SOURCE support to catch when a users specifies CFLAGS without optimization. The line to set CFLAGS="" when no CFLAGS are specified (either due to being unset or geniunely empty) is required as autoconf will use "-O2 -g" for its tests by defult when CFLAGS is unset, but will not add them to the CFLAGS used... Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
parent
e94876089a
commit
d2669b4781
@ -66,6 +66,11 @@ LT_INIT
|
||||
LIB_VERSION=`expr lib_current - lib_age`.lib_age.lib_revision
|
||||
LIB_VERSION_INFO="lib_current:lib_revision:lib_age"
|
||||
|
||||
# Respect empty CFLAGS during compiler tests
|
||||
if test "x$CFLAGS" != "x"; then
|
||||
CFLAGS=""
|
||||
fi
|
||||
|
||||
# Set subsitution values for version stuff in Makefiles and anywhere else,
|
||||
# and put LIB_VERSION in config.h
|
||||
AC_SUBST(LIB_VERSION)
|
||||
|
@ -40,11 +40,15 @@ AC_DEFUN([GCC_STACK_PROTECT_CC],[
|
||||
|
||||
dnl GCC_FORTIFY_SOURCE_CC
|
||||
dnl checks -D_FORTIFY_SOURCE with the C compiler, if it exists then updates
|
||||
dnl CFLAGS
|
||||
dnl CPPFLAGS
|
||||
AC_DEFUN([GCC_FORTIFY_SOURCE_CC],[
|
||||
AC_LANG_ASSERT(C)
|
||||
if test "X$CC" != "X"; then
|
||||
AC_MSG_CHECKING(for FORTIFY_SOURCE support)
|
||||
fs_old_cppflags="$CPPFLAGS"
|
||||
fs_old_cflags="$CFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2"
|
||||
CFLAGS="$CFLAGS -Werror"
|
||||
AC_TRY_COMPILE([#include <features.h>], [
|
||||
int main() {
|
||||
#if !(__GNUC_PREREQ (4, 1) )
|
||||
@ -54,10 +58,12 @@ AC_DEFUN([GCC_FORTIFY_SOURCE_CC],[
|
||||
}
|
||||
], [
|
||||
AC_MSG_RESULT(yes)
|
||||
CPPFLAGS="$CPPFLAGS -D_FORTIFY_SOURCE=2"
|
||||
CFLAGS="$df_old_cflags"
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
])
|
||||
CPPFLAGS="$df_old_cppflags"
|
||||
CFLAGS="$df_old_cflags"
|
||||
])
|
||||
fi
|
||||
])
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user