Skip to content

Commit 89b274a

Browse files
authored
Update actions/checkout in GitHub Actions to v4 (#11, thanks @striezel)
* Update actions/checkout in GitHub Actions to v4 * Add workaround for incompatibilities between Clang and libstdc++ See <actions/runner-images#8659> for more information. Currently, Clang and libstdc++ provided by the GitHub Actions runner image are incompatible. The basic idea of this workaround is to remove the incompatible g++ 13 and its C++ standard library and replace that with a compatible version of libstdc++.
1 parent e621200 commit 89b274a

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

.github/workflows/ci.yml

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
runs-on: ubuntu-latest
2323

2424
steps:
25-
- uses: actions/checkout@v3
25+
- uses: actions/checkout@v4
2626

2727
- name: Install GCC ${{ matrix.version }}
2828
run: sudo apt-get install -y gcc-${{ matrix.version }} g++-${{ matrix.version }}
@@ -52,16 +52,25 @@ jobs:
5252
runs-on: ubuntu-latest
5353

5454
steps:
55-
- uses: actions/checkout@v3
55+
- uses: actions/checkout@v4
56+
57+
# Workaround for incompatible clang and libstc++ versions, see
58+
# <https://github.com/actions/runner-images/issues/8659> for more info.
59+
# The basic idea here is to remove g++ 13 and its C++ standard library
60+
# and replace that with a compatible version of libstdc++.
61+
- name: Workaround for GHA runner images issue 8659
62+
run: |
63+
sudo apt-get purge -y g++-13 gcc-13 libstdc++-13-dev
64+
sudo apt-get install -y --allow-downgrades libstdc++-12-dev libstdc++6=12.* libgcc-s1=12.*
5665
5766
- name: Install Clang ${{ matrix.version }}
5867
run: sudo apt-get install -y clang-${{ matrix.version }}
5968

6069
- name: Configure tests
6170
env:
62-
CXX: clang-${{ matrix.version }}
71+
CXX: clang++-${{ matrix.version }}
6372
run: cmake -S . -B build
64-
-D CMAKE_CXX_COMPILER=clang++
73+
-D CMAKE_CXX_COMPILER=clang++-${{ matrix.version }}
6574
-D CMAKE_BUILD_TYPE:STRING=Release
6675
-D ${{ env.PROJECT }}_OPT_SELECT_NONSTD=ON
6776
-D ${{ env.PROJECT }}_OPT_BUILD_TESTS=ON
@@ -83,7 +92,7 @@ jobs:
8392
runs-on: ${{ matrix.os }}
8493

8594
steps:
86-
- uses: actions/checkout@v3
95+
- uses: actions/checkout@v4
8796

8897
- name: Configure tests
8998
run: cmake -S . -B build

0 commit comments

Comments
 (0)