Mercurial > hg > aboriginal
annotate sources/more/timeout.sh @ 1110:716ad74e0598
Make smoketest.sh more efficient, no need to create hdb.img or use run-from-build.sh.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sun, 13 Jun 2010 02:47:49 -0500 |
parents | d62c5c8734b2 |
children |
rev | line source |
---|---|
843
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
1 #!/bin/bash |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
2 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
3 # Run a command line with a hang timeout, which kills the child process if it |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
4 # doesn't produce a new line of output for $1 seconds. |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
5 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
6 # This script has to be a separate process (rather than just a shell function) |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
7 # so killing it doesn't kill the parent process. |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
8 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
9 source sources/functions.sh |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
10 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
11 if [ $# -lt 1 ] |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
12 then |
1043
d62c5c8734b2
Reduce native-build.sh reliance on run-from-build.sh.
Rob Landley <rob@landley.net>
parents:
843
diff
changeset
|
13 echo "Usage: timeout.sh SECONDS COMMANDS..." >&2 |
843
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
14 exit 1 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
15 fi |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
16 |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
17 trap "killtree $$" EXIT |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
18 TIMEOUT="$1" |
2ca7ea5d3ec1
New native-static-build.sh to compile static dropbear, strace, and busybox inside the emulator and export 'em out via ftp.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
19 shift |
1110
716ad74e0598
Make smoketest.sh more efficient, no need to create hdb.img or use run-from-build.sh.
Rob Landley <rob@landley.net>
parents:
1043
diff
changeset
|
20 ( eval "$@" ) | tee >(while read -t "$TIMEOUT" -n 32 i; do true; done; sleep 1; kill -TERM $$ 2>/dev/null ) |