summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-01-22 14:02:47 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-01-22 14:02:47 +0100
commit5770bab70b870c4c7180be8c8df4446bceaffa07 (patch)
tree66d51202906a6915e63fbed9cff3257092971302
parentUpdate README.waf and rename it to README.md (diff)
downloadrtems-libbsd-5770bab70b870c4c7180be8c8df4446bceaffa07.tar.bz2
Remove obsolete file
-rw-r--r--patches/newlib-cvs-20121024.diff835
1 files changed, 0 insertions, 835 deletions
diff --git a/patches/newlib-cvs-20121024.diff b/patches/newlib-cvs-20121024.diff
deleted file mode 100644
index 491001f2..00000000
--- a/patches/newlib-cvs-20121024.diff
+++ /dev/null
@@ -1,835 +0,0 @@
-Index: newlib/configure.host
-===================================================================
-RCS file: /cvs/src/src/newlib/configure.host,v
-retrieving revision 1.126
-diff -u -r1.126 configure.host
---- newlib/configure.host 26 Sep 2012 20:06:46 -0000 1.126
-+++ newlib/configure.host 24 Oct 2012 20:32:47 -0000
-@@ -550,6 +550,7 @@
- newlib_cflags="${newlib_cflags} -DMALLOC_PROVIDED -DEXIT_PROVIDED -DSIGNAL_PROVIDED -DREENTRANT_SYSCALLS_PROVIDED -DHAVE_NANOSLEEP -DHAVE_BLKSIZE -DHAVE_FCNTL -DHAVE_ASSERT_FUNC"
- # turn off unsupported items in posix directory
- newlib_cflags="${newlib_cflags} -D_NO_GETLOGIN -D_NO_GETPWENT -D_NO_GETUT -D_NO_GETPASS -D_NO_SIGSET -D_NO_WORDEXP -D_NO_POPEN"
-+ newlib_cflags="${newlib_cflags} -Wall"
- ;;
- # VxWorks supplies its own version of malloc, and the newlib one
- # doesn't work because VxWorks does not have sbrk.
-Index: newlib/libc/include/pthread.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/include/pthread.h,v
-retrieving revision 1.9
-diff -u -r1.9 pthread.h
---- newlib/libc/include/pthread.h 8 Dec 2010 14:44:06 -0000 1.9
-+++ newlib/libc/include/pthread.h 24 Oct 2012 20:32:47 -0000
-@@ -328,6 +328,13 @@
-
- #if defined(_POSIX_READER_WRITER_LOCKS)
-
-+/* This is used to statically initialize a pthread_rwlock_t. Example:
-+
-+ pthread_mutex_t mutex = PTHREAD_RWLOCK_INITIALIZER;
-+ */
-+
-+#define PTHREAD_RWLOCK_INITIALIZER ((pthread_rwlock_t) 0xFFFFFFFF)
-+
- int _EXFUN(pthread_rwlockattr_init, (pthread_rwlockattr_t *__attr));
- int _EXFUN(pthread_rwlockattr_destroy, (pthread_rwlockattr_t *__attr));
- int _EXFUN(pthread_rwlockattr_getpshared,
-Index: newlib/libc/include/sys/cdefs.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/include/sys/cdefs.h,v
-retrieving revision 1.2
-diff -u -r1.2 cdefs.h
---- newlib/libc/include/sys/cdefs.h 3 Mar 2011 10:37:08 -0000 1.2
-+++ newlib/libc/include/sys/cdefs.h 24 Oct 2012 20:32:47 -0000
-@@ -1,8 +1,4 @@
--/* libc/sys/linux/sys/cdefs.h - Helper macros for K&R vs. ANSI C compat. */
--
--/* Written 2000 by Werner Almesberger */
--
--/*
-+/*-
- * Copyright (c) 1991, 1993
- * The Regents of the University of California. All rights reserved.
- *
-@@ -17,10 +13,6 @@
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
-- * 3. All advertising materials mentioning features or use of this software
-- * must display the following acknowledgement:
-- * This product includes software developed by the University of
-- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-@@ -38,25 +30,91 @@
- * SUCH DAMAGE.
- *
- * @(#)cdefs.h 8.8 (Berkeley) 1/9/95
-- * $FreeBSD: src/sys/sys/cdefs.h,v 1.54 2002/05/11 03:58:24 alfred Exp $
-+ * $FreeBSD$
- */
-
--#ifndef _SYS_CDEFS_H
--#define _SYS_CDEFS_H
-+/* FreeBSD kernel code depends on sys/cdefs.h using precisely this guard */
-+#ifndef _SYS_CDEFS_HH_
-+#define _SYS_CDEFS_HH_
-+
-+#if defined(__cplusplus)
-+#define __BEGIN_DECLS extern "C" {
-+#define __END_DECLS }
-+#else
-+#define __BEGIN_DECLS
-+#define __END_DECLS
-+#endif
-
--#define __FBSDID(x) /* nothing */
- /*
-- * Note: the goal here is not compatibility to K&R C. Since we know that we
-- * have GCC which understands ANSI C perfectly well, we make use of this.
-+ * This code has been put in place to help reduce the addition of
-+ * compiler specific defines in FreeBSD code. It helps to aid in
-+ * having a compiler-agnostic source tree.
- */
-
--#define __P(args) args
--#define __PMT(args) args
--#define __const const
--#define __signed signed
--#define __volatile volatile
--#define __DOTS , ...
--#define __THROW
-+#if defined(__GNUC__) || defined(__INTEL_COMPILER)
-+
-+#if __GNUC__ >= 3 || defined(__INTEL_COMPILER)
-+#define __GNUCLIKE_ASM 3
-+#define __GNUCLIKE_MATH_BUILTIN_CONSTANTS
-+#else
-+#define __GNUCLIKE_ASM 2
-+#endif
-+#define __GNUCLIKE___TYPEOF 1
-+#define __GNUCLIKE___OFFSETOF 1
-+#define __GNUCLIKE___SECTION 1
-+
-+#define __GNUCLIKE_ATTRIBUTE_MODE_DI 1
-+
-+#ifndef __INTEL_COMPILER
-+# define __GNUCLIKE_CTOR_SECTION_HANDLING 1
-+#endif
-+
-+#define __GNUCLIKE_BUILTIN_CONSTANT_P 1
-+# if defined(__INTEL_COMPILER) && defined(__cplusplus) \
-+ && __INTEL_COMPILER < 800
-+# undef __GNUCLIKE_BUILTIN_CONSTANT_P
-+# endif
-+
-+#if (__GNUC_MINOR__ > 95 || __GNUC__ >= 3) && !defined(__INTEL_COMPILER)
-+# define __GNUCLIKE_BUILTIN_VARARGS 1
-+# define __GNUCLIKE_BUILTIN_STDARG 1
-+# define __GNUCLIKE_BUILTIN_VAALIST 1
-+#endif
-+
-+#if defined(__GNUC__)
-+# define __GNUC_VA_LIST_COMPATIBILITY 1
-+#endif
-+
-+#ifndef __INTEL_COMPILER
-+# define __GNUCLIKE_BUILTIN_NEXT_ARG 1
-+# define __GNUCLIKE_MATH_BUILTIN_RELOPS
-+#endif
-+
-+#define __GNUCLIKE_BUILTIN_MEMCPY 1
-+
-+/* XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced */
-+#define __CC_SUPPORTS_INLINE 1
-+#define __CC_SUPPORTS___INLINE 1
-+#define __CC_SUPPORTS___INLINE__ 1
-+
-+#define __CC_SUPPORTS___FUNC__ 1
-+#define __CC_SUPPORTS_WARNING 1
-+
-+#define __CC_SUPPORTS_VARADIC_XXX 1 /* see varargs.h */
-+
-+#define __CC_SUPPORTS_DYNAMIC_ARRAY_INIT 1
-+
-+#endif /* __GNUC__ || __INTEL_COMPILER */
-+
-+/*
-+ * Macro to test if we're using a specific version of gcc or later.
-+ */
-+#if defined(__GNUC__) && !defined(__INTEL_COMPILER)
-+#define __GNUC_PREREQ__(ma, mi) \
-+ (__GNUC__ > (ma) || __GNUC__ == (ma) && __GNUC_MINOR__ >= (mi))
-+#else
-+#define __GNUC_PREREQ__(ma, mi) 0
-+#endif
-
- /*
- * The __CONCAT macro is used to concatenate parts of symbol names, e.g.
-@@ -70,41 +128,256 @@
- * __XSTRING is like __STRING, but it expands any macros in its argument
- * first. It is only available with ANSI C.
- */
--#define __CONCAT1(x,y) x ## y
--#define __CONCAT(x,y) __CONCAT1(x,y)
--#define __STRING(x) #x /* stringify without expanding x */
--#define __XSTRING(x) __STRING(x) /* expand x, then stringify */
-+#if defined(__STDC__) || defined(__cplusplus)
-+#define __P(protos) protos /* full-blown ANSI C */
-+#define __CONCAT1(x,y) x ## y
-+#define __CONCAT(x,y) __CONCAT1(x,y)
-+#define __STRING(x) #x /* stringify without expanding x */
-+#define __XSTRING(x) __STRING(x) /* expand x, then stringify */
-
-+/*
-+ * Required to build gcc's libssp. Not part of current FreeBSD version
-+ * but assumed to exist by existing code.
-+ */
- #ifdef __GNUC__
- # define __ASMNAME(cname) __XSTRING (__USER_LABEL_PREFIX__) cname
- #endif
-
--#define __ptr_t void *
--#define __long_double_t long double
-+#define __const const /* define reserved names to standard */
-+#define __signed signed
-+#define __volatile volatile
-+#if defined(__cplusplus)
-+#define __inline inline /* convert to C++ keyword */
-+#else
-+#if !(defined(__CC_SUPPORTS___INLINE))
-+#define __inline /* delete GCC keyword */
-+#endif /* ! __CC_SUPPORTS___INLINE */
-+#endif /* !__cplusplus */
-+
-+#else /* !(__STDC__ || __cplusplus) */
-+#define __P(protos) () /* traditional C preprocessor */
-+#define __CONCAT(x,y) x/**/y
-+#define __STRING(x) "x"
-+
-+#if !defined(__CC_SUPPORTS___INLINE)
-+#define __const /* delete pseudo-ANSI C keywords */
-+#define __inline
-+#define __signed
-+#define __volatile
-+/*
-+ * In non-ANSI C environments, new programs will want ANSI-only C keywords
-+ * deleted from the program and old programs will want them left alone.
-+ * When using a compiler other than gcc, programs using the ANSI C keywords
-+ * const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
-+ * When using "gcc -traditional", we assume that this is the intent; if
-+ * __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
-+ */
-+#ifndef NO_ANSI_KEYWORDS
-+#define const /* delete ANSI C keywords */
-+#define inline
-+#define signed
-+#define volatile
-+#endif /* !NO_ANSI_KEYWORDS */
-+#endif /* !__CC_SUPPORTS___INLINE */
-+#endif /* !(__STDC__ || __cplusplus) */
-
--#define __attribute_malloc__
--#define __attribute_pure__
--#define __attribute_format_strfmon__(a,b)
--#define __flexarr [0]
--
--#ifdef __cplusplus
--# define __BEGIN_DECLS extern "C" {
--# define __END_DECLS }
--#else
--# define __BEGIN_DECLS
--# define __END_DECLS
--#endif
--
--#ifndef __BOUNDED_POINTERS__
--# define __bounded /* nothing */
--# define __unbounded /* nothing */
--# define __ptrvalue /* nothing */
-+/*
-+ * Compiler-dependent macros to help declare dead (non-returning) and
-+ * pure (no side effects) functions, and unused variables. They are
-+ * null except for versions of gcc that are known to support the features
-+ * properly (old versions of gcc-2 supported the dead and pure features
-+ * in a different (wrong) way). If we do not provide an implementation
-+ * for a given compiler, let the compile fail if it is told to use
-+ * a feature that we cannot live without.
-+ */
-+#ifdef lint
-+#define __dead2
-+#define __pure2
-+#define __unused
-+#define __packed
-+#define __aligned(x)
-+#define __section(x)
-+#else
-+#if !__GNUC_PREREQ__(2, 5) && !defined(__INTEL_COMPILER)
-+#define __dead2
-+#define __pure2
-+#define __unused
-+#endif
-+#if __GNUC__ == 2 && __GNUC_MINOR__ >= 5 && __GNUC_MINOR__ < 7 && !defined(__INTEL_COMPILER)
-+#define __dead2 __attribute__((__noreturn__))
-+#define __pure2 __attribute__((__const__))
-+#define __unused
-+/* XXX Find out what to do for __packed, __aligned and __section */
-+#endif
-+#if __GNUC_PREREQ__(2, 7)
-+#define __dead2 __attribute__((__noreturn__))
-+#define __pure2 __attribute__((__const__))
-+#define __unused __attribute__((__unused__))
-+#define __used __attribute__((__used__))
-+#define __packed __attribute__((__packed__))
-+#define __aligned(x) __attribute__((__aligned__(x)))
-+#define __section(x) __attribute__((__section__(x)))
-+#endif
-+#if defined(__INTEL_COMPILER)
-+#define __dead2 __attribute__((__noreturn__))
-+#define __pure2 __attribute__((__const__))
-+#define __unused __attribute__((__unused__))
-+#define __used __attribute__((__used__))
-+#define __packed __attribute__((__packed__))
-+#define __aligned(x) __attribute__((__aligned__(x)))
-+#define __section(x) __attribute__((__section__(x)))
-+#endif
- #endif
-
--#ifdef __GNUC__
-+#if __GNUC_PREREQ__(2, 96)
-+#define __malloc_like __attribute__((__malloc__))
-+#define __pure __attribute__((__pure__))
-+#else
-+#define __malloc_like
-+#define __pure
-+#endif
-+
-+#if __GNUC_PREREQ__(3, 1) || (defined(__INTEL_COMPILER) && __INTEL_COMPILER >= 800)
-+#define __always_inline __attribute__((__always_inline__))
-+#else
-+#define __always_inline
-+#endif
-+
-+#if __GNUC_PREREQ__(4, 2) /* actually 4.1.3 */
-+#define __gnu89_inline __attribute__((__gnu_inline__)) __inline
-+#else
-+#define __gnu89_inline
-+#endif
-+
-+#if __GNUC_PREREQ__(3, 1)
-+#define __noinline __attribute__ ((__noinline__))
-+#else
-+#define __noinline
-+#endif
-+
-+#if __GNUC_PREREQ__(3, 3)
-+#define __nonnull(x) __attribute__((__nonnull__(x)))
-+#else
-+#define __nonnull(x)
-+#endif
-+
-+/* XXX: should use `#if __STDC_VERSION__ < 199901'. */
-+#if !__GNUC_PREREQ__(2, 7) && !defined(__INTEL_COMPILER)
-+#define __func__ NULL
-+#endif
-+
-+#if (defined(__INTEL_COMPILER) || (defined(__GNUC__) && __GNUC__ >= 2)) && !defined(__STRICT_ANSI__) || __STDC_VERSION__ >= 199901
-+#define __LONG_LONG_SUPPORTED
-+#endif
-+
-+/*
-+ * GCC 2.95 provides `__restrict' as an extension to C90 to support the
-+ * C99-specific `restrict' type qualifier. We happen to use `__restrict' as
-+ * a way to define the `restrict' type qualifier without disturbing older
-+ * software that is unaware of C99 keywords.
-+ */
-+#if !(__GNUC__ == 2 && __GNUC_MINOR__ == 95)
-+#if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901 || defined(lint)
-+#define __restrict
-+#else
-+#define __restrict restrict
-+#endif
-+#endif
-+
-+/*
-+ * GNU C version 2.96 adds explicit branch prediction so that
-+ * the CPU back-end can hint the processor and also so that
-+ * code blocks can be reordered such that the predicted path
-+ * sees a more linear flow, thus improving cache behavior, etc.
-+ *
-+ * The following two macros provide us with a way to utilize this
-+ * compiler feature. Use __predict_true() if you expect the expression
-+ * to evaluate to true, and __predict_false() if you expect the
-+ * expression to evaluate to false.
-+ *
-+ * A few notes about usage:
-+ *
-+ * * Generally, __predict_false() error condition checks (unless
-+ * you have some _strong_ reason to do otherwise, in which case
-+ * document it), and/or __predict_true() `no-error' condition
-+ * checks, assuming you want to optimize for the no-error case.
-+ *
-+ * * Other than that, if you don't know the likelihood of a test
-+ * succeeding from empirical or other `hard' evidence, don't
-+ * make predictions.
-+ *
-+ * * These are meant to be used in places that are run `a lot'.
-+ * It is wasteful to make predictions in code that is run
-+ * seldomly (e.g. at subsystem initialization time) as the
-+ * basic block reordering that this affects can often generate
-+ * larger code.
-+ */
-+#if __GNUC_PREREQ__(2, 96)
-+#define __predict_true(exp) __builtin_expect((exp), 1)
-+#define __predict_false(exp) __builtin_expect((exp), 0)
-+#else
-+#define __predict_true(exp) (exp)
-+#define __predict_false(exp) (exp)
-+#endif
-+
-+#if __GNUC_PREREQ__(4, 2)
-+#define __hidden __attribute__((__visibility__("hidden")))
-+#define __exported __attribute__((__visibility__("default")))
-+#else
-+#define __hidden
-+#define __exported
-+#endif
-+
-+/*
-+ * We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
-+ * require it.
-+ */
-+#if __GNUC_PREREQ__(4, 1)
-+#define __offsetof(type, field) __builtin_offsetof(type, field)
-+#else
-+#ifndef __cplusplus
-+#define __offsetof(type, field) ((size_t)(&((type *)0)->field))
-+#else
-+#define __offsetof(type, field) \
-+ (__offsetof__ (reinterpret_cast <size_t> \
-+ (&reinterpret_cast <const volatile char &> \
-+ (static_cast<type *> (0)->field))))
-+#endif
-+#endif
-+#define __rangeof(type, start, end) \
-+ (__offsetof(type, end) - __offsetof(type, start))
-+
-+/*
-+ * Compiler-dependent macros to declare that functions take printf-like
-+ * or scanf-like arguments. They are null except for versions of gcc
-+ * that are known to support the features properly (old versions of gcc-2
-+ * didn't permit keeping the keywords out of the application namespace).
-+ */
-+#if !__GNUC_PREREQ__(2, 7) && !defined(__INTEL_COMPILER)
-+#define __printflike(fmtarg, firstvararg)
-+#define __scanflike(fmtarg, firstvararg)
-+#define __format_arg(fmtarg)
-+#else
-+#define __printflike(fmtarg, firstvararg) \
-+ __attribute__((__format__ (__printf__, fmtarg, firstvararg)))
-+#define __scanflike(fmtarg, firstvararg) \
-+ __attribute__((__format__ (__scanf__, fmtarg, firstvararg)))
-+#define __format_arg(fmtarg) __attribute__((__format_arg__ (fmtarg)))
-+#endif
-+
-+/* Compiler-dependent macros that rely on FreeBSD-specific extensions. */
-+#if __FreeBSD_cc_version >= 300001 && defined(__GNUC__) && !defined(__INTEL_COMPILER)
-+#define __printf0like(fmtarg, firstvararg) \
-+ __attribute__((__format__ (__printf0__, fmtarg, firstvararg)))
-+#else
-+#define __printf0like(fmtarg, firstvararg)
-+#endif
-+
-+#if defined(__GNUC__) || defined(__INTEL_COMPILER)
-+#ifndef __INTEL_COMPILER
- #define __strong_reference(sym,aliassym) \
-- extern __typeof (sym) aliassym __attribute__ ((__alias__ (#sym)));
--#ifdef __ELF__
-+ extern __typeof (sym) aliassym __attribute__ ((__alias__ (#sym)))
-+#endif
- #ifdef __STDC__
- #define __weak_reference(sym,alias) \
- __asm__(".weak " #alias); \
-@@ -113,6 +386,10 @@
- __asm__(".section .gnu.warning." #sym); \
- __asm__(".asciz \"" msg "\""); \
- __asm__(".previous")
-+#define __sym_compat(sym,impl,verid) \
-+ __asm__(".symver " #impl ", " #sym "@" #verid)
-+#define __sym_default(sym,impl,verid) \
-+ __asm__(".symver " #impl ", " #sym "@@" #verid)
- #else
- #define __weak_reference(sym,alias) \
- __asm__(".weak alias"); \
-@@ -121,24 +398,208 @@
- __asm__(".section .gnu.warning.sym"); \
- __asm__(".asciz \"msg\""); \
- __asm__(".previous")
-+#define __sym_compat(sym,impl,verid) \
-+ __asm__(".symver impl, sym@verid")
-+#define __sym_default(impl,sym,verid) \
-+ __asm__(".symver impl, sym@@verid")
- #endif /* __STDC__ */
--#else /* !__ELF__ */
--#ifdef __STDC__
--#define __weak_reference(sym,alias) \
-- __asm__(".stabs \"_" #alias "\",11,0,0,0"); \
-- __asm__(".stabs \"_" #sym "\",1,0,0,0")
--#define __warn_references(sym,msg) \
-- __asm__(".stabs \"" msg "\",30,0,0,0"); \
-- __asm__(".stabs \"_" #sym "\",1,0,0,0")
-+#endif /* __GNUC__ || __INTEL_COMPILER */
-+
-+#if defined(__GNUC__) || defined(__INTEL_COMPILER)
-+#define __IDSTRING(name,string) __asm__(".ident\t\"" string "\"")
- #else
--#define __weak_reference(sym,alias) \
-- __asm__(".stabs \"_/**/alias\",11,0,0,0"); \
-- __asm__(".stabs \"_/**/sym\",1,0,0,0")
--#define __warn_references(sym,msg) \
-- __asm__(".stabs msg,30,0,0,0"); \
-- __asm__(".stabs \"_/**/sym\",1,0,0,0")
--#endif /* __STDC__ */
--#endif /* __ELF__ */
--#endif /* __GNUC__ */
-+/*
-+ * The following definition might not work well if used in header files,
-+ * but it should be better than nothing. If you want a "do nothing"
-+ * version, then it should generate some harmless declaration, such as:
-+ * #define __IDSTRING(name,string) struct __hack
-+ */
-+#define __IDSTRING(name,string) static const char name[] __unused = string
-+#endif
-+
-+/*
-+ * Embed the rcs id of a source file in the resulting library. Note that in
-+ * more recent ELF binutils, we use .ident allowing the ID to be stripped.
-+ * Usage:
-+ * __FBSDID("$FreeBSD$");
-+ */
-+#ifndef __FBSDID
-+#if !defined(lint) && !defined(STRIP_FBSDID)
-+#define __FBSDID(s) __IDSTRING(__CONCAT(__rcsid_,__LINE__),s)
-+#else
-+#define __FBSDID(s) struct __hack
-+#endif
-+#endif
-+
-+#ifndef __RCSID
-+#ifndef NO__RCSID
-+#define __RCSID(s) __IDSTRING(__CONCAT(__rcsid_,__LINE__),s)
-+#else
-+#define __RCSID(s) struct __hack
-+#endif
-+#endif
-+
-+#ifndef __RCSID_SOURCE
-+#ifndef NO__RCSID_SOURCE
-+#define __RCSID_SOURCE(s) __IDSTRING(__CONCAT(__rcsid_source_,__LINE__),s)
-+#else
-+#define __RCSID_SOURCE(s) struct __hack
-+#endif
-+#endif
-+
-+#ifndef __SCCSID
-+#ifndef NO__SCCSID
-+#define __SCCSID(s) __IDSTRING(__CONCAT(__sccsid_,__LINE__),s)
-+#else
-+#define __SCCSID(s) struct __hack
-+#endif
-+#endif
-+
-+#ifndef __COPYRIGHT
-+#ifndef NO__COPYRIGHT
-+#define __COPYRIGHT(s) __IDSTRING(__CONCAT(__copyright_,__LINE__),s)
-+#else
-+#define __COPYRIGHT(s) struct __hack
-+#endif
-+#endif
-+
-+#ifndef __DECONST
-+#define __DECONST(type, var) ((type)(uintptr_t)(const void *)(var))
-+#endif
-+
-+#ifndef __DEVOLATILE
-+#define __DEVOLATILE(type, var) ((type)(uintptr_t)(volatile void *)(var))
-+#endif
-+
-+#ifndef __DEQUALIFY
-+#define __DEQUALIFY(type, var) ((type)(uintptr_t)(const volatile void *)(var))
-+#endif
-+
-+/*
-+ * The following section is directly from the FreeBSD source except for
-+ * the addition of including <sys/features.h>. This code is desirable
-+ * for RTEMS to include but may not be desirable for other targets.
-+ * In the interest of conservatism, I am leaving it RTEMS specific.
-+ */
-+#ifdef __rtems__
-+/*
-+ * In newlib, <sys/features.h> defines the feature flags the POSIX API set of
-+ * conditionals depend on.
-+ */
-+#include <sys/features.h>
-+
-+/*-
-+ * The following definitions are an extension of the behavior originally
-+ * implemented in <sys/_posix.h>, but with a different level of granularity.
-+ * POSIX.1 requires that the macros we test be defined before any standard
-+ * header file is included.
-+ *
-+ * Here's a quick run-down of the versions:
-+ * defined(_POSIX_SOURCE) 1003.1-1988
-+ * _POSIX_C_SOURCE == 1 1003.1-1990
-+ * _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option
-+ * _POSIX_C_SOURCE == 199309 1003.1b-1993
-+ * _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995,
-+ * and the omnibus ISO/IEC 9945-1: 1996
-+ * _POSIX_C_SOURCE == 200112 1003.1-2001
-+ * _POSIX_C_SOURCE == 200809 1003.1-2008
-+ *
-+ * In addition, the X/Open Portability Guide, which is now the Single UNIX
-+ * Specification, defines a feature-test macro which indicates the version of
-+ * that specification, and which subsumes _POSIX_C_SOURCE.
-+ *
-+ * Our macros begin with two underscores to avoid namespace screwage.
-+ */
-+
-+/* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1. */
-+#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 1
-+#undef _POSIX_C_SOURCE /* Probably illegal, but beyond caring now. */
-+#define _POSIX_C_SOURCE 199009
-+#endif
-+
-+/* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2. */
-+#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 2
-+#undef _POSIX_C_SOURCE
-+#define _POSIX_C_SOURCE 199209
-+#endif
-+
-+/* Deal with various X/Open Portability Guides and Single UNIX Spec. */
-+#ifdef _XOPEN_SOURCE
-+#if _XOPEN_SOURCE - 0 >= 700
-+#define __XSI_VISIBLE 700
-+#undef _POSIX_C_SOURCE
-+#define _POSIX_C_SOURCE 200809
-+#elif _XOPEN_SOURCE - 0 >= 600
-+#define __XSI_VISIBLE 600
-+#undef _POSIX_C_SOURCE
-+#define _POSIX_C_SOURCE 200112
-+#elif _XOPEN_SOURCE - 0 >= 500
-+#define __XSI_VISIBLE 500
-+#undef _POSIX_C_SOURCE
-+#define _POSIX_C_SOURCE 199506
-+#endif
-+#endif
-+
-+/*
-+ * Deal with all versions of POSIX. The ordering relative to the tests above is
-+ * important.
-+ */
-+#if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE)
-+#define _POSIX_C_SOURCE 198808
-+#endif
-+#ifdef _POSIX_C_SOURCE
-+#if _POSIX_C_SOURCE >= 200809
-+#define __POSIX_VISIBLE 200809
-+#define __ISO_C_VISIBLE 1999
-+#elif _POSIX_C_SOURCE >= 200112
-+#define __POSIX_VISIBLE 200112
-+#define __ISO_C_VISIBLE 1999
-+#elif _POSIX_C_SOURCE >= 199506
-+#define __POSIX_VISIBLE 199506
-+#define __ISO_C_VISIBLE 1990
-+#elif _POSIX_C_SOURCE >= 199309
-+#define __POSIX_VISIBLE 199309
-+#define __ISO_C_VISIBLE 1990
-+#elif _POSIX_C_SOURCE >= 199209
-+#define __POSIX_VISIBLE 199209
-+#define __ISO_C_VISIBLE 1990
-+#elif _POSIX_C_SOURCE >= 199009
-+#define __POSIX_VISIBLE 199009
-+#define __ISO_C_VISIBLE 1990
-+#else
-+#define __POSIX_VISIBLE 198808
-+#define __ISO_C_VISIBLE 0
-+#endif /* _POSIX_C_SOURCE */
-+#else
-+/*-
-+ * Deal with _ANSI_SOURCE:
-+ * If it is defined, and no other compilation environment is explicitly
-+ * requested, then define our internal feature-test macros to zero. This
-+ * makes no difference to the preprocessor (undefined symbols in preprocessing
-+ * expressions are defined to have value zero), but makes it more convenient for
-+ * a test program to print out the values.
-+ *
-+ * If a program mistakenly defines _ANSI_SOURCE and some other macro such as
-+ * _POSIX_C_SOURCE, we will assume that it wants the broader compilation
-+ * environment (and in fact we will never get here).
-+ */
-+#if defined(_ANSI_SOURCE) /* Hide almost everything. */
-+#define __POSIX_VISIBLE 0
-+#define __XSI_VISIBLE 0
-+#define __BSD_VISIBLE 0
-+#define __ISO_C_VISIBLE 1990
-+#elif defined(_C99_SOURCE) /* Localism to specify strict C99 env. */
-+#define __POSIX_VISIBLE 0
-+#define __XSI_VISIBLE 0
-+#define __BSD_VISIBLE 0
-+#define __ISO_C_VISIBLE 1999
-+#else /* Default environment: show everything. */
-+#define __POSIX_VISIBLE 200809
-+#define __XSI_VISIBLE 700
-+#define __BSD_VISIBLE 1
-+#define __ISO_C_VISIBLE 1999
-+#endif
-+#endif
-+#endif
-
--#endif /* _SYS_CDEFS_H */
-+#endif /* !_SYS_CDEFS_H_ */
-Index: newlib/libc/include/sys/features.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/include/sys/features.h,v
-retrieving revision 1.27
-diff -u -r1.27 features.h
---- newlib/libc/include/sys/features.h 20 Jul 2011 19:41:15 -0000 1.27
-+++ newlib/libc/include/sys/features.h 24 Oct 2012 20:32:47 -0000
-@@ -28,9 +28,10 @@
- /* RTEMS adheres to POSIX -- 1003.1b with some features from annexes. */
-
- #ifdef __rtems__
-+#define _POSIX_C_SOURCE 200809L
- #define _POSIX_JOB_CONTROL 1
- #define _POSIX_SAVED_IDS 1
--#define _POSIX_VERSION 199309L
-+#define _POSIX_VERSION 200809L
- #define _POSIX_ASYNCHRONOUS_IO 1
- #define _POSIX_FSYNC 1
- #define _POSIX_MAPPED_FILES 1
-@@ -46,9 +47,9 @@
- /* #define _POSIX_SHARED_MEMORY_OBJECTS 1 */
- #define _POSIX_SYNCHRONIZED_IO 1
- #define _POSIX_TIMERS 1
--#define _POSIX_BARRIERS 200112L
--#define _POSIX_READER_WRITER_LOCKS 200112L
--#define _POSIX_SPIN_LOCKS 200112L
-+#define _POSIX_BARRIERS 200809L
-+#define _POSIX_READER_WRITER_LOCKS 200809L
-+#define _POSIX_SPIN_LOCKS 200809L
-
-
- /* In P1003.1b but defined by drafts at least as early as P1003.1c/D10 */
-Index: newlib/libc/include/sys/signal.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/include/sys/signal.h,v
-retrieving revision 1.21
-diff -u -r1.21 signal.h
---- newlib/libc/include/sys/signal.h 8 Aug 2012 11:04:16 -0000 1.21
-+++ newlib/libc/include/sys/signal.h 24 Oct 2012 20:32:47 -0000
-@@ -101,6 +101,15 @@
- #define sa_sigaction _signal_handlers._sigaction
- #endif
-
-+/*
-+ * Structure used in sigaltstack call.
-+ */
-+typedef struct sigalstack {
-+ void *ss_sp; /* Stack base or pointer. */
-+ size_t ss_size; /* Stack size. */
-+ int ss_flags; /* Flags. */
-+} stack_t;
-+
- #elif defined(__CYGWIN__)
- #include <cygwin/signal.h>
- #else
-@@ -158,6 +167,10 @@
- int _EXFUN(sigsuspend, (const sigset_t *));
- int _EXFUN(sigpause, (int));
-
-+#if defined(__rtems__)
-+int _EXFUN(sigaltstack, (const stack_t *, stack_t *));
-+#endif
-+
- #if defined(_POSIX_THREADS)
- #ifdef __CYGWIN__
- # ifndef _CYGWIN_TYPES_H
-Index: newlib/libc/search/hash.c
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/search/hash.c,v
-retrieving revision 1.11
-diff -u -r1.11 hash.c
---- newlib/libc/search/hash.c 8 Aug 2012 11:04:17 -0000 1.11
-+++ newlib/libc/search/hash.c 24 Oct 2012 20:32:47 -0000
-@@ -141,9 +141,9 @@
- new_table = 0;
- if (!file || (flags & O_TRUNC) ||
- #ifdef __USE_INTERNAL_STAT64
-- (_stat64(file, &statbuf) && (errno == ENOENT))) {
-+ (stat64(file, &statbuf) && (errno == ENOENT))) {
- #else
-- (_stat(file, &statbuf) && (errno == ENOENT))) {
-+ (stat(file, &statbuf) && (errno == ENOENT))) {
- #endif
- if (errno == ENOENT)
- errno = 0; /* Just in case someone looks at errno */
-@@ -157,9 +157,9 @@
- a new .db file, then reinitialize the database */
- if ((flags & O_CREAT) &&
- #ifdef __USE_INTERNAL_STAT64
-- _fstat64(hashp->fp, &statbuf) == 0 && statbuf.st_size == 0)
-+ fstat64(hashp->fp, &statbuf) == 0 && statbuf.st_size == 0)
- #else
-- _fstat(hashp->fp, &statbuf) == 0 && statbuf.st_size == 0)
-+ fstat(hashp->fp, &statbuf) == 0 && statbuf.st_size == 0)
- #endif
- new_table = 1;
-
-@@ -339,9 +339,9 @@
- /* Fix bucket size to be optimal for file system */
- if (file != NULL) {
- #ifdef __USE_INTERNAL_STAT64
-- if (_stat64(file, &statbuf))
-+ if (stat64(file, &statbuf))
- #else
-- if (_stat(file, &statbuf))
-+ if (stat(file, &statbuf))
- #endif
- return (NULL);
- hashp->BSIZE = statbuf.st_blksize;
-Index: newlib/libc/sys/rtems/machine/_types.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/sys/rtems/machine/_types.h,v
-retrieving revision 1.8
-diff -u -r1.8 _types.h
---- newlib/libc/sys/rtems/machine/_types.h 18 Jul 2012 15:22:45 -0000 1.8
-+++ newlib/libc/sys/rtems/machine/_types.h 24 Oct 2012 20:32:47 -0000
-@@ -13,7 +13,7 @@
- * could be applied here.
- */
-
--#if defined(__i386__) || defined(__m32r__) || defined(__h8300__) || (defined(__arm__) && !defined(__ARM_EABI__)) || defined(__bfin__) || defined(__m68k__) || defined(__MICROBLAZE__)
-+#if defined(__i386__) || defined(__m32r__) || defined(__h8300__) || defined(__arm__) || defined(__bfin__) || defined(__m68k__) || defined(__v850) || defined(__MICROBLAZE__)
- #if defined(__H8300__)
- typedef signed int _ssize_t;
- #else
-Index: newlib/libc/sys/rtems/machine/param.h
-===================================================================
-RCS file: /cvs/src/src/newlib/libc/sys/rtems/machine/param.h,v
-retrieving revision 1.4
-diff -u -r1.4 param.h
---- newlib/libc/sys/rtems/machine/param.h 16 Dec 2009 21:35:51 -0000 1.4
-+++ newlib/libc/sys/rtems/machine/param.h 24 Oct 2012 20:32:47 -0000
-@@ -56,7 +56,12 @@
- * of the hardware page size.
- */
- #ifndef MSIZE
-+/* This increased from the old RTEMS TCP/IP stack to the FreeBSD 8.x one */
-+#ifdef __NEW_RTEMS_BSD__
-+#define MSIZE 256 /* size of an mbuf */
-+#else
- #define MSIZE 128 /* size of an mbuf */
-+#endif
- #endif /* MSIZE */
-
- #ifndef MCLSHIFT