#########################################################################
#									#
# 		Makefile for Isabelle -- using Poly/ML			#
#									#
#########################################################################

BANNER = Classical Higher-Order Logic

#To make the system, cd to this directory and type  
#	make -f Makefile 
#To make the system and test it on standard examples, type  
#	make -f Makefile test

#Makes pure Isabelle (Pure) if this file is ABSENT -- but not 
#if it is out of date, since this Makefile does not know its dependencies!

#Directory of Poly/ML databases
#WARNING: Poly/ML databases may fail if copied or moved!
DESTDIR=/homes/lcp/dbases
DRIVER = poly    #Uses the standard DBASE to make root version

HOL_ML_FILES =  ROOT.ML syntax.ML .rules.ML lemmas.ML prover.ML \
	class.ML simp.ML types.ML tarski.ML wf.ML arith.ML list.ML rew.ML

$(DESTDIR)/HOL:   $(DESTDIR)/Pure  $(HOL_ML_FILES) 
	echo 'make_database("HOL", "$(DESTDIR)/HOL");  quit();'\
		 | $(DRIVER) $(DESTDIR)/Pure 
	echo 'PolyML.use "ROOT";'  |  $(DRIVER) $(DESTDIR)/HOL 

$(DESTDIR)/Pure:
	cd ..;  $(MAKE) DRIVER=$(DRIVER) DESTDIR=$(DESTDIR) 

test:   ex/ROOT.ML  $(DESTDIR)/HOL
	echo 'PolyML.use "ex/ROOT";'   |  $(DRIVER) $(DESTDIR)/HOL 

#Note that .rules.ML should not be edited: it is derived from ruleshell.ML
.rules.ML: ruleshell.ML
	../make-rulenames .

.PRECIOUS:   $(DESTDIR)/Pure  $(DESTDIR)/HOL 
.SUFFIXES:
