diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index f6884ad..7c5b02d 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -15,20 +15,20 @@ jobs: - name: Install dependencies run: | apt-get update -qq - # Try clang-15+ first (Ubuntu 22.04+) + # Clang needs libc++ for on Ubuntu 22.04 (libstdc++ is pre-GCC-13) if apt-cache show clang-18 >/dev/null 2>&1; then - apt-get install -y -qq clang-18 ninja-build curl + apt-get install -y -qq clang-18 libc++-18-dev libc++abi-18-dev ninja-build curl elif apt-cache show clang-17 >/dev/null 2>&1; then - apt-get install -y -qq clang-17 ninja-build curl + apt-get install -y -qq clang-17 libc++-17-dev libc++abi-17-dev ninja-build curl elif apt-cache show clang-16 >/dev/null 2>&1; then - apt-get install -y -qq clang-16 ninja-build curl + apt-get install -y -qq clang-16 libc++-16-dev libc++abi-16-dev ninja-build curl elif apt-cache show clang-15 >/dev/null 2>&1; then - apt-get install -y -qq clang-15 ninja-build curl + apt-get install -y -qq clang-15 libc++-15-dev libc++abi-15-dev ninja-build curl else # Ubuntu 20.04: install from LLVM repo apt-get install -y -qq wget lsb-release wget -qO- https://apt.llvm.org/llvm.sh | bash -s -- 18 - apt-get install -y -qq ninja-build curl + apt-get install -y -qq libc++-18-dev libc++abi-18-dev ninja-build curl fi - name: Install CMake 3.28 @@ -44,7 +44,8 @@ jobs: echo "CC=$CC CXX=$CXX" cmake -B build -G Ninja \ -DCMAKE_C_COMPILER="$CC" \ - -DCMAKE_CXX_COMPILER="$CXX" + -DCMAKE_CXX_COMPILER="$CXX" \ + -DCMAKE_CXX_FLAGS="-stdlib=libc++" cmake --build build - name: DSL and CLI tests