Skip to content

Commit 27030a1

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 df5f6f5 commit 27030a1

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
@@ -421,9 +421,9 @@ jobs:
421421
matrix:
422422
include:
423423
- { name: 'GCC 9 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-9 && CXX=g++-9', }
424-
- { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', }
425-
- { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', }
426-
- { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', }
424+
- { name: 'GCC 10 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-10 && CXX=g++-10', }
425+
- { name: 'GCC 11 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-11 && CXX=g++-11', }
426+
- { name: 'GCC 12 (Ubuntu Jammy - 22.04)', eval: 'CC=gcc-12 && CXX=g++-12', }
427427
- { name: 'Clang 11 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-11 && CXX=clang++-11', }
428428
- { name: 'Clang 12 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-12 && CXX=clang++-12', }
429429
- { name: 'Clang 13 (Ubuntu Jammy - 22.04)', eval: 'CC=clang-13 && CXX=clang++-13', }
@@ -450,6 +450,34 @@ jobs:
450450
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
451451
./.github/scripts/build.sh
452452
453+
FutureCompatibility:
454+
runs-on: ubuntu-24.04
455+
strategy:
456+
fail-fast: false
457+
matrix:
458+
include:
459+
- { name: 'GCC 13 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-13 && CXX=g++-13', }
460+
- { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', }
461+
name: 'B: ${{ matrix.name }}'
462+
steps:
463+
- uses: actions/setup-python@v5
464+
with:
465+
python-version: 3.12.3
466+
- uses: actions/checkout@v4
467+
with:
468+
submodules: 'true'
469+
- run: ./.github/scripts/install_noble_dependencies.sh
470+
471+
- uses: hendrikmuhs/[email protected]
472+
473+
- name: Test
474+
env:
475+
CMAKE_PARAMS: "-DVTR_ASSERT_LEVEL=3 -DVTR_IPO_BUILD=off"
476+
MATRIX_EVAL: ${{ matrix.eval }}
477+
BUILD_TYPE: release
478+
run: |
479+
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
480+
./.github/scripts/build.sh
453481
454482
Coverity:
455483
name: 'Coverity Scan'

0 commit comments

Comments
 (0)