latex=xelatex
pdflatex=xelatex
bibtex=bibtex 

graph_pngs= graphs/valid_graph.png \
			graphs/clear_vop_01.png \
			graphs/clear_vop_02.png \
			graphs/clear_vop_03.png \
			graphs/clear_vop_04.png \
			graphs/clear_vop_05.png \
			graphs/clear_vop_06.png

example_graphpngs= example_graphs/graph_apply_CZ.png \
				   example_graphs/graph_two_qbit_CZ_after.png \
				   example_graphs/graph_two_qbit_CZ_before.png \
				   example_graphs/graph_update_VOP.png\
				   example_graphs/graph_EPR_state.png\
				   example_graphs/graph_clear_VOPs_CZ_after.png\
				   example_graphs/graph_clear_VOPs_CZ_before.png\
				   example_graphs/graph_clear_VOPs_CZ_cleared.png


all: main_long.pdf main.pdf

main_long.pdf: main_long.tex $(graph_pngs)
	$(latex) main_long
	#$(bibtex) main_long
	$(latex) main_long
	$(pdflatex) main_long

main.pdf: main.tex $(graph_pngs) $(example_graphpngs)
	$(latex) main
	#$(bibtex) main
	$(latex) main
	$(pdflatex) main

graphs/%.png: graphs/%.dot
	dot $< -Tpng -o $@
example_graphs/%.png:example_graphs/%.py
	python3 $< > tmp.dot
	dot -Tpng tmp.dot -o $@
	rm tmp.dot
	
clean:
	-rm main_long.aux
	-rm main_long.blg
	-rm main_long.dvi
	-rm main_long.log
	-rm main_long.out
	-rm main_long.pdf
	-rm main_long.toc
	-rm main_long.bbl
	-rm $(graph_pngs)
	-rm $(example_graphpngs)
	-rm main.aux
	-rm main.blg
	-rm main.dvi
	-rm main.log
	-rm main.out
	-rm main.pdf
	-rm main.toc
	-rm main.bbl
	-(cd example_graphs && make clean)