This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Build failures in powerpc32/powerpc64 related to _exit
- From: "Steve Munroe" <sjmunroe at us dot ibm dot com>
- To: libc-alpha at sources dot redhat dot com
- Cc: "Peter Bergner" <bergner at us dot ibm dot com>
- Date: Mon, 16 Sep 2002 17:53:14 -0500
- Subject: Build failures in powerpc32/powerpc64 related to _exit
I pulled the cvs head this morning and saw the following on powerpc32
(and something similar for powerpc64):
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to
`__syscall_exit'
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to
`__GI__exit'
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to `_exit'
There are a number of issues but the two most interesting are:
1a) A libc_hidden_def(_exit) statement has been added to
./sysdeps/unix/sysv/linux/_exit.c
1b) A HIDDEN_JUMPTARGET(_exit) has been added to:
./sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
(and ./sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S) which
generates the "__GI" prefix for _exit.
but ./include/unistd.h contains the following comment:
// XXX Normally we should be able to hide _exit. But in the thread library
// XXX we might need to overload this function so that all threads can be
// XXX killed.
// libc_hidden_proto (_exit)
Does any one know the final resolution of this? (will _exit be hidden or
not?)
The other issue is that powerpc32 does not define its own INLINE_SYSCALL
macro and the default INLINE_SYSCALL macro generates a reference to
__syscall_exit which is unresolved.
Is any one else working on this? Powerpc64 has its own INLINE_SYSCALL
macro and I could take a stab at it ...