Skip to content

Commit eff0c84

Browse files
committed
Add compiler versions to CI matrix
Relates to #349 Signed-off-by: Evan Flynn <[email protected]>
1 parent 614c8e3 commit eff0c84

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

.github/workflows/build_test.yml

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -70,16 +70,35 @@ jobs:
7070
strategy:
7171
fail-fast: false
7272
matrix:
73+
cxx_compiler:
74+
- g++-14
75+
- clang-18
7376
ros_distro: ${{ fromJson(needs.get_ros_distros.outputs.series) }}
7477
include:
75-
${{ fromJson(needs.get_ros_distros.outputs.matrix) }}
78+
- ${{ fromJson(needs.get_ros_distros.outputs.matrix) }}
79+
- cxx_compiler: g++-12
80+
cc_compiler: gcc-12
81+
- cxx_compiler: g++-14
82+
cc_compiler: gcc-14
83+
- cxx_compiler: clang-14
84+
cc_compiler: clang-14
85+
- cxx_compiler: clang-16
86+
cc_compiler: clang-16
87+
- cxx_compiler: clang-18
88+
cc_compiler: clang-18
89+
exclude:
90+
- { ros_distro: humble, cxx_compiler: g++-14 }
91+
- { ros_distro: humble, cxx_compiler: clang-16 }
92+
- { ros_distro: humble, cxx_compiler: clang-18 }
93+
7694
container:
7795
image: rostooling/setup-ros-docker:${{ matrix.docker_image }}
7896
steps:
7997
- name: Install dependencies
8098
run: |
8199
sudo apt-get update
82100
sudo apt-get -y install policykit-1 libgtk2.0-common screen uml-utilities libc6-dev libicu-dev gcc python3 python3-pip
101+
sudo apt-get -y install ${{ matrix.compiler }}
83102
mkdir renode_portable
84103
wget https://builds.renode.io/renode-latest.linux-portable.tar.gz
85104
tar xf renode-latest.linux-portable.tar.gz -C renode_portable --strip-components=1
@@ -96,15 +115,7 @@ jobs:
96115
package-name: usb_cam
97116
target-ros2-distro: ${{ matrix.ros_distro }}
98117
vcs-repo-file-url: ""
99-
colcon-defaults: |
100-
{
101-
"build": {
102-
"mixin": ["coverage-gcc"]
103-
}
104-
}
105-
# If possible, pin the repository in the workflow to a specific commit to avoid
106-
# changes in colcon-mixin-repository from breaking your tests.
107-
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/1ddb69bedfd1f04c2f000e95452f7c24a4d6176b/index.yaml
118+
extra-cmake-args: -DCMAKE_C_COMPILER=/usr/bin/${{ matrix.cc_compiler }} -DCMAKE_CXX_COMPILER=/usr/bin/${{ matrix.cxx_compiler }}
108119
# Compile again, this time enabling integration tests
109120
- name: Build integration tests
110121
shell: bash

0 commit comments

Comments
 (0)