SHELL=/bin/sh
# Set the path and run the installation tests.
test: control instrument util tools system internal-rep 
	-@echo '==TESTS COMPLETE=='

SETTER=\
	PATH=.:`pwd`/..:$$PATH;GCTLIB=`pwd`/../;INDENT="==$$INDENT";\
	export PATH; export GCTLIB;export INDENT

FORCE:

control: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

instrument: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

internal-rep: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

system: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

tools: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

util: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

install: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

weak-mutation: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

known-bugs: FORCE
	@${SETTER}; $$GCTLIB/testdir/checktest $$GCTLIB/testdir
	-@if test -d $@; then \
	  ${SETTER}; cd $@; echo "$$INDENT" " $@/"; make $(TARGET); \
	fi

clean:
	@-echo "==CLEANING TESTS=="
	@-rm -f \#*\# *~ LOG WEAK-LOG INSTALL.LOG
	@-GCT_UNPORTABLE_OK=true; make "TARGET=clean"
	@-GCT_UNPORTABLE_OK=true; make "TARGET=clean" weak-mutation
	@-GCT_UNPORTABLE_OK=true; make "TARGET=clean" known-bugs
	@-GCT_UNPORTABLE_OK=true; make "TARGET=clean" install

