# makefile for cube code # # using in Linux/vagrant: execute # sudo apt-get install -y libgtest-dev lcov # and follow the exercise 1 directions for building GoogleTest libraries all: cube cube_test cube.o: cube.h cube.cpp g++ -std=c++14 -Wall --coverage -c cube.cpp cube_test.o: cube.h cube_test.cpp g++ -std=c++14 -Wall --coverage -c cube_test.cpp main.o: cube.h main.cpp g++ -std=c++14 -Wall --coverage -c main.cpp cube: cube.o main.o g++ -std=c++14 -Wall --coverage cube.o main.o -o cube cube_test: cube.o cube_test.o g++ -pthread -std=c++14 -Wall --coverage cube.o cube_test.o -lgtest_main -lgtest -lpthread -o cube_test coverage: cube_test mkdir -p code_coverage_report ./cube_test lcov --directory ./ --capture --output-file ./code_coverage.info -rc lcov_branch_coverage=1 genhtml code_coverage.info --branch-coverage --output-directory ./code_coverage_report/ clean: rm -f *.o *.gcda *.gcno code_coverage.info cube cube_test rm -rf code_coverage_report