@@ -224,7 +224,10 @@ pub mod types {
224224 pub mod common {
225225 pub mod posix01 {
226226 use libc:: types:: common:: c95:: { c_void} ;
227- use libc:: types:: os:: arch:: c95:: { c_char, size_t} ;
227+ use libc:: types:: os:: arch:: c95:: { c_char, c_ulong, size_t} ;
228+
229+ pub type pthread_t = c_ulong ;
230+
228231 pub struct glob_t {
229232 gl_pathc : size_t ,
230233 gl_pathv : * * c_char ,
@@ -294,7 +297,7 @@ pub mod types {
294297 }
295298 #[ cfg( target_arch = "x86" ) ]
296299 pub mod posix01 {
297- use libc:: types:: os:: arch:: c95:: { c_short, c_long, time_t} ;
300+ use libc:: types:: os:: arch:: c95:: { c_char , c_short, c_long, time_t} ;
298301 use libc:: types:: os:: arch:: posix88:: { dev_t, gid_t, ino_t} ;
299302 use libc:: types:: os:: arch:: posix88:: { mode_t, off_t} ;
300303 use libc:: types:: os:: arch:: posix88:: { uid_t} ;
@@ -325,10 +328,14 @@ pub mod types {
325328 __unused4 : c_long ,
326329 __unused5 : c_long ,
327330 }
331+
332+ pub struct pthread_attr_t {
333+ __size : [ c_char , ..36 ]
334+ }
328335 }
329336 #[ cfg( target_arch = "arm" ) ]
330337 pub mod posix01 {
331- use libc:: types:: os:: arch:: c95:: { c_uchar, c_uint, c_ulong, time_t} ;
338+ use libc:: types:: os:: arch:: c95:: { c_char , c_uchar, c_uint, c_ulong, time_t} ;
332339 use libc:: types:: os:: arch:: c99:: { c_longlong, c_ulonglong} ;
333340 use libc:: types:: os:: arch:: posix88:: { uid_t, gid_t, ino_t} ;
334341
@@ -357,10 +364,14 @@ pub mod types {
357364 st_ctime_nsec : c_ulong ,
358365 st_ino : c_ulonglong
359366 }
367+
368+ pub struct pthread_attr_t {
369+ __size : [ c_char , ..36 ]
370+ }
360371 }
361372 #[ cfg( target_arch = "mips" ) ]
362373 pub mod posix01 {
363- use libc:: types:: os:: arch:: c95:: { c_long, c_ulong, time_t} ;
374+ use libc:: types:: os:: arch:: c95:: { c_char , c_long, c_ulong, time_t} ;
364375 use libc:: types:: os:: arch:: posix88:: { gid_t, ino_t} ;
365376 use libc:: types:: os:: arch:: posix88:: { mode_t, off_t} ;
366377 use libc:: types:: os:: arch:: posix88:: { uid_t} ;
@@ -391,6 +402,10 @@ pub mod types {
391402 st_blocks : blkcnt_t ,
392403 st_pad5 : [ c_long , ..14 ] ,
393404 }
405+
406+ pub struct pthread_attr_t {
407+ __size : [ c_char , ..36 ]
408+ }
394409 }
395410 pub mod posix08 { }
396411 pub mod bsd44 { }
@@ -435,7 +450,7 @@ pub mod types {
435450 pub type ssize_t = i64 ;
436451 }
437452 pub mod posix01 {
438- use libc:: types:: os:: arch:: c95:: { c_int, c_long, time_t} ;
453+ use libc:: types:: os:: arch:: c95:: { c_char , c_int, c_long, time_t} ;
439454 use libc:: types:: os:: arch:: posix88:: { dev_t, gid_t, ino_t} ;
440455 use libc:: types:: os:: arch:: posix88:: { mode_t, off_t} ;
441456 use libc:: types:: os:: arch:: posix88:: { uid_t} ;
@@ -463,6 +478,10 @@ pub mod types {
463478 st_ctime_nsec : c_long ,
464479 __unused : [ c_long , ..3 ] ,
465480 }
481+
482+ pub struct pthread_attr_t {
483+ __size : [ c_char , ..56 ]
484+ }
466485 }
467486 pub mod posix08 {
468487 }
@@ -479,6 +498,10 @@ pub mod types {
479498 pub mod posix01 {
480499 use libc:: types:: common:: c95:: { c_void} ;
481500 use libc:: types:: os:: arch:: c95:: { c_char, c_int, size_t} ;
501+ use libc:: types:: os:: arch:: c99:: { uintptr_t} ;
502+
503+ pub type pthread_t = uintptr_t ;
504+
482505 pub struct glob_t {
483506 gl_pathc : size_t ,
484507 __unused1 : size_t ,
@@ -535,6 +558,7 @@ pub mod types {
535558 pub type ssize_t = i64 ;
536559 }
537560 pub mod posix01 {
561+ use libc:: types:: common:: c95:: { c_void} ;
538562 use libc:: types:: common:: c99:: { uint8_t, uint32_t, int32_t} ;
539563 use libc:: types:: os:: arch:: c95:: { c_long, time_t} ;
540564 use libc:: types:: os:: arch:: posix88:: { dev_t, gid_t, ino_t} ;
@@ -569,6 +593,8 @@ pub mod types {
569593 st_birthtime_nsec : c_long ,
570594 __unused : [ uint8_t , ..2 ] ,
571595 }
596+
597+ pub type pthread_attr_t = * c_void ;
572598 }
573599 pub mod posix08 {
574600 }
@@ -945,6 +971,10 @@ pub mod types {
945971 pub mod posix01 {
946972 use libc:: types:: common:: c95:: { c_void} ;
947973 use libc:: types:: os:: arch:: c95:: { c_char, c_int, size_t} ;
974+ use libc:: types:: os:: arch:: c99:: { uintptr_t} ;
975+
976+ pub type pthread_t = uintptr_t ;
977+
948978 pub struct glob_t {
949979 gl_pathc : size_t ,
950980 __unused1 : c_int ,
@@ -1002,7 +1032,7 @@ pub mod types {
10021032 }
10031033 pub mod posix01 {
10041034 use libc:: types:: common:: c99:: { int32_t, int64_t, uint32_t} ;
1005- use libc:: types:: os:: arch:: c95:: { c_long, time_t} ;
1035+ use libc:: types:: os:: arch:: c95:: { c_char , c_long, time_t} ;
10061036 use libc:: types:: os:: arch:: posix88:: { dev_t, gid_t, ino_t,
10071037 mode_t, off_t, uid_t} ;
10081038
@@ -1034,6 +1064,11 @@ pub mod types {
10341064 st_lspare : int32_t ,
10351065 st_qspare : [ int64_t , ..2 ] ,
10361066 }
1067+
1068+ pub struct pthread_attr_t {
1069+ __sig : c_long ,
1070+ __opaque : [ c_char , ..36 ]
1071+ }
10371072 }
10381073 pub mod posix08 {
10391074 }
@@ -1083,7 +1118,7 @@ pub mod types {
10831118 pub mod posix01 {
10841119 use libc:: types:: common:: c99:: { int32_t, int64_t} ;
10851120 use libc:: types:: common:: c99:: { uint32_t} ;
1086- use libc:: types:: os:: arch:: c95:: { c_long, time_t} ;
1121+ use libc:: types:: os:: arch:: c95:: { c_char , c_long, time_t} ;
10871122 use libc:: types:: os:: arch:: posix88:: { dev_t, gid_t, ino_t} ;
10881123 use libc:: types:: os:: arch:: posix88:: { mode_t, off_t, uid_t} ;
10891124
@@ -1115,6 +1150,11 @@ pub mod types {
11151150 st_lspare : int32_t ,
11161151 st_qspare : [ int64_t , ..2 ] ,
11171152 }
1153+
1154+ pub struct pthread_attr_t {
1155+ __sig : c_long ,
1156+ __opaque : [ c_char , ..56 ]
1157+ }
11181158 }
11191159 pub mod posix08 {
11201160 }
@@ -1800,6 +1840,9 @@ pub mod consts {
18001840 pub static _SC_XOPEN_LEGACY : c_int = 129 ;
18011841 pub static _SC_XOPEN_REALTIME : c_int = 130 ;
18021842 pub static _SC_XOPEN_REALTIME_THREADS : c_int = 131 ;
1843+
1844+ pub static PTHREAD_CREATE_JOINABLE : c_int = 0 ;
1845+ pub static PTHREAD_CREATE_DETACHED : c_int = 1 ;
18031846 }
18041847 pub mod posix08 {
18051848 }
@@ -2207,6 +2250,9 @@ pub mod consts {
22072250 pub static _SC_XOPEN_UNIX : c_int = 115 ;
22082251 pub static _SC_XOPEN_VERSION : c_int = 116 ;
22092252 pub static _SC_XOPEN_XCU_VERSION : c_int = 117 ;
2253+
2254+ pub static PTHREAD_CREATE_JOINABLE : c_int = 0 ;
2255+ pub static PTHREAD_CREATE_DETACHED : c_int = 1 ;
22102256 }
22112257 pub mod posix08 {
22122258 }
@@ -2560,6 +2606,9 @@ pub mod consts {
25602606 pub static _SC_XOPEN_UNIX : c_int = 115 ;
25612607 pub static _SC_XOPEN_VERSION : c_int = 116 ;
25622608 pub static _SC_XOPEN_XCU_VERSION : c_int = 121 ;
2609+
2610+ pub static PTHREAD_CREATE_JOINABLE : c_int = 1 ;
2611+ pub static PTHREAD_CREATE_DETACHED : c_int = 2 ;
25632612 }
25642613 pub mod posix08 {
25652614 }
0 commit comments