• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 macro_rules! expand_align {
2     () => {
3         s! {
4             pub struct pthread_mutexattr_t {
5                 #[cfg(any(target_arch = "x86_64",
6                           target_arch = "powerpc64",
7                           target_arch = "mips64",
8                           target_arch = "s390x",
9                           target_arch = "sparc64",
10                           target_arch = "riscv64",
11                           target_arch = "riscv32",
12                           target_arch = "loongarch64",
13                           all(target_arch = "aarch64",
14                               any(target_env = "musl", target_env = "ohos"))))]
15                 __align: [::c_int; 0],
16                 #[cfg(not(any(target_arch = "x86_64",
17                               target_arch = "powerpc64",
18                               target_arch = "mips64",
19                               target_arch = "s390x",
20                               target_arch = "sparc64",
21                               target_arch = "riscv64",
22                               target_arch = "riscv32",
23                               target_arch = "loongarch64",
24                               all(target_arch = "aarch64",
25                                   any(target_env = "musl", target_env = "ohos")))))]
26                 __align: [::c_long; 0],
27                 size: [u8; ::__SIZEOF_PTHREAD_MUTEXATTR_T],
28             }
29 
30             pub struct pthread_rwlockattr_t {
31                 #[cfg(any(target_env = "musl", target_env = "ohos"))]
32                 __align: [::c_int; 0],
33                 #[cfg(not(any(target_env = "musl", target_env = "ohos")))]
34                 __align: [::c_long; 0],
35                 size: [u8; ::__SIZEOF_PTHREAD_RWLOCKATTR_T],
36             }
37 
38             pub struct pthread_condattr_t {
39                 __align: [::c_int; 0],
40                 size: [u8; ::__SIZEOF_PTHREAD_CONDATTR_T],
41             }
42 
43             pub struct fanotify_event_metadata {
44                 __align: [::c_long; 0],
45                 pub event_len: __u32,
46                 pub vers: __u8,
47                 pub reserved: __u8,
48                 pub metadata_len: __u16,
49                 pub mask: __u64,
50                 pub fd: ::c_int,
51                 pub pid: ::c_int,
52             }
53         }
54 
55         s_no_extra_traits! {
56             pub struct pthread_cond_t {
57                 #[cfg(any(target_env = "musl", target_env = "ohos"))]
58                 __align: [*const ::c_void; 0],
59                 #[cfg(not(any(target_env = "musl", target_env = "ohos")))]
60                 __align: [::c_longlong; 0],
61                 size: [u8; ::__SIZEOF_PTHREAD_COND_T],
62             }
63 
64             pub struct pthread_mutex_t {
65                 #[cfg(any(target_arch = "mips",
66                           target_arch = "arm",
67                           target_arch = "m68k",
68                           target_arch = "powerpc",
69                           target_arch = "sparc",
70                           all(target_arch = "x86_64",
71                               target_pointer_width = "32")))]
72                 __align: [::c_long; 0],
73                 #[cfg(not(any(target_arch = "mips",
74                               target_arch = "arm",
75                               target_arch = "m68k",
76                               target_arch = "powerpc",
77                               target_arch = "sparc",
78                               all(target_arch = "x86_64",
79                                   target_pointer_width = "32"))))]
80                 __align: [::c_longlong; 0],
81                 size: [u8; ::__SIZEOF_PTHREAD_MUTEX_T],
82             }
83 
84             pub struct pthread_rwlock_t {
85                 #[cfg(any(target_arch = "mips",
86                           target_arch = "arm",
87                           target_arch = "m68k",
88                           target_arch = "powerpc",
89                           target_arch = "sparc",
90                           all(target_arch = "x86_64",
91                               target_pointer_width = "32")))]
92                 __align: [::c_long; 0],
93                 #[cfg(not(any(target_arch = "mips",
94                               target_arch = "arm",
95                               target_arch = "m68k",
96                               target_arch = "powerpc",
97                               target_arch = "sparc",
98                               all(target_arch = "x86_64",
99                                   target_pointer_width = "32"))))]
100                 __align: [::c_longlong; 0],
101                 size: [u8; ::__SIZEOF_PTHREAD_RWLOCK_T],
102             }
103         }
104     };
105 }
106