all: 
	rm -f *.fls
	rm -f *.log
	rm -f *.bbl

# https://stackoverflow.com/questions/1789594/how-do-i-write-the-cd-command-in-a-makefile
	cd basics/SMT; ./make_pix.sh
	cd proofs/XOR_SAT; ./make_pix.sh
	cd verif/int_over; ./make_SVGs.sh
	cd equations/factor_SAT; ./make_SVGs.sh
	cd synth/pgm/mult; ./make_pix.sh
	cd puzzles/rubik2/SAT; ./make_pix.sh
	cd regexp/fun/files/libfsm; ./make_pix.sh
	cd synth/DFA; ./make_DFAs.sh

# -shell-escape is required to run inkscape. which is required to process SVGs
# https://tex.stackexchange.com/questions/88740/what-does-shell-escape-do
	xelatex -shell-escape SAT_SMT_by_example
	xelatex -shell-escape SAT_SMT_by_example
	pdftotext SAT_SMT_by_example.pdf

clean:
	rm -f SAT_SMT_by_example.txt
	rm -f synth/DFA/DIVISOR*.png
	rm -f puzzles/sudoku/SAT/1.cnf
	rm -f equations/minesweeper/2_SAT/tmp.cnf
	rm -f MaxSxT/clique_openwbo/1.wcnf
	rm -f MaxSxT/pack_students/1.wcnf
	rm -f SGP/SAT/1.cnf
	rm -f SGP/SAT/results.txt
	rm -f equations/factor_SAT/1.cnf
	rm -f equations/minesweeper/5_SAT_SN/1.cnf
	rm -f gray_code/MaxSAT/1.wcnf
	rm -f libs/1.cnf
	rm -f other/tiling/SAT/1.cnf
	rm -f other/tiling/SAT/results.txt
	rm -f other/tiling/kangaroo/1.cnf
	rm -f proofs/XOR_SAT/1.cnf
	rm -f puzzles/8queens/1.cnf
	rm -f puzzles/numberlink/MaxSAT/1.wcnf
	rm -f puzzles/rubik2/SAT/1.cnf
	rm -f CA/GoL/1.cnf
	rm -rf svg-inkscape
	rm -f basics/SMT/*.png
	rm -f basics/SMT/*.svg
	rm -f proofs/XOR_SAT/*.svg
	rm -f proofs/XOR_SAT/*.png
	rm -f verif/int_over/*.svg
	rm -f verif/int_over/*.png
	rm -f equations/factor_SAT/adder1.svg
	rm -f equations/factor_SAT/adder2.svg
	rm -f synth/pgm/mult/*.svg
	rm -f synth/pgm/mult/*.png
	rm -f puzzles/rubik2/SAT/*.svg
	rm -f regexp/fun/files/libfsm/*.svg
	rm -f regexp/fun/files/libfsm/*.png
	rm -f *.aux
	rm -f *.fls
	rm -f *.swp
	rm -f *.pdf
	rm -f *.out
	rm -f *.toc
	rm -f *.stackdump
	rm -f *.bbl
	rm -f *.blg
	rm -f *.fdb_latexmk
	rm -f *.idx
	rm -f *.ilg
	rm -f *.ind
	rm -f *.html
	rm -f *.tmp
	rm -f *-2k
	rm -f *.4ct
	rm -f *.4tc
	rm -f *.dvi
	rm -f *.glg
	rm -f *.glo
	rm -f *.gls
	rm -f *.idv
	rm -f *.ist
	rm -f *.xref
	rm -f *.torrent
	rm -f *~
	rm -f *.log
	rm -f *.lyx
	rm -f *.ni
	rm -f *.odt
	rm -f *.rtf
	rm -f *.bcf
	rm -f *.xml
