3 '/^TYPEDEF/s/TYPEDEF \(.*\) \([^ ]*\);$/#if defined(__NEED_\2) \&\& !defined(__DEFINED_\2)\
8 /^STRUCT/s/STRUCT * \([^ ]*\) \(.*\);$/#if defined(__NEED_struct_\1) \&\& !defined(__DEFINED_struct_\1)\
10 #define __DEFINED_struct_\1\
13 /^UNION/s/UNION * \([^ ]*\) \(.*\);$/#if defined(__NEED_union_\1) \&\& !defined(__DEFINED_union_\1)\
15 #define __DEFINED_union_\1\
19 TYPEDEF unsigned long size_t;
21 TYPEDEF long ptrdiff_t;
23 TYPEDEF __builtin_va_list va_list;
24 TYPEDEF __builtin_va_list __isoc_va_list;
30 TYPEDEF const int * wctrans_t;
31 TYPEDEF unsigned long wctype_t;
33 TYPEDEF signed char int8_t;
34 TYPEDEF short int16_t;
38 TYPEDEF unsigned char uint8_t;
39 TYPEDEF unsigned short uint16_t;
40 TYPEDEF unsigned int uint32_t;
41 TYPEDEF unsigned long uint64_t;
43 TYPEDEF unsigned short __uint16_t;
44 TYPEDEF unsigned int __uint32_t;
45 TYPEDEF unsigned long __uint64_t;
47 TYPEDEF int8_t int_fast8_t;
48 TYPEDEF int int_fast16_t;
49 TYPEDEF int int_fast32_t;
50 TYPEDEF int64_t int_fast64_t;
52 TYPEDEF unsigned char uint_fast8_t;
53 TYPEDEF unsigned int uint_fast16_t;
54 TYPEDEF unsigned int uint_fast32_t;
55 TYPEDEF uint64_t uint_fast64_t;
57 TYPEDEF long intptr_t;
58 TYPEDEF unsigned long uintptr_t;
60 TYPEDEF long intmax_t;
61 TYPEDEF unsigned long uintmax_t;
63 TYPEDEF float float_t;
64 TYPEDEF double double_t;
67 TYPEDEF long suseconds_t;
68 TYPEDEF unsigned useconds_t;
69 STRUCT timeval { time_t tv_sec; long tv_usec; };
70 STRUCT timespec { time_t tv_sec; long tv_nsec; };
73 TYPEDEF unsigned id_t;
74 TYPEDEF unsigned uid_t;
75 TYPEDEF unsigned gid_t;
78 TYPEDEF struct __pthread * pthread_t;
79 TYPEDEF int pthread_once_t;
80 TYPEDEF int pthread_key_t;
81 TYPEDEF int pthread_spinlock_t;
83 TYPEDEF struct { union { int __i[14]; size_t __s[7]; } __u; } pthread_attr_t;
84 TYPEDEF unsigned pthread_mutexattr_t;
85 TYPEDEF unsigned pthread_condattr_t;
86 TYPEDEF unsigned pthread_barrierattr_t;
87 TYPEDEF struct { unsigned __attr[2]; } pthread_rwlockattr_t;
89 TYPEDEF struct { union { int __i[10]; void *__p[5]; } __u; } pthread_mutex_t;
90 TYPEDEF struct { union { int __i[12]; void *__p[6]; } __u; } pthread_cond_t;
91 TYPEDEF struct { union { int __i[14]; void *__p[7]; } __u; } pthread_rwlock_t;
92 TYPEDEF struct { union { int __i[8]; void *__p[4]; } __u; } pthread_barrier_t;
96 TYPEDEF unsigned int mode_t;
98 TYPEDEF unsigned long nlink_t;
99 TYPEDEF unsigned long ino_t;
100 TYPEDEF unsigned long dev_t;
101 TYPEDEF long blksize_t;
102 TYPEDEF long blkcnt_t;
103 TYPEDEF unsigned long fsblkcnt_t;
104 TYPEDEF unsigned long fsfilcnt_t;
106 TYPEDEF void * timer_t;
107 TYPEDEF int clockid_t;
108 TYPEDEF long clock_t;
110 TYPEDEF struct { unsigned long __bits[128/sizeof(long)]; } sigset_t;
111 TYPEDEF struct __siginfo siginfo_t;
113 TYPEDEF unsigned int socklen_t;
114 TYPEDEF unsigned short sa_family_t;
115 TYPEDEF unsigned short in_port_t;
116 TYPEDEF unsigned int in_addr_t;
117 STRUCT in_addr { in_addr_t s_addr; };
119 TYPEDEF struct __FILE_s FILE;
123 TYPEDEF struct __locale * locale_t;
125 STRUCT iovec { void *iov_base; size_t iov_len; };