Skip to content

Commit

Permalink
CMake Updates (#91)
Browse files Browse the repository at this point in the history
* Use gcovr for code coverage reports

* Create CodeCoverage.cmake.txt

* Woops

* Add gh-pages deployment settings

* Update .travis.yml

* Fix name of code coverage folder

* Update .travis.yml

* Update .travis.yml

* Update .travis.yml

* Update .travis.yml

* Some small things I forgot
  • Loading branch information
vincentlaucsb committed Apr 27, 2020
1 parent 4a36e8e commit 84359a8
Show file tree
Hide file tree
Showing 4 changed files with 478 additions and 12 deletions.
35 changes: 26 additions & 9 deletions .travis.yml
@@ -1,3 +1,5 @@
language:
- cpp
matrix:
include:
- os: linux
Expand All @@ -6,28 +8,43 @@ matrix:
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-8', 'valgrind']
packages: ['g++-8', 'cmake', 'valgrind', 'doxygen']
- os: linux
env: STD=c++17
compiler: gcc
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-8']
packages: ['g++-8', 'cmake', 'doxygen']
#- os: linux
# env: CXX=clang++
dist: trusty
sudo: required
language:
- cpp
before_install:
- pyenv install 3.6.0
- pyenv global 3.6.0
- pip3 install gcovr
script:
- make run_csv_test
- export CSV_TEST_ROOT=$PWD/tests
- cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER=g++-8
- make csv_coverage;

# Memory leak check
- if [ "$MAIN_BUILD" == "true" ]; then
make code_cov;
make valgrind;
make csv_stats;
valgrind --leak-check=full ./programs/csv_stats $PWD/tests/data/real_data/2016_Gaz_place_national.txt;
fi;
after_success:
- if [ "$MAIN_BUILD" == "true" ]; then
cd test_results;
bash <(curl -s https://codecov.io/bash);
doxygen Doxyfile;
mv csv_coverage /docs;
fi;
deploy:
- provider: pages
- skip_cleanup: true
- github_token: $GITHUB_TOKEN
- keep_history: true
- local_dir: docs
- target_branch: gh-pages
- on:
- branch: master
18 changes: 16 additions & 2 deletions CMakeLists.txt
Expand Up @@ -27,7 +27,7 @@ if(MSVC)
else()
# Ignore Visual Studio pragma regions
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-pragmas")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Og")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} --coverage -Og")
endif(MSVC)

set(CSV_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR})
Expand Down Expand Up @@ -79,4 +79,18 @@ if (CSV_DEVELOPER)
## Tests
enable_testing()
add_subdirectory("tests")
endif()

# Code coverage
find_program( GCOV_PATH gcov )
if(GCOV_PATH)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/modules")
include(CodeCoverage)
append_coverage_compiler_flags()
set(ENV{CSV_TEST_ROOT} ${CSV_TEST_DIR})
setup_target_for_coverage_gcovr_html(
NAME csv_coverage
EXECUTABLE csv_test
EXCLUDE "tests/*"
)
endif()
endif()
1 change: 0 additions & 1 deletion README.md
@@ -1,6 +1,5 @@
# Vince's CSV Parser
[![Build Status](https://travis-ci.org/vincentlaucsb/csv-parser.svg?branch=master)](https://travis-ci.org/vincentlaucsb/csv-parser)
[![codecov](https://codecov.io/gh/vincentlaucsb/csv-parser/branch/master/graph/badge.svg)](https://codecov.io/gh/vincentlaucsb/csv-parser)

* [Motivation](#motivation)
* [Documentation](#documentation)
Expand Down

0 comments on commit 84359a8

Please sign in to comment.