librempeg/tools/bisect-create
Alexander Strasser 3f22fcce3a tools/bisect-create: Support "bisect run"
Make it possible to use the run bisect sub command. As with all
other ffbisect commands, revisions that do not contain the needed
tools are skipped.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2012-07-24 01:24:23 +02:00

47 lines
1.1 KiB
Bash
Executable File

#!/bin/sh
set -e
if test "bisect-create" = "`basename $0`" ; then
echo tools/ffbisect created
git show master:tools/bisect-create > tools/ffbisect
chmod u+x tools/ffbisect
exit 1
fi
if ! git show master:tools/bisect-create | diff - tools/ffbisect > /dev/null ; then
echo updating tools/ffbisect script to HEAD.
git show master:tools/bisect-create > tools/ffbisect
chmod u+x tools/ffbisect
tools/ffbisect $*
exit 0
fi
case "$1" in
need)
case $2 in
ffmpeg|ffplay|ffprobe|ffserver)
echo $2.c >> tools/bisect.need
;;
esac
;;
start|reset)
echo . > tools/bisect.need
git bisect $*
;;
skip)
git bisect $*
;;
good|bad)
git bisect $*
until ls `cat tools/bisect.need` > /dev/null 2> /dev/null; do
git bisect skip || break
done
;;
run)
shift # remove "run" from arguments
git bisect run sh -c "ls \`cat tools/bisect.need\` > /dev/null 2> /dev/null || exit 125; \"\$@\"" sh "$@"
;;
esac