]> rtime.felk.cvut.cz Git - rtems-devel.git/blobdiff - newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff
gcc and binutils update for rtems-4.9.x arm9 build
[rtems-devel.git] / newlib-patches / 1.15.0 / newlib-1.15.0-rtems4.8-20070413.diff
diff --git a/newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff b/newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff
deleted file mode 100644 (file)
index 853e2b1..0000000
+++ /dev/null
@@ -1,1449 +0,0 @@
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/inttypes.h newlib-1.15.0/newlib/libc/include/inttypes.h
---- newlib-1.15.0.orig/newlib/libc/include/inttypes.h  2005-12-16 20:03:12.000000000 +0100
-+++ newlib-1.15.0/newlib/libc/include/inttypes.h       2007-04-13 10:41:47.000000000 +0200
-@@ -242,9 +242,12 @@
- #define SCNxMAX               __SCNMAX(x)
- /* ptr types */
--#if __have_longlong64
--#define __PRIPTR(x) __STRINGIFY(ll##x)
--#define __SCNPTR(x) __STRINGIFY(ll##x)
-+#if __ptrint_t_long_defined
-+#define __PRIPTR(x) __STRINGIFY(l##x)
-+#define __SCNPTR(x) __STRINGIFY(l##x)
-+#elif __ptrint_t_int_defined
-+#define __PRIPTR(x) __STRINGIFY(x)
-+#define __SCNPTR(x) __STRINGIFY(x)
- #elif __have_long64
- #define __PRIPTR(x) __STRINGIFY(l##x)
- #define __SCNPTR(x) __STRINGIFY(l##x)
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/machine/setjmp.h newlib-1.15.0/newlib/libc/include/machine/setjmp.h
---- newlib-1.15.0.orig/newlib/libc/include/machine/setjmp.h    2006-12-18 17:48:03.000000000 +0100
-+++ newlib-1.15.0/newlib/libc/include/machine/setjmp.h 2007-04-13 10:41:47.000000000 +0200
-@@ -27,7 +27,7 @@
- /* necv70 was 9 as well. */
--#ifdef __mc68000__
-+#if defined(__m68k__) || defined(__mc68000__)
- /*
-  * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6,
-  * fp2-fp7    for 68881.
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/stdint.h newlib-1.15.0/newlib/libc/include/stdint.h
---- newlib-1.15.0.orig/newlib/libc/include/stdint.h    2006-08-16 23:39:43.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/include/stdint.h 2007-04-13 10:41:47.000000000 +0200
-@@ -393,6 +393,9 @@
- #define UINTMAX_C(x)  x##UL
- #endif
-+#ifdef __rtems__
-+#include <machine/stdint.h>
-+#endif
- #ifdef __cplusplus
- }
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/errno.h newlib-1.15.0/newlib/libc/include/sys/errno.h
---- newlib-1.15.0.orig/newlib/libc/include/sys/errno.h 2002-09-24 16:10:12.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/include/sys/errno.h      2007-04-13 10:41:47.000000000 +0200
-@@ -148,6 +148,7 @@
- #define ECASECLASH 137  /* Filename exists with different case */
- #define EILSEQ 138
- #define EOVERFLOW 139 /* Value too large for defined data type */
-+#define ECANCELED 140 /* Operation canceled. */
- /* From cygwin32.  */
- #define EWOULDBLOCK EAGAIN    /* Operation would block */
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/features.h newlib-1.15.0/newlib/libc/include/sys/features.h
---- newlib-1.15.0.orig/newlib/libc/include/sys/features.h      2006-09-14 00:09:27.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/include/sys/features.h   2007-04-13 10:41:47.000000000 +0200
-@@ -38,6 +38,7 @@
- #define _POSIX_MEMLOCK_RANGE          1
- #define _POSIX_MEMORY_PROTECTION      1
- #define _POSIX_MESSAGE_PASSING                1
-+#define _POSIX_MONOTONIC_CLOCK                200112L
- #define _POSIX_PRIORITIZED_IO         1
- #define _POSIX_PRIORITY_SCHEDULING    1
- #define _POSIX_REALTIME_SIGNALS               1
-@@ -81,17 +82,89 @@
- #endif
- #ifdef __CYGWIN__
--# define _POSIX_JOB_CONTROL                   1
--# define _POSIX_SAVED_IDS                     0
--# define _POSIX_VERSION                               199009L
--# define _POSIX_THREADS                         1
--# define _POSIX_THREAD_PROCESS_SHARED           1
--# define _POSIX_THREAD_SAFE_FUNCTIONS           1
--# define _POSIX_THREAD_PRIORITY_SCHEDULING      1
--# define _POSIX_THREAD_ATTR_STACKSIZE           1
--# define _POSIX_SEMAPHORES                      1
--# define _POSIX_TIMERS                                1
--# define _POSIX_MEMLOCK_RANGE                 1
-+#define _POSIX_VERSION                                200112L
-+#define _POSIX2_VERSION                               200112L
-+#define _XOPEN_VERSION                                   600
-+
-+#define _POSIX_ADVISORY_INFO                  200112L
-+/* #define _POSIX_ASYNCHRONOUS_IO                 -1 */
-+/* #define _POSIX_BARRIERS                        -1 */
-+#define _POSIX_CHOWN_RESTRICTED                            1
-+/* #define _POSIX_CLOCK_SELECTION                 -1 */
-+/* #define _POSIX_CPUTIME                         -1 */
-+#define _POSIX_FSYNC                          200112L
-+#define _POSIX_IPV6                           200112L
-+#define _POSIX_JOB_CONTROL                         1
-+#define _POSIX_MAPPED_FILES                   200112L
-+/* #define _POSIX_MEMLOCK                         -1 */
-+#define _POSIX_MEMLOCK_RANGE                  200112L
-+#define _POSIX_MEMORY_PROTECTION              200112L
-+/* #define _POSIX_MESSAGE_PASSING                 -1 */
-+/* #define _POSIX_MONOTONIC_CLOCK                 -1 */
-+#define _POSIX_NO_TRUNC                                    1
-+/* #define _POSIX_PRIORITIZED_IO                  -1 */
-+#define _POSIX_PRIORITY_SCHEDULING            200112L
-+#define _POSIX_RAW_SOCKETS                    200112L
-+#define _POSIX_READER_WRITER_LOCKS            200112L
-+#define _POSIX_REALTIME_SIGNALS                       200112L
-+#define _POSIX_REGEXP                              1
-+#define _POSIX_SAVED_IDS                           1
-+#define _POSIX_SEMAPHORES                          1
-+/* #define _POSIX_SHARED_MEMORY_OBJECTS                   -1 */
-+#define _POSIX_SHELL                               1
-+/* #define _POSIX_SPAWN                                   -1 */
-+/* #define _POSIX_SPIN_LOCKS                      -1 */
-+/* #define _POSIX_SPORADIC_SERVER                 -1 */
-+#define _POSIX_SYNCHRONIZED_IO                        200112L
-+/* #define _POSIX_THREAD_ATTR_STACKADDR                   -1 */
-+#define _POSIX_THREAD_ATTR_STACKSIZE  200112L
-+/* #define _POSIX_THREAD_CPUTIME                  -1 */
-+/* #define _POSIX_THREAD_PRIO_INHERIT             -1 */
-+/* #define _POSIX_THREAD_PRIO_PROTECT             -1 */
-+#define _POSIX_THREAD_PRIORITY_SCHEDULING     200112L
-+#define _POSIX_THREAD_PROCESS_SHARED          200112L
-+#define _POSIX_THREAD_SAFE_FUNCTIONS          200112L
-+/* #define _POSIX_THREAD_SPORADIC_SERVER          -1 */
-+#define _POSIX_THREADS                                200112L
-+/* #define _POSIX_TIMEOUTS                        -1 */
-+#define _POSIX_TIMERS                              1
-+/* #define _POSIX_TRACE                                   -1 */
-+/* #define _POSIX_TRACE_EVENT_FILTER              -1 */
-+/* #define _POSIX_TRACE_INHERIT                           -1 */
-+/* #define _POSIX_TRACE_LOG                       -1 */
-+/* #define _POSIX_TYPED_MEMORY_OBJECTS                    -1 */
-+#define _POSIX_VDISABLE                                  '\0'
-+#define _POSIX2_C_BIND                                200112L
-+#define _POSIX2_C_DEV                         200112L
-+#define _POSIX2_CHAR_TERM                     200112L
-+/* #define _POSIX2_FORT_DEV                       -1 */
-+/* #define _POSIX2_FORT_RUN                       -1 */
-+/* #define _POSIX2_LOCALEDEF                      -1 */
-+/* #define _POSIX2_PBS                                    -1 */
-+/* #define _POSIX2_PBS_ACCOUNTING                 -1 */
-+/* #define _POSIX2_PBS_CHECKPOINT                 -1 */
-+/* #define _POSIX2_PBS_LOCATE                     -1 */
-+/* #define _POSIX2_PBS_MESSAGE                            -1 */
-+/* #define _POSIX2_PBS_TRACK                      -1 */
-+#define _POSIX2_SW_DEV                                200112L
-+#define _POSIX2_UPE                           200112L
-+/* #define _POSIX_V6_ILP32_OFF32                  -1 */
-+#define _XBS5_ILP32_OFF32                     _POSIX_V6_ILP32_OFF32
-+#define _POSIX_V6_ILP32_OFFBIG                             1
-+#define _XBS5_ILP32_OFFBIG                    _POSIX_V6_ILP32_OFFBIG
-+/* #define _POSIX_V6_LP64_OFF64                           -1 */
-+#define _XBS5_LP64_OFF64                      _POSIX_V6_LP64_OFF64
-+/* #define _POSIX_V6_LPBIG_OFFBIG                 -1 */
-+#define _XBS5_LPBIG_OFFBIG                    _POSIX_V6_LPBIG_OFFBIG
-+#define _XOPEN_CRYPT                               1
-+#define _XOPEN_ENH_I18N                                    1
-+/* #define _XOPEN_LEGACY                          -1 */
-+/* #define _XOPEN_REALTIME                        -1 */
-+/* #define _XOPEN_REALTIME_THREADS                -1 */
-+#define _XOPEN_SHM                                 1
-+/* #define _XOPEN_STREAMS                         -1 */
-+/* #define _XOPEN_UNIX                                    -1 */
-+
- #endif
- #ifdef __cplusplus
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/_types.h newlib-1.15.0/newlib/libc/include/sys/_types.h
---- newlib-1.15.0.orig/newlib/libc/include/sys/_types.h        2004-06-11 22:37:09.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/include/sys/_types.h     2007-04-13 10:41:47.000000000 +0200
-@@ -39,4 +39,7 @@
- /* Iconv descriptor type */
- typedef void *_iconv_t;
-+typedef long * __intptr_t;
-+typedef unsigned long* __uintptr_t;
-+
- #endif        /* _SYS__TYPES_H */
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/unistd.h newlib-1.15.0/newlib/libc/include/sys/unistd.h
---- newlib-1.15.0.orig/newlib/libc/include/sys/unistd.h        2006-11-07 16:33:40.000000000 +0100
-+++ newlib-1.15.0/newlib/libc/include/sys/unistd.h     2007-04-13 10:41:47.000000000 +0200
-@@ -200,7 +200,7 @@
- int   _EXFUN(getdtablesize, (void));
- int   _EXFUN(setdtablesize, (int));
- useconds_t _EXFUN(ualarm, (useconds_t __useconds, useconds_t __interval));
--unsigned _EXFUN(usleep, (unsigned int __useconds));
-+int _EXFUN(usleep, (useconds_t __useconds));
- #if !(defined  (_WINSOCK_H) || defined (__USE_W32_SOCKETS))
- /* winsock[2].h defines as __stdcall, and with int as 2nd arg */
-  int  _EXFUN(gethostname, (char *__name, size_t __len));
-@@ -212,7 +212,7 @@
- int     _EXFUN(sync, (void));
- #endif
- #endif
--int     _EXFUN(readlink, (const char *__path, char *__buf, int __buflen));
-+ssize_t _EXFUN(readlink, (const char *__path, char *__buf, size_t __buflen));
- int     _EXFUN(symlink, (const char *__name1, const char *__name2));
- #define       F_OK    0
-@@ -231,63 +231,55 @@
- #define STDERR_FILENO   2       /* standard error file descriptor */
- /*
-- *  4.8.1 Get Configurable System Variables, P1003.1b-1993, p. 96
-- *
-- *  NOTE: Table 4-2, Configurable System Variables, p. 96
-- */
--
--#define _SC_ARG_MAX                 0
--#define _SC_CHILD_MAX               1
--#define _SC_CLK_TCK                 2
--#define _SC_NGROUPS_MAX             3
--#define _SC_OPEN_MAX                4
--  /* no _SC_STREAM_MAX */
--#define _SC_JOB_CONTROL             5
--#define _SC_SAVED_IDS               6
--#define _SC_VERSION                 7
--#define _SC_PAGESIZE                8
--/* CYGWIN-specific values .. do not touch */
--#define _SC_NPROCESSORS_CONF        9
--#define _SC_NPROCESSORS_ONLN       10
--#define _SC_PHYS_PAGES             11
--#define _SC_AVPHYS_PAGES           12
--/* end of CYGWIN-specific values */
--#define _SC_MQ_OPEN_MAX            13
--#define _SC_MQ_PRIO_MAX            14
--#define _SC_RTSIG_MAX              15
--#define _SC_SEM_NSEMS_MAX          16
--#define _SC_SEM_VALUE_MAX          17
--#define _SC_SIGQUEUE_MAX           18
--#define _SC_TIMER_MAX              19
--#define _SC_TZNAME_MAX             20
--
--#define _SC_ASYNCHRONOUS_IO        21
--#define _SC_FSYNC                  22
--#define _SC_MAPPED_FILES           23
--#define _SC_MEMLOCK                24
--#define _SC_MEMLOCK_RANGE          25
--#define _SC_MEMORY_PROTECTION      26
--#define _SC_MESSAGE_PASSING        27
--#define _SC_PRIORITIZED_IO         28
--#define _SC_REALTIME_SIGNALS       29
--#define _SC_SEMAPHORES             30
--#define _SC_SHARED_MEMORY_OBJECTS  31
--#define _SC_SYNCHRONIZED_IO        32
--#define _SC_TIMERS                 33
--#define _SC_AIO_LISTIO_MAX         34
--#define _SC_AIO_MAX                35
--#define _SC_AIO_PRIO_DELTA_MAX     36
--#define _SC_DELAYTIMER_MAX         37
--
--/*
-- *  P1003.1c/D10, p. 52 adds the following.
-+ *  sysconf values per IEEE Std 1003.1, 2004 Edition
-  */
-+#define _SC_ARG_MAX                       0
-+#define _SC_CHILD_MAX                     1
-+#define _SC_CLK_TCK                       2
-+#define _SC_NGROUPS_MAX                   3
-+#define _SC_OPEN_MAX                      4
-+#define _SC_JOB_CONTROL                   5
-+#define _SC_SAVED_IDS                     6
-+#define _SC_VERSION                       7
-+#define _SC_PAGESIZE                      8
-+#define _SC_PAGE_SIZE                     _SC_PAGESIZE
-+/* These are non-POSIX values we accidentally introduced in 2000 without
-+   guarding them.  Keeping them unguarded for backward compatibility. */
-+#define _SC_NPROCESSORS_CONF              9
-+#define _SC_NPROCESSORS_ONLN             10
-+#define _SC_PHYS_PAGES                   11
-+#define _SC_AVPHYS_PAGES                 12
-+/* End of non-POSIX values. */
-+#define _SC_MQ_OPEN_MAX                  13
-+#define _SC_MQ_PRIO_MAX                  14
-+#define _SC_RTSIG_MAX                    15
-+#define _SC_SEM_NSEMS_MAX                16
-+#define _SC_SEM_VALUE_MAX                17
-+#define _SC_SIGQUEUE_MAX                 18
-+#define _SC_TIMER_MAX                    19
-+#define _SC_TZNAME_MAX                   20
-+#define _SC_ASYNCHRONOUS_IO              21
-+#define _SC_FSYNC                        22
-+#define _SC_MAPPED_FILES                 23
-+#define _SC_MEMLOCK                      24
-+#define _SC_MEMLOCK_RANGE                25
-+#define _SC_MEMORY_PROTECTION            26
-+#define _SC_MESSAGE_PASSING              27
-+#define _SC_PRIORITIZED_IO               28
-+#define _SC_REALTIME_SIGNALS             29
-+#define _SC_SEMAPHORES                   30
-+#define _SC_SHARED_MEMORY_OBJECTS        31
-+#define _SC_SYNCHRONIZED_IO              32
-+#define _SC_TIMERS                       33
-+#define _SC_AIO_LISTIO_MAX               34
-+#define _SC_AIO_MAX                      35
-+#define _SC_AIO_PRIO_DELTA_MAX           36
-+#define _SC_DELAYTIMER_MAX               37
- #define _SC_THREAD_KEYS_MAX              38
- #define _SC_THREAD_STACK_MIN             39
- #define _SC_THREAD_THREADS_MAX           40
- #define _SC_TTY_NAME_MAX                 41
--
- #define _SC_THREADS                      42
- #define _SC_THREAD_ATTR_STACKADDR        43
- #define _SC_THREAD_ATTR_STACKSIZE        44
-@@ -302,34 +294,99 @@
- #define _SC_GETPW_R_SIZE_MAX             51
- #define _SC_LOGIN_NAME_MAX               52
- #define _SC_THREAD_DESTRUCTOR_ITERATIONS 53
--
--#if !defined(__rtems__)
--#define _SC_STREAM_MAX                        100
--#endif
--#if !defined(__CYGWIN__) && !defined(__rtems__)
--#define _SC_PRIORITY_SCHEDULING               101
--#endif
--  
--# define      _PC_LINK_MAX            0
--# define      _PC_MAX_CANON           1
--# define      _PC_MAX_INPUT           2
--# define      _PC_NAME_MAX            3
--# define      _PC_PATH_MAX            4
--# define      _PC_PIPE_BUF            5
--# define      _PC_CHOWN_RESTRICTED    6
--# define      _PC_NO_TRUNC            7
--# define      _PC_VDISABLE            8
--# define      _PC_ASYNC_IO            9
--# define      _PC_PRIO_IO            10
--# define      _PC_SYNC_IO            11
--# define      _PC_FILESIZEBITS       12
--# define      _PC_2_SYMLINKS         13
--# define      _PC_SYMLINK_MAX        14
-+#define _SC_ADVISORY_INFO                54
-+#define _SC_ATEXIT_MAX                   55
-+#define _SC_BARRIERS                     56
-+#define _SC_BC_BASE_MAX                  57
-+#define _SC_BC_DIM_MAX                   58
-+#define _SC_BC_SCALE_MAX                 59
-+#define _SC_BC_STRING_MAX                60
-+#define _SC_CLOCK_SELECTION              61
-+#define _SC_COLL_WEIGHTS_MAX             62
-+#define _SC_CPUTIME                      63
-+#define _SC_EXPR_NEST_MAX                64
-+#define _SC_HOST_NAME_MAX                65
-+#define _SC_IOV_MAX                      66
-+#define _SC_IPV6                         67
-+#define _SC_LINE_MAX                     68
-+#define _SC_MONOTONIC_CLOCK              69
-+#define _SC_RAW_SOCKETS                  70
-+#define _SC_READER_WRITER_LOCKS          71
-+#define _SC_REGEXP                       72
-+#define _SC_RE_DUP_MAX                   73
-+#define _SC_SHELL                        74
-+#define _SC_SPAWN                        75
-+#define _SC_SPIN_LOCKS                   76
-+#define _SC_SPORADIC_SERVER              77
-+#define _SC_SS_REPL_MAX                  78
-+#define _SC_SYMLOOP_MAX                  79
-+#define _SC_THREAD_CPUTIME               80
-+#define _SC_THREAD_SPORADIC_SERVER       81
-+#define _SC_TIMEOUTS                     82
-+#define _SC_TRACE                        83
-+#define _SC_TRACE_EVENT_FILTER           84
-+#define _SC_TRACE_EVENT_NAME_MAX         85
-+#define _SC_TRACE_INHERIT                86
-+#define _SC_TRACE_LOG                    87
-+#define _SC_TRACE_NAME_MAX               88
-+#define _SC_TRACE_SYS_MAX                89
-+#define _SC_TRACE_USER_EVENT_MAX         90
-+#define _SC_TYPED_MEMORY_OBJECTS         91
-+#define _SC_V6_ILP32_OFF32               92
-+#define _SC_XBS5_ILP32_OFF32             _SC_V6_ILP32_OFF32
-+#define _SC_V6_ILP32_OFFBIG              93
-+#define _SC_XBS5_ILP32_OFFBIG            _SC_V6_ILP32_OFFBIG
-+#define _SC_V6_LP64_OFF64                94
-+#define _SC_XBS5_LP64_OFF64              _SC_V6_LP64_OFF64
-+#define _SC_V6_LPBIG_OFFBIG              95
-+#define _SC_XBS5_LPBIG_OFFBIG            _SC_V6_LPBIG_OFFBIG
-+#define _SC_XOPEN_CRYPT                  96
-+#define _SC_XOPEN_ENH_I18N               97
-+#define _SC_XOPEN_LEGACY                 98
-+#define _SC_XOPEN_REALTIME               99
-+#define _SC_STREAM_MAX                  100
-+#define _SC_PRIORITY_SCHEDULING         101
-+#define _SC_XOPEN_REALTIME_THREADS      102
-+#define _SC_XOPEN_SHM                   103
-+#define _SC_XOPEN_STREAMS               104
-+#define _SC_XOPEN_UNIX                  105
-+#define _SC_XOPEN_VERSION               106
-+#define _SC_2_CHAR_TERM                 107
-+#define _SC_2_C_BIND                    108
-+#define _SC_2_C_DEV                     109
-+#define _SC_2_FORT_DEV                  110
-+#define _SC_2_FORT_RUN                  111
-+#define _SC_2_LOCALEDEF                 112
-+#define _SC_2_PBS                       113
-+#define _SC_2_PBS_ACCOUNTING            114
-+#define _SC_2_PBS_CHECKPOINT            115
-+#define _SC_2_PBS_LOCATE                116
-+#define _SC_2_PBS_MESSAGE               117
-+#define _SC_2_PBS_TRACK                 118
-+#define _SC_2_SW_DEV                    119
-+#define _SC_2_UPE                       120
-+#define _SC_2_VERSION                   121
-+
-+#define _PC_LINK_MAX                      0
-+#define _PC_MAX_CANON                     1
-+#define _PC_MAX_INPUT                     2
-+#define _PC_NAME_MAX                      3
-+#define _PC_PATH_MAX                      4
-+#define _PC_PIPE_BUF                      5
-+#define _PC_CHOWN_RESTRICTED              6
-+#define _PC_NO_TRUNC                      7
-+#define _PC_VDISABLE                      8
-+#define _PC_ASYNC_IO                      9
-+#define _PC_PRIO_IO                      10
-+#define _PC_SYNC_IO                      11
-+#define _PC_FILESIZEBITS                 12
-+#define _PC_2_SYMLINKS                   13
-+#define _PC_SYMLINK_MAX                  14
- #ifdef __CYGWIN__
- /* Ask for POSIX permission bits support. */
--# define      _PC_POSIX_PERMISSIONS   90
-+#define _PC_POSIX_PERMISSIONS            90
- /* Ask for full POSIX permission support including uid/gid settings. */
--# define      _PC_POSIX_SECURITY     91
-+#define _PC_POSIX_SECURITY               91
- #endif
- /* FIXME: This is temporary until winsup gets sorted out.  */
-diff -uNr newlib-1.15.0.orig/newlib/libc/include/time.h newlib-1.15.0/newlib/libc/include/time.h
---- newlib-1.15.0.orig/newlib/libc/include/time.h      2005-11-18 16:57:24.000000000 +0100
-+++ newlib-1.15.0/newlib/libc/include/time.h   2007-04-13 10:41:47.000000000 +0200
-@@ -226,6 +226,16 @@
- #endif
-+#if defined(_POSIX_MONOTONIC_CLOCK)
-+
-+/*  The identifier for the system-wide monotonic clock, which is defined
-+    as a clock whose value cannot be set via clock_settime() and which 
-+    cannot have backward clock jumps. */
-+
-+#define CLOCK_MONOTONIC (clockid_t)4
-+
-+#endif
-+
- #if defined(_POSIX_CPUTIME)
- /* Accessing a Process CPU-time CLock, P1003.4b/D8, p. 55 */
-diff -uNr newlib-1.15.0.orig/newlib/libc/machine/arm/machine/endian.h newlib-1.15.0/newlib/libc/machine/arm/machine/endian.h
---- newlib-1.15.0.orig/newlib/libc/machine/arm/machine/endian.h        2004-05-07 22:29:24.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/machine/arm/machine/endian.h     1970-01-01 01:00:00.000000000 +0100
-@@ -1,12 +0,0 @@
--/* ARM configuration file */
--
--#ifndef _MACHINE_ENDIAN_H
--# define _MACHINE_ENDIAN_H
--
--#ifdef __ARMEB__
--#define BYTE_ORDER BIG_ENDIAN
--#else
--#define BYTE_ORDER LITTLE_ENDIAN
--#endif
--
--#endif
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/db_local.h newlib-1.15.0/newlib/libc/search/db_local.h
---- newlib-1.15.0.orig/newlib/libc/search/db_local.h   2002-06-25 01:05:08.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/db_local.h        2007-04-13 10:41:47.000000000 +0200
-@@ -50,7 +50,7 @@
- #define       MAX_PAGE_NUMBER 0xffffffff      /* >= # of pages in a file */
- typedef __uint32_t    pgno_t;
- #define       MAX_PAGE_OFFSET 65535           /* >= # of bytes in a page */
--typedef __uint16_t    indx_t;
-+typedef __uint_least16_t      indx_t;
- #define       MAX_REC_NUMBER  0xffffffff      /* >= # of records in a tree */
- typedef __uint32_t    recno_t;
-@@ -191,12 +191,12 @@
-  *    P_16_COPY       swap from one location to another
-  */
- #define       M_16_SWAP(a) {                                                  \
--      __uint16_t _tmp = a;                                            \
-+      __uint_least16_t _tmp = a;                                              \
-       ((char *)&a)[0] = ((char *)&_tmp)[1];                           \
-       ((char *)&a)[1] = ((char *)&_tmp)[0];                           \
- }
- #define       P_16_SWAP(a) {                                                  \
--      __uint16_t _tmp = *(__uint16_t *)a;                             \
-+      __uint_least16_t _tmp = *(__uint_least16_t *)a;                         \
-       ((char *)a)[0] = ((char *)&_tmp)[1];                            \
-       ((char *)a)[1] = ((char *)&_tmp)[0];                            \
- }
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/extern.h newlib-1.15.0/newlib/libc/search/extern.h
---- newlib-1.15.0.orig/newlib/libc/search/extern.h     2002-06-20 21:51:31.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/extern.h  2007-04-13 10:41:47.000000000 +0200
-@@ -48,7 +48,7 @@
- int    __delpair(HTAB *, BUFHEAD *, int);
- int    __expand_table(HTAB *);
- int    __find_bigpair(HTAB *, BUFHEAD *, int, char *, int);
--__uint16_t     __find_last_page(HTAB *, BUFHEAD **);
-+__uint_least16_t       __find_last_page(HTAB *, BUFHEAD **);
- void   __free_ovflpage(HTAB *, BUFHEAD *);
- BUFHEAD       *__get_buf(HTAB *, __uint32_t, BUFHEAD *, int);
- int    __get_page(HTAB *, char *, __uint32_t, int, int, int);
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_bigkey.c newlib-1.15.0/newlib/libc/search/hash_bigkey.c
---- newlib-1.15.0.orig/newlib/libc/search/hash_bigkey.c        2006-06-07 21:22:59.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/hash_bigkey.c     2007-04-13 10:41:47.000000000 +0200
-@@ -92,13 +92,13 @@
-       BUFHEAD *bufp;
-       const DBT *key, *val;
- {
--      __uint16_t *p;
-+      __uint_least16_t *p;
-       int key_size, n, val_size;
--      __uint16_t space, move_bytes, off;
-+      __uint_least16_t space, move_bytes, off;
-       char *cp, *key_data, *val_data;
-       cp = bufp->page;                /* Character pointer of p. */
--      p = (__uint16_t *)cp;
-+      p = (__uint_least16_t *)cp;
-       key_data = (char *)key->data;
-       key_size = key->size;
-@@ -136,7 +136,7 @@
-                               OFFSET(p) = off;
-                       } else
-                               p[n - 2] = FULL_KEY;
--              p = (__uint16_t *)bufp->page;
-+              p = (__uint_least16_t *)bufp->page;
-               cp = bufp->page;
-               bufp->flags |= BUF_MOD;
-       }
-@@ -166,7 +166,7 @@
-                       if (!bufp)
-                               return (-1);
-                       cp = bufp->page;
--                      p = (__uint16_t *)cp;
-+                      p = (__uint_least16_t *)cp;
-               } else
-                       p[n] = FULL_KEY_DATA;
-               bufp->flags |= BUF_MOD;
-@@ -191,12 +191,12 @@
-       BUFHEAD *bufp;
- {
-       BUFHEAD *last_bfp, *rbufp;
--      __uint16_t *bp, pageno;
-+      __uint_least16_t *bp, pageno;
-       int key_done, n;
-       rbufp = bufp;
-       last_bfp = NULL;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       pageno = 0;
-       key_done = 0;
-@@ -219,7 +219,7 @@
-               last_bfp = rbufp;
-               if (!rbufp)
-                       return (-1);            /* Error. */
--              bp = (__uint16_t *)rbufp->page;
-+              bp = (__uint_least16_t *)rbufp->page;
-       }
-       /*
-@@ -234,7 +234,7 @@
-       pageno = bp[n - 1];
-       /* Now, bp is the first page of the pair. */
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       if (n > 2) {
-               /* There is an overflow page. */
-               bp[1] = pageno;
-@@ -272,13 +272,13 @@
-       char *key;
-       int size;
- {
--      __uint16_t *bp;
-+      __uint_least16_t *bp;
-       char *p;
-       int ksize;
--      __uint16_t bytes;
-+      __uint_least16_t bytes;
-       char *kkey;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       p = bufp->page;
-       ksize = size;
-       kkey = key;
-@@ -294,7 +294,7 @@
-               if (!bufp)
-                       return (-3);
-               p = bufp->page;
--              bp = (__uint16_t *)p;
-+              bp = (__uint_least16_t *)p;
-               ndx = 1;
-       }
-@@ -316,17 +316,17 @@
-  * of the pair; 0 if there isn't any (i.e. big pair is the last key in the
-  * bucket)
-  */
--extern __uint16_t
-+extern __uint_least16_t
- __find_last_page(hashp, bpp)
-       HTAB *hashp;
-       BUFHEAD **bpp;
- {
-       BUFHEAD *bufp;
--      __uint16_t *bp, pageno;
-+      __uint_least16_t *bp, pageno;
-       int n;
-       bufp = *bpp;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       for (;;) {
-               n = bp[0];
-@@ -343,7 +343,7 @@
-               bufp = __get_buf(hashp, pageno, bufp, 0);
-               if (!bufp)
-                       return (0);     /* Need to indicate an error! */
--              bp = (__uint16_t *)bufp->page;
-+              bp = (__uint_least16_t *)bufp->page;
-       }
-       *bpp = bufp;
-@@ -366,15 +366,15 @@
-       int set_current;
- {
-       BUFHEAD *save_p;
--      __uint16_t *bp, len, off, save_addr;
-+      __uint_least16_t *bp, len, off, save_addr;
-       char *tp;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       while (bp[ndx + 1] == PARTIAL_KEY) {
-               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-               if (!bufp)
-                       return (-1);
--              bp = (__uint16_t *)bufp->page;
-+              bp = (__uint_least16_t *)bufp->page;
-               ndx = 1;
-       }
-@@ -382,7 +382,7 @@
-               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-               if (!bufp)
-                       return (-1);
--              bp = (__uint16_t *)bufp->page;
-+              bp = (__uint_least16_t *)bufp->page;
-               save_p = bufp;
-               save_addr = save_p->addr;
-               off = bp[1];
-@@ -403,7 +403,7 @@
-                       bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-                       if (!bufp)
-                               return (-1);
--                      bp = (__uint16_t *)bufp->page;
-+                      bp = (__uint_least16_t *)bufp->page;
-               } else {
-                       /* The data is all on one page. */
-                       tp = (char *)bp;
-@@ -422,7 +422,7 @@
-                                       if (!hashp->cpage)
-                                               return (-1);
-                                       hashp->cndx = 1;
--                                      if (!((__uint16_t *)
-+                                      if (!((__uint_least16_t *)
-                                           hashp->cpage->page)[0]) {
-                                               hashp->cbucket++;
-                                               hashp->cpage = NULL;
-@@ -454,14 +454,14 @@
-       BUFHEAD *bufp;
-       int len, set;
- {
--      __uint16_t *bp;
-+      __uint_least16_t *bp;
-       char *p;
-       BUFHEAD *xbp;
--      __uint16_t save_addr;
-+      __uint_least16_t save_addr;
-       int mylen, totlen;
-       p = bufp->page;
--      bp = (__uint16_t *)p;
-+      bp = (__uint_least16_t *)p;
-       mylen = hashp->BSIZE - bp[1];
-       save_addr = bufp->addr;
-@@ -481,7 +481,7 @@
-                                   __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-                               if (!hashp->cpage)
-                                       return (-1);
--                              else if (!((__uint16_t *)hashp->cpage->page)[0]) {
-+                              else if (!((__uint_least16_t *)hashp->cpage->page)[0]) {
-                                       hashp->cbucket++;
-                                       hashp->cpage = NULL;
-                               }
-@@ -533,10 +533,10 @@
-       BUFHEAD *xbp;
-       char *p;
-       int mylen, totlen;
--      __uint16_t *bp, save_addr;
-+      __uint_least16_t *bp, save_addr;
-       p = bufp->page;
--      bp = (__uint16_t *)p;
-+      bp = (__uint_least16_t *)p;
-       mylen = hashp->BSIZE - bp[1];
-       save_addr = bufp->addr;
-@@ -579,11 +579,11 @@
-       SPLIT_RETURN *ret;
- {
-       BUFHEAD *tmpp;
--      __uint16_t *tp;
-+      __uint_least16_t *tp;
-       BUFHEAD *bp;
-       DBT key, val;
-       __uint32_t change;
--      __uint16_t free_space, n, off;
-+      __uint_least16_t free_space, n, off;
-       bp = big_keyp;
-@@ -615,14 +615,14 @@
-           (tmpp->ovfl ? tmpp->ovfl->addr : 0), (bp ? bp->addr : 0));
- #endif
-       tmpp->ovfl = bp;        /* one of op/np point to big_keyp */
--      tp = (__uint16_t *)tmpp->page;
-+      tp = (__uint_least16_t *)tmpp->page;
- #ifdef DEBUG
-       assert(FREESPACE(tp) >= OVFLSIZE);
- #endif
-       n = tp[0];
-       off = OFFSET(tp);
-       free_space = FREESPACE(tp);
--      tp[++n] = (__uint16_t)addr;
-+      tp[++n] = (__uint_least16_t)addr;
-       tp[++n] = OVFLPAGE;
-       tp[0] = n;
-       OFFSET(tp) = off;
-@@ -638,7 +638,7 @@
-       ret->newp = np;
-       ret->oldp = op;
--      tp = (__uint16_t *)big_keyp->page;
-+      tp = (__uint_least16_t *)big_keyp->page;
-       big_keyp->flags |= BUF_MOD;
-       if (tp[0] > 2) {
-               /*
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_buf.c newlib-1.15.0/newlib/libc/search/hash_buf.c
---- newlib-1.15.0.orig/newlib/libc/search/hash_buf.c   2004-05-26 19:57:10.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/hash_buf.c        2007-04-13 10:41:47.000000000 +0200
-@@ -176,7 +176,7 @@
-       BUFHEAD *next_xbp;
-       SEGMENT segp;
-       int segment_ndx;
--      __uint16_t oaddr, *shortp;
-+      __uint_least16_t oaddr, *shortp;
-       oaddr = 0;
-       bp = LRU;
-@@ -212,7 +212,7 @@
-                        * Set oaddr before __put_page so that you get it
-                        * before bytes are swapped.
-                        */
--                      shortp = (__uint16_t *)bp->page;
-+                      shortp = (__uint_least16_t *)bp->page;
-                       if (shortp[0])
-                               oaddr = shortp[shortp[0] - 1];
-                       if ((bp->flags & BUF_MOD) && __put_page(hashp, bp->page,
-@@ -255,7 +255,7 @@
-                                   (oaddr != xbp->addr))
-                                       break;
--                              shortp = (__uint16_t *)xbp->page;
-+                              shortp = (__uint_least16_t *)xbp->page;
-                               if (shortp[0])
-                                       /* set before __put_page */
-                                       oaddr = shortp[shortp[0] - 1];
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash.c newlib-1.15.0/newlib/libc/search/hash.c
---- newlib-1.15.0.orig/newlib/libc/search/hash.c       2004-05-26 19:57:10.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/hash.c    2007-04-13 10:41:47.000000000 +0200
-@@ -628,10 +628,10 @@
- {
-       BUFHEAD *rbufp;
-       BUFHEAD *bufp, *save_bufp;
--      __uint16_t *bp;
-+      __uint_least16_t *bp;
-       int n, ndx, off, size;
-       char *kp;
--      __uint16_t pageno;
-+      __uint_least16_t pageno;
- #ifdef HASH_STATISTICS
-       hash_accesses++;
-@@ -647,7 +647,7 @@
-       /* Pin the bucket chain */
-       rbufp->flags |= BUF_PIN;
--      for (bp = (__uint16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;)
-+      for (bp = (__uint_least16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;)
-               if (bp[1] >= REAL_KEY) {
-                       /* Real key/data pair */
-                       if (size == off - *bp &&
-@@ -666,7 +666,7 @@
-                               return (ERROR);
-                       }
-                       /* FOR LOOP INIT */
--                      bp = (__uint16_t *)rbufp->page;
-+                      bp = (__uint_least16_t *)rbufp->page;
-                       n = *bp++;
-                       ndx = 1;
-                       off = hashp->BSIZE;
-@@ -688,7 +688,7 @@
-                                       return (ERROR);
-                               }
-                               /* FOR LOOP INIT */
--                              bp = (__uint16_t *)rbufp->page;
-+                              bp = (__uint_least16_t *)rbufp->page;
-                               n = *bp++;
-                               ndx = 1;
-                               off = hashp->BSIZE;
-@@ -722,7 +722,7 @@
-               save_bufp->flags &= ~BUF_PIN;
-               return (ABNORMAL);
-       case HASH_GET:
--              bp = (__uint16_t *)rbufp->page;
-+              bp = (__uint_least16_t *)rbufp->page;
-               if (bp[ndx + 1] < REAL_KEY) {
-                       if (__big_return(hashp, rbufp, ndx, val, 0))
-                               return (ERROR);
-@@ -758,7 +758,7 @@
-       __uint32_t bucket;
-       BUFHEAD *bufp;
-       HTAB *hashp;
--      __uint16_t *bp, ndx;
-+      __uint_least16_t *bp, ndx;
-       hashp = (HTAB *)dbp->internal;
-       if (flag && flag != R_FIRST && flag != R_NEXT) {
-@@ -783,7 +783,7 @@
-                               if (!bufp)
-                                       return (ERROR);
-                               hashp->cpage = bufp;
--                              bp = (__uint16_t *)bufp->page;
-+                              bp = (__uint_least16_t *)bufp->page;
-                               if (bp[0])
-                                       break;
-                       }
-@@ -793,7 +793,7 @@
-                               return (ABNORMAL);
-                       }
-               } else
--                      bp = (__uint16_t *)hashp->cpage->page;
-+                      bp = (__uint_least16_t *)hashp->cpage->page;
- #ifdef DEBUG
-               assert(bp);
-@@ -804,7 +804,7 @@
-                           __get_buf(hashp, bp[hashp->cndx], bufp, 0);
-                       if (!bufp)
-                               return (ERROR);
--                      bp = (__uint16_t *)(bufp->page);
-+                      bp = (__uint_least16_t *)(bufp->page);
-                       hashp->cndx = 1;
-               }
-               if (!bp[0]) {
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash.h newlib-1.15.0/newlib/libc/search/hash.h
---- newlib-1.15.0.orig/newlib/libc/search/hash.h       2002-07-02 20:18:58.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/hash.h    2007-04-13 10:41:47.000000000 +0200
-@@ -102,7 +102,7 @@
- #define NCACHED       32                      /* number of bit maps and spare 
-                                        * points */
-       int             spares[NCACHED];/* spare pages for overflow */
--      __uint16_t      bitmaps[NCACHED];       /* address of overflow page 
-+      __uint_least16_t        bitmaps[NCACHED];       /* address of overflow page 
-                                                * bitmaps */
- } HASHHDR;
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_page.c newlib-1.15.0/newlib/libc/search/hash_page.c
---- newlib-1.15.0.orig/newlib/libc/search/hash_page.c  2002-09-19 23:28:51.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/hash_page.c       2007-04-13 10:41:47.000000000 +0200
-@@ -77,16 +77,16 @@
- static __uint32_t     *fetch_bitmap(HTAB *, int);
- static __uint32_t      first_free(__uint32_t);
- static int     open_temp(HTAB *);
--static __uint16_t      overflow_page(HTAB *);
-+static __uint_least16_t        overflow_page(HTAB *);
- static void    putpair(char *, const DBT *, const DBT *);
--static void    squeeze_key(__uint16_t *, const DBT *, const DBT *);
-+static void    squeeze_key(__uint_least16_t *, const DBT *, const DBT *);
- static int     ugly_split
- (HTAB *, __uint32_t, BUFHEAD *, BUFHEAD *, int, int);
- #define       PAGE_INIT(P) { \
--      ((__uint16_t *)(P))[0] = 0; \
--      ((__uint16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint16_t); \
--      ((__uint16_t *)(P))[2] = hashp->BSIZE; \
-+      ((__uint_least16_t *)(P))[0] = 0; \
-+      ((__uint_least16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint_least16_t); \
-+      ((__uint_least16_t *)(P))[2] = hashp->BSIZE; \
- }
- /*
-@@ -99,9 +99,9 @@
-       char *p;
-       const DBT *key, *val;
- {
--      __uint16_t *bp, n, off;
-+      __uint_least16_t *bp, n, off;
--      bp = (__uint16_t *)p;
-+      bp = (__uint_least16_t *)p;
-       /* Enter the key first. */
-       n = bp[0];
-@@ -117,7 +117,7 @@
-       /* Adjust page info. */
-       bp[0] = n;
--      bp[n + 1] = off - ((n + 3) * sizeof(__uint16_t));
-+      bp[n + 1] = off - ((n + 3) * sizeof(__uint_least16_t));
-       bp[n + 2] = off;
- }
-@@ -132,11 +132,11 @@
-       BUFHEAD *bufp;
-       int ndx;
- {
--      __uint16_t *bp, newoff;
-+      __uint_least16_t *bp, newoff;
-       int n;
--      __uint16_t pairlen;
-+      __uint_least16_t pairlen;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       n = bp[0];
-       if (bp[ndx + 1] < REAL_KEY)
-@@ -167,7 +167,7 @@
-       }
-       /* Finally adjust the page data */
-       bp[n] = OFFSET(bp) + pairlen;
--      bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint16_t);
-+      bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint_least16_t);
-       bp[0] = n - 2;
-       hashp->NKEYS--;
-@@ -185,15 +185,15 @@
-       __uint32_t obucket, nbucket;
- {
-       BUFHEAD *new_bufp, *old_bufp;
--      __uint16_t *ino;
-+      __uint_least16_t *ino;
-       char *np;
-       DBT key, val;
-       int n, ndx, retval;
--      __uint16_t copyto, diff, off, moved;
-+      __uint_least16_t copyto, diff, off, moved;
-       char *op;
--      copyto = (__uint16_t)hashp->BSIZE;
--      off = (__uint16_t)hashp->BSIZE;
-+      copyto = (__uint_least16_t)hashp->BSIZE;
-+      off = (__uint_least16_t)hashp->BSIZE;
-       old_bufp = __get_buf(hashp, obucket, NULL, 0);
-       if (old_bufp == NULL)
-               return (-1);
-@@ -204,7 +204,7 @@
-       old_bufp->flags |= (BUF_MOD | BUF_PIN);
-       new_bufp->flags |= (BUF_MOD | BUF_PIN);
--      ino = (__uint16_t *)(op = old_bufp->page);
-+      ino = (__uint_least16_t *)(op = old_bufp->page);
-       np = new_bufp->page;
-       moved = 0;
-@@ -246,13 +246,13 @@
-       /* Now clean up the page */
-       ino[0] -= moved;
--      FREESPACE(ino) = copyto - sizeof(__uint16_t) * (ino[0] + 3);
-+      FREESPACE(ino) = copyto - sizeof(__uint_least16_t) * (ino[0] + 3);
-       OFFSET(ino) = copyto;
- #ifdef DEBUG3
-       (void)fprintf(stderr, "split %d/%d\n",
--          ((__uint16_t *)np)[0] / 2,
--          ((__uint16_t *)op)[0] / 2);
-+          ((__uint_least16_t *)np)[0] / 2,
-+          ((__uint_least16_t *)op)[0] / 2);
- #endif
-       /* unpin both pages */
-       old_bufp->flags &= ~BUF_PIN;
-@@ -284,22 +284,22 @@
-       int moved;              /* Number of pairs moved to new page. */
- {
-       BUFHEAD *bufp;          /* Buffer header for ino */
--      __uint16_t *ino;                /* Page keys come off of */
--      __uint16_t *np;         /* New page */
--      __uint16_t *op;         /* Page keys go on to if they aren't moving */
-+      __uint_least16_t *ino;          /* Page keys come off of */
-+      __uint_least16_t *np;           /* New page */
-+      __uint_least16_t *op;           /* Page keys go on to if they aren't moving */
-       BUFHEAD *last_bfp;      /* Last buf header OVFL needing to be freed */
-       DBT key, val;
-       SPLIT_RETURN ret;
--      __uint16_t n, off, ov_addr, scopyto;
-+      __uint_least16_t n, off, ov_addr, scopyto;
-       char *cino;             /* Character value of ino */
-       bufp = old_bufp;
--      ino = (__uint16_t *)old_bufp->page;
--      np = (__uint16_t *)new_bufp->page;
--      op = (__uint16_t *)old_bufp->page;
-+      ino = (__uint_least16_t *)old_bufp->page;
-+      np = (__uint_least16_t *)new_bufp->page;
-+      op = (__uint_least16_t *)old_bufp->page;
-       last_bfp = NULL;
--      scopyto = (__uint16_t)copyto;   /* ANSI */
-+      scopyto = (__uint_least16_t)copyto;     /* ANSI */
-       n = ino[0] - 1;
-       while (n < ino[0]) {
-@@ -310,16 +310,16 @@
-                       old_bufp = ret.oldp;
-                       if (!old_bufp)
-                               return (-1);
--                      op = (__uint16_t *)old_bufp->page;
-+                      op = (__uint_least16_t *)old_bufp->page;
-                       new_bufp = ret.newp;
-                       if (!new_bufp)
-                               return (-1);
--                      np = (__uint16_t *)new_bufp->page;
-+                      np = (__uint_least16_t *)new_bufp->page;
-                       bufp = ret.nextp;
-                       if (!bufp)
-                               return (0);
-                       cino = (char *)bufp->page;
--                      ino = (__uint16_t *)cino;
-+                      ino = (__uint_least16_t *)cino;
-                       last_bfp = ret.nextp;
-               } else if (ino[n + 1] == OVFLPAGE) {
-                       ov_addr = ino[n];
-@@ -329,14 +329,14 @@
-                        */
-                       ino[0] -= (moved + 2);
-                       FREESPACE(ino) =
--                          scopyto - sizeof(__uint16_t) * (ino[0] + 3);
-+                          scopyto - sizeof(__uint_least16_t) * (ino[0] + 3);
-                       OFFSET(ino) = scopyto;
-                       bufp = __get_buf(hashp, ov_addr, bufp, 0);
-                       if (!bufp)
-                               return (-1);
--                      ino = (__uint16_t *)bufp->page;
-+                      ino = (__uint_least16_t *)bufp->page;
-                       n = 1;
-                       scopyto = hashp->BSIZE;
-                       moved = 0;
-@@ -364,7 +364,7 @@
-                                           __add_ovflpage(hashp, old_bufp);
-                                       if (!old_bufp)
-                                               return (-1);
--                                      op = (__uint16_t *)old_bufp->page;
-+                                      op = (__uint_least16_t *)old_bufp->page;
-                                       putpair((char *)op, &key, &val);
-                               }
-                               old_bufp->flags |= BUF_MOD;
-@@ -377,7 +377,7 @@
-                                           __add_ovflpage(hashp, new_bufp);
-                                       if (!new_bufp)
-                                               return (-1);
--                                      np = (__uint16_t *)new_bufp->page;
-+                                      np = (__uint_least16_t *)new_bufp->page;
-                                       putpair((char *)np, &key, &val);
-                               }
-                               new_bufp->flags |= BUF_MOD;
-@@ -402,10 +402,10 @@
-       BUFHEAD *bufp;
-       const DBT *key, *val;
- {
--      __uint16_t *bp, *sop;
-+      __uint_least16_t *bp, *sop;
-       int do_expand;
--      bp = (__uint16_t *)bufp->page;
-+      bp = (__uint_least16_t *)bufp->page;
-       do_expand = 0;
-       while (bp[0] && (bp[2] < REAL_KEY || bp[bp[0]] < REAL_KEY))
-               /* Exception case */
-@@ -417,7 +417,7 @@
-                       bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-                       if (!bufp)
-                               return (-1);
--                      bp = (__uint16_t *)bufp->page;
-+                      bp = (__uint_least16_t *)bufp->page;
-               } else
-                       /* Try to squeeze key on this page */
-                       if (FREESPACE(bp) > PAIRSIZE(key, val)) {
-@@ -427,7 +427,7 @@
-                               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
-                               if (!bufp)
-                                       return (-1);
--                              bp = (__uint16_t *)bufp->page;
-+                              bp = (__uint_least16_t *)bufp->page;
-                       }
-       if (PAIRFITS(bp, key, val))
-@@ -437,7 +437,7 @@
-               bufp = __add_ovflpage(hashp, bufp);
-               if (!bufp)
-                       return (-1);
--              sop = (__uint16_t *)bufp->page;
-+              sop = (__uint_least16_t *)bufp->page;
-               if (PAIRFITS(sop, key, val))
-                       putpair((char *)sop, key, val);
-@@ -468,12 +468,12 @@
-       HTAB *hashp;
-       BUFHEAD *bufp;
- {
--      __uint16_t *sp;
--      __uint16_t ndx, ovfl_num;
-+      __uint_least16_t *sp;
-+      __uint_least16_t ndx, ovfl_num;
- #ifdef DEBUG1
-       int tmp1, tmp2;
- #endif
--      sp = (__uint16_t *)bufp->page;
-+      sp = (__uint_least16_t *)bufp->page;
-       /* Check if we are dynamically determining the fill factor */
-       if (hashp->FFACTOR == DEF_FFACTOR) {
-@@ -525,7 +525,7 @@
- {
-       int fd, page, size;
-       int rsize;
--      __uint16_t *bp;
-+      __uint_least16_t *bp;
-       fd = hashp->fp;
-       size = hashp->BSIZE;
-@@ -541,7 +541,7 @@
-       if ((lseek(fd, (off_t)page << hashp->BSHIFT, SEEK_SET) == -1) ||
-           ((rsize = read(fd, p, size)) == -1))
-               return (-1);
--      bp = (__uint16_t *)p;
-+      bp = (__uint_least16_t *)p;
-       if (!rsize)
-               bp[0] = 0;      /* We hit the EOF, so initialize a new page */
-       else
-@@ -600,9 +600,9 @@
-                       for (i = 0; i < max; i++)
-                               M_32_SWAP(((int *)p)[i]);
-               } else {
--                      max = ((__uint16_t *)p)[0] + 2;
-+                      max = ((__uint_least16_t *)p)[0] + 2;
-                       for (i = 0; i <= max; i++)
--                              M_16_SWAP(((__uint16_t *)p)[i]);
-+                              M_16_SWAP(((__uint_least16_t *)p)[i]);
-               }
-       }
-       if (is_bucket)
-@@ -643,7 +643,7 @@
-           hashp->BSIZE - clearbytes);
-       ip[clearints - 1] = ALL_SET << (nbits & BYTE_MASK);
-       SETBIT(ip, 0);
--      hashp->BITMAPS[ndx] = (__uint16_t)pnum;
-+      hashp->BITMAPS[ndx] = (__uint_least16_t)pnum;
-       hashp->mapp[ndx] = ip;
-       return (0);
- }
-@@ -663,13 +663,13 @@
-       return (i);
- }
--static __uint16_t
-+static __uint_least16_t
- overflow_page(hashp)
-       HTAB *hashp;
- {
-       __uint32_t *freep;
-       int max_free, offset, splitnum;
--      __uint16_t addr;
-+      __uint_least16_t addr;
-       int bit, first_page, free_bit, free_page, i, in_use_bits, j;
- #ifdef DEBUG2
-       int tmp1, tmp2;
-@@ -816,16 +816,16 @@
-       HTAB *hashp;
-       BUFHEAD *obufp;
- {
--      __uint16_t addr;
-+      __uint_least16_t addr;
-       __uint32_t *freep;
-       int bit_address, free_page, free_bit;
--      __uint16_t ndx;
-+      __uint_least16_t ndx;
-       addr = obufp->addr;
- #ifdef DEBUG1
-       (void)fprintf(stderr, "Freeing %d\n", addr);
- #endif
--      ndx = (((__uint16_t)addr) >> SPLITSHIFT);
-+      ndx = (((__uint_least16_t)addr) >> SPLITSHIFT);
-       bit_address =
-           (ndx ? hashp->SPARES[ndx - 1] : 0) + (addr & SPLITMASK) - 1;
-        if (bit_address < hashp->LAST_FREED)
-@@ -883,11 +883,11 @@
-  */
- static void
- squeeze_key(sp, key, val)
--      __uint16_t *sp;
-+      __uint_least16_t *sp;
-       const DBT *key, *val;
- {
-       char *p;
--      __uint16_t free_space, n, off, pageno;
-+      __uint_least16_t free_space, n, off, pageno;
-       p = (char *)sp;
-       n = sp[0];
-diff -uNr newlib-1.15.0.orig/newlib/libc/search/page.h newlib-1.15.0/newlib/libc/search/page.h
---- newlib-1.15.0.orig/newlib/libc/search/page.h       2002-06-20 21:51:31.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/search/page.h    2007-04-13 10:41:47.000000000 +0200
-@@ -74,20 +74,20 @@
-  * You might as well do this up front.
-  */
--#define       PAIRSIZE(K,D)   (2*sizeof(__uint16_t) + (K)->size + (D)->size)
--#define BIGOVERHEAD   (4*sizeof(__uint16_t))
--#define KEYSIZE(K)    (4*sizeof(__uint16_t) + (K)->size);
--#define OVFLSIZE      (2*sizeof(__uint16_t))
-+#define       PAIRSIZE(K,D)   (2*sizeof(__uint_least16_t) + (K)->size + (D)->size)
-+#define BIGOVERHEAD   (4*sizeof(__uint_least16_t))
-+#define KEYSIZE(K)    (4*sizeof(__uint_least16_t) + (K)->size);
-+#define OVFLSIZE      (2*sizeof(__uint_least16_t))
- #define FREESPACE(P)  ((P)[(P)[0]+1])
- #define       OFFSET(P)       ((P)[(P)[0]+2])
- #define PAIRFITS(P,K,D) \
-       (((P)[2] >= REAL_KEY) && \
-           (PAIRSIZE((K),(D)) + OVFLSIZE) <= FREESPACE((P)))
--#define PAGE_META(N)  (((N)+3) * sizeof(__uint16_t))
-+#define PAGE_META(N)  (((N)+3) * sizeof(__uint_least16_t))
- typedef struct {
-       BUFHEAD *newp;
-       BUFHEAD *oldp;
-       BUFHEAD *nextp;
--      __uint16_t next_addr;
-+      __uint_least16_t next_addr;
- }       SPLIT_RETURN;
-diff -uNr newlib-1.15.0.orig/newlib/libc/sys/rtems/machine/stdint.h newlib-1.15.0/newlib/libc/sys/rtems/machine/stdint.h
---- newlib-1.15.0.orig/newlib/libc/sys/rtems/machine/stdint.h  1970-01-01 01:00:00.000000000 +0100
-+++ newlib-1.15.0/newlib/libc/sys/rtems/machine/stdint.h       2007-04-13 10:41:47.000000000 +0200
-@@ -0,0 +1,31 @@
-+/*
-+ *
-+ */
-+#ifndef _MACHINE_STDINT_H
-+#define _MACHINE_STDINT_H
-+
-+#ifndef _STDINT_H
-+#error machine/stdint.h is an internal file and  must not be directly included
-+#endif
-+
-+#if defined(__sparc__) \
-+  || defined(__powerpc__) || defined(__PPC__) \
-+  || defined(__mips__) \
-+  || defined(__sh__) \
-+  || defined(__AVR__) \
-+  || defined(_C4x) || defined(_C3x) \
-+  || defined(__H8300__)
-+/* PTRDIFF_TYPE = int */
-+#define __ptrint_t_int_defined 1
-+#endif
-+
-+#if defined(__i386__) \
-+  || defined(__m68k__) \
-+  || defined(__bfin__) \
-+  || defined(__arm__) \
-+  || defined(__H8300S__) || defined(__H8300H__)
-+/* PTRDIFF_TYPE = long */
-+#define __ptrint_t_long_defined 1
-+#endif
-+
-+#endif
-diff -uNr newlib-1.15.0.orig/newlib/libc/sys/rtems/sys/param.h newlib-1.15.0/newlib/libc/sys/rtems/sys/param.h
---- newlib-1.15.0.orig/newlib/libc/sys/rtems/sys/param.h       2004-05-07 22:29:24.000000000 +0200
-+++ newlib-1.15.0/newlib/libc/sys/rtems/sys/param.h    2007-04-13 10:41:47.000000000 +0200
-@@ -93,7 +93,6 @@
- #include <sys/resource.h>
- #include <sys/ucred.h>
- #include <sys/uio.h>
--#include <sys/rtprio.h>
- #ifndef FALSE
- #define       FALSE   0
-diff -uNr newlib-1.15.0.orig/newlib/Makefile.am newlib-1.15.0/newlib/Makefile.am
---- newlib-1.15.0.orig/newlib/Makefile.am      2006-06-05 19:42:57.000000000 +0200
-+++ newlib-1.15.0/newlib/Makefile.am   2007-04-13 10:41:47.000000000 +0200
-@@ -81,7 +81,7 @@
-       libc.a
- endif
--noinst_DATA = stmp-targ-include
-+BUILT_SOURCES = stmp-targ-include
- toollib_DATA = $(CRT0) $(CRT1)
-@@ -186,9 +186,6 @@
- $(CRT1_DIR)$(CRT1): ; @true
--
--all-recursive: stmp-targ-include
--
- # The targ-include directory just holds the includes files for the
- # particular system and machine we have been configured for.  It is
- # used while building.
-diff -uNr newlib-1.15.0.orig/newlib/Makefile.in newlib-1.15.0/newlib/Makefile.in
---- newlib-1.15.0.orig/newlib/Makefile.in      2006-12-18 21:32:41.000000000 +0100
-+++ newlib-1.15.0/newlib/Makefile.in   2007-04-13 10:41:47.000000000 +0200
-@@ -103,7 +103,7 @@
-       pdf-recursive ps-recursive uninstall-info-recursive \
-       uninstall-recursive
- toollibDATA_INSTALL = $(INSTALL_DATA)
--DATA = $(noinst_DATA) $(toollib_DATA)
-+DATA = $(toollib_DATA)
- ETAGS = etags
- CTAGS = ctags
- DEJATOOL = $(PACKAGE)
-@@ -205,12 +205,7 @@
- USE_LIBTOOL_FALSE = @USE_LIBTOOL_FALSE@
- USE_LIBTOOL_TRUE = @USE_LIBTOOL_TRUE@
- VERSION = @VERSION@
--ac_ct_AR = @ac_ct_AR@
--ac_ct_AS = @ac_ct_AS@
- ac_ct_CC = @ac_ct_CC@
--ac_ct_RANLIB = @ac_ct_RANLIB@
--ac_ct_READELF = @ac_ct_READELF@
--ac_ct_STRIP = @ac_ct_STRIP@
- aext = @aext@
- am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
- am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-@@ -226,12 +221,16 @@
- build_os = @build_os@
- build_vendor = @build_vendor@
- datadir = @datadir@
-+datarootdir = @datarootdir@
-+docdir = @docdir@
-+dvidir = @dvidir@
- exec_prefix = @exec_prefix@
- host = @host@
- host_alias = @host_alias@
- host_cpu = @host_cpu@
- host_os = @host_os@
- host_vendor = @host_vendor@
-+htmldir = @htmldir@
- includedir = @includedir@
- infodir = @infodir@
- install_sh = @install_sh@
-@@ -240,6 +239,7 @@
- libdir = @libdir@
- libexecdir = @libexecdir@
- libm_machine_dir = @libm_machine_dir@
-+localedir = @localedir@
- localstatedir = @localstatedir@
- lpfx = @lpfx@
- machine_dir = @machine_dir@
-@@ -248,8 +248,10 @@
- newlib_basedir = @newlib_basedir@
- oext = @oext@
- oldincludedir = @oldincludedir@
-+pdfdir = @pdfdir@
- prefix = @prefix@
- program_transform_name = @program_transform_name@
-+psdir = @psdir@
- sbindir = @sbindir@
- sharedstatedir = @sharedstatedir@
- subdirs = @subdirs@
-@@ -323,7 +325,7 @@
- @USE_LIBTOOL_FALSE@toollib_LIBRARIES = libm.a \
- @USE_LIBTOOL_FALSE@   libc.a
--noinst_DATA = stmp-targ-include
-+BUILT_SOURCES = stmp-targ-include
- toollib_DATA = $(CRT0) $(CRT1)
- # The functions ldexp, frexp and modf are traditionally supplied in
-@@ -382,7 +384,7 @@
- # dejagnu support
- RUNTESTFLAGS = 
--all: newlib.h
-+all: $(BUILT_SOURCES) newlib.h
-       $(MAKE) $(AM_MAKEFLAGS) all-recursive
- .SUFFIXES:
-@@ -687,14 +689,16 @@
-       done
- check-am:
-       $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
--check: check-recursive
-+check: $(BUILT_SOURCES)
-+      $(MAKE) $(AM_MAKEFLAGS) check-recursive
- all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA) newlib.h
- installdirs: installdirs-recursive
- installdirs-am:
-       for dir in "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)"; do \
-         test -z "$$dir" || $(mkdir_p) "$$dir"; \
-       done
--install: install-recursive
-+install: $(BUILT_SOURCES)
-+      $(MAKE) $(AM_MAKEFLAGS) install-recursive
- install-exec: install-exec-recursive
- install-data: install-data-recursive
- uninstall: uninstall-recursive
-@@ -719,6 +723,7 @@
- maintainer-clean-generic:
-       @echo "This command is intended for maintainers to use"
-       @echo "it deletes files that may require special tools to rebuild."
-+      -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
- clean: clean-recursive
- clean-am: clean-generic clean-libtool clean-toollibLIBRARIES \
-@@ -837,8 +842,6 @@
- $(CRT1_DIR)$(CRT1): ; @true
--all-recursive: stmp-targ-include
--
- # The targ-include directory just holds the includes files for the
- # particular system and machine we have been configured for.  It is
- # used while building.