CC       = g++
CFLAGS   = -O -Wall -c

all:	main1 main2 main3

main1:	main1.o
	$(CC) -o main1 main1.o

main2:	main2.o
	$(CC) -o main2 main2.o

main3:	main3.o Student_info.o grade.o median.o
	$(CC) -o main3 main3.o Student_info.o grade.o median.o

main1.o.:	main1.cc
	$(CC) $(CFLAGS) main3.cc

main2.o.:	main2.cc
	$(CC) $(CFLAGS) main2.cc

main3.o: 	main3.cc grade.h median.h Student_info.h
	$(CC) $(CFLAGS) main3.cc

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

grade.o:	grade.cc grade.h median.h Student_info.h
	$(CC) $(CFLAGS) grade.cc


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

test:		all
	./main1 <../data/single_grade
	./main2 <../data/single_grade
	./main2 <../data/grades
	./main3 <../data/grades

veryclean:
	rm -f *.o *.exe core core.* main1 main2 main3
