Move pthread types to <sys/_pthreadtypes.h>
This makes it possible provide operating system specific types for <pthread.h>. It is in line with the FreeBSD header file structure and allows a future cleanup of <pthread.h> to not expose unrelated things via <sys/types.h> and <unistd.h>. Glibc uses the similar <bits/pthreadtypes.h> for this purpose. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
This commit is contained in:
committed by
Corinna Vinschen
parent
ba49de472f
commit
e655d3d34b
@ -76,52 +76,6 @@ typedef char *addr_t;
|
||||
|
||||
#endif /*__BIT_TYPES_DEFINED*/
|
||||
|
||||
#if !defined(__INSIDE_CYGWIN__) || !defined(__cplusplus)
|
||||
|
||||
typedef struct __pthread_t {char __dummy;} *pthread_t;
|
||||
typedef struct __pthread_mutex_t {char __dummy;} *pthread_mutex_t;
|
||||
|
||||
typedef struct __pthread_key_t {char __dummy;} *pthread_key_t;
|
||||
typedef struct __pthread_attr_t {char __dummy;} *pthread_attr_t;
|
||||
typedef struct __pthread_mutexattr_t {char __dummy;} *pthread_mutexattr_t;
|
||||
typedef struct __pthread_condattr_t {char __dummy;} *pthread_condattr_t;
|
||||
typedef struct __pthread_cond_t {char __dummy;} *pthread_cond_t;
|
||||
typedef struct __pthread_barrierattr_t {char __dummy;} *pthread_barrierattr_t;
|
||||
typedef struct __pthread_barrier_t {char __dummy;} *pthread_barrier_t;
|
||||
|
||||
/* These variables are not user alterable. This means you!. */
|
||||
typedef struct
|
||||
{
|
||||
pthread_mutex_t mutex;
|
||||
int state;
|
||||
}
|
||||
pthread_once_t;
|
||||
typedef struct __pthread_spinlock_t {char __dummy;} *pthread_spinlock_t;
|
||||
typedef struct __pthread_rwlock_t {char __dummy;} *pthread_rwlock_t;
|
||||
typedef struct __pthread_rwlockattr_t {char __dummy;} *pthread_rwlockattr_t;
|
||||
|
||||
#else
|
||||
|
||||
/* pthreads types */
|
||||
|
||||
typedef class pthread *pthread_t;
|
||||
typedef class pthread_mutex *pthread_mutex_t;
|
||||
typedef class pthread_key *pthread_key_t;
|
||||
typedef class pthread_attr *pthread_attr_t;
|
||||
typedef class pthread_mutexattr *pthread_mutexattr_t;
|
||||
typedef class pthread_condattr *pthread_condattr_t;
|
||||
typedef class pthread_cond *pthread_cond_t;
|
||||
typedef class pthread_barrier *pthread_barrier_t;
|
||||
typedef class pthread_barrierattr *pthread_barrierattr_t;
|
||||
typedef class pthread_once pthread_once_t;
|
||||
typedef class pthread_spinlock *pthread_spinlock_t;
|
||||
typedef class pthread_rwlock *pthread_rwlock_t;
|
||||
typedef class pthread_rwlockattr *pthread_rwlockattr_t;
|
||||
|
||||
/* semaphores types */
|
||||
typedef class semaphore *sem_t;
|
||||
#endif /* __INSIDE_CYGWIN__ */
|
||||
|
||||
/* this header needs the dev_t typedef */
|
||||
#include <sys/sysmacros.h>
|
||||
|
||||
|
Reference in New Issue
Block a user