CC = gcc -Wall
SOURCES = PA04_Main.c BasicUtilities.c RoomUtilities.c CourseUtilities.c Console_IO_Utility.c File_Input_Utility.c File_Output_Utility.c
OBJECTS = PA04_Main.o BasicUtilities.o RoomUtilities.o CourseUtilities.o Console_IO_Utility.o File_Input_Utility.o File_Output_Utility.o

# Uses the template structure defined in the TypicalUtils folder

all: PA04_Main

PA04_Main: $(OBJECTS)
	$(CC) $(OBJECTS) -o PA04_Main

PA04_Main.o: PA04_Main.c
	$(CC) -c PA04_Main.c -o PA04_Main.o

BasicUtilities.o: BasicUtilities.c
	$(CC) -c BasicUtilities.c -o BasicUtilities.o

CourseUtilities.o: CourseUtilities.c
	$(CC) -c CourseUtilities.c -o CourseUtilities.o

RoomUtilities.o: RoomUtilities.c
	$(CC) -c RoomUtilities.c -o RoomUtilities.o

Console_IO_Utility.o: Console_IO_Utility.c
	$(CC) -c Console_IO_Utility.c -o Console_IO_Utility.o

File_Input_Utility.o: File_Input_Utility.c
	$(CC) -c File_Input_Utility.c -o File_Input_Utility.o

File_Output_Utility.o: File_Output_Utility.c
	$(CC) -c File_Output_Utility.c -o File_Output_Utility.o

clean:
	rm -f $(OBJECTS) PA03_Main PA03_Main.out

clean_objects:
	rm -f $(OBJECTS)

run:
	./PA04_Main

run_win:
	PA04_Main
