#!/bin/sh set -e dirs=src/kernel main() { failed=0 for dir in $dirs; do local files=`find $dir -name "*.tt"` for f in $files; do cp $f $f.c tests=`sed -n -e 's/^\s*TEST(\([^,]*,\).*$/ttt_\1/p' $f` echo "tt_test tt_tests[] = {${tests}0};" >> $f.c outfile=`mktemp` cc $f.c -o $outfile -ggdb -I $dir/include 2>&1 | sed -e 's/\.tt\.c:/\.tt:/' $outfile $f || failed=1 rm $f.c $outfile done done exit $failed } main "$@"