Skip to content

Commit 3fda2a4

Browse files
committed
[ci] Use llvm coverage, add linux clang.
1 parent d2931d6 commit 3fda2a4

3 files changed

Lines changed: 22 additions & 24 deletions

File tree

.github/workflows/build-matrix.yml

Lines changed: 16 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ on:
3636
required: false
3737
type: string
3838
default: "true"
39+
linux-clang:
40+
required: false
41+
type: string
42+
default: "true"
3943
build-release:
4044
required: false
4145
type: string
@@ -73,7 +77,9 @@ jobs:
7377
[[ "true" == "${{ inputs.windows }}" ]] && echo '{ "name": "Windows MSVC", "os": "windows-latest", "cc": "cl.exe", "cxx": "cl.exe", "icon": "Windows", "extra-flags": "" }'
7478
[[ "true" == "${{ inputs.windows }}" && "true" == "${{inputs.linux}}" ]] && echo ','
7579
[[ "true" == "${{ inputs.linux }}" ]] && echo '{ "name": "Ubuntu gcc", "os": "ubuntu-latest", "cc": "gcc", "cxx": "g++", "icon": "Linux", "extra-flags": "-DCMAKE_CXX_FLAGS=-Wno-deprecated-declarations -DRADIUM_ENABLE_GL_TESTING=ON" }'
76-
[[ "true" == "${{ inputs.windows }}" || "true" == "${{inputs.linux}}" ]] && [[ "true" == "${{inputs.macos}}" ]] && echo ','
80+
[[ "true" == "${{ inputs.windows }}" || "true" == "${{inputs.linux}}" ]] && [[ "true" == "${{inputs.linux-clang}}" ]] && echo ','
81+
[[ "true" == "${{ inputs.linux-clang }}" ]] && echo '{ "name": "Ubuntu clang", "os": "ubuntu-latest", "cc": "clang", "cxx": "clang++", "icon": "Linux", "extra-flags": "-DCMAKE_CXX_FLAGS=-Wno-deprecated-declarations -DRADIUM_ENABLE_GL_TESTING=ON" }'
82+
[[ "true" == "${{ inputs.windows }}" || "true" == "${{inputs.linux}}" || "true" == "${{inputs.linux-clang}}" ]] && [[ "true" == "${{inputs.macos}}" ]] && echo ','
7783
[[ "true" == "${{ inputs.macos }}" ]] && echo '{ "name": "MacOS clang", "os": "macos-13", "cc": "clang", "cxx": "clang++", "icon": "Apple", "extra-flags": "-DCMAKE_CXX_FLAGS=-Wno-deprecated-declarations" }'
7884
echo '],'
7985
echo '"build-type" : ['
@@ -87,7 +93,7 @@ jobs:
8793
echo '],'
8894
echo '"qtversion" : [ { "name" : "qt6", "value" : "6.2.0"}],'
8995
echo '"coverage" : ['
90-
[[ "true" == "${{ inputs.coverage }}" ]] && echo '{ "value" : "ON", "extra-flags" : "-DRADIUM_ENABLE_GL_TESTING=ON" }' || echo '{ "value" : "OFF", "extra-flags" : "" }'
96+
[[ "true" == "${{ inputs.coverage }}" ]] && echo '{ "value" : "ON", "extra-flags" : "" }' || echo '{ "value" : "OFF", "extra-flags" : "" }'
9197
echo "]"
9298
echo "}"
9399
) | jq -c .)
@@ -143,8 +149,8 @@ jobs:
143149
if: runner.os == 'Linux'
144150
run: |
145151
sudo apt-get update
146-
sudo apt-get install -y libglfw3-dev libxml2-utils lcov
147-
pip3 install fastcov
152+
sudo apt-get install -y libglfw3-dev libxml2-utils
153+
sudo apt-get install -y llvm
148154
149155
- name: Install dep MacOS
150156
if: runner.os == 'macOS'
@@ -219,7 +225,7 @@ jobs:
219225
run: |
220226
"${{ env.src_prefix }}/Radium-Engine/scripts/build.sh" -e true -r false \
221227
-B "${{ env.build_prefix }}" -c ${{ matrix.build-type }} \
222-
-G Ninja --cc ${{ matrix.config.cc }} --cxx ${{ matrix.config.cxx }} \
228+
-G Ninja --cc "${{ matrix.config.cc }}" --cxx "${{ matrix.config.cxx }}" \
223229
--install-external "${{ steps.paths.outputs.external_install_dir }}"
224230
225231
- name: Configure and build Radium
@@ -275,27 +281,15 @@ jobs:
275281
- name: Create coverage report
276282
if: ${{ inputs.coverage == 'true' }}
277283
run: |
278-
cmake --build "${{ steps.paths.outputs.radium_build_dir }}" --config Debug --target fastcov_integration
279-
cmake --build "${{ steps.paths.outputs.radium_build_dir }}" --config Debug --target fastcov_unittests
284+
cmake --build "${{ steps.paths.outputs.radium_build_dir }}" --config Release --target coverage
280285
281286
- name: Upload unittests coverage report
282287
if: ${{ inputs.coverage == 'true' }}
283288
uses: codecov/codecov-action@v5
284289
with:
285-
fail_ci_if_error: true # optional (default = false)
286-
files: ${{ steps.paths.outputs.radium_build_dir }}/fastcov_unittests.info
287-
flags: unittests
288-
token: ${{ secrets.CODECOV_TOKEN }}
289-
verbose: true # optional (default = false)
290-
disable_search: true
291-
292-
- name: Upload integration coverage report
293-
if: ${{ inputs.coverage == 'true' }}
294-
uses: codecov/codecov-action@v5
295-
with:
296-
fail_ci_if_error: true # optional (default = false)
297-
files: ${{ steps.paths.outputs.radium_build_dir }}/fastcov_integration.info
298-
flags: integration
290+
# fail_ci_if_error: true # optional (default = false)
291+
directory: ${{ steps.paths.outputs.radium_build_dir }}
292+
files: ${{ steps.paths.outputs.radium_build_dir }}/coverage.txt
299293
token: ${{ secrets.CODECOV_TOKEN }}
300294
verbose: true # optional (default = false)
301-
disable_search: true
295+
# disable_search: true

.github/workflows/pull-request-ci.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ jobs:
2727
with:
2828
windows: "false"
2929
macos: "false"
30-
build-release: "false"
30+
linux: "false"
31+
build-release: "true"
32+
build-debug: "false"
3133
coverage: "true"
3234
secrets:
3335
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

.github/workflows/push-rc-ci.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ jobs:
3737
with:
3838
windows: "false"
3939
macos: "false"
40-
build-release: "false"
40+
linux: "false"
41+
build-release: "true"
42+
build-debug: "false"
4143
coverage: "true"
4244
secrets:
4345
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

0 commit comments

Comments
 (0)