From 68f8f36b04885fd13519ff5db49bd7cec62c6256 Mon Sep 17 00:00:00 2001 From: Andrey Semashev Date: Sat, 10 Sep 2022 00:55:04 +0300 Subject: [PATCH] GitHub Actions config update. - Added clang-15 jobs. - Added C++23 testing for gcc and clang on Linux. - Updated clang version for UBSAN job. - Removed clang-12 libc++ job - libc++ is now tested with clang-15. - Updated Ubuntu version for clang jobs to avoid having to use external APT repository. - Updated python package installation for compatibility with Ubuntu 22.04. --- .github/workflows/ci.yml | 72 ++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 33 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9080fb7..174be40 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -99,18 +99,18 @@ jobs: install: - g++-10 - toolset: gcc-11 - cxxstd: "03,11,14,17,20" - os: ubuntu-20.04 + cxxstd: "03,11,14,17,20,23" + os: ubuntu-22.04 install: - g++-11 - toolset: gcc-12 - cxxstd: "03,11,14,17,20" + cxxstd: "03,11,14,17,20,23" os: ubuntu-22.04 install: - g++-12 - name: UBSAN toolset: gcc-12 - cxxstd: "03,11,14,17,20" + cxxstd: "03,11,14,17,20,23" ubsan: 1 os: ubuntu-22.04 install: @@ -205,63 +205,63 @@ jobs: - toolset: clang compiler: clang++-11 cxxstd: "03,11,14,17,20" - os: ubuntu-20.04 + os: ubuntu-22.04 install: - clang-11 - toolset: clang compiler: clang++-12 - cxxstd: "03,11,14,17,20" - os: ubuntu-20.04 + cxxstd: "03,11,14,17,20,2b" + os: ubuntu-22.04 install: - clang-12 - - toolset: clang - compiler: clang++-12 - cxxstd: "03,11,14,17,20" - cxxflags: -stdlib=libc++ - linkflags: -stdlib=libc++ - os: ubuntu-20.04 - install: - - clang-12 - - libc++-12-dev - - libc++abi-12-dev - toolset: clang compiler: clang++-13 - cxxstd: "03,11,14,17,20" + cxxstd: "03,11,14,17,20,2b" os: ubuntu-22.04 install: - clang-13 - toolset: clang compiler: clang++-14 - cxxstd: "03,11,14,17,20" + cxxstd: "03,11,14,17,20,2b" os: ubuntu-22.04 install: - clang-14 - toolset: clang - compiler: clang++-13 - cxxstd: "03,11,14,17,20" - os: ubuntu-20.04 + compiler: clang++-15 + cxxstd: "03,11,14,17,20,2b" + os: ubuntu-22.04 install: - - clang-13 - - libc++-13-dev - - libc++abi-13-dev + - clang-15 sources: - - "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main" + - "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" + source_keys: + - "https://apt.llvm.org/llvm-snapshot.gpg.key" + - toolset: clang + compiler: clang++-15 + cxxstd: "03,11,14,17,20,2b" + os: ubuntu-22.04 + install: + - clang-15 + - libc++-15-dev + - libc++abi-15-dev + sources: + - "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" source_keys: - "https://apt.llvm.org/llvm-snapshot.gpg.key" cxxflags: -stdlib=libc++ linkflags: -stdlib=libc++ - name: UBSAN toolset: clang - compiler: clang++-12 - cxxstd: "03,11,14,17,20" + compiler: clang++-14 + cxxstd: "03,11,14,17,20,2b" cxxflags: -stdlib=libc++ linkflags: -stdlib=libc++ ubsan: 1 - os: ubuntu-20.04 + os: ubuntu-22.04 install: - - clang-12 - - libc++-12-dev - - libc++abi-12-dev + - clang-14 + - libc++-14-dev + - libc++abi-14-dev - toolset: clang cxxstd: "03,11,14,17,2a" @@ -285,7 +285,13 @@ jobs: if [ -f "/etc/debian_version" ] then apt-get -o Acquire::Retries=$NET_RETRY_COUNT update - apt-get -o Acquire::Retries=$NET_RETRY_COUNT install -y sudo software-properties-common tzdata wget curl apt-transport-https ca-certificates make build-essential g++ python python3 perl git cmake + if [ "$(apt-cache search "^python-is-python3$" | wc -l)" -ne 0 ] + then + PYTHON_PACKAGE="python-is-python3" + else + PYTHON_PACKAGE="python" + fi + apt-get -o Acquire::Retries=$NET_RETRY_COUNT install -y sudo software-properties-common tzdata wget curl apt-transport-https ca-certificates make build-essential g++ $PYTHON_PACKAGE python3 perl git cmake fi fi git config --global pack.threads 0