(fwd) uclibc toolchain building fails for sparc [wbx@openadk.org]

Submitted by Waldemar Brodkorb on March 10, 2014, 12:05 p.m.


Message ID 20140310120513.GS4148@waldemar-brodkorb.de
State New
Headers show

Commit Message

Waldemar Brodkorb March 10, 2014, 12:05 p.m.

I am using this patch to let uClibc compile.

Not sure if it right, I do not understand the alias/hidden symbol 
magic used in uClibc ;)

best regards

----- Forwarded message from Waldemar Brodkorb <wbx@openadk.org> -----

Date: Wed, 19 Feb 2014 07:28:06 +0100
From: Waldemar Brodkorb <wbx@openadk.org>
User-Agent: Mutt/1.5.21 (2010-09-15)
To: uclibc@uclibc.org
Subject: uclibc toolchain building fails for sparc


I recently updated my stuff to uCLibc git, to get support for MIPS64
N64. Now the sparc toolchain is not building anymore:
-nostartfiles -Wl,-EB -shared -Wl,--warn-common -Wl,--warn-once
-Wl,-z,combreloc -Wl,-z,relro -Wl,-z,now -Wl,--hash-style=gnu
-Wl,-z,defs -Wl,-s  ./lib/ld-uClibc-0.9.34-git.so
-Wl,-soname=libpthread.so.0 -nostdlib -o
./libpthread/nptl/sysdeps/pthread/pt-crti.o -Wl,--whole-archive
libpthread/nptl/libpthread_so.a -Wl,--no-whole-archive
./lib/interp.os -L./lib ./lib/libc.so
libpthread/nptl/libpthread_so.a(pt-system.oS): In function
pt-system.c:(.text+0x104): undefined reference to `__wait4_nocancel'
lib/libpthread-0.9.34-git.so: hidden symbol `__wait4_nocancel' isn't
final link failed: Bad value
collect2: error: ld returned 1 exit status
make[7]: *** [lib/libpthread.so] Error 1
make[6]: ***
Error 2
make[5]: *** [uClibc-compile] Error 2
make[4]: *** [toolchain/fixup] Error 2
make[3]: *** [world] Error 2
make[2]: *** [all] Error 2
Bulk build failed!

Any help would be really nice.
thanks in advance

Patch hide | download patch | download mbox

diff -Nur uClibc- uClibc-
--- uClibc-	2014-03-01 19:15:53.000000000 +0100
+++ uClibc-	2014-03-01 19:16:42.000000000 +0100
@@ -176,7 +176,7 @@ 
 #endif /* Use BSD.  */
 #ifdef _LIBC
-extern __pid_t __wait4_nocancel(__pid_t, __WAIT_STATUS, int, struct rusage *) attribute_hidden;
+extern __pid_t __wait4_nocancel(__pid_t, __WAIT_STATUS, int, struct rusage *);