#########################################################################
#									#
# 		Makefile for Isabelle	(Pure)				#
#									#
#########################################################################

# 'make BASE' makes the common part, the basis of all other systems

# This Makefile is for the Poly/ML compiler (v1.2 or later).  
# It should be easy to adapt to other implementations of Standard ML.

# Poly likes lots of swap space.  Type '/etc/pstat -s' to see what there is.

# WARNING: Isabelle databases are created using make_database.
# They fail if copied or moved!

# make_database modifies the root database, making it appear up-to-date!

# the variables DBASE and DRIVER specify which version of Poly/ML to use.
DBASE = ../poly_dbase
DRIVER = poly

ML_FILES =  	ROOT.ML library.ML term.ML symtab.ML\
		queue.ML pretty.ML syntax.ML sign.ML sequence.ML\
		envir.ML unify.ML logic.ML thm.ML\
		stringtree.ML tactic.ML conv.ML goals.ML simp.ML 

#Note that 'ml();' produces a harmless error message if the database
#	is already set up for ML.
#
BASE:   $(ML_FILES)  $(DBASE)
	echo 'ml();  PolyML.make_database("pure", "BASE"); PolyML.quit();' | $(DRIVER) $(DBASE)
	echo 'PolyML.use "ROOT";' | $(DRIVER) BASE 

.PRECIOUS:  BASE  
