diff --git a/userspace/libraries/LibC/include/bits/pthread_types.h b/userspace/libraries/LibC/include/bits/pthread_types.h index e83d7ecf..0d79cb6d 100644 --- a/userspace/libraries/LibC/include/bits/pthread_types.h +++ b/userspace/libraries/LibC/include/bits/pthread_types.h @@ -4,82 +4,40 @@ __BEGIN_DECLS -#if !defined(__pthread_attr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_attr_t)) +#if !defined(__pthread_attr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_attr_t) || defined(__need_pthread_types)) #define __pthread_attr_t_defined 1 typedef int pthread_attr_t; #endif #undef __need_pthread_attr_t -#if !defined(__pthread_barrier_t_defined) && (defined(__need_all_types) || defined(__need_pthread_barrier_t)) - #define __pthread_barrier_t_defined 1 - typedef int pthread_barrier_t; -#endif -#undef __need_pthread_barrier_t - -#if !defined(__pthread_barrierattr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_barrierattr_t)) - #define __pthread_barrierattr_t_defined 1 - typedef int pthread_barrierattr_t; -#endif -#undef __need_pthread_barrierattr_t - -#if !defined(__pthread_cond_t_defined) && (defined(__need_all_types) || defined(__need_pthread_cond_t)) - #define __pthread_cond_t_defined 1 - typedef int pthread_cond_t; -#endif -#undef __need_pthread_cond_t - -#if !defined(__pthread_condattr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_condattr_t)) - #define __pthread_condattr_t_defined 1 - typedef int pthread_condattr_t; -#endif -#undef __need_pthread_condattr_t - -#if !defined(__pthread_key_t_defined) && (defined(__need_all_types) || defined(__need_pthread_key_t)) - #define __pthread_key_t_defined 1 - typedef unsigned pthread_key_t; -#endif -#undef __need_pthread_key_t - -#if !defined(__pthread_t_defined) && (defined(__need_all_types) || defined(__need_pthread_t)) +#if !defined(__pthread_t_defined) && (defined(__need_all_types) || defined(__need_pthread_t) || defined(__need_pthread_types)) #define __pthread_t_defined 1 typedef pid_t pthread_t; #endif #undef __need_pthread_t -#if !defined(__pthread_mutexattr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_mutexattr_t)) - #define __pthread_mutexattr_t_defined 1 - typedef struct { int type; bool shared; } pthread_mutexattr_t; -#endif -#undef __need_pthread_mutexattr_t +#if !defined(__pthread_types_defined) && (defined(__need_all_types) || defined(__need_pthread_types)) +#define __pthread_types_defined 1 -#if !defined(__pthread_mutex_t_defined) && (defined(__need_all_types) || defined(__need_pthread_mutex_t)) - #define __pthread_mutex_t_defined 1 - typedef struct { pthread_mutexattr_t attr; pthread_t locker; unsigned lock_depth; } pthread_mutex_t; -#endif -#undef __need_pthread_mutex_t +typedef int pthread_once_t; -#if !defined(__pthread_once_t_defined) && (defined(__need_all_types) || defined(__need_pthread_once_t)) - #define __pthread_once_t_defined 1 - typedef int pthread_once_t; -#endif -#undef __need_pthread_once_t +typedef unsigned pthread_key_t; -#if !defined(__pthread_rwlock_t_defined) && (defined(__need_all_types) || defined(__need_pthread_rwlock_t)) - #define __pthread_rwlock_t_defined 1 - typedef int pthread_rwlock_t; -#endif -#undef __need_pthread_rwlock_t +typedef pthread_t pthread_spinlock_t; -#if !defined(__pthread_rwlockattr_t_defined) && (defined(__need_all_types) || defined(__need_pthread_rwlockattr_t)) - #define __pthread_rwlockattr_t_defined 1 - typedef int pthread_rwlockattr_t; -#endif -#undef __need_pthread_rwlockattr_t +typedef struct { int type; int shared; } pthread_mutexattr_t; +typedef struct { pthread_mutexattr_t attr; pthread_t locker; unsigned lock_depth; } pthread_mutex_t; + +typedef int pthread_barrierattr_t; +typedef int pthread_barrier_t; + +typedef int pthread_condattr_t; +typedef int pthread_cond_t; + +typedef int pthread_rwlockattr_t; +typedef int pthread_rwlock_t; -#if !defined(__pthread_spinlock_t_defined) && (defined(__need_all_types) || defined(__need_pthread_spinlock_t)) - #define __pthread_spinlock_t_defined 1 - typedef pthread_t pthread_spinlock_t; #endif -#undef __need_pthread_spinlock_t +#undef __need_pthread_types __END_DECLS diff --git a/userspace/libraries/LibC/include/pthread.h b/userspace/libraries/LibC/include/pthread.h index ea656dcc..59885374 100644 --- a/userspace/libraries/LibC/include/pthread.h +++ b/userspace/libraries/LibC/include/pthread.h @@ -13,19 +13,7 @@ __BEGIN_DECLS #define __need_size_t #define __need_clockid_t -#define __need_pthread_attr_t -#define __need_pthread_barrier_t -#define __need_pthread_barrierattr_t -#define __need_pthread_cond_t -#define __need_pthread_condattr_t -#define __need_pthread_key_t -#define __need_pthread_mutex_t -#define __need_pthread_mutexattr_t -#define __need_pthread_once_t -#define __need_pthread_rwlock_t -#define __need_pthread_rwlockattr_t -#define __need_pthread_spinlock_t -#define __need_pthread_t +#define __need_pthread_types #include struct uthread diff --git a/userspace/libraries/LibC/include/sys/types.h b/userspace/libraries/LibC/include/sys/types.h index c75ad57f..17e8d401 100644 --- a/userspace/libraries/LibC/include/sys/types.h +++ b/userspace/libraries/LibC/include/sys/types.h @@ -22,18 +22,8 @@ __BEGIN_DECLS && !defined(__need_off_t) \ && !defined(__need_pid_t) \ && !defined(__need_pthread_attr_t) \ - && !defined(__need_pthread_barrier_t) \ - && !defined(__need_pthread_barrierattr_t) \ - && !defined(__need_pthread_cond_t) \ - && !defined(__need_pthread_condattr_t) \ - && !defined(__need_pthread_key_t) \ - && !defined(__need_pthread_mutex_t) \ - && !defined(__need_pthread_mutexattr_t) \ - && !defined(__need_pthread_once_t) \ - && !defined(__need_pthread_rwlock_t) \ - && !defined(__need_pthread_rwlockattr_t) \ - && !defined(__need_pthread_spinlock_t) \ && !defined(__need_pthread_t) \ + && !defined(__need_pthread_types) \ && !defined(__need_size_t) \ && !defined(__need_ssize_t) \ && !defined(__need_suseconds_t) \