diff --git a/ndk/platforms/android-3/header-patches/include/machine/setjmp.h b/ndk/platforms/android-3/header-patches/include/machine/setjmp.h index d7b792e23..ff58ef1ad 100644 --- a/ndk/platforms/android-3/header-patches/include/machine/setjmp.h +++ b/ndk/platforms/android-3/header-patches/include/machine/setjmp.h @@ -36,4 +36,4 @@ * This value comes from the mips machine/setjmp.h header * because it has the biggest jump buffer length. */ -#define _JBLEN 157 +#define _JBLEN 1024 /* 157 */ diff --git a/ndk/platforms/android-3/include/stdint.h b/ndk/platforms/android-3/include/stdint.h index be49485f4..7ae2595b8 100644 --- a/ndk/platforms/android-3/include/stdint.h +++ b/ndk/platforms/android-3/include/stdint.h @@ -25,49 +25,172 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ - #ifndef _STDINT_H #define _STDINT_H #include #include +#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) +# define __STDINT_LIMITS +#endif + +#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) +# define __STDINT_MACROS +#endif + typedef __int8_t int8_t; typedef __uint8_t uint8_t; - typedef __int16_t int16_t; typedef __uint16_t uint16_t; - typedef __int32_t int32_t; typedef __uint32_t uint32_t; - typedef __int64_t int64_t; typedef __uint64_t uint64_t; +/* + * int8_t & uint8_t + */ + typedef int8_t int_least8_t; typedef int8_t int_fast8_t; typedef uint8_t uint_least8_t; typedef uint8_t uint_fast8_t; +#ifdef __STDINT_LIMITS +# define INT8_MIN (-128) +# define INT8_MAX (127) +# define INT_LEAST8_MIN INT8_MIN +# define INT_LEAST8_MAX INT8_MAX +# define INT_FAST8_MIN INT8_MIN +# define INT_FAST8_MAX INT8_MAX + +# define UINT8_MAX (255) +# define UINT_LEAST8_MAX UINT8_MAX +# define UINT_FAST8_MAX UINT8_MAX +#endif + +#ifdef __STDINT_MACROS +# define INT8_C(c) c +# define INT_LEAST8_C(c) INT8_C(c) +# define INT_FAST8_C(c) INT8_C(c) + +# define UINT8_C(c) c +# define UINT_LEAST8_C(c) UINT8_C(c) +# define UINT_FAST8_C(c) UINT8_C(c) +#endif + +/* + * int16_t & uint16_t + */ + typedef int16_t int_least16_t; typedef int32_t int_fast16_t; typedef uint16_t uint_least16_t; typedef uint32_t uint_fast16_t; +#ifdef __STDINT_LIMITS +# define INT16_MIN (-32768) +# define INT16_MAX (32767) +# define INT_LEAST16_MIN INT16_MIN +# define INT_LEAST16_MAX INT16_MAX +# define INT_FAST16_MIN INT32_MIN +# define INT_FAST16_MAX INT32_MAX + +# define UINT16_MAX (65535) +# define UINT_LEAST16_MAX UINT16_MAX +# define UINT_FAST16_MAX UINT32_MAX +#endif + +#ifdef __STDINT_MACROS +# define INT16_C(c) c +# define INT_LEAST16_C(c) INT16_C(c) +# define INT_FAST16_C(c) INT32_C(c) + +# define UINT16_C(c) c +# define UINT_LEAST16_C(c) UINT16_C(c) +# define UINT_FAST16_C(c) UINT32_C(c) +#endif + +/* + * int32_t & uint32_t + */ + typedef int32_t int_least32_t; typedef int32_t int_fast32_t; typedef uint32_t uint_least32_t; typedef uint32_t uint_fast32_t; +#ifdef __STDINT_LIMITS +# define INT32_MIN (-2147483647-1) +# define INT32_MAX (2147483647) +# define INT_LEAST32_MIN INT32_MIN +# define INT_LEAST32_MAX INT32_MAX +# define INT_FAST32_MIN INT32_MIN +# define INT_FAST32_MAX INT32_MAX + +# define UINT32_MAX (4294967295U) +# define UINT_LEAST32_MAX UINT32_MAX +# define UINT_FAST32_MAX UINT32_MAX +#endif + +#ifdef __STDINT_MACROS +# define INT32_C(c) c +# define INT_LEAST32_C(c) INT32_C(c) +# define INT_FAST32_C(c) INT32_C(c) + +# define UINT32_C(c) c ## U +# define UINT_LEAST32_C(c) UINT32_C(c) +# define UINT_FAST32_C(c) UINT32_C(c) +#endif + +/* + * int64_t + */ + typedef int64_t int_least64_t; typedef int64_t int_fast64_t; typedef uint64_t uint_least64_t; typedef uint64_t uint_fast64_t; +#ifdef __STDINT_LIMITS +# define INT64_MIN (__INT64_C(-9223372036854775807)-1) +# define INT64_MAX (__INT64_C(9223372036854775807)) +# define INT_LEAST64_MIN INT64_MIN +# define INT_LEAST64_MAX INT64_MAX +# define INT_FAST64_MIN INT64_MIN +# define INT_FAST64_MAX INT64_MAX +# define UINT64_MAX (__UINT64_C(18446744073709551615)) + +# define UINT_LEAST64_MAX UINT64_MAX +# define UINT_FAST64_MAX UINT64_MAX +#endif + +#define __INT64_C(c) c ## LL +#define __UINT64_C(c) c ## ULL + +#ifdef __STDINT_MACROS +# define INT64_C(c) __INT64_C(c) +# define INT_LEAST64_C(c) INT64_C(c) +# define INT_FAST64_C(c) INT64_C(c) + +# define UINT64_C(c) __UINT64_C(c) +# define UINT_LEAST64_C(c) UINT64_C(c) +# define UINT_FAST64_C(c) UINT64_C(c) +#endif + +# define __PRI64_RANK "ll" +# define __PRIFAST_RANK "" +# define __PRIPTR_RANK "" + +/* + * intptr_t & uintptr_t + */ + #ifdef __LP64__ typedef long intptr_t; typedef unsigned long uintptr_t; @@ -76,130 +199,64 @@ typedef int intptr_t; typedef unsigned int uintptr_t; #endif +#ifdef __STDINT_LIMITS +# define INTPTR_MIN INT32_MIN +# define INTPTR_MAX INT32_MAX +# define UINTPTR_MAX UINT32_MAX +# define PTRDIFF_MIN INT32_MIN +# define PTRDIFF_MAX INT32_MAX +#endif + +#ifdef __STDINT_MACROS +# define INTPTR_C(c) INT32_C(c) +# define UINTPTR_C(c) UINT32_C(c) +# define PTRDIFF_C(c) INT32_C(c) +#endif + +/* + * intmax_t & uintmax_t + */ + typedef uint64_t uintmax_t; typedef int64_t intmax_t; +#ifdef __STDINT_LIMITS +# define INTMAX_MIN INT64_MIN +# define INTMAX_MAX INT64_MAX +# define UINTMAX_MAX UINT64_MAX +#endif + +#ifdef __STDINT_MACROS +# define INTMAX_C(c) INT64_C(c) +# define UINTMAX_C(c) UINT64_C(c) +#endif + +/* Limits of sig_atomic_t. */ +#ifdef __STDINT_LIMITS +# define SIG_ATOMIC_MIN INT32_MIN +# define SIG_ATOMIC_MAX INT32_MAX +#endif + +/* Limits of wchar_t. */ +#ifdef __STDINT_LIMITS +#include +#endif + +/* Limits of wint_t. */ +#ifdef __STDINT_LIMITS +# define WINT_MIN INT32_MIN +# define WINT_MAX INT32_MAX +#endif + +/* size_t is defined by the GCC-specific */ +#ifndef _SSIZE_T_DEFINED_ +#define _SSIZE_T_DEFINED_ +typedef long int ssize_t; +#endif + +#define _BITSIZE 32 + /* Keep the kernel from trying to define these types... */ #define __BIT_TYPES_DEFINED__ -#define INT8_C(c) c -#define INT_LEAST8_C(c) INT8_C(c) -#define INT_FAST8_C(c) INT8_C(c) - -#define UINT8_C(c) c -#define UINT_LEAST8_C(c) UINT8_C(c) -#define UINT_FAST8_C(c) UINT8_C(c) - -#define INT16_C(c) c -#define INT_LEAST16_C(c) INT16_C(c) -#define INT_FAST16_C(c) INT32_C(c) - -#define UINT16_C(c) c -#define UINT_LEAST16_C(c) UINT16_C(c) -#define UINT_FAST16_C(c) UINT32_C(c) -#define INT32_C(c) c -#define INT_LEAST32_C(c) INT32_C(c) -#define INT_FAST32_C(c) INT32_C(c) - -#define UINT32_C(c) c ## U -#define UINT_LEAST32_C(c) UINT32_C(c) -#define UINT_FAST32_C(c) UINT32_C(c) -#define INT_LEAST64_C(c) INT64_C(c) -#define INT_FAST64_C(c) INT64_C(c) - -#define UINT_LEAST64_C(c) UINT64_C(c) -#define UINT_FAST64_C(c) UINT64_C(c) - -#define INTMAX_C(c) INT64_C(c) -#define UINTMAX_C(c) UINT64_C(c) - -#ifdef __LP64__ -# define INT64_C(c) c ## L -# define UINT64_C(c) c ## UL -# define INTPTR_C(c) INT64_C(c) -# define UINTPTR_C(c) UINT64_C(c) -# define PTRDIFF_C(c) INT64_C(c) -#else -# define INT64_C(c) c ## LL -# define UINT64_C(c) c ## ULL -# define INTPTR_C(c) INT32_C(c) -# define UINTPTR_C(c) UINT32_C(c) -# define PTRDIFF_C(c) INT32_C(c) -#endif - -#define INT8_MIN (-128) -#define INT8_MAX (127) -#define INT_LEAST8_MIN INT8_MIN -#define INT_LEAST8_MAX INT8_MAX -#define INT_FAST8_MIN INT8_MIN -#define INT_FAST8_MAX INT8_MAX - -#define UINT8_MAX (255) -#define UINT_LEAST8_MAX UINT8_MAX -#define UINT_FAST8_MAX UINT8_MAX - -#define INT16_MIN (-32768) -#define INT16_MAX (32767) -#define INT_LEAST16_MIN INT16_MIN -#define INT_LEAST16_MAX INT16_MAX -#define INT_FAST16_MIN INT32_MIN -#define INT_FAST16_MAX INT32_MAX - -#define UINT16_MAX (65535) -#define UINT_LEAST16_MAX UINT16_MAX -#define UINT_FAST16_MAX UINT32_MAX - -#define INT32_MIN (-2147483647-1) -#define INT32_MAX (2147483647) -#define INT_LEAST32_MIN INT32_MIN -#define INT_LEAST32_MAX INT32_MAX -#define INT_FAST32_MIN INT32_MIN -#define INT_FAST32_MAX INT32_MAX - -#define UINT32_MAX (4294967295U) -#define UINT_LEAST32_MAX UINT32_MAX -#define UINT_FAST32_MAX UINT32_MAX - -#define INT64_MIN (INT64_C(-9223372036854775807)-1) -#define INT64_MAX (INT64_C(9223372036854775807)) -#define INT_LEAST64_MIN INT64_MIN -#define INT_LEAST64_MAX INT64_MAX -#define INT_FAST64_MIN INT64_MIN -#define INT_FAST64_MAX INT64_MAX -#define UINT64_MAX (UINT64_C(18446744073709551615)) - -#define UINT_LEAST64_MAX UINT64_MAX -#define UINT_FAST64_MAX UINT64_MAX - -#define INTMAX_MIN INT64_MIN -#define INTMAX_MAX INT64_MAX -#define UINTMAX_MAX UINT64_MAX - -#define SIG_ATOMIC_MAX INT32_MAX -#define SIG_ATOMIC_MIN INT32_MIN - -#ifndef WCHAR_MAX /* These might also have been defined by . */ -# define WCHAR_MAX INT32_MAX -# define WCHAR_MIN INT32_MIN -#endif - -#define WINT_MAX INT32_MAX -#define WINT_MIN INT32_MIN - -#ifdef __LP64__ -# define INTPTR_MIN INT64_MIN -# define INTPTR_MAX INT64_MAX -# define UINTPTR_MAX UINT64_MAX -# define PTRDIFF_MIN INT64_MIN -# define PTRDIFF_MAX INT64_MAX -# define SIZE_MAX UINT64_MAX -#else -# define INTPTR_MIN INT32_MIN -# define INTPTR_MAX INT32_MAX -# define UINTPTR_MAX UINT32_MAX -# define PTRDIFF_MIN INT32_MIN -# define PTRDIFF_MAX INT32_MAX -# define SIZE_MAX UINT32_MAX -#endif - #endif /* _STDINT_H */ diff --git a/ndk/sources/android/libportable/common/include/asm/signal_portable.h b/ndk/sources/android/libportable/common/include/asm/signal_portable.h index 63f9224ad..48d33f59a 100644 --- a/ndk/sources/android/libportable/common/include/asm/signal_portable.h +++ b/ndk/sources/android/libportable/common/include/asm/signal_portable.h @@ -103,6 +103,14 @@ typedef unsigned long sigset_portable_t; * lib-portable application can interact with. MIPS has * an additional 63 signals. */ + +#ifndef __SIGRTMIN +#define __SIGRTMIN SIGRTMIN +#endif +#ifndef __SIGRTMAX +#define __SIGRTMAX SIGRTMAX +#endif + #define SIGRT_1 (__SIGRTMIN + 1) #define SIGRT_2 (__SIGRTMIN + 2) #define SIGRT_3 (__SIGRTMIN + 3)