I just merged a patch to glibc 
<http://sourceware.org/ml/libc-ports/2009-06/msg00015.html> to add the 
missing definitions of __aeabi_stdin, __aeabi_stdout and __aeabi_stderr 
required by the ARM CLIBABI.  uClibc uses the same code to provide the 
__aeabi_* symbols and so needs the same fix.  Please commit this patch if 
OK.

diff --git a/libc/sysdeps/linux/arm/aeabi_lcsts.c 
b/libc/sysdeps/linux/arm/aeabi_lcsts.c
index 99c7985..0c620d4 100644
--- a/libc/sysdeps/linux/arm/aeabi_lcsts.c
+++ b/libc/sysdeps/linux/arm/aeabi_lcsts.c
@@ -81,4 +81,19 @@ eabi_constant (TMP_MAX);
 eabi_constant (FILENAME_MAX);
 eabi_constant (L_tmpnam);
 
+FILE *__aeabi_stdin attribute_hidden;
+FILE *__aeabi_stdout attribute_hidden;
+FILE *__aeabi_stderr attribute_hidden;
+
+static void __attribute__ ((used))
+setup_aeabi_stdio (void)
+{
+  __aeabi_stdin = stdin;
+  __aeabi_stdout = stdout;
+  __aeabi_stderr = stderr;
+}
+
+static void (*fp) (void) __attribute__ ((used, section (".preinit_array")))
+  = setup_aeabi_stdio;
+
 eabi_constant (CLOCKS_PER_SEC);

-- 
Joseph S. Myers
jos...@codesourcery.com
_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc

Reply via email to