#
# Makefile for Calendar Tool formal specification.
#
MODULES =	caldb \
		schedule \
		view \
		admin \
		options \
		file \
		edit

FILES =		caldb/*.java \
		schedule/*.java \
		view/*.java \
		admin/*.java \
		options/*.java \
		file/*.java \
		edit/*.java


OPENJML = /home/gfisher/classes/308/bin/openjml

JML = \
    java -Xbootclasspath/p:$(OPENJML)/openjmlboot.jar -jar \
	$(OPENJML)/openjml.jar -noPurityCheck

JMLDOC = $(OPENJML)/org/jmlspecs/openjml/jmldoc

all:		compile jml doc

compile:	$(FILES)
		javac $(FILES) ; rm -rf *.class */*.class

jml:		$(FILES)
		$(JML) $(FILES) ; rm -rf *.class */*.class

doc:		compile $(MODULES)
		javac $(FILES)
		javadoc $(MODULES) -d .javadoc -private -overview .javadoc/overview.html -windowtitle "Milestone 6 Calendar Tool Abstract Model" -doctitle "Milestone 6 Calendar Tool Abstract Model"
		rm -rf *.class */*.class

jmldoc:		$(FILES)
		$(JMLDOC) $(FILES) ; rm -rf *.class

clean:
		rm -rf *.class */*.class .java/*