all: main.c oware.c oware.h game.c game.h input.c input.h display.h display.c computer.c computer.h daemon.cc
	gcc -g -c oware.c
	gcc -g -c input.c
	gcc -g -c computer.c
	gcc -g -c display.c
	gcc -g -c game.c
	gcc -g -o oware main.c oware.o game.o input.o display.o computer.o
	g++ -g -o owared daemon.cc oware.o game.o input.o display.o computer.o

optimized: main.c oware.c oware.h game.c game.h input.c input.h display.h display.c computer.c computer.h 
	gcc -O3 -DNDEBUG -c oware.c
	gcc -O3 -DNDEBUG -c input.c
	gcc -O3 -DNDEBUG -c computer.c
	gcc -O3 -DNDEBUG -c display.c
	gcc -O3 -DNDEBUG -c game.c
	gcc -O3 -DNDEBUG -o oware main.c oware.o game.o input.o display.o computer.o 
	g++ -O3 -DNDEBUG -o owared daemon.cc oware.o game.o input.o display.o computer.o

clean:
	rm -rf oware *.o

default: all
