# Test-suite makefile for sst PYTHON=python TAPFILTER=cat ifeq (,$(command -v tapview)) TAPFILTER=tapview else ifeq (,$(command -v tappy)) TAPFILTER=tappy endif endif all: @echo "With Python 2:" @$(MAKE) -e PYTHON=python2 regress | $(TAPFILTER) @echo "With Python 3:" @$(MAKE) -e PYTHON=python3 regress | $(TAPFILTER) @echo "No diff output is good news." .SUFFIXES: .log .chk .log.chk: ../sst.py -r $< >$@ 2>&1 TESTLOADS := $(shell ls *.log | sed '/.log/s///') buildregress: @for test in $(TESTLOADS); do \ if [ ! -f $${test}.tst ] ; \ then \ echo "Remaking $${test}.chk"; \ rm -f $${test}.chk && ../sst.py -r $${test}.log >$${test}.chk 2>&1; \ fi \ done regress: echo "1..$$(ls *.log | wc -l)" @for test in $(TESTLOADS); \ do \ if [ ! -f $${test}.tst ] ; \ then \ legend=$$(sed -n -e '/# Test/s//Test/p' <$${test}.log); \ ../sst.py -r "$${test}.log" | ./tapdiffer "$${legend}" "$${test}.chk"; \ fi \ done @rm -f /tmp/regress