intermediate = maple5.pl
expand_bias = 0

all: test

test: test0.ok test1.ok test2.ok test3.ok test4.ok test5.ok test6.ok test7.ok test8.ok test9.ok

test0.ok: maple.pl
	( perl $< | diff - $< ) && touch $@

test1.ok: maple.pl test0.ok
	( perl $< | perl | diff - $< ) && touch $@

test2.ok: syrup.rb
	( ruby $< | diff - $< ) && touch $@

test3.ok: syrup.rb test2.ok
	( ruby $< | ruby | diff - $< ) && touch $@

test4.ok: maple.pl syrup.rb
	( perl syrup.rb | diff -q maple.pl - ) && touch $@

test5.ok: maple.pl syrup.rb
	( perl syrup.rb | perl | diff -q maple.pl - ) && touch $@

test6.ok: maple.pl syrup.rb
	( perl syrup.rb | ruby | diff -q syrup.rb - ) && touch $@

test7.ok: maple.pl syrup.rb
	( ruby maple.pl | diff -q syrup.rb - ) && touch $@

test8.ok: maple.pl syrup.rb
	( ruby maple.pl | ruby | diff -q syrup.rb - ) && touch $@

test9.ok: maple.pl syrup.rb
	( ruby maple.pl | perl | diff -q maple.pl - ) && touch $@

maple.pl: $(intermediate)
	perl $< > $@

syrup.rb: $(intermediate)
	ruby $< > $@

$(intermediate): merge.pl maple4.pl templates/maple.txt.keep templates/syrup.txt.keep Makefile
	perl merge.pl maple4.pl $(expand_bias) templates/maple.txt.keep templates/syrup.txt.keep > $@

clean:
	-rm -f $(intermediate)
	-rm -f test0.ok test1.ok test2.ok test3.ok test4.ok test5.ok test6.ok test7.ok test8.ok test9.ok

backup:
	-rm -f backup.tar.gz
	tar czf backup.tar.gz *.pl *.rb Makefile
