From patchwork Wed Jun 6 16:36:52 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [3/7] Add stdint.h wrapper for VxWorks. Date: Wed, 06 Jun 2012 06:36:52 -0000 From: rbmj X-Patchwork-Id: 163395 Message-Id: <4FCF8724.9020600@verizon.net> To: gcc-patches@gcc.gnu.org Cc: nathan@codesourcery.com, bkorb@gnu.org The stdint.h doesn't have all the typedefs needed for standards compliance, so add a hack that adds all of the needed typedefs to be fully compliant to the standard. Fixes broken libstdc++. Changes: * fixincludes/inclhack.def: Added AAB_vxworks_stdint fix --- fixincludes/inclhack.def | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) >From a50ecd253f6e7fa4a6558ebce0578c5f48ccbc17 Mon Sep 17 00:00:00 2001 From: rbmj Date: Mon, 4 Jun 2012 13:26:57 -0400 Subject: [PATCH 3/7] Add stdint.h wrapper for VxWorks. The stdint.h doesn't have all the typedefs needed for standards compliance, so add a hack that adds all of the needed typedefs to be fully compliant to the standard. Fixes broken libstdc++. Changes: * fixincludes/inclhack.def: Added AAB_vxworks_stdint fix --- fixincludes/inclhack.def | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index d66b1cb..a7e49cd 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -396,6 +396,50 @@ fix = { /* + * Make VxWorks stdint.h a bit more compliant - add typedefs + */ +fix = { + hackname = AAB_vxworks_stdint; + files = stdint.h; + mach = "*-*-vxworks*"; + + replace = <<- _EndOfHeader_ + #ifndef _STDINT_H + #define _STDINT_H + /* get int*_t, uint*_t */ + #include + + typedef long intptr_t; + typedef unsigned long uintptr_t; + + typedef int64_t intmax_t; + typedef uint64_t uintmax_t; + + typedef int8_t int_least8_t; + typedef int16_t int_least16_t; + typedef int32_t int_least32_t; + typedef int64_t int_least64_t; + + typedef uint8_t uint_least8_t; + typedef uint16_t uint_least16_t; + typedef uint32_t uint_least32_t; + typedef uint64_t uint_least64_t; + + typedef int8_t int_fast8_t; + typedef int int_fast16_t; + typedef int32_t int_fast32_t; + typedef int64_t int_fast64_t; + + typedef uint8_t uint_fast8_t; + typedef unsigned int uint_fast16_t; + typedef uint32_t uint_fast32_t; + typedef uint64_t uint_fast64_t; + #endif + _EndOfHeader_; +}; + + +/* * complex.h on AIX 5 and AIX 6 define _Complex_I and I in terms of __I, * which only is provided by AIX xlc C99. */ -- 1.7.5.4