CC = gcc
CFLAGS = -Wall -std=gnu99 -O
LDFLAGS = -lm
GRAPH = /usr/users/wwwifa/docs/subatom/nucltheo/bin/graph

files = pseudo_random_vector.o quasi_random_vector.o plainmc.o

all: out graphs

out: main
	./main > out.txt
	cat out.txt

main: $(files) main.o
	$(CC) $(CFLAGS) -o main main.o $(files) $(LDFLAGS)

clean:
	rm -f core* main $(files) out.txt *.dat *.png *.o *.out points main

graphs: $(files) points.o
	$(CC) $(CFLAGS) -o points points.o $(files) $(LDFLAGS)
	./points pseudo > pseudo_random_points.dat
	$(GRAPH) \
		--display-type png --line-mode 0 --symbol 1 \
		--top-label "Pseudo-random points" \
		pseudo_random_points.dat > pseudo_random_points.png
	$(GRAPH) \
		--display-type ps --line-mode 0 --symbol 1 \
		--top-label "Pseudo-random points" \
		pseudo_random_points.dat > pseudo_random_points.ps
	./points quasi > quasi_random_points.dat
	$(GRAPH) \
		--display-type png --line-mode 0 --symbol 1 \
		--top-label "Quasi-random points" \
		quasi_random_points.dat > quasi_random_points.png
	$(GRAPH) \
		--display-type ps --line-mode 0 --symbol 1 \
		--top-label "Quasi-random points" \
		quasi_random_points.dat > quasi_random_points.ps
