summaryrefslogtreecommitdiff
path: root/toolchain/uClibc
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/uClibc')
-rw-r--r--toolchain/uClibc/uClibc-0.9.29-fix-fget_putc.diff498
1 files changed, 498 insertions, 0 deletions
diff --git a/toolchain/uClibc/uClibc-0.9.29-fix-fget_putc.diff b/toolchain/uClibc/uClibc-0.9.29-fix-fget_putc.diff
new file mode 100644
index 000000000..9daa143c5
--- /dev/null
+++ b/toolchain/uClibc/uClibc-0.9.29-fix-fget_putc.diff
@@ -0,0 +1,498 @@
+Index: uClibc_trunk/libc/inet/rpc/rcmd.c
+===================================================================
+--- uClibc_trunk/libc/inet/rpc/rcmd.c (revision 17397)
++++ uClibc_trunk/libc/inet/rpc/rcmd.c (working copy)
+@@ -126,7 +126,7 @@ libc_hidden_proto(accept)
+ libc_hidden_proto(listen)
+ libc_hidden_proto(sigsetmask)
+ libc_hidden_proto(getc_unlocked)
+-libc_hidden_proto(__fgetc_unlocked)
++//libc_hidden_proto(fgetc_unlocked)
+ libc_hidden_proto(fopen)
+ libc_hidden_proto(fclose)
+ libc_hidden_proto(fprintf)
+Index: uClibc_trunk/libc/inet/rpc/ruserpass.c
+===================================================================
+--- uClibc_trunk/libc/inet/rpc/ruserpass.c (revision 17397)
++++ uClibc_trunk/libc/inet/rpc/ruserpass.c (working copy)
+@@ -63,7 +63,7 @@ libc_hidden_proto(fileno)
+ libc_hidden_proto(fopen)
+ libc_hidden_proto(fclose)
+ libc_hidden_proto(getc_unlocked)
+-libc_hidden_proto(__fgetc_unlocked)
++//libc_hidden_proto(__fgetc_unlocked)
+
+ #define _(X) (X)
+ /* #include "ftp_var.h" */
+Index: uClibc_trunk/libc/pwd_grp/pwd_grp.c
+===================================================================
+--- uClibc_trunk/libc/pwd_grp/pwd_grp.c (revision 17397)
++++ uClibc_trunk/libc/pwd_grp/pwd_grp.c (working copy)
+@@ -43,11 +43,12 @@ libc_hidden_proto(strlen)
+ libc_hidden_proto(strtoul)
+ libc_hidden_proto(rewind)
+ libc_hidden_proto(fgets_unlocked)
+-libc_hidden_proto(__fputc_unlocked)
+ libc_hidden_proto(sprintf)
+ libc_hidden_proto(fopen)
+ libc_hidden_proto(fclose)
+ libc_hidden_proto(fprintf)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+ #ifdef __UCLIBC_HAS_XLOCALE__
+ libc_hidden_proto(__ctype_b_loc)
+ #elif __UCLIBC_HAS_CTYPE_TABLES__
+@@ -809,7 +810,7 @@ int putgrent(const struct group *__restr
+
+ do {
+ if (!*m) {
+- if (__fputc_unlocked('\n', f) >= 0) {
++ if (fputc_unlocked('\n', f) >= 0) {
+ rv = 0;
+ }
+ break;
+@@ -875,7 +876,7 @@ int putspent(const struct spwd *p, FILE
+ goto DO_UNLOCK;
+ }
+
+- if (__fputc_unlocked('\n', stream) > 0) {
++ if (fputc_unlocked('\n', stream) > 0) {
+ rv = 0;
+ }
+
+Index: uClibc_trunk/libc/stdio/fgets.c
+===================================================================
+--- uClibc_trunk/libc/stdio/fgets.c (revision 17397)
++++ uClibc_trunk/libc/stdio/fgets.c (working copy)
+@@ -10,8 +10,7 @@
+ libc_hidden_proto(fgets_unlocked)
+
+ #ifdef __DO_UNLOCKED
+-
+-libc_hidden_proto(__fgetc_unlocked)
++libc_hidden_proto(fgetc_unlocked)
+
+ char *fgets_unlocked(char *__restrict s, int n,
+ register FILE * __restrict stream)
+@@ -38,7 +37,7 @@ char *fgets_unlocked(char *__restrict s,
+ break;
+ }
+ } else {
+- if ((c = __fgetc_unlocked(stream)) == EOF) {
++ if ((c = fgetc_unlocked(stream)) == EOF) {
+ if (__FERROR_UNLOCKED(stream)) {
+ goto ERROR;
+ }
+Index: uClibc_trunk/libc/stdio/_scanf.c
+===================================================================
+--- uClibc_trunk/libc/stdio/_scanf.c (revision 17397)
++++ uClibc_trunk/libc/stdio/_scanf.c (working copy)
+@@ -86,7 +86,8 @@ libc_hidden_proto(vfscanf)
+ libc_hidden_proto(vsscanf)
+ libc_hidden_proto(fclose)
+ libc_hidden_proto(getc_unlocked)
+-libc_hidden_proto(__fgetc_unlocked)
++#undef fgetc_unlocked
++libc_hidden_proto(fgetc_unlocked)
+ #ifdef __UCLIBC_HAS_WCHAR__
+ libc_hidden_proto(wcslen)
+ libc_hidden_proto(vfwscanf)
+@@ -506,7 +507,7 @@ enum {
+ FLAG_THOUSANDS = 0x20,
+ FLAG_I18N = 0x40, /* only works for d, i, u */
+ FLAG_MALLOC = 0x80, /* only works for s, S, and [ (and l[)*/
+-};
++};
+
+
+ #define SPEC_RANGES { CONV_n, CONV_p, CONV_i, CONV_A, \
+@@ -1024,7 +1025,7 @@ static int scan_getwc(register struct sc
+ __set_errno(EILSEQ); /* In case of incomplete conversion. */
+ sc->mb_fail = 1;
+ }
+-
++
+ SUCCESS:
+ sc->width = width; /* Restore width. */
+
+@@ -1366,7 +1367,7 @@ int VFSCANF (FILE *__restrict fp, const
+
+ if (psfs.conv_num == CONV_percent) {
+ goto MATCH_CHAR;
+- }
++ }
+
+ if (psfs.conv_num == CONV_n) {
+ #ifdef __UCLIBC_MJN3_ONLY__
+@@ -1410,7 +1411,6 @@ int VFSCANF (FILE *__restrict fp, const
+ {
+ b = (psfs.store ? ((unsigned char *) psfs.cur_ptr) : buf);
+ fail = 1;
+-
+
+ if (psfs.conv_num == CONV_c) {
+ if (sc.width == INT_MAX) {
+@@ -1451,7 +1451,7 @@ int VFSCANF (FILE *__restrict fp, const
+ if (*++fmt == '^') {
+ ++fmt;
+ invert = 1;
+- }
++ }
+ memset(scanset, invert, sizeof(scanset));
+ invert = 1-invert;
+
+@@ -1519,7 +1519,7 @@ int VFSCANF (FILE *__restrict fp, const
+
+ wb = (psfs.store ? ((wchar_t *) psfs.cur_ptr) : wbuf);
+ fail = 1;
+-
++
+ if (psfs.conv_num == CONV_C) {
+ if (sc.width == INT_MAX) {
+ sc.width = 1;
+@@ -1796,7 +1796,6 @@ int attribute_hidden __psfs_do_numeric(p
+ unsigned char usflag, base;
+ unsigned char nonzero = 0;
+ unsigned char seendigit = 0;
+-
+
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning CONSIDER: What should be returned for an invalid conversion specifier?
+@@ -2210,7 +2209,7 @@ int attribute_hidden __psfs_do_numeric(p
+ assert(seendigit);
+ seendigit = 0;
+ nonzero = 0;
+-
++
+ if (sc->cc == '0') {
+ seendigit = 1;
+ *b++ = '0';
+@@ -2226,7 +2225,7 @@ int attribute_hidden __psfs_do_numeric(p
+ }
+ __scan_getc(sc);
+ }
+-
++
+ if (!seendigit) { /* No digits. Unrecoverable. */
+ goto DONE_DO_UNGET;
+ }
+Index: uClibc_trunk/libc/stdio/putwchar.c
+===================================================================
+--- uClibc_trunk/libc/stdio/putwchar.c (revision 17397)
++++ uClibc_trunk/libc/stdio/putwchar.c (working copy)
+@@ -22,7 +22,8 @@ strong_alias(putwchar_unlocked,putwchar)
+
+ #elif defined __UCLIBC_HAS_THREADS__
+
+-libc_hidden_proto(__fputc_unlocked)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+ /* psm: should this be fputwc? */
+ libc_hidden_proto(fputc)
+
+Index: uClibc_trunk/libc/stdio/getchar.c
+===================================================================
+--- uClibc_trunk/libc/stdio/getchar.c (revision 17397)
++++ uClibc_trunk/libc/stdio/getchar.c (working copy)
+@@ -7,7 +7,8 @@
+
+ #include "_stdio.h"
+
+-libc_hidden_proto(__fgetc_unlocked)
++#undef fgetc_unlocked
++libc_hidden_proto(fgetc_unlocked)
+
+ #undef getchar
+ #ifdef __DO_UNLOCKED
+Index: uClibc_trunk/libc/stdio/putchar.c
+===================================================================
+--- uClibc_trunk/libc/stdio/putchar.c (revision 17397)
++++ uClibc_trunk/libc/stdio/putchar.c (working copy)
+@@ -7,7 +7,8 @@
+
+ #include "_stdio.h"
+
+-libc_hidden_proto(__fputc_unlocked)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+
+ #undef putchar
+ #ifdef __DO_UNLOCKED
+Index: uClibc_trunk/libc/stdio/fputc.c
+===================================================================
+--- uClibc_trunk/libc/stdio/fputc.c (revision 17397)
++++ uClibc_trunk/libc/stdio/fputc.c (working copy)
+@@ -12,11 +12,11 @@
+ #undef putc
+ #undef putc_unlocked
+
+-libc_hidden_proto(__fputc_unlocked)
++libc_hidden_proto(fputc_unlocked)
+
+ #ifdef __DO_UNLOCKED
+
+-int __fputc_unlocked(int c, register FILE *stream)
++int fputc_unlocked(int c, register FILE *stream)
+ {
+ __STDIO_STREAM_VALIDATE(stream);
+
+@@ -70,20 +70,20 @@ int __fputc_unlocked(int c, register FIL
+ BAD:
+ return EOF;
+ }
+-libc_hidden_def(__fputc_unlocked)
+-
+-libc_hidden_proto(fputc_unlocked)
+-strong_alias(__fputc_unlocked,fputc_unlocked)
+ libc_hidden_def(fputc_unlocked)
+
++//libc_hidden_proto(fputc_unlocked)
++//strong_alias(__fputc_unlocked,fputc_unlocked)
++//libc_hidden_def(fputc_unlocked)
++
+ libc_hidden_proto(putc_unlocked)
+-strong_alias(__fputc_unlocked,putc_unlocked)
++strong_alias(fputc_unlocked,putc_unlocked)
+ libc_hidden_def(putc_unlocked)
+ #ifndef __UCLIBC_HAS_THREADS__
+-strong_alias(__fputc_unlocked,fputc)
++strong_alias(fputc_unlocked,fputc)
+
+ libc_hidden_proto(putc)
+-strong_alias(__fputc_unlocked,putc)
++strong_alias(fputc_unlocked,putc)
+ libc_hidden_def(putc)
+ #endif
+
+Index: uClibc_trunk/libc/stdio/getdelim.c
+===================================================================
+--- uClibc_trunk/libc/stdio/getdelim.c (revision 17397)
++++ uClibc_trunk/libc/stdio/getdelim.c (working copy)
+@@ -11,8 +11,8 @@
+ #include "_stdio.h"
+
+ libc_hidden_proto(getdelim)
+-
+-libc_hidden_proto(__fgetc_unlocked)
++#undef fgetc_unlocked
++libc_hidden_proto(fgetc_unlocked)
+
+ /* Note: There is a defect in this function. (size_t vs ssize_t). */
+
+Index: uClibc_trunk/libc/stdio/puts.c
+===================================================================
+--- uClibc_trunk/libc/stdio/puts.c (revision 17397)
++++ uClibc_trunk/libc/stdio/puts.c (working copy)
+@@ -7,7 +7,8 @@
+
+ #include "_stdio.h"
+
+-libc_hidden_proto(__fputc_unlocked)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+ libc_hidden_proto(fputs_unlocked)
+
+ int puts(register const char * __restrict s)
+@@ -25,7 +26,7 @@ int puts(register const char * __restric
+ /* Note: Nonportable as fputs need only return nonnegative on success. */
+ if ((n = fputs_unlocked(s, stream)) != EOF) {
+ ++n;
+- if (__fputc_unlocked('\n', stream) == EOF) {
++ if (__FPUTC_UNLOCKED('\n', stream) == EOF) {
+ n = EOF;
+ }
+ }
+Index: uClibc_trunk/libc/stdio/old_vfprintf.c
+===================================================================
+--- uClibc_trunk/libc/stdio/old_vfprintf.c (revision 17397)
++++ uClibc_trunk/libc/stdio/old_vfprintf.c (working copy)
+@@ -149,7 +149,8 @@ libc_hidden_proto(strlen)
+ libc_hidden_proto(strnlen)
+ libc_hidden_proto(memcpy)
+ libc_hidden_proto(putc_unlocked)
+-libc_hidden_proto(__fputc_unlocked)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+ libc_hidden_proto(__glibc_strerror_r)
+
+ /* #undef __UCLIBC_HAS_FLOATS__ */
+Index: uClibc_trunk/libc/stdio/fgetc.c
+===================================================================
+--- uClibc_trunk/libc/stdio/fgetc.c (revision 17397)
++++ uClibc_trunk/libc/stdio/fgetc.c (working copy)
+@@ -13,13 +13,13 @@
+ #undef getc
+ #undef getc_unlocked
+
+-libc_hidden_proto(__fgetc_unlocked)
++libc_hidden_proto(fgetc_unlocked)
+
+ #ifdef __DO_UNLOCKED
+
+ libc_hidden_proto(fflush_unlocked)
+
+-int __fgetc_unlocked(FILE *stream)
++int fgetc_unlocked(FILE *stream)
+ {
+ __STDIO_STREAM_VALIDATE(stream);
+
+@@ -73,26 +73,22 @@ int __fgetc_unlocked(FILE *stream)
+
+ return EOF;
+ }
+-libc_hidden_def(__fgetc_unlocked)
+-
+-libc_hidden_proto(fgetc_unlocked)
+-strong_alias(__fgetc_unlocked,fgetc_unlocked)
+ libc_hidden_def(fgetc_unlocked)
+
+ //libc_hidden_proto(__getc_unlocked)
+-//strong_alias(__fgetc_unlocked,__getc_unlocked)
++//strong_alias(fgetc_unlocked,__getc_unlocked)
+ //libc_hidden_def(__getc_unlocked)
+
+ libc_hidden_proto(getc_unlocked)
+-strong_alias(__fgetc_unlocked,getc_unlocked)
++strong_alias(fgetc_unlocked,getc_unlocked)
+ libc_hidden_def(getc_unlocked)
+
+ #ifndef __UCLIBC_HAS_THREADS__
+ libc_hidden_proto(fgetc)
+-strong_alias(__fgetc_unlocked,fgetc)
++strong_alias(fgetc_unlocked,fgetc)
+ libc_hidden_def(fgetc)
+
+-strong_alias(__fgetc_unlocked,getc)
++strong_alias(fgetc_unlocked,getc)
+ #endif
+
+ #elif defined __UCLIBC_HAS_THREADS__
+Index: uClibc_trunk/libc/unistd/getpass.c
+===================================================================
+--- uClibc_trunk/libc/unistd/getpass.c (revision 17397)
++++ uClibc_trunk/libc/unistd/getpass.c (working copy)
+@@ -36,7 +36,8 @@ libc_hidden_proto(fgets)
+ libc_hidden_proto(fputs)
+ libc_hidden_proto(fputc)
+ libc_hidden_proto(putc)
+-libc_hidden_proto(__fputc_unlocked)
++#undef fputc_unlocked
++libc_hidden_proto(fputc_unlocked)
+
+ /* It is desirable to use this bit on systems that have it.
+ The only bit of terminal state we want to twiddle is echoing, which is
+Index: uClibc_trunk/libc/sysdeps/linux/common/bits/uClibc_stdio.h
+===================================================================
+--- uClibc_trunk/libc/sysdeps/linux/common/bits/uClibc_stdio.h (revision 17397)
++++ uClibc_trunk/libc/sysdeps/linux/common/bits/uClibc_stdio.h (working copy)
+@@ -381,32 +381,29 @@ extern void __stdio_init_mutex(__UCLIBC_
+ # define __FEOF(__stream) __FEOF_UNLOCKED(__stream)
+ #endif
+
+-extern int __fgetc_unlocked(FILE *__stream);
+-extern int __fputc_unlocked(int __c, FILE *__stream);
+-
+-/* First define the default definitions. They overriden below as necessary. */
+-#define __FGETC_UNLOCKED(__stream) (__fgetc_unlocked)((__stream))
++/* First define the default definitions.
++ * They are overridden as necessary. */
++#define __FGETC_UNLOCKED(__stream) (fgetc_unlocked)((__stream))
+ #define __FGETC(__stream) (fgetc)((__stream))
+-#define __GETC_UNLOCKED_MACRO(__stream) (__fgetc_unlocked)((__stream))
+-#define __GETC_UNLOCKED(__stream) (__fgetc_unlocked)((__stream))
++#define __GETC_UNLOCKED_MACRO(__stream) (fgetc_unlocked)((__stream))
++#define __GETC_UNLOCKED(__stream) (fgetc_unlocked)((__stream))
+ #define __GETC(__stream) (fgetc)((__stream))
+
+-#define __FPUTC_UNLOCKED(__c, __stream) (__fputc_unlocked)((__c),(__stream))
++#define __FPUTC_UNLOCKED(__c, __stream) (fputc_unlocked)((__c),(__stream))
+ #define __FPUTC(__c, __stream) (fputc)((__c),(__stream))
+-#define __PUTC_UNLOCKED_MACRO(__c, __stream) (__fputc_unlocked)((__c),(__stream))
+-#define __PUTC_UNLOCKED(__c, __stream) (__fputc_unlocked)((__c),(__stream))
++#define __PUTC_UNLOCKED_MACRO(__c, __stream) (fputc_unlocked)((__c),(__stream))
++#define __PUTC_UNLOCKED(__c, __stream) (fputc_unlocked)((__c),(__stream))
+ #define __PUTC(__c, __stream) (fputc)((__c),(__stream))
+
+
+ #ifdef __STDIO_GETC_MACRO
+-
+ extern FILE *__stdin; /* For getchar() macro. */
+
+ # undef __GETC_UNLOCKED_MACRO
+ # define __GETC_UNLOCKED_MACRO(__stream) \
+ ( ((__stream)->__bufpos < (__stream)->__bufgetc_u) \
+ ? (*(__stream)->__bufpos++) \
+- : __fgetc_unlocked(__stream) )
++ : fgetc_unlocked(__stream) )
+
+ # if 0
+ /* Classic macro approach. getc{_unlocked} can have side effects. */
+@@ -452,20 +449,17 @@ extern FILE *__stdin; /* For getchar()
+ # endif
+ # endif
+
+-#else
+-
+ #endif /* __STDIO_GETC_MACRO */
+
+
+ #ifdef __STDIO_PUTC_MACRO
+-
+ extern FILE *__stdout; /* For putchar() macro. */
+
+ # undef __PUTC_UNLOCKED_MACRO
+ # define __PUTC_UNLOCKED_MACRO(__c, __stream) \
+ ( ((__stream)->__bufpos < (__stream)->__bufputc_u) \
+ ? (*(__stream)->__bufpos++) = (__c) \
+- : __fputc_unlocked((__c),(__stream)) )
++ : fputc_unlocked((__c),(__stream)) )
+
+ # if 0
+ /* Classic macro approach. putc{_unlocked} can have side effects.*/
+@@ -488,7 +482,8 @@ extern FILE *__stdout; /* For putchar(
+ }) )
+
+ # undef __PUTC_UNLOCKED
+-# define __PUTC_UNLOCKED(__c, __stream) __FPUTC_UNLOCKED((__c), (__stream))
++# define __PUTC_UNLOCKED(__c, __stream) \
++ __FPUTC_UNLOCKED((__c), (__stream))
+
+ # ifdef __UCLIBC_HAS_THREADS__
+ # undef __FPUTC
+Index: uClibc_trunk/libc/misc/ttyent/getttyent.c
+===================================================================
+--- uClibc_trunk/libc/misc/ttyent/getttyent.c (revision 17397)
++++ uClibc_trunk/libc/misc/ttyent/getttyent.c (working copy)
+@@ -44,8 +44,10 @@ libc_hidden_proto(strncmp)
+ libc_hidden_proto(__fsetlocking)
+ libc_hidden_proto(rewind)
+ libc_hidden_proto(fgets_unlocked)
++#undef getc_unlocked
+ libc_hidden_proto(getc_unlocked)
+-libc_hidden_proto(__fgetc_unlocked)
++#undef fgetc_unlocked
++libc_hidden_proto(fgetc_unlocked)
+ libc_hidden_proto(fopen)
+ libc_hidden_proto(fclose)
+ libc_hidden_proto(abort)
+Index: uClibc_trunk/libc/misc/error/error.c
+===================================================================
+--- uClibc_trunk/libc/misc/error/error.c (revision 17397)
++++ uClibc_trunk/libc/misc/error/error.c (working copy)
+@@ -30,11 +30,14 @@ libc_hidden_proto(strcmp)
+ libc_hidden_proto(strerror)
+ libc_hidden_proto(fprintf)
+ libc_hidden_proto(exit)
++#undef putc
+ libc_hidden_proto(putc)
++libc_hidden_proto(fputc)
+ libc_hidden_proto(vfprintf)
+ libc_hidden_proto(fflush)
+-libc_hidden_proto(fputc)
+-libc_hidden_proto(__fputc_unlocked)
++#ifdef __UCLIBC_HAS_STDIO_PUTC_MACRO__
++libc_hidden_proto(fputc_unlocked)
++#endif
+
+ /* This variable is incremented each time `error' is called. */
+ unsigned int error_message_count = 0;