Skip to content

Commit 93b8da6

Browse files
committed
ci: use newer g++-14 libstdc++, to make it work with clang
1 parent 8ba3907 commit 93b8da6

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

.github/workflows/build.yml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,8 @@ jobs:
120120
mingw-w64-${{matrix.config.architecture}}-cmake
121121
git
122122
123-
- name: Setup Clang (Linux)
124-
if: matrix.config.os == 'ubuntu' && matrix.config.use-clang == true
123+
- name: Setup Clang (Linux) (libc++)
124+
if: matrix.config.os == 'ubuntu' && matrix.config.use-clang == true && matrix.config.use-clang_stdlib
125125
run: |
126126
wget https://apt.llvm.org/llvm.sh
127127
chmod +x llvm.sh
@@ -131,6 +131,21 @@ jobs:
131131
echo "CXX=clang++-19" >> "$GITHUB_ENV"
132132
echo "OBJC=clang-19" >> "$GITHUB_ENV"
133133
134+
- name: Setup Clang (Linux) (libstdc++)
135+
if: matrix.config.os == 'ubuntu' && matrix.config.use-clang == true && (! matrix.config.use-clang_stdlib)
136+
run: |
137+
wget https://apt.llvm.org/llvm.sh
138+
chmod +x llvm.sh
139+
sudo ./llvm.sh 19
140+
echo "CC=clang-19" >> "$GITHUB_ENV"
141+
echo "CXX=clang++-19" >> "$GITHUB_ENV"
142+
echo "OBJC=clang-19" >> "$GITHUB_ENV"
143+
# Also install the newest g++ (For the libstd++ library)
144+
echo "deb http://archive.ubuntu.com/ubuntu/ oracular main" | sudo tee -a /etc/apt/sources.list.d/new_ubuntu.list
145+
sudo apt-get update
146+
sudo apt-get install libstdc++-14-dev -y
147+
sudo rm -rf /etc/apt/sources.list.d/new_ubuntu.list
148+
sudo apt-get update
134149
135150
- name: Setup GCC (Linux)
136151
if: matrix.config.os == 'ubuntu' && matrix.config.use-clang == false
@@ -143,7 +158,7 @@ jobs:
143158
if: matrix.config.os == 'macos'
144159
run: |
145160
brew update
146-
# TODO annotat5e with lld@19, after that is accepted, we don't want to use lld@20 without manually updating it !
161+
# TODO annotate with lld@19, after that is accepted, we don't want to use lld@20 without manually updating it !
147162
brew install llvm@19 lld
148163
echo "$(brew --prefix)/opt/llvm/bin" >> $GITHUB_PATH
149164
echo "LDFLAGS=-L$(brew --prefix)/opt/llvm/lib -L$(brew --prefix)/opt/llvm/lib/c++ -Wl,-rpath,$(brew --prefix)/opt/llvm/lib/c++" >> "$GITHUB_ENV"

0 commit comments

Comments
 (0)