# -*- makefile -*- mode for emacs
# @(#)$Id: Makefile,v 1.2 1998/06/05 21:58:05 leavens Exp leavens $
# Makefile for Galsgow Haskell

HC      = ghc
HC_OPTS = -O $(EXTRA_HC_OPTS)

SRCS = *.hs *.lhs
OBJS = 

.SUFFIXES : .o .hi .lhs .hc .hs

all: depend

depend :
	mkdependHS -- $(HC_OPTS) -s .hi -- $(SRCS)


start_interfaces:
	for i in 1 2 3 4 5 6 7 8 9 10 11 ; \
	do \
	  for f in `echo *.lhs *.hs |sed -e 's/\.hs/\.o/g;s/\.lhs/\.o/g'` ; \
	  do \
		make $$f || echo cannot make $$f yet ; \
	  done ; \
	done

cool_pgm : $(OBJS)
	rm $@
	$(HC) -o $@ $(HC_OPTS) $(OBJS)

# Standard suffix rules
.o.hi:
	@:

.lhs.o:
	$(HC) -c $(HC_OPTS) $<

.hs.o:
	$(HC) -c $(HC_OPTS) $<

clean:
	rm -f *.o

cleanall: clean
	rm -f *.hi


# DO NOT DELETE: Beginning of Haskell dependencies
CoreLangProgs.o : CoreLangProgs.hs
CoreLangProgs.o : ./Domains.hi
CoreLangTest.o : CoreLangTest.hs
CoreLangTest.o : ./CoreLangParser.hi
CoreLangTest.o : ./CoreTypeHelpers.hi
CoreLangTest.o : ./CoreTyping.hi
CoreLangTest.o : ./CoreSemantics.hi
CoreLangTest.o : ./Domains.hi
CoreLangTest.o : ./CoreLangProgs.hi
CoreLangTest.o : ./Testing.hi
CoreLittleStepTest.o : CoreLittleStepTest.hs
CoreLittleStepTest.o : ./CoreLangParser.hi
CoreLittleStepTest.o : ./CoreTypeHelpers.hi
CoreLittleStepTest.o : ./CoreTyping.hi
CoreLittleStepTest.o : ./CoreLittleStep.hi
CoreLittleStepTest.o : ./Domains.hi
CoreLittleStepTest.o : ./CoreLangProgs.hi
CoreLittleStepTest.o : ./Testing.hi
CoreMonadTest.o : CoreMonadTest.hs
CoreMonadTest.o : ./CoreLangParser.hi
CoreMonadTest.o : ./CoreTypeHelpers.hi
CoreMonadTest.o : ./CoreTyping.hi
CoreMonadTest.o : ./MonadStore.hi
CoreMonadTest.o : ./CoreMonadSemantics.hi
CoreMonadTest.o : ./Domains.hi
CoreMonadTest.o : ./CoreLangProgs.hi
CoreMonadTest.o : ./Testing.hi
CoreTypeTest.o : CoreTypeTest.hs
CoreTypeTest.o : ./CoreLangParser.hi
CoreTypeTest.o : ./CoreTypeHelpers.hi
CoreTypeTest.o : ./CoreTyping.hi
CoreTypeTest.o : ./CoreLangProgs.hi
CoreTypeTest.o : ./Testing.hi
CoreUntypedTest.o : CoreUntypedTest.hs
CoreUntypedTest.o : ./CoreLangParser.hi
CoreUntypedTest.o : ./CoreTypeHelpers.hi
CoreUntypedTest.o : ./CoreTyping.hi
CoreUntypedTest.o : ./CoreUntypedSemantics.hi
CoreUntypedTest.o : ./Domains.hi
CoreUntypedTest.o : ./CoreLangProgs.hi
CoreUntypedTest.o : ./Testing.hi
Environments.o : Environments.hs
Environments.o : ./FinFun.hi
FinFun.o : FinFun.hs
ParserFunctions.o : ParserFunctions.hs
Pretty.o : Pretty.hs
Problem_2_2_a.o : Problem_2_2_a.hs
Problem_2_2_a.o : ./CoreTypeHelpers.hi
Problem_2_2_a.o : ./Problem_2_2_a_Typing.hi
Problem_2_2_a.o : ./Problem_2_2_a_Parser.hi
Problem_2_2_a_Progs.o : Problem_2_2_a_Progs.hs
Problem_2_2_a_Progs.o : ./Domains.hi
Problem_2_2_a_Typing_Test.o : Problem_2_2_a_Typing_Test.hs
Problem_2_2_a_Typing_Test.o : ./Problem_2_2_a_Parser.hi
Problem_2_2_a_Typing_Test.o : ./CoreTypeHelpers.hi
Problem_2_2_a_Typing_Test.o : ./Problem_2_2_a_Typing.hi
Problem_2_2_a_Typing_Test.o : ./Problem_2_2_a_Progs.hi
Problem_2_2_a_Typing_Test.o : ./Testing.hi
Tree.o : Tree.hs
WhileNProgs.o : WhileNProgs.hs
WhileNProgs.o : ./WhileNParser.hi
WhileNProgs.o : ./Stores.hi
WhileNProgs.o : ./WhileNDomains.hi
WhileNTest.o : WhileNTest.hs
WhileNTest.o : ./WhileNParser.hi
WhileNTest.o : ./WhileNUnparser.hi
WhileNTest.o : ./TypeHelpers.hi
WhileNTest.o : ./WhileNTyping.hi
WhileNTest.o : ./WhileNSemantics.hi
WhileNTest.o : ./WhileNDomains.hi
WhileNTest.o : ./WhileNProgs.hi
WhileNTest.o : ./Testing.hi
WhileNTypeTest.o : WhileNTypeTest.hs
WhileNTypeTest.o : ./WhileNParser.hi
WhileNTypeTest.o : ./WhileNUnparser.hi
WhileNTypeTest.o : ./TypeHelpers.hi
WhileNTypeTest.o : ./WhileNTyping.hi
WhileNTypeTest.o : ./WhileNProgs.hi
WhileNTypeTest.o : ./Testing.hi
CoreDomains.o : CoreDomains.lhs
CoreDomains.o : ./CoreLangParser.hi
CoreLangParser.o : CoreLangParser.lhs
CoreLangParser.o : ./ParserFunctions.hi
CoreLangParser.o : ./LexerTools.hi
CoreLangUnparser.o : CoreLangUnparser.lhs
CoreLangUnparser.o : ./CoreLangParser.hi
CoreLittleStep.o : CoreLittleStep.lhs
CoreLittleStep.o : ./CoreLangParser.hi
CoreLittleStep.o : ./CoreTyping.hi
CoreLittleStep.o : ./Domains.hi
CoreMonadSemantics.o : CoreMonadSemantics.lhs
CoreMonadSemantics.o : ./CoreLangParser.hi
CoreMonadSemantics.o : ./CoreTyping.hi
CoreMonadSemantics.o : ./Domains.hi
CoreMonadSemantics.o : ./MonadStore.hi
CoreSemantics.o : CoreSemantics.lhs
CoreSemantics.o : ./CoreLangParser.hi
CoreSemantics.o : ./CoreTyping.hi
CoreSemantics.o : ./Domains.hi
CoreTypeAttributes.o : CoreTypeAttributes.lhs
CoreTypeAttributes.o : ./Subst.hi
CoreTypeHelpers.o : CoreTypeHelpers.lhs
CoreTypeHelpers.o : ./Tree.hi
CoreTypeHelpers.o : ./CoreTypeAttributes.hi
CoreTypeHelpers.o : ./Subst.hi
CoreTyping.o : CoreTyping.lhs
CoreTyping.o : ./CoreLangParser.hi
CoreTyping.o : ./CoreLangUnparser.hi
CoreTyping.o : ./CoreTypeAttributes.hi
CoreTyping.o : ./CoreTypeHelpers.hi
CoreTyping.o : ./Subst.hi
CoreUntypedSemantics.o : CoreUntypedSemantics.lhs
CoreUntypedSemantics.o : ./CoreLangParser.hi
CoreUntypedSemantics.o : ./Domains.hi
CoreVerifParser.o : CoreVerifParser.lhs
CoreVerifParser.o : ./ParserFunctions.hi
CoreVerifParser.o : ./LexerTools.hi
CoreVerifParser.o : ./CoreLangParser.hi
Domains.o : Domains.lhs
Domains.o : ./Stores.hi
LexerTools.o : LexerTools.lhs
LexerTools.o : ./ParserFunctions.hi
MonadEnvironment.o : MonadEnvironment.lhs
MonadEnvironment.o : ./Domains.hi
MonadEnvironment.o : ./Environments.hi
MonadIdentity.o : MonadIdentity.lhs
MonadStore.o : MonadStore.lhs
MonadStore.o : ./Domains.hi
Problem_2_2_a_Parser.o : Problem_2_2_a_Parser.lhs
Problem_2_2_a_Parser.o : ./ParserFunctions.hi
Problem_2_2_a_Parser.o : ./LexerTools.hi
Problem_2_2_a_Parser.o : ./CoreTypeAttributes.hi
Problem_2_2_a_Typing.o : Problem_2_2_a_Typing.lhs
Problem_2_2_a_Typing.o : ./Problem_2_2_a_Parser.hi
Problem_2_2_a_Typing.o : ./Problem_2_2_a_Unparser.hi
Problem_2_2_a_Typing.o : ./CoreTypeAttributes.hi
Problem_2_2_a_Typing.o : ./CoreTypeHelpers.hi
Problem_2_2_a_Typing.o : ./Subst.hi
Problem_2_2_a_Unparser.o : Problem_2_2_a_Unparser.lhs
Problem_2_2_a_Unparser.o : ./Problem_2_2_a_Parser.hi
Stores.o : Stores.lhs
Subst.o : Subst.lhs
Testing.o : Testing.lhs
TypeAttributes.o : TypeAttributes.lhs
TypeAttributes.o : ./FinFun.hi
TypeAttributes.o : ./Subst.hi
TypeHelpers.o : TypeHelpers.lhs
TypeHelpers.o : ./Tree.hi
TypeHelpers.o : ./Environments.hi
TypeHelpers.o : ./TypeAttributes.hi
TypeHelpers.o : ./Subst.hi
WhileNDomains.o : WhileNDomains.lhs
WhileNDomains.o : ./Domains.hi
WhileNDomains.o : ./Environments.hi
WhileNDomains.o : ./WhileNParser.hi
WhileNParser.o : WhileNParser.lhs
WhileNParser.o : ./ParserFunctions.hi
WhileNParser.o : ./LexerTools.hi
WhileNSemantics.o : WhileNSemantics.lhs
WhileNSemantics.o : ./WhileNParser.hi
WhileNSemantics.o : ./WhileNDomains.hi
WhileNTyping.o : WhileNTyping.lhs
WhileNTyping.o : ./WhileNParser.hi
WhileNTyping.o : ./WhileNUnparser.hi
WhileNTyping.o : ./Environments.hi
WhileNTyping.o : ./TypeAttributes.hi
WhileNTyping.o : ./TypeHelpers.hi
WhileNTyping.o : ./Subst.hi
WhileNUnparser.o : WhileNUnparser.lhs
WhileNUnparser.o : ./WhileNParser.hi
# DO NOT DELETE: End of Haskell dependencies
