OBJS = neural_net.o linear_neuron.o neuron.o nn_tester.cc
CC = g++
DEBUG = -g
CFLAGS = -Wall -c -std=c++11 $(DEBUG)
LFLAGS = -Wall -std=c++11 $(DEBUG)

ann : $(OBJS)
	$(CC) $(LFLAGS) $(OBJS) -o ann
	
nn_tester.o : nn_tester.cc neural_net.h
	$(CC) $(LFLAGS) nn_tester.cc
	
neural_net.o : neural_net.h neural_net.cc neuron.h linear_neuron.h
	$(CC) $(CFLAGS) neural_net.cc

neuron.o : neuron.h neuron.cc
	$(CC) $(CFLAGS) neuron.cc

linear_neuron.o : linear_neuron.h linear_neuron.cc neuron.h
	$(CC) $(CFLAGS) linear_neuron.cc

clean:
	\rm *.o ann