xref: /rust-libc-0.2.174/ci/test-runner-linux (revision 18181ec5)
1#!/bin/sh
2
3set -eux
4
5arch="$1"
6prog="$2"
7
8cd /qemu/init
9echo "#!/bin/sh\n/prog --color=never" > run_prog.sh
10chmod +x run_prog.sh
11cp -f $2 prog
12find . | cpio --create --format='newc' --quiet | gzip > ../initrd.gz
13cd ..
14
15timeout 30s qemu-system-$arch \
16    -m 1024 \
17    -nographic \
18    -kernel kernel \
19    -initrd initrd.gz \
20    -append init=/run_prog.sh > output || true
21
22# remove kernel messages
23tr -d '\r' < output | grep -Ev '^\['
24
25grep -E "(PASSED)|(test result: ok)" output > /dev/null
26