# Comments are # # rule format # name: requirement1 requirement2 ... # command1 # command2 # ... # okay to copy/adapt # though you do not need to do object rules # see Makefile_no_object for HW07 BASE_NAME=math_functions EXECUTABLE=test_$(BASE_NAME) CFLAGS=-g -std=c11 -Wall -Wshadow -Wvla -Werror -pedantic COMMON_HEADERS=$(BASE_NAME).h clog.h $(EXECUTABLE): $(EXECUTABLE).o $(BASE_NAME).o gcc $(EXECUTABLE).o $(BASE_NAME).o -o $(EXECUTABLE) $(CFLAGS) $(EXECUTABLE).o: $(EXECUTABLE).c $(COMMON_HEADERS) miniunit.h gcc -c $(EXECUTABLE).c -o $(EXECUTABLE).o $(CFLAGS) $(BASE_NAME).o: $(BASE_NAME).c $(COMMON_HEADERS) gcc -c $(BASE_NAME).c -o $(BASE_NAME).o $(CFLAGS) test: $(EXECUTABLE) ./$(EXECUTABLE) valgrind: $(EXECUTABLE) valgrind ./$(EXECUTABLE) clean: rm -f ./$(EXECUTABLE) rm -f *.o .PHONY: test valgrind clean