all: p2q1.pdf p2q1.out p2q2.out ec.out

clean:
	rm -f p2q1 p2q1.eps p2q2 ec *.o

p2q1.out: p2q1
	./p2q1 >p2q1.out

p2q1: p2q1.c matrixlib.o
	gcc -Wall --std=gnu99 -o p2q1 p2q1.c matrixlib.o -lm

p2q1.pdf: p2q1.eps
	epstopdf p2q1.eps

p2q1.eps: p2q1.plt
	gnuplot p2q1.plt

p2q2.out: p2q2
	./p2q2 >p2q2.out

p2q2: p2q2.c matrixlib.o
	gcc -Wall --std=gnu99 -o p2q2 p2q2.c matrixlib.o -lm

ec.out: ec
	./ec >ec.out

ec: ec.c matrixlib.o
	gcc -Wall --std=gnu99 -o ec ec.c matrixlib.o -lm

matrixlib.o: matrixlib.c matrixlib.h
	gcc -Wall --std=gnu99 -c matrixlib.c
