|
18 | 18 | - {name: "Ubuntu Clang 19", os: ubuntu-24.04, toolchain: "clang-19", clang_version: 19, installed_clang_version: 17, cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" ", asan_options: "new_delete_type_mismatch=0"}
|
19 | 19 | - {name: "Ubuntu Clang 18", os: ubuntu-24.04, toolchain: "clang-18", clang_version: 18, installed_clang_version: 17, cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" "}
|
20 | 20 | - {name: "Ubuntu Clang 17", os: ubuntu-24.04, toolchain: "clang-17", clang_version: 17, installed_clang_version: 17, cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" "}
|
21 |
| - - {name: "Ubuntu GCC 14", os: ubuntu-24.04, toolchain: "gcc-14", cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" "} |
| 21 | + - {name: "Ubuntu GCC 14", os: ubuntu-24.04, toolchain: "gcc-14", cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan;Gcov\" ", coverage: true} |
22 | 22 | - {name: "Ubuntu GCC 13", os: ubuntu-24.04, toolchain: "gcc-13", cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" "}
|
23 | 23 | - {name: "Ubuntu GCC 12", os: ubuntu-24.04, toolchain: "gcc-12", cmake_args: "-G \"Ninja Multi-Config\" -DCMAKE_CONFIGURATION_TYPES=\"RelWithDebInfo;Asan\" "}
|
24 | 24 | steps:
|
|
77 | 77 | sudo apt-get install g++-${GCC_VERSION} gcc-${GCC_VERSION}
|
78 | 78 | find /usr/lib/x86_64-linux-gnu/ -name libstdc++.so*
|
79 | 79 | g++-${GCC_VERSION} --version
|
| 80 | + - name: Install Gcovr |
| 81 | + if: matrix.config.coverage |
| 82 | + run: | |
| 83 | + set -x |
| 84 | + sudo apt-get install gcovr |
80 | 85 | - name: CMake Configure
|
81 | 86 | run: |
|
82 | 87 | set -x
|
@@ -107,3 +112,25 @@ jobs:
|
107 | 112 | run: |
|
108 | 113 | set -x
|
109 | 114 | cmake --install .build --config RelWithDebInfo --component beman_optional26_development --verbose
|
| 115 | + - name: CMake Gcov Build |
| 116 | + if: matrix.config.coverage |
| 117 | + run: | |
| 118 | + set -x |
| 119 | + cmake --build .build --config Gcov --target all_verify_interface_header_sets -- -k 0 |
| 120 | + cmake --build .build --config Gcov --target all -- -k 0 |
| 121 | + - name: CMake Gcov Test |
| 122 | + if: matrix.config.coverage |
| 123 | + run: | |
| 124 | + set -x |
| 125 | + ctest --build-config Gcov --output-on-failure --test-dir .build |
| 126 | + - name: Generate Coverage |
| 127 | + if: matrix.config.coverage |
| 128 | + run: | |
| 129 | + set -x |
| 130 | + cmake --build .build --config Gcov --target process_coverage -- -k 0 |
| 131 | + - name: Coveralls |
| 132 | + if: matrix.config.coverage |
| 133 | + uses: coverallsapp/github-action@main |
| 134 | + with: |
| 135 | + file: ${{runner.workspace}}/optional26/.build/coverage.json |
| 136 | + github-token: ${{ secrets.GITHUB_TOKEN }} |
0 commit comments