| #ifndef _STDDEF_H |
| #define _STDDEF_H |
| |
| #include <arch/types.h> |
| #include <commonlib/bsd/helpers.h> |
| |
| #ifndef __WCHAR_TYPE__ |
| #define __WCHAR_TYPE__ int |
| #endif |
| #ifndef __cplusplus |
| typedef __WCHAR_TYPE__ wchar_t; |
| #endif |
| |
| #ifndef __SIZE_TYPE__ |
| #define __SIZE_TYPE__ unsigned long |
| #endif |
| typedef __SIZE_TYPE__ size_t; |
| /* There is a GCC macro for a size_t type, but not |
| * for a ssize_t type. Below construct tricks GCC |
| * into making __SIZE_TYPE__ signed. |
| */ |
| #define unsigned signed |
| typedef __SIZE_TYPE__ ssize_t; |
| #undef unsigned |
| |
| #define NSECS_PER_SEC 1000000000 |
| #define USECS_PER_SEC 1000000 |
| #define MSECS_PER_SEC 1000 |
| #define NSECS_PER_MSEC (NSECS_PER_SEC / MSECS_PER_SEC) |
| #define NSECS_PER_USEC (NSECS_PER_SEC / USECS_PER_SEC) |
| #define USECS_PER_MSEC (USECS_PER_SEC / MSECS_PER_SEC) |
| |
| #endif |