CXX=g++ CPPFLAGS=-Wall -g -std=c++0x SOURCES=main.cc util.cc OBJECTS=$(SOURCES:.cc=.o) EXE=app all: $(EXE) test main.o: main.cc util.o util.o: util.h util.cc unittest: util.o unittest.cc $(EXE): $(OBJECTS) $(CXX) $(LDFLAGS) $(OBJECTS) -o $@ clean: @rm -vf *.o @rm -rvf *.dSYM @rm -vf $(EXE) @rm -vf unittest test: unittest ./unittest debug: $(EXE) gdb $(EXE) valgrind: $(EXE) valgrind --tool=memcheck --leak-check=yes ./$(EXE)