## targets
default: Nominal2
images: 
all: Nominal2 paper pearl pearl-jv qpaper
## global settings
SRC = $(ISABELLE_HOME)/src
OUT = $(ISABELLE_OUTPUT)
LOG = $(OUT)/log
USEDIR = $(ISABELLE_TOOL) usedir -v true -t true ##-D generated
## Nominal2
Nominal2: $(LOG)/HOL-Nominal2.gz
$(LOG)/HOL-Nominal2.gz: Nominal/ROOT.ML Nominal/*.thy
	@cd Nominal; $(USEDIR) -b -d "" HOL Nominal
## Nominal2 Paper
paper: $(LOG)/HOL-Nominal2-Paper.gz
$(LOG)/HOL-Nominal2-Paper.gz: Paper/ROOT.ML Paper/document/root.* Paper/*.thy
	@$(USEDIR) -D generated Nominal Paper
	$(ISABELLE_TOOL) document -o pdf  Paper/generated
	@cp Paper/document.pdf paper.pdf
## Pearl Paper ITP
pearl: $(LOG)/HOL-Pearl.gz
$(LOG)/HOL-Pearl.gz: Pearl/ROOT.ML Pearl/document/root.* Pearl/*.thy
	@$(USEDIR) -D generated HOL Pearl
	$(ISABELLE_TOOL) document -o pdf Pearl/generated
	@cp Pearl/document.pdf pearl.pdf
## Pearl Journal Paper 
pearl-jv: $(LOG)/HOL-Pearl-jv.gz
$(LOG)/HOL-Pearl-jv.gz: Pearl-jv/ROOT.ML Pearl-jv/document/root.* Pearl-jv/*.thy
	@$(USEDIR) -D generated HOL Pearl-jv
	$(ISABELLE_TOOL) document -o pdf Pearl-jv/generated
	@cp Pearl-jv/document.pdf pearl-jv.pdf
## Quotient Paper 
qpaper: $(LOG)/HOL-QPaper.gz
$(LOG)/HOL-QPaper.gz: Quotient-Paper/ROOT.ML Quotient-Paper/document/root.* Quotient-Paper/*.thy
	@$(USEDIR) -D generated HOL Quotient-Paper
	$(ISABELLE_TOOL) document -o pdf Quotient-Paper/generated
	@cp Quotient-Paper/document.pdf qpaper.pdf
## clean
clean:
	@rm -f $(LOG)/HOL-Nominal2.gz $(LOG)/HOL-Pearl.gz