Skip to content

Commit 1b519c4

Browse files
[CI] Added GCC-13 as a Compatability Test
Ubuntu 24.04 uses GCC-13 as its default GCC version. The CI should ensure that VTR builds for this version of GCC. Also added the version of Clang that would come with Ubuntu 24.04 Versions of tools were found from here: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md
1 parent a76e61b commit 1b519c4

File tree

2 files changed

+98
-3
lines changed

2 files changed

+98
-3
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#!/usr/bin/env bash
2+
3+
sudo apt update
4+
5+
sudo apt install -y \
6+
autoconf \
7+
automake \
8+
bash \
9+
bison \
10+
binutils \
11+
binutils-gold \
12+
build-essential \
13+
capnproto \
14+
exuberant-ctags \
15+
curl \
16+
doxygen \
17+
flex \
18+
fontconfig \
19+
gdb \
20+
git \
21+
gperf \
22+
libcairo2-dev \
23+
libcapnp-dev \
24+
libgtk-3-dev \
25+
libevent-dev \
26+
libfontconfig1-dev \
27+
liblist-moreutils-perl \
28+
libncurses5-dev \
29+
libx11-dev \
30+
libxft-dev \
31+
libxml2-utils \
32+
libxml++2.6-dev \
33+
libreadline-dev \
34+
tcllib \
35+
tcl8.6-dev \
36+
libffi-dev \
37+
perl \
38+
pkg-config \
39+
texinfo \
40+
time \
41+
valgrind \
42+
zip \
43+
qtbase5-dev \
44+
uuid-dev \
45+
default-jdk \
46+
g++-9 \
47+
gcc-9 \
48+
g++-10 \
49+
gcc-10 \
50+
g++-11 \
51+
gcc-11 \
52+
g++-12 \
53+
gcc-12 \
54+
g++-13 \
55+
gcc-13 \
56+
clang-14 \
57+
clang-18 \
58+
clang-format-14 \
59+
libtbb-dev
60+
61+
pip install -r requirements.txt
62+
63+
git clone https://github.com/capnproto/capnproto-java.git $GITHUB_WORKSPACE/env/capnproto-java
64+
pushd $GITHUB_WORKSPACE/env/capnproto-java
65+
make
66+
sudo make install
67+
popd

.github/workflows/test.yml

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -409,9 +409,9 @@ jobs:
409409
matrix:
410410
include:
411411
- { name: 'GCC 9 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-9 && CXX=g++-9', }
412-
- { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', }
413-
- { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', }
414-
- { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', }
412+
- { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', }
413+
- { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', }
414+
- { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', }
415415
- { name: 'Clang 11 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-11 && CXX=clang++-11', }
416416
- { name: 'Clang 12 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-12 && CXX=clang++-12', }
417417
- { name: 'Clang 13 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-13 && CXX=clang++-13', }
@@ -438,6 +438,34 @@ jobs:
438438
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
439439
./.github/scripts/build.sh
440440
441+
FutureCompatibility:
442+
runs-on: ubuntu-24.04
443+
strategy:
444+
fail-fast: false
445+
matrix:
446+
include:
447+
- { name: 'GCC 13 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-13 && CXX=g++-13', }
448+
- { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', }
449+
name: 'B: ${{ matrix.name }}'
450+
steps:
451+
- uses: actions/setup-python@v5
452+
with:
453+
python-version: 3.12.3
454+
- uses: actions/checkout@v4
455+
with:
456+
submodules: 'true'
457+
- run: ./.github/scripts/install_noble_dependencies.sh
458+
459+
- uses: hendrikmuhs/[email protected]
460+
461+
- name: Test
462+
env:
463+
CMAKE_PARAMS: "-DVTR_ASSERT_LEVEL=3"
464+
MATRIX_EVAL: ${{ matrix.eval }}
465+
BUILD_TYPE: release
466+
run: |
467+
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
468+
./.github/scripts/build.sh
441469
442470
Coverity:
443471
name: 'Coverity Scan'

0 commit comments

Comments
 (0)