APPNAME=$(shell basename $(shell pwd)) APPARGS=5 2 3 0 100 0 750 CC=cc CXX=g++ CFLAGS=-g -std=gnu11 -Wall -Wextra LIBS=-pthread LINTFILTERS=$\ -readability/casting,$\ -build/header_guard,$\ -build/include_subdir $(APPNAME): main.o queue.o arguments.o simulation.o $(CC) $(CFLAGS) $^ -o $(APPNAME) $(LIBS) %.o: %.c $(CC) -c $(CFLAGS) $< -o $@ $(LIBS) all: $(APPNAME) lint memcheck helgrind .PHONY: lint lint: cpplint --filter=$(LINTFILTERS) *.h *.c .PHONY: memcheck memcheck: valgrind --tool=memcheck ./$(APPNAME) $(APPARGS) .PHONY: helgrind helgrind: valgrind --quiet --tool=helgrind ./$(APPNAME) $(APPARGS) .PHONY: gitignore gitignore: echo $(APPNAME) > .gitignore .PHONY: clean clean: rm -f $(APPNAME) *.o