From 66a704c43cfec810fea67a6959f2d1c94f4d594f Mon Sep 17 00:00:00 2001 From: Nick Alcock Date: Mon, 26 Dec 2016 10:08:54 +0100 Subject: Work even with compilers which enable -fstack-protector by default [BZ #7065] With all the machinery we just added, we can easily arrange to work even when the compiler passes in -fstack-protector automatically: all the necessary bits of glibc are always compiled with -fno-stack-protector now. So tear out the check in configure, and add appropriate calls to -fno-stack-protector in tests that need them (largely those that use -nostdlib), since we don't yet have a __stack_chk_fail that those tests can rely upon. (GCC often provides one, but we cannot rely on this, especially not when bootstrapping.) When stack protection is disabled, explicitly pass -fno-stack-protector to everything, to stop a compiler hacked to enable it from inserting calls to __stack_chk_fail via the PLT in every object file. --- ChangeLog | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index ae58d91110..5e3e64a3da 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +2016-12-26 Nick Alcock + + [BZ #7065] + * configure.ac: Add check for unsupported stack-protection level. + (libc_cv_predef_stack_protector): Remove. + (no_ssp): New variable. + (STACK_PROTECTOR_LEVEL): Set to zero when --disable-stack-protector. + (stack_protector): Set to -fno-stack-protector similarly. + (libc_cv_ld_gnu_indirect_function): Use no_ssp. + (libc_cv_asm_set_directive): Likewise. + (libc_cv_protected_data): Likewise. + (libc_cv_z_combreloc): Likewise. + (libc_cv_hashstyle): Likewise. + (libc_cv_has_glob_dat): Likewise. + (libc_cv_output_format): Likewise. + (libc_cv_output_format): Likewise. + (libc_cv_ehdr_start): Likewise. + * aclocal.m4 (LIBC_TRY_LINK_STATIC): Likewise. + (LIBC_LINKER_FEATURE): Likewise. + (LIBC_COMPILER_BUILTIN_INLINED): Likewise. + 2016-12-26 Nick Alcock [BZ #7065] -- cgit v1.2.3