This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.24-373-gc7409ad
- From: vapier at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 15 Nov 2016 19:28:48 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.24-373-gc7409ad
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via c7409aded44634411a19b0b7178b7faa237835e6 (commit)
from 001f81ad1e792dddd75aa8a6f9d1d9b0ba8dc16e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=c7409aded44634411a19b0b7178b7faa237835e6
commit c7409aded44634411a19b0b7178b7faa237835e6
Author: Denis Kaganovich <mahatma@eu.by>
Date: Thu Oct 20 22:01:39 2016 +0200
configure: accept __stack_chk_fail_local for ssp support too [BZ #20662]
When glibc is compiled with gcc 6.2 that has been configured with
--enable-default-pie and --enable-default-ssp, the configure script
fails to detect that the compiler has ssp turned on by default when
being built for i686-linux-gnu.
This is because gcc is emitting __stack_chk_fail_local but the
script is only looking for __stack_chk_fail. Support both.
Example output:
checking whether x86_64-pc-linux-gnu-gcc -m32 -Wl,-O1 -Wl,--as-needed
implicitly enables -fstack-protector... no
diff --git a/ChangeLog b/ChangeLog
index e88b760..7b7c511 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2016-10-20 Denis Kaganovich <mahatma@eu.by>
+ Magnus Granberg <zorry@gentoo.org>
+ Mike Frysinger <vapier@gentoo.org>
+
+ [BZ #20662]
+ * configure.ac (libc_cv_predef_stack_protector): Also check for
+ __stack_chk_fail_local symbols.
+ * configure: Regenerated.
+
2016-11-15 Florian Weimer <fweimer@redhat.com>
* sysdeps/s390/s390-64/setjmp.S (NEED_COMPAT_SYMBOLS): New macro.
diff --git a/configure b/configure
index e80e0ad..d9f8c06 100755
--- a/configure
+++ b/configure
@@ -6340,12 +6340,14 @@ echo >&5 "libc_undefs='$libc_undefs'"
# symbols (resolved by the linker), so filter out unknown symbols.
# This will fail to produce the correct result if the compiler
# defaults to -fstack-protector but this produces an undefined symbol
-# other than __stack_chk_fail. However, compilers like that have not
-# been encountered in practice.
-libc_undefs=`echo "$libc_undefs" | egrep '^(foobar|__stack_chk_fail)$'`
+# other than __stack_chk_fail or __stack_chk_fail_local. However,
+# compilers like that have not been encountered in practice.
+libc_undefs=`echo "$libc_undefs" | \
+ egrep '^(foobar|__stack_chk_fail|__stack_chk_fail_local)$'`
case "$libc_undefs" in
foobar) libc_cv_predef_stack_protector=no ;;
'__stack_chk_fail
+foobar'|'__stack_chk_fail_local
foobar') libc_cv_predef_stack_protector=yes ;;
*) as_fn_error $? "unexpected symbols in test: $libc_undefs" "$LINENO" 5 ;;
esac
diff --git a/configure.ac b/configure.ac
index a64aeb9..de0a40f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1667,12 +1667,14 @@ echo >&AS_MESSAGE_LOG_FD "libc_undefs='$libc_undefs'"
# symbols (resolved by the linker), so filter out unknown symbols.
# This will fail to produce the correct result if the compiler
# defaults to -fstack-protector but this produces an undefined symbol
-# other than __stack_chk_fail. However, compilers like that have not
-# been encountered in practice.
-libc_undefs=`echo "$libc_undefs" | egrep '^(foobar|__stack_chk_fail)$'`
+# other than __stack_chk_fail or __stack_chk_fail_local. However,
+# compilers like that have not been encountered in practice.
+libc_undefs=`echo "$libc_undefs" | \
+ egrep '^(foobar|__stack_chk_fail|__stack_chk_fail_local)$'`
case "$libc_undefs" in
foobar) libc_cv_predef_stack_protector=no ;;
'__stack_chk_fail
+foobar'|'__stack_chk_fail_local
foobar') libc_cv_predef_stack_protector=yes ;;
*) AC_MSG_ERROR([unexpected symbols in test: $libc_undefs]) ;;
esac],
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 9 +++++++++
configure | 8 +++++---
configure.ac | 8 +++++---
3 files changed, 19 insertions(+), 6 deletions(-)
hooks/post-receive
--
GNU C Library master sources