Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 6th, 2012  |  syntax: None  |  size: 0.85 KB  |  hits: 7  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. CXXFLAGS=-Wall -pedantic -Werror -ftest-coverage -fprofile-arcs
  2. CXX=g++
  3.  
  4. COVSUMMARY=./covsummary
  5.  
  6. TEST_SRC=test.cpp
  7. TEST_EXEC=./testFile
  8. TEST_LOG=./testFile.log
  9. VALGRIND_LOG=./mem.log
  10.  
  11. $(TEST_SRC): $(TST)
  12.         cxxtestgen --error-printer -o $(TEST_SRC) $(TST)
  13.  
  14. $(TEST_EXEC): $(SRC) $(TEST_SRC)
  15.         $(CXX) $(CXXFLAGS) $(SRC) $(TEST_SRC) -o $(TEST_EXEC)
  16.  
  17. test: $(TEST_EXEC)
  18.         valgrind --leak-check=full --show-reachable=yes --log-file=$(VALGRIND_LOG) $(TEST_EXEC) | tee $(TEST_LOG)
  19.         gcov -b $(SRC) > $(COVSUMMARY)
  20.  
  21. checktest: test
  22.         @cat $(TEST_LOG) | checkTest
  23.  
  24. checkvalgrind: test
  25.         @cat $(VALGRIND_LOG) | checkValgrind
  26.  
  27. checkcov: test
  28.         @cat $(COVSUMMARY) | checkCoverage
  29.  
  30. check: checktest checkvalgrind checkcov
  31.  
  32. clean:
  33.         rm -rf *~ *.o $(TEST_EXEC) $(TEST_SRC) *.gcno *.gcov *.gcda $(COVSUMMARY) $(TEST_LOG) $(VALGRIND_LOG)
  34.  
  35. .PHONY: test clean check checktest checkvalgrind checkcov