Filter out unknown symbols in stack-protector test.

This commit is contained in:
Joseph Myers 2012-05-21 23:26:27 +00:00
parent c5b3a2c05b
commit 59f0c22ed2
3 changed files with 20 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2012-05-21 Joseph Myers <joseph@codesourcery.com>
* configure.in (libc_cv_predef_stack_protector): Only consider
"foobar" and "__stack_chk_fail" lines in libc_undefs.
* configure: Regenerated.
2012-05-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_SET_ERRNO):

7
configure vendored
View file

@ -7696,6 +7696,13 @@ libc_undefs=`$NM -u conftest.o |
as_fn_error $? "confusing output from $NM -u" "$LINENO" 5
}
echo >&5 "libc_undefs='$libc_undefs'"
# On some architectures, there are architecture-specific undefined
# 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)$'`
case "$libc_undefs" in
foobar) libc_cv_predef_stack_protector=no ;;
'__stack_chk_fail

View file

@ -2072,6 +2072,13 @@ libc_undefs=`$NM -u conftest.o |
AC_MSG_ERROR([confusing output from $NM -u])
}
echo >&AS_MESSAGE_LOG_FD "libc_undefs='$libc_undefs'"
# On some architectures, there are architecture-specific undefined
# 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)$'`
case "$libc_undefs" in
foobar) libc_cv_predef_stack_protector=no ;;
'__stack_chk_fail