forked from verilog-to-routing/vtr-verilog-to-routing
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[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 Added as its own workflow which is manually dispatched since the Noble runners are still in beta.
- Loading branch information
1 parent
df5f6f5
commit 0489ccc
Showing
3 changed files
with
121 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
#!/usr/bin/env bash | ||
|
||
sudo apt update | ||
|
||
sudo apt install -y \ | ||
autoconf \ | ||
automake \ | ||
bash \ | ||
bison \ | ||
binutils \ | ||
binutils-gold \ | ||
build-essential \ | ||
capnproto \ | ||
exuberant-ctags \ | ||
curl \ | ||
doxygen \ | ||
flex \ | ||
fontconfig \ | ||
gdb \ | ||
git \ | ||
gperf \ | ||
libcairo2-dev \ | ||
libcapnp-dev \ | ||
libgtk-3-dev \ | ||
libevent-dev \ | ||
libfontconfig1-dev \ | ||
liblist-moreutils-perl \ | ||
libncurses5-dev \ | ||
libx11-dev \ | ||
libxft-dev \ | ||
libxml2-utils \ | ||
libxml++2.6-dev \ | ||
libreadline-dev \ | ||
tcllib \ | ||
tcl8.6-dev \ | ||
libffi-dev \ | ||
perl \ | ||
pkg-config \ | ||
texinfo \ | ||
time \ | ||
valgrind \ | ||
zip \ | ||
qtbase5-dev \ | ||
uuid-dev \ | ||
default-jdk \ | ||
g++-9 \ | ||
gcc-9 \ | ||
g++-10 \ | ||
gcc-10 \ | ||
g++-11 \ | ||
gcc-11 \ | ||
g++-12 \ | ||
gcc-12 \ | ||
g++-13 \ | ||
gcc-13 \ | ||
clang-14 \ | ||
clang-18 \ | ||
clang-format-14 \ | ||
libtbb-dev | ||
|
||
pip install -r requirements.txt | ||
|
||
git clone https://github.com/capnproto/capnproto-java.git $GITHUB_WORKSPACE/env/capnproto-java | ||
pushd $GITHUB_WORKSPACE/env/capnproto-java | ||
make | ||
sudo make install | ||
popd |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# This workflow is designed to test that VTR can run on Ubuntu 24.04. Since | ||
# the Ubuntu 24.04 GitHub runners are still in Beta, this is left as a workflow | ||
# that must be dispatched manually. In the future this workflow should be | ||
# removed and made the default (integrated into test.yml). | ||
name: Noble | ||
|
||
on: | ||
workflow_dispatch: | ||
schedule: | ||
- cron: '0 0 * * *' # daily | ||
|
||
# We want to cancel previous runs for a given PR or branch / ref if another CI | ||
# run is requested. | ||
# See: https://docs.github.com/en/actions/using-jobs/using-concurrency | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
|
||
env: | ||
MATRIX_EVAL: "CC=gcc-13 && CXX=g++-13" | ||
|
||
jobs: | ||
FutureCompatibility: | ||
runs-on: ubuntu-24.04 | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- { name: 'GCC 13 (Ubuntu Noble - 24.04)', eval: 'CC=gcc-13 && CXX=g++-13', } | ||
- { name: 'Clang 18 (Ubuntu Noble - 24.04)', eval: 'CC=clang-18 && CXX=clang++-18', } | ||
name: 'B: ${{ matrix.name }}' | ||
steps: | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: 3.12.3 | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: 'true' | ||
- run: ./.github/scripts/install_noble_dependencies.sh | ||
|
||
- uses: hendrikmuhs/[email protected] | ||
|
||
- name: Test | ||
env: | ||
CMAKE_PARAMS: "-DVTR_ASSERT_LEVEL=3 -DVTR_IPO_BUILD=off" | ||
MATRIX_EVAL: ${{ matrix.eval }} | ||
BUILD_TYPE: release | ||
run: | | ||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" | ||
./.github/scripts/build.sh | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters