BASE_OUTPUTS=nodes vdistances pdistances
NS=10000
V_TO_PS=1 2 3 4 5 10 15 20 25 50 75 100 125

OUTPUTS:=$(foreach N,$(NS),$(foreach V_TO_P,$(V_TO_PS),$(foreach B,$(BASE_OUTPUTS),$(B)-$(N)-$(V_TO_P))))

PLOTFILES=$(patsubst %,%.gnuplot,$(OUTPUTS))
DATAFILES=$(patsubst %,%.dat,$(OUTPUTS))
PNGS=$(patsubst %,%.png,$(OUTPUTS))
THUMBS300=$(patsubst %,thumbnail300-%.png,$(OUTPUTS))
THUMBS100=$(patsubst %,thumbnail100-%.png,$(OUTPUTS))

THUMBS=$(THUMBS300) $(THUMBS100)

AGGREGATES=medians.png maximums.png

all: $(PNGS) $(THUMBS)

thumbnail300-%.png: %.png
	convert -geometry 300 $< $@

thumbnail100-%.png: %.png
	convert -geometry 100 $< $@

%.png: %.dat
	gnuplot $*.gnuplot

%.dat:
	python span-lengths.py $* > output-$*.txt

aggregate.dat: $(DATAFILES) aggregate.py
	python aggregate.py

$(AGGREGATES): aggregate.dat aggregate.gnuplot
	gnuplot aggregate.gnuplot

clean:
	rm -f $(DATAFILES) $(PLOTFILES)
	rm -f aggregate.dat
	rm -f *.pyc
	rm -f fit.log

veryclean: clean
	rm -f $(PNGS) $(THUMBS)
	rm -f output-*.txt
	rm -f $(AGGREGATES)

.PRECIOUS: $(DATAFILES) $(PLOTFILES)
