CFLAGS = `gsl-config --cflags`
CFLAGS += -Wall -std=gnu99
LDLIBS = `gsl-config --libs`

PLOTS = plot.png plot.jpeg plot.svg

all: $(PLOTS) plot.txt

$(PLOTS): plot.gpi data
	cat $< | sed 's/TERM/$(subst .,,$(suffix $@))/; s/OUT/$@/' | pyxplot

data: main Makefile
	echo '# kummer datafile' >$@
	./$< -1.9 0.6 0 7 0.1 >> $@
	echo >> $@
	./$< -2.1 0.5 0 7 0.1 >> $@
	echo >> $@
	./$< -2.3 0.4 0 7 0.1 >> $@
	echo >> $@
	./$< -2.5 0.3 0 7 0.1 >> $@
	echo >> $@
	./$< -2.7 0.2 0 7 0.1 >> $@

main: main.o kummer.o

plot.gpi: Makefile
	echo 'set term TERM' > $@
	echo 'set out "OUT"' >> $@
	echo 'set key bottom' >> $@
	echo 'set grid' >> $@
	echo 'set tics out' >> $@
	echo 'set xlabel "$$x$$"' >> $@
	echo 'set ylabel "$$y$$"' >> $@
	echo 'set title "Kummer function $$M(a,b,x)$$ with different parameters"' >> $@
	echo 'plot\' >>$@
	echo ' "data" using 1:2 with lines title "kummer"\' >>$@
	echo ',"data" using 1:3 with lines linetype 2 title "\verb|gsl_sf_1F1|"\' >> $@

clean:
	$(RM) main *.o data $(PLOTS) log plot.gpi

plot.txt: plot.gpi data Makefile
	cat $< | sed 's/TERM/dumb size 80,40/; s/OUT/$@/' | gnuplot
