Add uClibc-0.9.29:
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat May 19 22:52:47 2007 +0000 (2007-05-19)
changeset 10869407950a2a2
parent 107 06d3636f6611
child 109 d95ccd73ed92
Add uClibc-0.9.29:
- associated patch set
- update the munging function to accomodate the new config variables
libfloat version was missing from the previous commit... :-(
Better handle the case where the sample directory already exist but isn't under revision control, and in case the destination file doesn't exist in the sample directory.
config/global.in
config/target.in
patches/uClibc/0.9.29/100-conditional-sched_affinity.patch
patches/uClibc/0.9.29/200-uClibc-0.9.29-fix-fget_putc.patch.dont_apply
patches/uClibc/0.9.29/300-fix-gethostent_r-failure-retval.patch
patches/uClibc/0.9.29/400-bits_sysnum_h.patch
samples/armeb-unknown-linux-uclibc/crosstool.config
samples/armeb-unknown-linux-uclibc/uClibc-0.9.28.3.config
samples/armeb-unknown-linux-uclibc/uClibc-0.9.29.config
scripts/build/libc_uClibc.sh
scripts/build/libfloat.sh
scripts/saveSample.sh
     1.1 --- a/config/global.in	Sat May 19 13:10:11 2007 +0000
     1.2 +++ b/config/global.in	Sat May 19 22:52:47 2007 +0000
     1.3 @@ -238,15 +238,16 @@
     1.4  
     1.5  config LOG_SEE_TOOLS_WARN
     1.6      bool
     1.7 -    prompt "See warnings from the tool builds"
     1.8 +    prompt "Warnings from the tool builds as CT warnings"
     1.9      default n
    1.10      depends on ! LOG_ERROR
    1.11      help
    1.12 -      If you say Y here, then you will see the warning lines from the
    1.13 -      components builds.
    1.14 +      Treat warnings fron the different tools as crosstool warnings.
    1.15 +      If you say 'y' here, then those warnings will be prefixed with
    1.16 +      '[WARN ]' instead of the default '[ALL  ]'.
    1.17  
    1.18 -      It should suffice to say N here, as those will anyway be visible
    1.19 -      in the log file (if you want one).
    1.20 +      You can safely say 'n' here. Those warnings will anyway be
    1.21 +      recorded in the log file (provided you configured one).
    1.22  
    1.23  config LOG_PROGRESS_BAR
    1.24      bool
     2.1 --- a/config/target.in	Sat May 19 13:10:11 2007 +0000
     2.2 +++ b/config/target.in	Sat May 19 22:52:47 2007 +0000
     2.3 @@ -205,6 +205,11 @@
     2.4        
     2.5        You should check gcc before deciding to use libfloat.
     2.6  
     2.7 +config LIBFLOAT_VERSION
     2.8 +    string
     2.9 +    default "990616.orig"
    2.10 +    depends on ARCH_FLOAT_SW_LIBFLOAT
    2.11 +
    2.12  config TARGET_CFLAGS
    2.13      string
    2.14      prompt "Target CFLAGS"
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/patches/uClibc/0.9.29/100-conditional-sched_affinity.patch	Sat May 19 22:52:47 2007 +0000
     3.3 @@ -0,0 +1,53 @@
     3.4 +diff -ur uClibc-0.9.29/libc/sysdeps/linux/common/sched_getaffinity.c uClibc-0.9.29-patched/libc/sysdeps/linux/common/sched_getaffinity.c
     3.5 +--- uClibc-0.9.29/libc/sysdeps/linux/common/sched_getaffinity.c	2007-02-12 16:52:32.000000000 -0600
     3.6 ++++ uClibc-0.9.29-patched/libc/sysdeps/linux/common/sched_getaffinity.c	2007-05-09 18:05:09.397411811 -0500
     3.7 +@@ -29,6 +29,7 @@
     3.8 + #include <sys/param.h>
     3.9 + #include <sys/types.h>
    3.10 + 
    3.11 ++#ifdef __NR_sched_getaffinity
    3.12 + libc_hidden_proto(memset)
    3.13 + 
    3.14 + #define __NR___syscall_sched_getaffinity __NR_sched_getaffinity
    3.15 +@@ -48,5 +49,15 @@
    3.16 + 	}
    3.17 + 	return res;
    3.18 + }
    3.19 ++#else
    3.20 ++/*
    3.21 ++int sched_getaffinity(pid_t pid, size_t cpusetsize, cpu_set_t *cpuset)
    3.22 ++{
    3.23 ++	__set_errno(ENOSYS);
    3.24 ++	return -1;
    3.25 ++}
    3.26 ++*/
    3.27 + #endif
    3.28 + #endif
    3.29 ++
    3.30 ++#endif
    3.31 +diff -ur uClibc-0.9.29/libc/sysdeps/linux/common/sched_setaffinity.c uClibc-0.9.29-patched/libc/sysdeps/linux/common/sched_setaffinity.c
    3.32 +--- uClibc-0.9.29/libc/sysdeps/linux/common/sched_setaffinity.c	2007-02-12 16:52:32.000000000 -0600
    3.33 ++++ uClibc-0.9.29-patched/libc/sysdeps/linux/common/sched_setaffinity.c	2007-05-09 18:05:09.397411811 -0500
    3.34 +@@ -31,6 +31,7 @@
    3.35 + #include <sys/types.h>
    3.36 + #include <alloca.h>
    3.37 + 
    3.38 ++#ifdef __NR_sched_setaffinity
    3.39 + libc_hidden_proto(getpid)
    3.40 + 
    3.41 + #define __NR___syscall_sched_setaffinity __NR_sched_setaffinity
    3.42 +@@ -74,5 +75,14 @@
    3.43 + 
    3.44 + 	return INLINE_SYSCALL (sched_setaffinity, 3, pid, cpusetsize, cpuset);
    3.45 + }
    3.46 ++#else
    3.47 ++/*
    3.48 ++int sched_setaffinity(pid_t pid, size_t cpusetsize, const cpu_set_t *cpuset)
    3.49 ++{
    3.50 ++	__set_errno(ENOSYS);
    3.51 ++	return -1;
    3.52 ++}
    3.53 ++*/
    3.54 ++#endif
    3.55 + #endif
    3.56 + #endif
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/patches/uClibc/0.9.29/200-uClibc-0.9.29-fix-fget_putc.patch.dont_apply	Sat May 19 22:52:47 2007 +0000
     4.3 @@ -0,0 +1,396 @@
     4.4 +diff -ur uClibc-0.9.29/libc/inet/rpc/rcmd.c uClibc-0.9.29-patched/libc/inet/rpc/rcmd.c
     4.5 +--- uClibc-0.9.29/libc/inet/rpc/rcmd.c	2007-01-10 11:46:19.000000000 -0600
     4.6 ++++ uClibc-0.9.29-patched/libc/inet/rpc/rcmd.c	2007-05-09 18:05:21.638421151 -0500
     4.7 +@@ -126,7 +126,7 @@
     4.8 + libc_hidden_proto(listen)
     4.9 + libc_hidden_proto(sigsetmask)
    4.10 + libc_hidden_proto(getc_unlocked)
    4.11 +-libc_hidden_proto(__fgetc_unlocked)
    4.12 ++//libc_hidden_proto(fgetc_unlocked)
    4.13 + libc_hidden_proto(fopen)
    4.14 + libc_hidden_proto(fclose)
    4.15 + libc_hidden_proto(fprintf)
    4.16 +diff -ur uClibc-0.9.29/libc/inet/rpc/ruserpass.c uClibc-0.9.29-patched/libc/inet/rpc/ruserpass.c
    4.17 +--- uClibc-0.9.29/libc/inet/rpc/ruserpass.c	2006-03-23 05:14:16.000000000 -0600
    4.18 ++++ uClibc-0.9.29-patched/libc/inet/rpc/ruserpass.c	2007-05-09 18:05:21.638421151 -0500
    4.19 +@@ -63,7 +63,7 @@
    4.20 + libc_hidden_proto(fopen)
    4.21 + libc_hidden_proto(fclose)
    4.22 + libc_hidden_proto(getc_unlocked)
    4.23 +-libc_hidden_proto(__fgetc_unlocked)
    4.24 ++//libc_hidden_proto(__fgetc_unlocked)
    4.25 + 
    4.26 + #define _(X)  (X)
    4.27 + /* #include "ftp_var.h" */
    4.28 +diff -ur uClibc-0.9.29/libc/misc/error/error.c uClibc-0.9.29-patched/libc/misc/error/error.c
    4.29 +--- uClibc-0.9.29/libc/misc/error/error.c	2006-05-04 09:44:13.000000000 -0500
    4.30 ++++ uClibc-0.9.29-patched/libc/misc/error/error.c	2007-05-09 18:05:21.646421810 -0500
    4.31 +@@ -30,11 +30,14 @@
    4.32 + libc_hidden_proto(strerror)
    4.33 + libc_hidden_proto(fprintf)
    4.34 + libc_hidden_proto(exit)
    4.35 ++//#undef putc
    4.36 + libc_hidden_proto(putc)
    4.37 ++libc_hidden_proto(fputc)
    4.38 + libc_hidden_proto(vfprintf)
    4.39 + libc_hidden_proto(fflush)
    4.40 +-libc_hidden_proto(fputc)
    4.41 +-libc_hidden_proto(__fputc_unlocked)
    4.42 ++//#ifdef __UCLIBC_HAS_STDIO_PUTC_MACRO__
    4.43 ++libc_hidden_proto(fputc_unlocked)
    4.44 ++//#endif
    4.45 + 
    4.46 + /* This variable is incremented each time `error' is called.  */
    4.47 + unsigned int error_message_count = 0;
    4.48 +diff -ur uClibc-0.9.29/libc/misc/ttyent/getttyent.c uClibc-0.9.29-patched/libc/misc/ttyent/getttyent.c
    4.49 +--- uClibc-0.9.29/libc/misc/ttyent/getttyent.c	2006-12-07 17:24:02.000000000 -0600
    4.50 ++++ uClibc-0.9.29-patched/libc/misc/ttyent/getttyent.c	2007-05-09 18:05:21.646421810 -0500
    4.51 +@@ -44,8 +44,10 @@
    4.52 + libc_hidden_proto(__fsetlocking)
    4.53 + libc_hidden_proto(rewind)
    4.54 + libc_hidden_proto(fgets_unlocked)
    4.55 ++//#undef getc_unlocked
    4.56 + libc_hidden_proto(getc_unlocked)
    4.57 +-libc_hidden_proto(__fgetc_unlocked)
    4.58 ++//#undef fgetc_unlocked
    4.59 ++libc_hidden_proto(fgetc_unlocked)
    4.60 + libc_hidden_proto(fopen)
    4.61 + libc_hidden_proto(fclose)
    4.62 + libc_hidden_proto(abort)
    4.63 +diff -ur uClibc-0.9.29/libc/pwd_grp/pwd_grp.c uClibc-0.9.29-patched/libc/pwd_grp/pwd_grp.c
    4.64 +--- uClibc-0.9.29/libc/pwd_grp/pwd_grp.c	2007-04-13 03:32:18.000000000 -0500
    4.65 ++++ uClibc-0.9.29-patched/libc/pwd_grp/pwd_grp.c	2007-05-09 18:05:21.638421151 -0500
    4.66 +@@ -43,11 +43,12 @@
    4.67 + libc_hidden_proto(strtoul)
    4.68 + libc_hidden_proto(rewind)
    4.69 + libc_hidden_proto(fgets_unlocked)
    4.70 +-libc_hidden_proto(__fputc_unlocked)
    4.71 + libc_hidden_proto(sprintf)
    4.72 + libc_hidden_proto(fopen)
    4.73 + libc_hidden_proto(fclose)
    4.74 + libc_hidden_proto(fprintf)
    4.75 ++//#undef fputc_unlocked
    4.76 ++libc_hidden_proto(fputc_unlocked)
    4.77 + #ifdef __UCLIBC_HAS_XLOCALE__
    4.78 + libc_hidden_proto(__ctype_b_loc)
    4.79 + #elif __UCLIBC_HAS_CTYPE_TABLES__
    4.80 +@@ -801,7 +802,7 @@
    4.81 + 
    4.82 + 			do {
    4.83 + 				if (!*m) {
    4.84 +-					if (__fputc_unlocked('\n', f) >= 0) {
    4.85 ++					if (fputc_unlocked('\n', f) >= 0) {
    4.86 + 						rv = 0;
    4.87 + 					}
    4.88 + 					break;
    4.89 +@@ -867,7 +868,7 @@
    4.90 + 		goto DO_UNLOCK;
    4.91 + 	}
    4.92 + 
    4.93 +-	if (__fputc_unlocked('\n', stream) > 0) {
    4.94 ++	if (fputc_unlocked('\n', stream) > 0) {
    4.95 + 		rv = 0;
    4.96 + 	}
    4.97 + 
    4.98 +diff -ur uClibc-0.9.29/libc/stdio/_scanf.c uClibc-0.9.29-patched/libc/stdio/_scanf.c
    4.99 +--- uClibc-0.9.29/libc/stdio/_scanf.c	2007-01-20 12:32:10.000000000 -0600
   4.100 ++++ uClibc-0.9.29-patched/libc/stdio/_scanf.c	2007-05-09 18:05:21.642421481 -0500
   4.101 +@@ -86,7 +86,8 @@
   4.102 + libc_hidden_proto(vsscanf)
   4.103 + libc_hidden_proto(fclose)
   4.104 + libc_hidden_proto(getc_unlocked)
   4.105 +-libc_hidden_proto(__fgetc_unlocked)
   4.106 ++//#undef fgetc_unlocked
   4.107 ++libc_hidden_proto(fgetc_unlocked)
   4.108 + #ifdef __UCLIBC_HAS_WCHAR__
   4.109 + libc_hidden_proto(wcslen)
   4.110 + libc_hidden_proto(vfwscanf)
   4.111 +diff -ur uClibc-0.9.29/libc/stdio/fgetc.c uClibc-0.9.29-patched/libc/stdio/fgetc.c
   4.112 +--- uClibc-0.9.29/libc/stdio/fgetc.c	2006-01-15 16:41:03.000000000 -0600
   4.113 ++++ uClibc-0.9.29-patched/libc/stdio/fgetc.c	2007-05-09 18:05:21.642421481 -0500
   4.114 +@@ -13,13 +13,13 @@
   4.115 + #undef getc
   4.116 + #undef getc_unlocked
   4.117 + 
   4.118 +-libc_hidden_proto(__fgetc_unlocked)
   4.119 ++libc_hidden_proto(fgetc_unlocked)
   4.120 + 
   4.121 + #ifdef __DO_UNLOCKED
   4.122 + 
   4.123 + libc_hidden_proto(fflush_unlocked)
   4.124 + 
   4.125 +-int __fgetc_unlocked(FILE *stream)
   4.126 ++int fgetc_unlocked(FILE *stream)
   4.127 + {
   4.128 + 	__STDIO_STREAM_VALIDATE(stream);
   4.129 + 
   4.130 +@@ -73,26 +73,22 @@
   4.131 + 
   4.132 + 	return EOF;
   4.133 + }
   4.134 +-libc_hidden_def(__fgetc_unlocked)
   4.135 +-
   4.136 +-libc_hidden_proto(fgetc_unlocked)
   4.137 +-strong_alias(__fgetc_unlocked,fgetc_unlocked)
   4.138 + libc_hidden_def(fgetc_unlocked)
   4.139 + 
   4.140 + //libc_hidden_proto(__getc_unlocked)
   4.141 +-//strong_alias(__fgetc_unlocked,__getc_unlocked)
   4.142 ++//strong_alias(fgetc_unlocked,__getc_unlocked)
   4.143 + //libc_hidden_def(__getc_unlocked)
   4.144 + 
   4.145 + libc_hidden_proto(getc_unlocked)
   4.146 +-strong_alias(__fgetc_unlocked,getc_unlocked)
   4.147 ++strong_alias(fgetc_unlocked,getc_unlocked)
   4.148 + libc_hidden_def(getc_unlocked)
   4.149 + 
   4.150 + #ifndef __UCLIBC_HAS_THREADS__
   4.151 + libc_hidden_proto(fgetc)
   4.152 +-strong_alias(__fgetc_unlocked,fgetc)
   4.153 ++strong_alias(fgetc_unlocked,fgetc)
   4.154 + libc_hidden_def(fgetc)
   4.155 + 
   4.156 +-strong_alias(__fgetc_unlocked,getc)
   4.157 ++strong_alias(fgetc_unlocked,getc)
   4.158 + #endif
   4.159 + 
   4.160 + #elif defined __UCLIBC_HAS_THREADS__
   4.161 +diff -ur uClibc-0.9.29/libc/stdio/fgets.c uClibc-0.9.29-patched/libc/stdio/fgets.c
   4.162 +--- uClibc-0.9.29/libc/stdio/fgets.c	2006-01-15 16:41:03.000000000 -0600
   4.163 ++++ uClibc-0.9.29-patched/libc/stdio/fgets.c	2007-05-09 18:05:21.638421151 -0500
   4.164 +@@ -10,8 +10,7 @@
   4.165 + libc_hidden_proto(fgets_unlocked)
   4.166 + 
   4.167 + #ifdef __DO_UNLOCKED
   4.168 +-
   4.169 +-libc_hidden_proto(__fgetc_unlocked)
   4.170 ++libc_hidden_proto(fgetc_unlocked)
   4.171 + 
   4.172 + char *fgets_unlocked(char *__restrict s, int n,
   4.173 + 					   register FILE * __restrict stream)
   4.174 +@@ -38,7 +37,7 @@
   4.175 + 				break;
   4.176 + 			}
   4.177 + 		} else {
   4.178 +-			if ((c = __fgetc_unlocked(stream)) == EOF) {
   4.179 ++			if ((c = fgetc_unlocked(stream)) == EOF) {
   4.180 + 				if (__FERROR_UNLOCKED(stream)) {
   4.181 + 					goto ERROR;
   4.182 + 				}
   4.183 +diff -ur uClibc-0.9.29/libc/stdio/fputc.c uClibc-0.9.29-patched/libc/stdio/fputc.c
   4.184 +--- uClibc-0.9.29/libc/stdio/fputc.c	2007-04-14 12:03:18.000000000 -0500
   4.185 ++++ uClibc-0.9.29-patched/libc/stdio/fputc.c	2007-05-09 20:50:51.350629927 -0500
   4.186 +@@ -16,7 +16,7 @@
   4.187 + 
   4.188 + #ifdef __DO_UNLOCKED
   4.189 + 
   4.190 +-int __fputc_unlocked(int c, register FILE *stream)
   4.191 ++int fputc_unlocked(int c, register FILE *stream)
   4.192 + {
   4.193 + 	__STDIO_STREAM_VALIDATE(stream);
   4.194 + 
   4.195 +@@ -70,22 +70,22 @@
   4.196 +  BAD:
   4.197 + 	return EOF;
   4.198 + }
   4.199 +-libc_hidden_def(__fputc_unlocked)
   4.200 ++libc_hidden_def(fputc_unlocked)
   4.201 + 
   4.202 + /* exposing these would be fundamentally *wrong*! fix you, instead! */
   4.203 + /* libc_hidden_proto(fputc_unlocked) */
   4.204 +-strong_alias(__fputc_unlocked,fputc_unlocked)
   4.205 ++/* strong_alias(__fputc_unlocked,fputc_unlocked) */
   4.206 + /* exposing these would be fundamentally *wrong*! fix you, instead! */
   4.207 + /* libc_hidden_def(fputc_unlocked) */
   4.208 + 
   4.209 + libc_hidden_proto(putc_unlocked)
   4.210 +-strong_alias(__fputc_unlocked,putc_unlocked)
   4.211 ++strong_alias(fputc_unlocked,putc_unlocked)
   4.212 + libc_hidden_def(putc_unlocked)
   4.213 + #ifndef __UCLIBC_HAS_THREADS__
   4.214 +-strong_alias(__fputc_unlocked,fputc)
   4.215 ++strong_alias(fputc_unlocked,fputc)
   4.216 + 
   4.217 + libc_hidden_proto(putc)
   4.218 +-strong_alias(__fputc_unlocked,putc)
   4.219 ++strong_alias(fputc_unlocked,putc)
   4.220 + libc_hidden_def(putc)
   4.221 + #endif
   4.222 + 
   4.223 +diff -ur uClibc-0.9.29/libc/stdio/getchar.c uClibc-0.9.29-patched/libc/stdio/getchar.c
   4.224 +--- uClibc-0.9.29/libc/stdio/getchar.c	2006-12-19 22:30:25.000000000 -0600
   4.225 ++++ uClibc-0.9.29-patched/libc/stdio/getchar.c	2007-05-09 18:05:21.642421481 -0500
   4.226 +@@ -7,7 +7,8 @@
   4.227 + 
   4.228 + #include "_stdio.h"
   4.229 + 
   4.230 +-libc_hidden_proto(__fgetc_unlocked)
   4.231 ++//#undef fgetc_unlocked
   4.232 ++libc_hidden_proto(fgetc_unlocked)
   4.233 + 
   4.234 + #undef getchar
   4.235 + #ifdef __DO_UNLOCKED
   4.236 +diff -ur uClibc-0.9.29/libc/stdio/getdelim.c uClibc-0.9.29-patched/libc/stdio/getdelim.c
   4.237 +--- uClibc-0.9.29/libc/stdio/getdelim.c	2006-02-13 02:52:46.000000000 -0600
   4.238 ++++ uClibc-0.9.29-patched/libc/stdio/getdelim.c	2007-05-09 18:05:21.642421481 -0500
   4.239 +@@ -11,8 +11,8 @@
   4.240 + #include "_stdio.h"
   4.241 + 
   4.242 + libc_hidden_proto(getdelim)
   4.243 +-
   4.244 +-libc_hidden_proto(__fgetc_unlocked)
   4.245 ++//#undef fgetc_unlocked
   4.246 ++libc_hidden_proto(fgetc_unlocked)
   4.247 + 
   4.248 + /* Note: There is a defect in this function.  (size_t vs ssize_t). */
   4.249 + 
   4.250 +diff -ur uClibc-0.9.29/libc/stdio/old_vfprintf.c uClibc-0.9.29-patched/libc/stdio/old_vfprintf.c
   4.251 +--- uClibc-0.9.29/libc/stdio/old_vfprintf.c	2006-01-22 13:35:08.000000000 -0600
   4.252 ++++ uClibc-0.9.29-patched/libc/stdio/old_vfprintf.c	2007-05-09 18:05:21.642421481 -0500
   4.253 +@@ -149,7 +149,8 @@
   4.254 + libc_hidden_proto(strnlen)
   4.255 + libc_hidden_proto(memcpy)
   4.256 + libc_hidden_proto(putc_unlocked)
   4.257 +-libc_hidden_proto(__fputc_unlocked)
   4.258 ++//#undef fputc_unlocked
   4.259 ++libc_hidden_proto(fputc_unlocked)
   4.260 + libc_hidden_proto(__glibc_strerror_r)
   4.261 + 
   4.262 + /*  #undef __UCLIBC_HAS_FLOATS__ */
   4.263 +diff -ur uClibc-0.9.29/libc/stdio/putchar.c uClibc-0.9.29-patched/libc/stdio/putchar.c
   4.264 +--- uClibc-0.9.29/libc/stdio/putchar.c	2006-01-13 18:58:03.000000000 -0600
   4.265 ++++ uClibc-0.9.29-patched/libc/stdio/putchar.c	2007-05-09 18:05:21.642421481 -0500
   4.266 +@@ -7,7 +7,8 @@
   4.267 + 
   4.268 + #include "_stdio.h"
   4.269 + 
   4.270 +-libc_hidden_proto(__fputc_unlocked)
   4.271 ++//#undef fputc_unlocked
   4.272 ++libc_hidden_proto(fputc_unlocked)
   4.273 + 
   4.274 + #undef putchar
   4.275 + #ifdef __DO_UNLOCKED
   4.276 +diff -ur uClibc-0.9.29/libc/stdio/puts.c uClibc-0.9.29-patched/libc/stdio/puts.c
   4.277 +--- uClibc-0.9.29/libc/stdio/puts.c	2006-01-13 18:58:03.000000000 -0600
   4.278 ++++ uClibc-0.9.29-patched/libc/stdio/puts.c	2007-05-09 18:05:21.642421481 -0500
   4.279 +@@ -7,7 +7,8 @@
   4.280 + 
   4.281 + #include "_stdio.h"
   4.282 + 
   4.283 +-libc_hidden_proto(__fputc_unlocked)
   4.284 ++//#undef fputc_unlocked
   4.285 ++libc_hidden_proto(fputc_unlocked)
   4.286 + libc_hidden_proto(fputs_unlocked)
   4.287 + 
   4.288 + int puts(register const char * __restrict s)
   4.289 +@@ -25,7 +26,7 @@
   4.290 + 	/* Note: Nonportable as fputs need only return nonnegative on success. */
   4.291 + 	if ((n = fputs_unlocked(s, stream)) != EOF) {
   4.292 + 		++n;
   4.293 +-		if (__fputc_unlocked('\n', stream) == EOF) {
   4.294 ++		if (fputc_unlocked('\n', stream) == EOF) {
   4.295 + 			n = EOF;
   4.296 + 		}
   4.297 + 	}
   4.298 +diff -ur uClibc-0.9.29/libc/stdio/putwchar.c uClibc-0.9.29-patched/libc/stdio/putwchar.c
   4.299 +--- uClibc-0.9.29/libc/stdio/putwchar.c	2006-01-14 14:16:19.000000000 -0600
   4.300 ++++ uClibc-0.9.29-patched/libc/stdio/putwchar.c	2007-05-09 18:05:21.642421481 -0500
   4.301 +@@ -22,7 +22,8 @@
   4.302 + 
   4.303 + #elif defined __UCLIBC_HAS_THREADS__
   4.304 + 
   4.305 +-libc_hidden_proto(__fputc_unlocked)
   4.306 ++//#undef fputc_unlocked
   4.307 ++libc_hidden_proto(fputc_unlocked)
   4.308 + /* psm: should this be fputwc? */
   4.309 + libc_hidden_proto(fputc)
   4.310 + 
   4.311 +diff -ur uClibc-0.9.29/libc/sysdeps/linux/common/bits/uClibc_stdio.h uClibc-0.9.29-patched/libc/sysdeps/linux/common/bits/uClibc_stdio.h
   4.312 +--- uClibc-0.9.29/libc/sysdeps/linux/common/bits/uClibc_stdio.h	2007-01-28 07:16:58.000000000 -0600
   4.313 ++++ uClibc-0.9.29-patched/libc/sysdeps/linux/common/bits/uClibc_stdio.h	2007-05-09 20:56:02.408110608 -0500
   4.314 +@@ -381,33 +381,29 @@
   4.315 + # define __FEOF(__stream)		__FEOF_UNLOCKED(__stream)
   4.316 + #endif
   4.317 + 
   4.318 +-extern int __fgetc_unlocked(FILE *__stream);
   4.319 +-extern int __fputc_unlocked(int __c, FILE *__stream);
   4.320 +-
   4.321 + /* First define the default definitions.
   4.322 +    They are overridden below as necessary. */
   4.323 +-#define __FGETC_UNLOCKED(__stream)		(__fgetc_unlocked)((__stream))
   4.324 ++#define __FGETC_UNLOCKED(__stream)		(fgetc_unlocked)((__stream))
   4.325 + #define __FGETC(__stream)			(fgetc)((__stream))
   4.326 +-#define __GETC_UNLOCKED_MACRO(__stream)		(__fgetc_unlocked)((__stream))
   4.327 +-#define __GETC_UNLOCKED(__stream)		(__fgetc_unlocked)((__stream))
   4.328 ++#define __GETC_UNLOCKED_MACRO(__stream)		(fgetc_unlocked)((__stream))
   4.329 ++#define __GETC_UNLOCKED(__stream)		(fgetc_unlocked)((__stream))
   4.330 + #define __GETC(__stream)			(fgetc)((__stream))
   4.331 + 
   4.332 +-#define __FPUTC_UNLOCKED(__c, __stream)		(__fputc_unlocked)((__c),(__stream))
   4.333 ++#define __FPUTC_UNLOCKED(__c, __stream)		(fputc_unlocked)((__c),(__stream))
   4.334 + #define __FPUTC(__c, __stream)			(fputc)((__c),(__stream))
   4.335 +-#define __PUTC_UNLOCKED_MACRO(__c, __stream)	(__fputc_unlocked)((__c),(__stream))
   4.336 +-#define __PUTC_UNLOCKED(__c, __stream)		(__fputc_unlocked)((__c),(__stream))
   4.337 ++#define __PUTC_UNLOCKED_MACRO(__c, __stream)	(fputc_unlocked)((__c),(__stream))
   4.338 ++#define __PUTC_UNLOCKED(__c, __stream)		(fputc_unlocked)((__c),(__stream))
   4.339 + #define __PUTC(__c, __stream)			(fputc)((__c),(__stream))
   4.340 + 
   4.341 + 
   4.342 + #ifdef __STDIO_GETC_MACRO
   4.343 +-
   4.344 + extern FILE *__stdin;			/* For getchar() macro. */
   4.345 + 
   4.346 + # undef  __GETC_UNLOCKED_MACRO
   4.347 + # define __GETC_UNLOCKED_MACRO(__stream)				\
   4.348 + 		( ((__stream)->__bufpos < (__stream)->__bufgetc_u)	\
   4.349 + 		  ? (*(__stream)->__bufpos++)				\
   4.350 +-		  : __fgetc_unlocked(__stream) )
   4.351 ++		  : fgetc_unlocked(__stream) )
   4.352 + 
   4.353 + # if 0
   4.354 + 	/* Classic macro approach.  getc{_unlocked} can have side effects. */
   4.355 +@@ -453,20 +449,17 @@
   4.356 + #  endif
   4.357 + # endif
   4.358 + 
   4.359 +-#else
   4.360 +-
   4.361 + #endif /* __STDIO_GETC_MACRO */
   4.362 + 
   4.363 + 
   4.364 + #ifdef __STDIO_PUTC_MACRO
   4.365 +-
   4.366 + extern FILE *__stdout;			/* For putchar() macro. */
   4.367 + 
   4.368 + # undef  __PUTC_UNLOCKED_MACRO
   4.369 + # define __PUTC_UNLOCKED_MACRO(__c, __stream)				\
   4.370 + 		( ((__stream)->__bufpos < (__stream)->__bufputc_u)	\
   4.371 + 		  ? (*(__stream)->__bufpos++) = (__c)			\
   4.372 +-		  : __fputc_unlocked((__c),(__stream)) )
   4.373 ++		  : (fputc_unlocked((__c),(__stream)) )
   4.374 + 
   4.375 + # if 0
   4.376 + 	/* Classic macro approach.  putc{_unlocked} can have side effects.*/
   4.377 +@@ -489,7 +482,8 @@
   4.378 + 		}) )
   4.379 + 
   4.380 + #  undef  __PUTC_UNLOCKED
   4.381 +-#  define __PUTC_UNLOCKED(__c, __stream)	__FPUTC_UNLOCKED((__c), (__stream))
   4.382 ++#  define __PUTC_UNLOCKED(__c, __stream)				\
   4.383 ++					__FPUTC_UNLOCKED((__c), (__stream))
   4.384 + 
   4.385 + #  ifdef __UCLIBC_HAS_THREADS__
   4.386 + #   undef  __FPUTC
   4.387 +diff -ur uClibc-0.9.29/libc/unistd/getpass.c uClibc-0.9.29-patched/libc/unistd/getpass.c
   4.388 +--- uClibc-0.9.29/libc/unistd/getpass.c	2006-07-05 05:58:38.000000000 -0500
   4.389 ++++ uClibc-0.9.29-patched/libc/unistd/getpass.c	2007-05-09 18:05:21.642421481 -0500
   4.390 +@@ -36,7 +36,8 @@
   4.391 + libc_hidden_proto(fputs)
   4.392 + libc_hidden_proto(fputc)
   4.393 + libc_hidden_proto(putc)
   4.394 +-libc_hidden_proto(__fputc_unlocked)
   4.395 ++//#undef fputc_unlocked
   4.396 ++libc_hidden_proto(fputc_unlocked)
   4.397 + 
   4.398 + /* It is desirable to use this bit on systems that have it.
   4.399 +    The only bit of terminal state we want to twiddle is echoing, which is
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/patches/uClibc/0.9.29/300-fix-gethostent_r-failure-retval.patch	Sat May 19 22:52:47 2007 +0000
     5.3 @@ -0,0 +1,12 @@
     5.4 +diff -ur uClibc-0.9.29/libc/inet/resolv.c uClibc-0.9.29-patched/libc/inet/resolv.c
     5.5 +--- uClibc-0.9.29/libc/inet/resolv.c	2007-04-23 12:01:05.000000000 -0500
     5.6 ++++ uClibc-0.9.29-patched/libc/inet/resolv.c	2007-05-09 18:05:33.563404419 -0500
     5.7 +@@ -1700,7 +1700,7 @@
     5.8 + int gethostent_r(struct hostent *result_buf, char *buf, size_t buflen,
     5.9 + 	struct hostent **result, int *h_errnop)
    5.10 + {
    5.11 +-    int ret;
    5.12 ++    int ret = HOST_NOT_FOUND;
    5.13 + 
    5.14 +     __UCLIBC_MUTEX_LOCK(mylock);
    5.15 +     if (__gethostent_fp == NULL) {
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/patches/uClibc/0.9.29/400-bits_sysnum_h.patch	Sat May 19 22:52:47 2007 +0000
     6.3 @@ -0,0 +1,33 @@
     6.4 +YEM-20070519:
     6.5 +bits/sysnum.h needs a cross compiler to be built. Fortunately, this
     6.6 +header is not needed to build gcc. Move generation of this header.
     6.7 +
     6.8 +Index: uClibc/Makefile.in
     6.9 +===================================================================
    6.10 +--- uClibc/Makefile.in	(revision 18651)
    6.11 ++++ uClibc/Makefile.in	(working copy)
    6.12 +@@ -91,6 +91,11 @@
    6.13 + 			$(LN) -fs $$i .; \
    6.14 + 		done; \
    6.15 + 	fi
    6.16 ++ifeq ($(UCLIBC_HAS_LOCALE),y)
    6.17 ++	$(MAKE) locale_headers
    6.18 ++endif
    6.19 ++
    6.20 ++pregen: headers
    6.21 + 	$(Q)\
    6.22 + 	set -e; \
    6.23 + 	cd $(top_builddir); \
    6.24 +@@ -102,12 +107,7 @@
    6.25 + 	else \
    6.26 + 		mv -f $$tmp include/bits/sysnum.h; \
    6.27 + 	fi
    6.28 +-ifeq ($(UCLIBC_HAS_LOCALE),y)
    6.29 +-	$(MAKE) locale_headers
    6.30 +-endif
    6.31 + 
    6.32 +-pregen: headers
    6.33 +-
    6.34 + install: install_runtime install_dev
    6.35 + 
    6.36 + 
     7.1 --- a/samples/armeb-unknown-linux-uclibc/crosstool.config	Sat May 19 13:10:11 2007 +0000
     7.2 +++ b/samples/armeb-unknown-linux-uclibc/crosstool.config	Sat May 19 22:52:47 2007 +0000
     7.3 @@ -1,13 +1,13 @@
     7.4  #
     7.5  # Automatically generated make config: don't edit
     7.6  # crosstool-NG version: 0.0.3-svn
     7.7 -# Fri May 18 10:40:49 2007
     7.8 +# Sun May 20 00:00:02 2007
     7.9  #
    7.10  
    7.11  #
    7.12  # Paths and misc options
    7.13  #
    7.14 -CT_EXPERIMENTAL=y
    7.15 +# CT_EXPERIMENTAL is not set
    7.16  # CT_OBSOLETE is not set
    7.17  CT_PARALLEL_JOBS=1
    7.18  CT_LOAD=0
    7.19 @@ -78,6 +78,7 @@
    7.20  # CT_ARCH_FLOAT_HW is not set
    7.21  CT_ARCH_FLOAT_SW=y
    7.22  CT_ARCH_FLOAT_SW_LIBFLOAT=y
    7.23 +CT_LIBFLOAT_VERSION="990616.orig"
    7.24  CT_TARGET_CFLAGS=""
    7.25  
    7.26  #
    7.27 @@ -236,13 +237,10 @@
    7.28  #
    7.29  # CT_LIBC_GLIBC is not set
    7.30  CT_LIBC_UCLIBC=y
    7.31 -CT_LIBC_VERSION="0.9.28.3"
    7.32 +CT_LIBC_VERSION="0.9.29"
    7.33  CT_LIBC="uClibc"
    7.34  # CT_LIBC_SUPPORT_NPTL is not set
    7.35  CT_LIBC_SUPPORT_LINUXTHREADS=y
    7.36 -# CT_LIBC_THREADS_NPTL is not set
    7.37 -CT_LIBC_THREADS_LINUXTHREADS=y
    7.38 -# CT_LIBC_THREADS_NONE is not set
    7.39  # CT_LIBC_V_snapshot is not set
    7.40  # CT_LIBC_V_specific_date is not set
    7.41  # CT_LIBC_V_0_9_26 is not set
    7.42 @@ -250,8 +248,8 @@
    7.43  # CT_LIBC_V_0_9_28 is not set
    7.44  # CT_LIBC_V_0_9_28_1 is not set
    7.45  # CT_LIBC_V_0_9_28_2 is not set
    7.46 -CT_LIBC_V_0_9_28_3=y
    7.47 -# CT_LIBC_V_0_9_29 is not set
    7.48 +# CT_LIBC_V_0_9_28_3 is not set
    7.49 +CT_LIBC_V_0_9_29=y
    7.50  CT_LIBC_UCLIBC_DEBUG_LEVEL_0=y
    7.51  # CT_LIBC_UCLIBC_DEBUG_LEVEL_1 is not set
    7.52  # CT_LIBC_UCLIBC_DEBUG_LEVEL_2 is not set
    7.53 @@ -263,6 +261,4 @@
    7.54  # Debug facilities
    7.55  #
    7.56  # CT_DMALLOC is not set
    7.57 -# CT_DMALLOC_V_5_4_3 is not set
    7.58 -# CT_DMALLOC_V_5_5_2 is not set
    7.59  # CT_GDB is not set
     8.1 --- a/samples/armeb-unknown-linux-uclibc/uClibc-0.9.28.3.config	Sat May 19 13:10:11 2007 +0000
     8.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.3 @@ -1,169 +0,0 @@
     8.4 -#
     8.5 -# Automatically generated make config: don't edit
     8.6 -#
     8.7 -# TARGET_alpha is not set
     8.8 -TARGET_arm=y
     8.9 -# TARGET_bfin is not set
    8.10 -# TARGET_cris is not set
    8.11 -# TARGET_e1 is not set
    8.12 -# TARGET_frv is not set
    8.13 -# TARGET_h8300 is not set
    8.14 -# TARGET_i386 is not set
    8.15 -# TARGET_i960 is not set
    8.16 -# TARGET_m68k is not set
    8.17 -# TARGET_microblaze is not set
    8.18 -# TARGET_mips is not set
    8.19 -# TARGET_nios is not set
    8.20 -# TARGET_nios2 is not set
    8.21 -# TARGET_powerpc is not set
    8.22 -# TARGET_sh is not set
    8.23 -# TARGET_sh64 is not set
    8.24 -# TARGET_sparc is not set
    8.25 -# TARGET_v850 is not set
    8.26 -# TARGET_x86_64 is not set
    8.27 -
    8.28 -#
    8.29 -# Target Architecture Features and Options
    8.30 -#
    8.31 -HAVE_ELF=y
    8.32 -ARCH_SUPPORTS_LITTLE_ENDIAN=y
    8.33 -TARGET_ARCH="arm"
    8.34 -ARCH_SUPPORTS_BIG_ENDIAN=y
    8.35 -# CONFIG_GENERIC_ARM is not set
    8.36 -# CONFIG_ARM610 is not set
    8.37 -# CONFIG_ARM710 is not set
    8.38 -# CONFIG_ARM720T is not set
    8.39 -# CONFIG_ARM920T is not set
    8.40 -# CONFIG_ARM922T is not set
    8.41 -# CONFIG_ARM926T is not set
    8.42 -# CONFIG_ARM1136JF_S is not set
    8.43 -# CONFIG_ARM_SA110 is not set
    8.44 -# CONFIG_ARM_SA1100 is not set
    8.45 -CONFIG_ARM_XSCALE=y
    8.46 -# ARCH_LITTLE_ENDIAN is not set
    8.47 -ARCH_BIG_ENDIAN=y
    8.48 -# ARCH_HAS_NO_MMU is not set
    8.49 -ARCH_HAS_MMU=y
    8.50 -UCLIBC_HAS_FLOATS=y
    8.51 -# HAS_FPU is not set
    8.52 -UCLIBC_HAS_SOFT_FLOAT=y
    8.53 -DO_C99_MATH=y
    8.54 -KERNEL_SOURCE="/usr/src/linux"
    8.55 -C_SYMBOL_PREFIX=""
    8.56 -HAVE_DOT_CONFIG=y
    8.57 -
    8.58 -#
    8.59 -# General Library Settings
    8.60 -#
    8.61 -# HAVE_NO_PIC is not set
    8.62 -DOPIC=y
    8.63 -# HAVE_NO_SHARED is not set
    8.64 -HAVE_SHARED=y
    8.65 -# ARCH_HAS_NO_LDSO is not set
    8.66 -BUILD_UCLIBC_LDSO=y
    8.67 -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
    8.68 -LDSO_LDD_SUPPORT=y
    8.69 -LDSO_CACHE_SUPPORT=y
    8.70 -# LDSO_PRELOAD_FILE_SUPPORT is not set
    8.71 -LDSO_BASE_FILENAME="ld.so"
    8.72 -# LDSO_RUNPATH is not set
    8.73 -# DL_FINI_CRT_COMPAT is not set
    8.74 -UCLIBC_CTOR_DTOR=y
    8.75 -# HAS_NO_THREADS is not set
    8.76 -UCLIBC_HAS_THREADS=y
    8.77 -# PTHREADS_DEBUG_SUPPORT is not set
    8.78 -UCLIBC_HAS_LFS=y
    8.79 -UCLIBC_STATIC_LDCONFIG=y
    8.80 -# MALLOC is not set
    8.81 -# MALLOC_SIMPLE is not set
    8.82 -MALLOC_STANDARD=y
    8.83 -# MALLOC_GLIBC_COMPAT is not set
    8.84 -UCLIBC_DYNAMIC_ATEXIT=y
    8.85 -HAS_SHADOW=y
    8.86 -UNIX98PTY_ONLY=y
    8.87 -ASSUME_DEVPTS=y
    8.88 -UCLIBC_HAS_TM_EXTENSIONS=y
    8.89 -# UCLIBC_HAS_TZ_CACHING is not set
    8.90 -UCLIBC_HAS_TZ_FILE=y
    8.91 -# UCLIBC_HAS_TZ_FILE_READ_MANY is not set
    8.92 -UCLIBC_TZ_FILE_PATH="/etc/TZ"
    8.93 -
    8.94 -#
    8.95 -# Networking Support
    8.96 -#
    8.97 -# UCLIBC_HAS_IPV6 is not set
    8.98 -UCLIBC_HAS_RPC=y
    8.99 -UCLIBC_HAS_FULL_RPC=y
   8.100 -
   8.101 -#
   8.102 -# String and Stdio Support
   8.103 -#
   8.104 -UCLIBC_HAS_STRING_GENERIC_OPT=y
   8.105 -UCLIBC_HAS_STRING_ARCH_OPT=y
   8.106 -UCLIBC_HAS_CTYPE_TABLES=y
   8.107 -UCLIBC_HAS_CTYPE_SIGNED=y
   8.108 -# UCLIBC_HAS_CTYPE_UNSAFE is not set
   8.109 -# UCLIBC_HAS_CTYPE_CHECKED is not set
   8.110 -UCLIBC_HAS_CTYPE_ENFORCED=y
   8.111 -# UCLIBC_HAS_WCHAR is not set
   8.112 -# UCLIBC_HAS_LOCALE is not set
   8.113 -UCLIBC_HAS_HEXADECIMAL_FLOATS=y
   8.114 -# UCLIBC_HAS_GLIBC_CUSTOM_PRINTF is not set
   8.115 -# USE_OLD_VFPRINTF is not set
   8.116 -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
   8.117 -# UCLIBC_HAS_SCANF_GLIBC_A_FLAG is not set
   8.118 -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
   8.119 -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
   8.120 -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
   8.121 -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
   8.122 -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
   8.123 -UCLIBC_HAS_STDIO_BUFSIZ_4096=y
   8.124 -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
   8.125 -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
   8.126 -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
   8.127 -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
   8.128 -UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT=y
   8.129 -UCLIBC_HAS_STDIO_GETC_MACRO=y
   8.130 -UCLIBC_HAS_STDIO_PUTC_MACRO=y
   8.131 -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
   8.132 -UCLIBC_HAS_FOPEN_LARGEFILE_MODE=y
   8.133 -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
   8.134 -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
   8.135 -UCLIBC_HAS_PRINTF_M_SPEC=y
   8.136 -UCLIBC_HAS_ERRNO_MESSAGES=y
   8.137 -# UCLIBC_HAS_SYS_ERRLIST is not set
   8.138 -UCLIBC_HAS_SIGNUM_MESSAGES=y
   8.139 -# UCLIBC_HAS_SYS_SIGLIST is not set
   8.140 -UCLIBC_HAS_GNU_GETOPT=y
   8.141 -
   8.142 -#
   8.143 -# Big and Tall
   8.144 -#
   8.145 -UCLIBC_HAS_REGEX=y
   8.146 -UCLIBC_HAS_WORDEXP=y
   8.147 -UCLIBC_HAS_FTW=y
   8.148 -UCLIBC_HAS_GLOB=y
   8.149 -
   8.150 -#
   8.151 -# Library Installation Options
   8.152 -#
   8.153 -SHARED_LIB_LOADER_PREFIX="$(RUNTIME_PREFIX)lib"
   8.154 -RUNTIME_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/"
   8.155 -DEVEL_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/usr/"
   8.156 -
   8.157 -#
   8.158 -# uClibc security related options
   8.159 -#
   8.160 -# UCLIBC_SECURITY is not set
   8.161 -
   8.162 -#
   8.163 -# uClibc development/debugging options
   8.164 -#
   8.165 -CROSS_COMPILER_PREFIX=""
   8.166 -# DODEBUG is not set
   8.167 -# DODEBUG_PT is not set
   8.168 -# DOASSERTS is not set
   8.169 -# SUPPORT_LD_DEBUG is not set
   8.170 -# SUPPORT_LD_DEBUG_EARLY is not set
   8.171 -WARNINGS="-Wall"
   8.172 -# UCLIBC_MJN3_ONLY is not set
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/samples/armeb-unknown-linux-uclibc/uClibc-0.9.29.config	Sat May 19 22:52:47 2007 +0000
     9.3 @@ -0,0 +1,214 @@
     9.4 +#
     9.5 +# Automatically generated make config: don't edit
     9.6 +# Sat May 19 21:51:09 2007
     9.7 +#
     9.8 +# TARGET_alpha is not set
     9.9 +TARGET_arm=y
    9.10 +# TARGET_bfin is not set
    9.11 +# TARGET_cris is not set
    9.12 +# TARGET_e1 is not set
    9.13 +# TARGET_frv is not set
    9.14 +# TARGET_h8300 is not set
    9.15 +# TARGET_hppa is not set
    9.16 +# TARGET_i386 is not set
    9.17 +# TARGET_i960 is not set
    9.18 +# TARGET_ia64 is not set
    9.19 +# TARGET_m68k is not set
    9.20 +# TARGET_microblaze is not set
    9.21 +# TARGET_mips is not set
    9.22 +# TARGET_nios is not set
    9.23 +# TARGET_nios2 is not set
    9.24 +# TARGET_powerpc is not set
    9.25 +# TARGET_sh is not set
    9.26 +# TARGET_sh64 is not set
    9.27 +# TARGET_sparc is not set
    9.28 +# TARGET_v850 is not set
    9.29 +# TARGET_vax is not set
    9.30 +# TARGET_x86_64 is not set
    9.31 +
    9.32 +#
    9.33 +# Target Architecture Features and Options
    9.34 +#
    9.35 +TARGET_ARCH="arm"
    9.36 +FORCE_OPTIONS_FOR_ARCH=y
    9.37 +CONFIG_ARM_OABI=y
    9.38 +# CONFIG_ARM_EABI is not set
    9.39 +USE_BX=y
    9.40 +# CONFIG_GENERIC_ARM is not set
    9.41 +# CONFIG_ARM610 is not set
    9.42 +# CONFIG_ARM710 is not set
    9.43 +# CONFIG_ARM7TDMI is not set
    9.44 +# CONFIG_ARM720T is not set
    9.45 +# CONFIG_ARM920T is not set
    9.46 +# CONFIG_ARM922T is not set
    9.47 +# CONFIG_ARM926T is not set
    9.48 +# CONFIG_ARM10T is not set
    9.49 +# CONFIG_ARM1136JF_S is not set
    9.50 +# CONFIG_ARM1176JZ_S is not set
    9.51 +# CONFIG_ARM1176JZF_S is not set
    9.52 +# CONFIG_ARM_SA110 is not set
    9.53 +# CONFIG_ARM_SA1100 is not set
    9.54 +CONFIG_ARM_XSCALE=y
    9.55 +# CONFIG_ARM_IWMMXT is not set
    9.56 +TARGET_SUBARCH=""
    9.57 +
    9.58 +#
    9.59 +# Using ELF file format
    9.60 +#
    9.61 +ARCH_ANY_ENDIAN=y
    9.62 +ARCH_BIG_ENDIAN=y
    9.63 +ARCH_WANTS_BIG_ENDIAN=y
    9.64 +# ARCH_WANTS_LITTLE_ENDIAN is not set
    9.65 +ARCH_HAS_MMU=y
    9.66 +ARCH_USE_MMU=y
    9.67 +UCLIBC_HAS_FLOATS=y
    9.68 +# UCLIBC_HAS_FPU is not set
    9.69 +UCLIBC_HAS_SOFT_FLOAT=y
    9.70 +DO_C99_MATH=y
    9.71 +KERNEL_HEADERS="/usr/include"
    9.72 +HAVE_DOT_CONFIG=y
    9.73 +
    9.74 +#
    9.75 +# General Library Settings
    9.76 +#
    9.77 +# HAVE_NO_PIC is not set
    9.78 +DOPIC=y
    9.79 +# HAVE_NO_SHARED is not set
    9.80 +# ARCH_HAS_NO_LDSO is not set
    9.81 +HAVE_SHARED=y
    9.82 +FORCE_SHAREABLE_TEXT_SEGMENTS=y
    9.83 +LDSO_LDD_SUPPORT=y
    9.84 +LDSO_CACHE_SUPPORT=y
    9.85 +# LDSO_PRELOAD_FILE_SUPPORT is not set
    9.86 +LDSO_BASE_FILENAME="ld.so"
    9.87 +UCLIBC_STATIC_LDCONFIG=y
    9.88 +# LDSO_RUNPATH is not set
    9.89 +UCLIBC_CTOR_DTOR=y
    9.90 +# HAS_NO_THREADS is not set
    9.91 +UCLIBC_HAS_THREADS=y
    9.92 +# PTHREADS_DEBUG_SUPPORT is not set
    9.93 +LINUXTHREADS_OLD=y
    9.94 +UCLIBC_HAS_LFS=y
    9.95 +# MALLOC is not set
    9.96 +# MALLOC_SIMPLE is not set
    9.97 +MALLOC_STANDARD=y
    9.98 +# MALLOC_GLIBC_COMPAT is not set
    9.99 +UCLIBC_DYNAMIC_ATEXIT=y
   9.100 +# COMPAT_ATEXIT is not set
   9.101 +# UCLIBC_SUSV3_LEGACY is not set
   9.102 +# UCLIBC_SUSV3_LEGACY_MACROS is not set
   9.103 +UCLIBC_HAS_SHADOW=y
   9.104 +# UCLIBC_HAS_PROGRAM_INVOCATION_NAME is not set
   9.105 +# UCLIBC_HAS___PROGNAME is not set
   9.106 +UNIX98PTY_ONLY=y
   9.107 +ASSUME_DEVPTS=y
   9.108 +UCLIBC_HAS_TM_EXTENSIONS=y
   9.109 +# UCLIBC_HAS_TZ_CACHING is not set
   9.110 +UCLIBC_HAS_TZ_FILE=y
   9.111 +# UCLIBC_HAS_TZ_FILE_READ_MANY is not set
   9.112 +UCLIBC_TZ_FILE_PATH="/etc/TZ"
   9.113 +
   9.114 +#
   9.115 +# Advanced Library Settings
   9.116 +#
   9.117 +UCLIBC_PWD_BUFFER_SIZE=256
   9.118 +UCLIBC_GRP_BUFFER_SIZE=256
   9.119 +
   9.120 +#
   9.121 +# Networking Support
   9.122 +#
   9.123 +# UCLIBC_HAS_IPV6 is not set
   9.124 +UCLIBC_HAS_RPC=y
   9.125 +UCLIBC_HAS_FULL_RPC=y
   9.126 +UCLIBC_HAS_REENTRANT_RPC=y
   9.127 +UCLIBC_USE_NETLINK=y
   9.128 +# UCLIBC_HAS_BSD_RES_CLOSE is not set
   9.129 +
   9.130 +#
   9.131 +# String and Stdio Support
   9.132 +#
   9.133 +UCLIBC_HAS_STRING_GENERIC_OPT=y
   9.134 +UCLIBC_HAS_STRING_ARCH_OPT=y
   9.135 +UCLIBC_HAS_CTYPE_TABLES=y
   9.136 +UCLIBC_HAS_CTYPE_SIGNED=y
   9.137 +# UCLIBC_HAS_CTYPE_UNSAFE is not set
   9.138 +# UCLIBC_HAS_CTYPE_CHECKED is not set
   9.139 +UCLIBC_HAS_CTYPE_ENFORCED=y
   9.140 +# UCLIBC_HAS_WCHAR is not set
   9.141 +# UCLIBC_HAS_LOCALE is not set
   9.142 +UCLIBC_HAS_HEXADECIMAL_FLOATS=y
   9.143 +# UCLIBC_HAS_GLIBC_CUSTOM_PRINTF is not set
   9.144 +# USE_OLD_VFPRINTF is not set
   9.145 +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
   9.146 +# UCLIBC_HAS_SCANF_GLIBC_A_FLAG is not set
   9.147 +# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
   9.148 +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
   9.149 +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
   9.150 +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
   9.151 +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
   9.152 +UCLIBC_HAS_STDIO_BUFSIZ_4096=y
   9.153 +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
   9.154 +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
   9.155 +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
   9.156 +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
   9.157 +UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT=y
   9.158 +UCLIBC_HAS_STDIO_GETC_MACRO=y
   9.159 +UCLIBC_HAS_STDIO_PUTC_MACRO=y
   9.160 +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
   9.161 +UCLIBC_HAS_FOPEN_LARGEFILE_MODE=y
   9.162 +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
   9.163 +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
   9.164 +UCLIBC_HAS_PRINTF_M_SPEC=y
   9.165 +UCLIBC_HAS_ERRNO_MESSAGES=y
   9.166 +# UCLIBC_HAS_SYS_ERRLIST is not set
   9.167 +UCLIBC_HAS_SIGNUM_MESSAGES=y
   9.168 +# UCLIBC_HAS_SYS_SIGLIST is not set
   9.169 +UCLIBC_HAS_GNU_GETOPT=y
   9.170 +# UCLIBC_HAS_GNU_GETSUBOPT is not set
   9.171 +
   9.172 +#
   9.173 +# Big and Tall
   9.174 +#
   9.175 +UCLIBC_HAS_REGEX=y
   9.176 +UCLIBC_HAS_REGEX_OLD=y
   9.177 +UCLIBC_HAS_FNMATCH=y
   9.178 +UCLIBC_HAS_FNMATCH_OLD=y
   9.179 +UCLIBC_HAS_WORDEXP=y
   9.180 +UCLIBC_HAS_FTW=y
   9.181 +UCLIBC_HAS_GLOB=y
   9.182 +# UCLIBC_HAS_GNU_GLOB is not set
   9.183 +
   9.184 +#
   9.185 +# Library Installation Options
   9.186 +#
   9.187 +SHARED_LIB_LOADER_PREFIX="$(RUNTIME_PREFIX)lib"
   9.188 +RUNTIME_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/"
   9.189 +DEVEL_PREFIX="/usr/$(TARGET_ARCH)-linux-uclibc/usr/"
   9.190 +
   9.191 +#
   9.192 +# Security options
   9.193 +#
   9.194 +UCLIBC_BUILD_PIE=y
   9.195 +UCLIBC_HAS_ARC4RANDOM=y
   9.196 +# HAVE_NO_SSP is not set
   9.197 +# UCLIBC_HAS_SSP is not set
   9.198 +# UCLIBC_BUILD_RELRO is not set
   9.199 +# UCLIBC_BUILD_NOW is not set
   9.200 +UCLIBC_BUILD_NOEXECSTACK=y
   9.201 +
   9.202 +#
   9.203 +# uClibc development/debugging options
   9.204 +#
   9.205 +CROSS_COMPILER_PREFIX=""
   9.206 +UCLIBC_EXTRA_CFLAGS=""
   9.207 +# DODEBUG is not set
   9.208 +# DODEBUG_PT is not set
   9.209 +# DOSTRIP is not set
   9.210 +# DOASSERTS is not set
   9.211 +# SUPPORT_LD_DEBUG is not set
   9.212 +# SUPPORT_LD_DEBUG_EARLY is not set
   9.213 +# UCLIBC_MALLOC_DEBUGGING is not set
   9.214 +WARNINGS="-Wall"
   9.215 +# EXTRA_WARNINGS is not set
   9.216 +# DOMULTI is not set
   9.217 +# UCLIBC_MJN3_ONLY is not set
    10.1 --- a/scripts/build/libc_uClibc.sh	Sat May 19 13:10:11 2007 +0000
    10.2 +++ b/scripts/build/libc_uClibc.sh	Sat May 19 22:52:47 2007 +0000
    10.3 @@ -142,32 +142,46 @@
    10.4      config_file="$1"
    10.5      munge_file="${CT_BUILD_DIR}/munge-uClibc-config.sed"
    10.6  
    10.7 +    # Hack our target in the config file.
    10.8 +    # Also remove stripping: its the responsibility of the
    10.9 +    # firmware builder to strip or not.
   10.10      cat > "${munge_file}" <<-ENDSED
   10.11  s/^(TARGET_.*)=y$/# \\1 is not set/
   10.12  s/^# TARGET_${CT_KERNEL_ARCH} is not set/TARGET_${CT_KERNEL_ARCH}=y/
   10.13  s/^TARGET_ARCH=".*"/TARGET_ARCH="${CT_KERNEL_ARCH}"/
   10.14 +s/.*(DOSTRIP).*/# \\1 is not set/
   10.15  ENDSED
   10.16  
   10.17 +    # Accomodate for old and new uClibc versions, where the
   10.18 +    # way to select between big/little endian has changed
   10.19      case "${CT_ARCH_BE},${CT_ARCH_LE}" in
   10.20          y,) cat >> "${munge_file}" <<-ENDSED
   10.21 +s/.*(ARCH_LITTLE_ENDIAN).*/# \\1 is not set/
   10.22  s/.*(ARCH_BIG_ENDIAN).*/\\1=y/
   10.23 -s/.*(ARCH_LITTLE_ENDIAN).*/# \\1 is not set/
   10.24 +s/.*(ARCH_WANTS_LITTLE_ENDIAN).*/# \\1 is not set/
   10.25 +s/.*(ARCH_WANTS_BIG_ENDIAN).*/\\1=y/
   10.26  ENDSED
   10.27          ;;
   10.28          ,y) cat >> "${munge_file}" <<-ENDSED
   10.29 +s/.*(ARCH_LITTLE_ENDIAN).*/\\1=y/
   10.30  s/.*(ARCH_BIG_ENDIAN).*/# \\1 is not set/
   10.31 -s/.*(ARCH_LITTLE_ENDIAN).*/\\1=y/
   10.32 +s/.*(ARCH_WANTS_LITTLE_ENDIAN).*/\\1=y/
   10.33 +s/.*(ARCH_WANTS_BIG_ENDIAN).*/# \\1 is not set/
   10.34  ENDSED
   10.35          ;;
   10.36      esac
   10.37  
   10.38 +    # Accomodate for old and new uClibc version, where the
   10.39 +    # way to select between hard/soft float has changed
   10.40      case "${CT_ARCH_FLOAT_HW},${CT_ARCH_FLOAT_SW}" in
   10.41          y,) cat >> "${munge_file}" <<-ENDSED
   10.42  s/.*(HAS_FPU).*/\\1=y/
   10.43 +s/.*(UCLIBC_HAS_FPU).*/\\1=y/
   10.44  ENDSED
   10.45              ;;
   10.46          ,y) cat >> "${munge_file}" <<-ENDSED
   10.47  s/.*(HAS_FPU).*/\\# \\1 is not set/
   10.48 +s/.*(UCLIBC_HAS_FPU).*/# \\1 is not set/
   10.49  ENDSED
   10.50              ;;
   10.51      esac
   10.52 @@ -191,12 +205,19 @@
   10.53  s/^UCLIBC_DOWNLOAD_PREGENERATED_LOCALE=y/\\# UCLIBC_DOWNLOAD_PREGENERATED_LOCALE is not set/
   10.54  ENDSED
   10.55  
   10.56 -    # Hack our -pipe into WARNINGS, which will be internally incorporated to
   10.57 -    # CFLAGS. This a dirty hack, but yet needed
   10.58      if [ "${CT_USE_PIPES}" = "y" ]; then
   10.59 -        cat >> "${munge_file}" <<-ENDSED
   10.60 +        if grep UCLIBC_EXTRA_CFLAGS extra/Configs/Config.in >/dev/null 2>&1; then
   10.61 +            # Good, there is special provision for such things as -pipe!
   10.62 +            cat >> "${munge_file}" <<-ENDSED
   10.63 +s/^(UCLIBC_EXTRA_CFLAGS=".*)"$/\\1 -pipe"/
   10.64 +ENDSED
   10.65 +        else
   10.66 +            # Hack our -pipe into WARNINGS, which will be internally incorporated to
   10.67 +            # CFLAGS. This a dirty hack, but yet needed
   10.68 +            cat >> "${munge_file}" <<-ENDSED
   10.69  s/^(WARNINGS=".*)"$/\\1 -pipe"/
   10.70  ENDSED
   10.71 +        fi
   10.72      fi
   10.73  
   10.74      # Force on options needed for C++ if we'll be making a C++ compiler.
   10.75 @@ -227,6 +248,7 @@
   10.76  s/^DOASSERTS=y/# DOASSERTS is not set/
   10.77  s/^SUPPORT_LD_DEBUG=y/# SUPPORT_LD_DEBUG is not set/
   10.78  s/^SUPPORT_LD_DEBUG_EARLY=y/# SUPPORT_LD_DEBUG_EARLY is not set/
   10.79 +s/^UCLIBC_MALLOC_DEBUGGING=y/# UCLIBC_MALLOC_DEBUGGING is not set/
   10.80  ENDSED
   10.81          ;;
   10.82        1)
   10.83 @@ -237,6 +259,7 @@
   10.84  s/^DOASSERTS=y/# DOASSERTS is not set/
   10.85  s/^SUPPORT_LD_DEBUG=y/# SUPPORT_LD_DEBUG is not set/
   10.86  s/^SUPPORT_LD_DEBUG_EARLY=y/# SUPPORT_LD_DEBUG_EARLY is not set/
   10.87 +s/^UCLIBC_MALLOC_DEBUGGING=y/# UCLIBC_MALLOC_DEBUGGING is not set/
   10.88  ENDSED
   10.89          ;;
   10.90        2)
   10.91 @@ -247,6 +270,7 @@
   10.92  s/^# DOASSERTS is not set.*/DOASSERTS=y/
   10.93  s/^# SUPPORT_LD_DEBUG is not set.*/SUPPORT_LD_DEBUG=y/
   10.94  s/^# SUPPORT_LD_DEBUG_EARLY is not set.*/SUPPORT_LD_DEBUG_EARLY=y/
   10.95 +s/^# UCLIBC_MALLOC_DEBUGGING is not set/UCLIBC_MALLOC_DEBUGGING=y/
   10.96  ENDSED
   10.97          ;;
   10.98      esac
    11.1 --- a/scripts/build/libfloat.sh	Sat May 19 13:10:11 2007 +0000
    11.2 +++ b/scripts/build/libfloat.sh	Sat May 19 22:52:47 2007 +0000
    11.3 @@ -14,7 +14,7 @@
    11.4                 ftp://ftp.de.debian.org/debian/pool/main/libf/libfloat
    11.5      CT_Pushd "${CT_TARBALLS_DIR}"
    11.6      ext=`CT_GetFileExtension "${libfloat_file}"`
    11.7 -    ln -s "${libfloat_file}${ext}" "${CT_LIBFLOAT_FILE}${ext}"
    11.8 +    ln -svf "${libfloat_file}${ext}" "${CT_LIBFLOAT_FILE}${ext}" |CT_DoLog DEBUG
    11.9      CT_Popd
   11.10  }
   11.11  
    12.1 --- a/scripts/saveSample.sh	Sat May 19 13:10:11 2007 +0000
    12.2 +++ b/scripts/saveSample.sh	Sat May 19 22:52:47 2007 +0000
    12.3 @@ -30,7 +30,13 @@
    12.4  . "${CT_TOP_DIR}/.config"
    12.5  
    12.6  # Create the sample directory
    12.7 -[ -d "${CT_TOP_DIR}/samples/${CT_TARGET}" ] || svn mkdir "${CT_TOP_DIR}/samples/${CT_TARGET}" >/dev/null 2>&1
    12.8 +# In case it was manually made, add it to svn
    12.9 +if [ -d "${CT_TOP_DIR}/samples/${CT_TARGET}" ]; then
   12.10 +    # svn won't fail when adding a directory already managed by svn
   12.11 +    svn add "${CT_TOP_DIR}/samples/${CT_TARGET}" >/dev/null 2>&1
   12.12 +else
   12.13 +    svn mkdir "${CT_TOP_DIR}/samples/${CT_TARGET}" >/dev/null 2>&1
   12.14 +fi
   12.15  
   12.16  # Save the crosstool-NG config file
   12.17  cp "${CT_TOP_DIR}/.config" "${CT_TOP_DIR}/samples/${CT_TARGET}/crosstool.config"
   12.18 @@ -42,7 +48,7 @@
   12.19      source="$1"
   12.20      dest="$2"
   12.21      inode_s=`ls -i "${source}"`
   12.22 -    inode_d=`ls -i "${dest}"`
   12.23 +    inode_d=`ls -i "${dest}" 2>/dev/null || true`
   12.24      if [ "${inode_s}" != "${inode_d}" ]; then
   12.25          cp "${source}" "${dest}"
   12.26      fi