# on a Mac:
FLAGS = -I/opt/local/include -L/opt/local/lib
CC = gcc

all: spec iter bad

spec: factorial_spec
	./factorial_spec 10 > specout

iter: factorial_iter
	./factorial_iter 10 > iterout

bad: factorial_bad
	./factorial_bad 10 > badout

factorial_spec: factorial_spec.c Makefile
	$(CC) -o factorial_spec $(FLAGS) factorial_spec.c

factorial_iter: factorial_iter.c Makefile
	$(CC) -o factorial_iter $(FLAGS) factorial_iter.c

factorial_bad: factorial_bad.c Makefile
	$(CC) -o factorial_bad $(FLAGS) factorial_bad.c

clean:
	rm -f *~ factorial_spec factorial_iter factorial_bad specout iterout badout
