@@ -43,19 +43,31 @@ jobs:
43
43
- name : Install GFortran Linux
44
44
if : contains( matrix.os, 'ubuntu')
45
45
run : |
46
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test
47
- sudo apt-get update
48
- sudo apt-get install -y gcc-${GCC_V} gfortran-${GCC_V}
49
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \
50
- --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \
51
- --slave /usr/bingcov gcov /usr/bin/gcov-${GCC_V}
52
- # sudo apt-get install -y libblas-dev liblapack-dev
46
+ sudo apt-get install lcov
47
+ sudo update-alternatives \
48
+ --install /usr/bin/gcc gcc /usr/bin/gcc-${{ matrix.gcc_v }} 100 \
49
+ --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${{ matrix.gcc_v }} \
50
+ --slave /usr/bin/gcov gcov /usr/bin/gcov-${{ matrix.gcc_v }}
53
51
54
- - name : Compile
55
- run : fpm build --profile release
52
+ # - name: Compile
53
+ # run: fpm build --profile release
56
54
57
- - name : Run test
58
- run : fpm test
55
+ - name : Run tests
56
+ run : fpm test --profile debug --flag -coverage
57
+
58
+ - name : Create coverage report
59
+ run : |
60
+ mkdir -p ${{ env.COV_DIR }}
61
+ lcov --capture --initial --base-directory . --directory build/gfortran_*/ --output-file ${{ env.COV_DIR }}/coverage.base
62
+ lcov --capture --base-directory . --directory build/gfortran_*/ --output-file ${{ env.COV_DIR }}/coverage.capture
63
+ lcov --add-tracefile ${{ env.COV_DIR }}/coverage.base --add-tracefile ${{ env.COV_DIR }}/coverage.capture --output-file ${{ env.COV_DIR }}/coverage.info
64
+ env :
65
+ COV_DIR : build/coverage
66
+
67
+ - name : Upload coverage report
68
+ uses : codecov/codecov-action@v2
69
+ with :
70
+ files : build/coverage/coverage.info
59
71
60
72
- name : Build documentation
61
73
run : ford ./fortran-csv-module.md
0 commit comments