File tree 9 files changed +87
-13
lines changed
docker/mipsel-unknown-linux-musl
src/unix/notbsd/linux/musl 9 files changed +87
-13
lines changed Original file line number Diff line number Diff line change @@ -79,6 +79,9 @@ matrix:
79
79
- os : linux
80
80
env : TARGET=powerpc64-unknown-linux-gnu
81
81
rust : stable
82
+ - os : linux
83
+ env : TARGET=mipsel-unknown-linux-musl
84
+ rust : stable
82
85
83
86
# beta
84
87
- os : linux
Original file line number Diff line number Diff line change
1
+ FROM ubuntu:16.04
2
+
3
+ RUN apt-get update
4
+ RUN apt-get install -y --no-install-recommends \
5
+ gcc libc6-dev qemu-user ca-certificates qemu-system-mips curl \
6
+ bzip2
7
+
8
+ RUN mkdir /toolchain
9
+ RUN curl -L https://downloads.openwrt.org/snapshots/trunk/malta/generic/OpenWrt-Toolchain-malta-le_gcc-5.3.0_musl-1.1.15.Linux-x86_64.tar.bz2 | \
10
+ tar xjf - -C /toolchain --strip-components=2
11
+
12
+ ENV PATH=$PATH:/rust/bin:/toolchain/bin \
13
+ CC_mipsel_unknown_linux_musl=mipsel-openwrt-linux-gcc \
14
+ CARGO_TARGET_MIPSEL_UNKNOWN_LINUX_MUSL_LINKER=mipsel-openwrt-linux-gcc
Original file line number Diff line number Diff line change @@ -117,6 +117,10 @@ case "$TARGET" in
117
117
qemu-mips -L /usr/mips-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/libc-test
118
118
;;
119
119
120
+ mipsel-unknown-linux-musl)
121
+ qemu-mipsel -L /toolchain $CARGO_TARGET_DIR /$TARGET /debug/libc-test
122
+ ;;
123
+
120
124
powerpc-unknown-linux-gnu)
121
125
qemu-ppc -L /usr/powerpc-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/libc-test
122
126
;;
Original file line number Diff line number Diff line change 82
82
pub f_flags: :: c_ulong,
83
83
pub f_spare: [ :: c_ulong; 4 ] ,
84
84
}
85
+
86
+ pub struct siginfo_t {
87
+ pub si_signo: :: c_int,
88
+ pub si_errno: :: c_int,
89
+ pub si_code: :: c_int,
90
+ pub _pad: [ :: c_int; 29 ] ,
91
+ _align: [ usize ; 0 ] ,
92
+ }
85
93
}
86
94
87
95
pub const O_DIRECT : :: c_int = 0x4000 ;
@@ -306,3 +314,8 @@ pub const TIOCCONS: ::c_int = 0x541D;
306
314
307
315
pub const SYS_gettid : :: c_long = 224 ;
308
316
pub const SYS_perf_event_open : :: c_long = 364 ;
317
+
318
+ pub const POSIX_MADV_DONTNEED : :: c_int = 0 ;
319
+ pub const RUSAGE_CHILDREN : :: c_int = 1 ;
320
+ pub const POLLWRNORM : :: c_short = 0x100 ;
321
+ pub const POLLWRBAND : :: c_short = 0x200 ;
Original file line number Diff line number Diff line change 82
82
pub f_flags: :: c_ulong,
83
83
pub f_spare: [ :: c_ulong; 4 ] ,
84
84
}
85
+
86
+ pub struct siginfo_t {
87
+ pub si_signo: :: c_int,
88
+ pub si_errno: :: c_int,
89
+ pub si_code: :: c_int,
90
+ pub _pad: [ :: c_int; 29 ] ,
91
+ _align: [ usize ; 0 ] ,
92
+ }
85
93
}
86
94
87
95
pub const O_DIRECT : :: c_int = 0x4000 ;
@@ -305,3 +313,8 @@ pub const FIONREAD: ::c_int = 0x541B;
305
313
pub const TIOCCONS : :: c_int = 0x541D ;
306
314
307
315
pub const SYS_gettid : :: c_long = 224 ; // Valid for arm (32-bit) and x86 (32-bit)
316
+
317
+ pub const POSIX_MADV_DONTNEED : :: c_int = 0 ;
318
+ pub const RUSAGE_CHILDREN : :: c_int = 1 ;
319
+ pub const POLLWRNORM : :: c_short = 0x100 ;
320
+ pub const POLLWRBAND : :: c_short = 0x200 ;
Original file line number Diff line number Diff line change 81
81
pub f_flags: :: c_ulong,
82
82
pub f_spare: [ :: c_ulong; 5 ] ,
83
83
}
84
+
85
+ pub struct siginfo_t {
86
+ pub si_signo: :: c_int,
87
+ pub si_code: :: c_int,
88
+ pub si_errno: :: c_int,
89
+ pub _pad: [ :: c_int; 29 ] ,
90
+ _align: [ usize ; 0 ] ,
91
+ }
84
92
}
85
93
86
94
pub const O_DIRECT : :: c_int = 0o100000 ;
@@ -299,9 +307,14 @@ pub const TIOCSWINSZ: ::c_int = 0x80087467;
299
307
pub const TIOCMGET : :: c_int = 0x741D ;
300
308
pub const TIOCMBIS : :: c_int = 0x741B ;
301
309
pub const TIOCMBIC : :: c_int = 0x741C ;
302
- pub const TIOCMSET : :: c_int = 0x741D ;
310
+ pub const TIOCMSET : :: c_int = 0x741A ;
303
311
pub const FIONREAD : :: c_int = 0x467F ;
304
312
pub const TIOCCONS : :: c_int = 0x80047478 ;
305
313
306
314
pub const SYS_gettid : :: c_long = 4222 ; // Valid for O32
307
315
pub const SYS_perf_event_open : :: c_long = 4333 ; // Valid for O32
316
+
317
+ pub const POSIX_MADV_DONTNEED : :: c_int = 4 ;
318
+ pub const RUSAGE_CHILDREN : :: c_int = !0 ;
319
+ pub const POLLWRNORM : :: c_short = 0x4 ;
320
+ pub const POLLWRBAND : :: c_short = 0x100 ;
Original file line number Diff line number Diff line change 95
95
pub uc_sigmask: :: sigset_t,
96
96
__private: [ u8 ; 112 ] ,
97
97
}
98
+
99
+ pub struct siginfo_t {
100
+ pub si_signo: :: c_int,
101
+ pub si_errno: :: c_int,
102
+ pub si_code: :: c_int,
103
+ pub _pad: [ :: c_int; 29 ] ,
104
+ _align: [ usize ; 0 ] ,
105
+ }
98
106
}
99
107
100
108
pub const O_DIRECT : :: c_int = 0x4000 ;
@@ -320,3 +328,8 @@ pub const TIOCCONS: ::c_int = 0x541D;
320
328
321
329
pub const SYS_gettid : :: c_long = 224 ;
322
330
pub const SYS_perf_event_open : :: c_long = 336 ;
331
+
332
+ pub const POSIX_MADV_DONTNEED : :: c_int = 0 ;
333
+ pub const RUSAGE_CHILDREN : :: c_int = 1 ;
334
+ pub const POLLWRNORM : :: c_short = 0x100 ;
335
+ pub const POLLWRBAND : :: c_short = 0x200 ;
Original file line number Diff line number Diff line change @@ -103,6 +103,14 @@ s! {
103
103
pub struct sem_t {
104
104
__val: [ :: c_int; 8 ] ,
105
105
}
106
+
107
+ pub struct siginfo_t {
108
+ pub si_signo: :: c_int,
109
+ pub si_errno: :: c_int,
110
+ pub si_code: :: c_int,
111
+ pub _pad: [ :: c_int; 29 ] ,
112
+ _align: [ usize ; 0 ] ,
113
+ }
106
114
}
107
115
108
116
pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56 ;
@@ -329,6 +337,11 @@ pub const TIOCMSET: ::c_int = 0x5418;
329
337
pub const FIONREAD : :: c_int = 0x541B ;
330
338
pub const TIOCCONS : :: c_int = 0x541D ;
331
339
340
+ pub const POSIX_MADV_DONTNEED : :: c_int = 0 ;
341
+ pub const RUSAGE_CHILDREN : :: c_int = 1 ;
342
+ pub const POLLWRNORM : :: c_short = 0x100 ;
343
+ pub const POLLWRBAND : :: c_short = 0x200 ;
344
+
332
345
cfg_if ! {
333
346
if #[ cfg( target_arch = "aarch64" ) ] {
334
347
mod aarch64;
Original file line number Diff line number Diff line change 18
18
_restorer: * mut :: c_void,
19
19
}
20
20
21
- pub struct siginfo_t {
22
- pub si_signo: :: c_int,
23
- pub si_errno: :: c_int,
24
- pub si_code: :: c_int,
25
- pub _pad: [ :: c_int; 29 ] ,
26
- _align: [ usize ; 0 ] ,
27
- }
28
-
29
21
pub struct ipc_perm {
30
22
pub __ipc_perm_key: :: key_t,
31
23
pub uid: :: uid_t,
78
70
pub const BUFSIZ : :: c_uint = 1024 ;
79
71
pub const TMP_MAX : :: c_uint = 10000 ;
80
72
pub const FOPEN_MAX : :: c_uint = 1000 ;
81
- pub const POSIX_MADV_DONTNEED : :: c_int = 0 ;
82
73
pub const O_ACCMODE : :: c_int = 0o10000003 ;
83
74
pub const O_NDELAY : :: c_int = O_NONBLOCK ;
84
- pub const RUSAGE_CHILDREN : :: c_int = 1 ;
85
75
pub const NI_MAXHOST : :: socklen_t = 255 ;
86
76
pub const PTHREAD_STACK_MIN : :: size_t = 2048 ;
87
77
@@ -154,9 +144,7 @@ pub const MADV_DONTDUMP: ::c_int = 16;
154
144
pub const EPOLLWAKEUP : :: c_int = 0x20000000 ;
155
145
156
146
pub const POLLRDNORM : :: c_short = 0x040 ;
157
- pub const POLLWRNORM : :: c_short = 0x100 ;
158
147
pub const POLLRDBAND : :: c_short = 0x080 ;
159
- pub const POLLWRBAND : :: c_short = 0x200 ;
160
148
161
149
pub const MADV_HUGEPAGE : :: c_int = 14 ;
162
150
pub const MADV_NOHUGEPAGE : :: c_int = 15 ;
You can’t perform that action at this time.
0 commit comments