70
70
71
71
case " $TARGET " in
72
72
* -apple-ios)
73
- cargo rustc --manifest-path libc-test/Cargo.toml --target $TARGET -- \
74
- -C link-args=-mios-simulator-version-min=7.0
73
+ cargo rustc --manifest-path libc-test/Cargo.toml --target $TARGET \
74
+ --test main -- -C link-args=-mios-simulator-version-min=7.0
75
+ cargo rustc --manifest-path libc-test/Cargo.toml --target $TARGET \
76
+ --test linux-fcntl -- -C link-args=-mios-simulator-version-min=7.0
75
77
;;
76
78
77
79
* )
78
- cargo build --manifest-path libc-test/Cargo.toml --target $TARGET
80
+ cargo build --manifest-path libc-test/Cargo.toml --target $TARGET --tests
79
81
;;
80
82
esac
81
83
@@ -95,68 +97,89 @@ case "$TARGET" in
95
97
fi
96
98
emulator @$arch -no-window $accel &
97
99
adb wait-for-device
98
- adb push $CARGO_TARGET_DIR /$TARGET /debug/libc-test /data/local/tmp/libc-test
99
- adb shell /data/local/tmp/libc-test 2>&1 | tee /tmp/out
100
+ adb push $CARGO_TARGET_DIR /$TARGET /debug/main-* /data/local/tmp/main
101
+ adb shell /data/local/tmp/main 2>&1 | tee /tmp/out
102
+ grep " ^PASSED .* tests" /tmp/out
103
+ adb push $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-* /data/local/tmp/linux_fcntl
104
+ adb shell /data/local/tmp/linux_fcntl 2>&1 | tee /tmp/out
100
105
grep " ^PASSED .* tests" /tmp/out
101
106
;;
102
107
103
108
i386-apple-ios)
104
109
rustc -O ./ci/ios/deploy_and_run_on_ios_simulator.rs
105
- ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/libc-test
110
+ ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/main-*
111
+ ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
106
112
;;
107
113
108
114
x86_64-apple-ios)
109
115
rustc -O ./ci/ios/deploy_and_run_on_ios_simulator.rs
110
- ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/libc-test
116
+ ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/main-*
117
+ ./deploy_and_run_on_ios_simulator $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
111
118
;;
112
119
113
120
arm-unknown-linux-gnueabihf)
114
- qemu-arm -L /usr/arm-linux-gnueabihf $CARGO_TARGET_DIR /$TARGET /debug/libc-test
121
+ qemu-arm -L /usr/arm-linux-gnueabihf $CARGO_TARGET_DIR /$TARGET /debug/main-*
122
+ qemu-arm -L /usr/arm-linux-gnueabihf $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
115
123
;;
116
124
117
125
mips-unknown-linux-gnu)
118
- qemu-mips -L /usr/mips-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/libc-test
126
+ qemu-mips -L /usr/mips-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/main-*
127
+ qemu-mips -L /usr/mips-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
119
128
;;
120
129
121
130
mips64-unknown-linux-gnuabi64)
122
- qemu-mips64 -L /usr/mips64-linux-gnuabi64 $CARGO_TARGET_DIR /$TARGET /debug/libc-test
131
+ qemu-mips64 -L /usr/mips64-linux-gnuabi64 $CARGO_TARGET_DIR /$TARGET /debug/main-*
132
+ qemu-mips64 -L /usr/mips64-linux-gnuabi64 $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
123
133
;;
124
134
125
135
mips-unknown-linux-musl)
126
136
qemu-mips -L /toolchain/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15 \
127
- $CARGO_TARGET_DIR /$TARGET /debug/libc-test
137
+ $CARGO_TARGET_DIR /$TARGET /debug/main-*
138
+ qemu-mips -L /toolchain/staging_dir/toolchain-mips_34kc_gcc-5.3.0_musl-1.1.15 \
139
+ $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
128
140
;;
129
141
130
142
mipsel-unknown-linux-musl)
131
- qemu-mipsel -L /toolchain $CARGO_TARGET_DIR /$TARGET /debug/libc-test
143
+ qemu-mipsel -L /toolchain $CARGO_TARGET_DIR /$TARGET /debug/main-*
144
+ qemu-mipsel -L /toolchain $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
132
145
;;
133
146
134
147
powerpc-unknown-linux-gnu)
135
- qemu-ppc -L /usr/powerpc-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/libc-test
148
+ qemu-ppc -L /usr/powerpc-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/main-*
149
+ qemu-ppc -L /usr/powerpc-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
136
150
;;
137
151
138
152
powerpc64-unknown-linux-gnu)
139
- qemu-ppc64 -L /usr/powerpc64-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/libc-test
153
+ qemu-ppc64 -L /usr/powerpc64-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/main-*
154
+ qemu-ppc64 -L /usr/powerpc64-linux-gnu $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
140
155
;;
141
156
142
157
aarch64-unknown-linux-gnu)
143
- qemu-aarch64 -L /usr/aarch64-linux-gnu/ $CARGO_TARGET_DIR /$TARGET /debug/libc-test
158
+ qemu-aarch64 -L /usr/aarch64-linux-gnu/ $CARGO_TARGET_DIR /$TARGET /debug/main-*
159
+ qemu-aarch64 -L /usr/aarch64-linux-gnu/ $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
144
160
;;
145
161
146
162
s390x-unknown-linux-gnu)
147
163
# TODO: in theory we should execute this, but qemu segfaults immediately :(
148
- # qemu-s390x -L /usr/s390x-linux-gnu/ $CARGO_TARGET_DIR/$TARGET/debug/libc-test
164
+ # qemu-s390x -L /usr/s390x-linux-gnu/ $CARGO_TARGET_DIR/$TARGET/debug/main-*
165
+ # qemu-s390x -L /usr/s390x-linux-gnu/ $CARGO_TARGET_DIR/$TARGET/debug/linux_fcntl-*
149
166
;;
150
167
151
168
* -rumprun-netbsd)
152
- rumprun-bake hw_virtio /tmp/libc-test.img $CARGO_TARGET_DIR /$TARGET /debug/libc-test
169
+ rumprun-bake hw_virtio /tmp/libc-test.img $CARGO_TARGET_DIR /$TARGET /debug/main-*
170
+ qemu-system-x86_64 -nographic -vga none -m 64 \
171
+ -kernel /tmp/libc-test.img 2>&1 | tee /tmp/out &
172
+ sleep 5
173
+ grep " ^PASSED .* tests" /tmp/out
174
+ rumprun-bake hw_virtio /tmp/libc-test.img $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
153
175
qemu-system-x86_64 -nographic -vga none -m 64 \
154
176
-kernel /tmp/libc-test.img 2>&1 | tee /tmp/out &
155
177
sleep 5
156
178
grep " ^PASSED .* tests" /tmp/out
157
179
;;
158
180
159
181
* )
160
- $CARGO_TARGET_DIR /$TARGET /debug/libc-test
182
+ $CARGO_TARGET_DIR /$TARGET /debug/main-*
183
+ $CARGO_TARGET_DIR /$TARGET /debug/linux_fcntl-*
161
184
;;
162
185
esac
0 commit comments