diff --git a/ghc/tests/programs/mk/boilerplate.mk b/ghc/tests/programs/mk/boilerplate.mk new file mode 100644 index 0000000000000000000000000000000000000000..f4ded2a80d5cff152de20d26b23d707d9ef734ff --- /dev/null +++ b/ghc/tests/programs/mk/boilerplate.mk @@ -0,0 +1,35 @@ +################################################################################# +# +# ghc/tests/programs/mk/boilerplate.mk +# +# Boilerplate Makefile for an fptools project +# +################################################################################# + +# Begin by slurping in the boilerplate from one level up, +# with standard TOP-mangling +# Remember, TOP is the top level of the innermost level +# ( FPTOOLS_TOP, which will be set while processing +# toplevel boilerplate, is the fptools top ) + +TEST_PROGRAMS_TOP := $(TOP) +TOP := $(TOP)/.. +include $(TOP)/mk/boilerplate.mk +TOP:=$(TEST_PROGRAMS_TOP) + + +# ----------------------------------------------------------------- +# Everything after this point +# augments or overrides previously set variables. +# (these files are optional, so `make' won't fret if it +# cannot get to them). +# ----------------------------------------------------------------- + + +# Define TEST_PROG. In ..../nofib/imaginary/exp3_8, PROG is exp3_8 by default. +# +TEST_PROG = $(notdir $(shell pwd))$(_way) + +# Eventually, have the binary purged +CLEAN_FILES += $(TEST_PROG) + diff --git a/ghc/tests/programs/mk/target.mk b/ghc/tests/programs/mk/target.mk new file mode 100644 index 0000000000000000000000000000000000000000..da6ab86f03594200800012bf433adf4869d6269b --- /dev/null +++ b/ghc/tests/programs/mk/target.mk @@ -0,0 +1,26 @@ +################################################################################# +# +# target.mk +# +# ghc/tests/programs standard target rules +# +################################################################################# + +# Link step +$(TEST_PROG) : $(OBJS) + $(HC) $(HC_FLAGS) $(OBJS) -o $(TEST_PROG) + +# Run test +runtest : $(TEST_PROG) + $(RUNTEST) ./$< \ + $(addprefix -i ,$(wildcard $(TEST_PROG).stdin)) \ + $(addprefix -o1 ,$(wildcard $(TEST_PROG).stdout)) \ + $(addprefix -o2 ,$(wildcard $(TEST_PROG).stderr)) \ + $(RUNTEST_OPTS) + +# Include standard boilerplate +# We do this at the end for cosmetic reasons: it means that the "normal-way" +# runtests will precede the "other-way" recursive invocations of make + +include $(FPTOOLS_TOP)/mk/target.mk +