blob: 81d9f346d08736ef2a5143dae8e845e4a46fdfc8 [file] [log] [blame]
Rob Landley8b479b42007-12-16 17:55:34 -06001#!/bin/bash
2
3[ -z "$TOPDIR" ] && TOPDIR="$(pwd)"
Rob Landley8b479b42007-12-16 17:55:34 -06004
Rob Landley387edf52014-09-20 13:09:14 -05005trap 'kill $(jobs -p) 2>/dev/null; exit 1' INT
6
7rm -rf generated/testdir
8mkdir -p generated/testdir/testdir
Rob Landley8b479b42007-12-16 17:55:34 -06009
Rob Landleye156d442008-05-04 19:44:39 -050010if [ -z "$TEST_HOST" ]
Rob Landley8b479b42007-12-16 17:55:34 -060011then
Rob Landley26f52eb2013-10-15 00:57:39 -050012 if [ $# -ne 0 ]
13 then
Rob Landley387edf52014-09-20 13:09:14 -050014 PREFIX=generated/testdir/ scripts/single.sh "$@" || exit 1
Rob Landley26f52eb2013-10-15 00:57:39 -050015 else
Rob Landley387edf52014-09-20 13:09:14 -050016 make install_flat PREFIX=generated/testdir || exit 1
Rob Landley26f52eb2013-10-15 00:57:39 -050017 fi
Rob Landley8b479b42007-12-16 17:55:34 -060018fi
19
Rob Landley387edf52014-09-20 13:09:14 -050020cd generated/testdir
Rob Landley4a855d62014-07-03 22:09:11 -050021PATH="$PWD:$PATH"
22cd testdir
Rob Landley8b479b42007-12-16 17:55:34 -060023
Rob Landley387edf52014-09-20 13:09:14 -050024. "$TOPDIR"/scripts/runtest.sh
Rob Landley37256ff2008-06-22 00:57:15 -050025[ -f "$TOPDIR/generated/config.h" ] && export OPTIONFLAGS=:$(echo $(sed -nr 's/^#define CFG_(.*) 1/\1/p' "$TOPDIR/generated/config.h") | sed 's/ /:/g')
Rob Landley8b479b42007-12-16 17:55:34 -060026
27if [ $# -ne 0 ]
28then
29 for i in "$@"
30 do
Rob Landley387edf52014-09-20 13:09:14 -050031 . "$TOPDIR"/tests/$i.test
Rob Landley8b479b42007-12-16 17:55:34 -060032 done
33else
Rob Landley387edf52014-09-20 13:09:14 -050034 for i in "$TOPDIR"/tests/*.test
Rob Landley8b479b42007-12-16 17:55:34 -060035 do
Rob Landleyc5648342008-05-04 16:03:10 -050036 CMDNAME="$(echo "$i" | sed 's@.*/\(.*\)\.test@\1@')"
Rob Landley4a855d62014-07-03 22:09:11 -050037 if [ -h ../$CMDNAME ] || [ ! -z "$TEST_HOST" ]
Rob Landleyc5648342008-05-04 16:03:10 -050038 then
Rob Landley4a855d62014-07-03 22:09:11 -050039 cd .. && rm -rf testdir && mkdir testdir && cd testdir || exit 1
Rob Landleyc5648342008-05-04 16:03:10 -050040 . $i
41 else
42 echo "$CMDNAME disabled"
43 fi
Rob Landley8b479b42007-12-16 17:55:34 -060044 done
45fi