Skip to content

Commit

Permalink
Fixing CI for older clang (#1783)
Browse files Browse the repository at this point in the history
  • Loading branch information
brevzin committed May 23, 2023
1 parent 48dc2eb commit c3f0d17
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 22 deletions.
80 changes: 59 additions & 21 deletions .github/workflows/range-v3-ci.yml
Expand Up @@ -11,46 +11,53 @@ jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
container: ${{ matrix.config.container }}

strategy:
fail-fast: false
matrix:
config:
# GCC-6
- {
name: "Linux GCC 6 Debug (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-6", cxx: "g++-6",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 6 Release (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-6", cxx: "g++-6",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 6 Debug (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-6", cxx: "g++-6",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 6 Release (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-6", cxx: "g++-6",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 6 Release (C++17, Concepts)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-6", cxx: "g++-6",
cxx_standard: 17,
Expand All @@ -59,39 +66,44 @@ jobs:
# GCC-7
- {
name: "Linux GCC 7 Debug (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-7", cxx: "g++-7",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 7 Release (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-7", cxx: "g++-7",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 7 Debug (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-7", cxx: "g++-7",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 7 Release (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-7", cxx: "g++-7",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 7 Release (C++17, Concepts)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-7", cxx: "g++-7",
cxx_standard: 17,
Expand All @@ -100,39 +112,44 @@ jobs:
# GCC-8
- {
name: "Linux GCC 8 Debug (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-8", cxx: "g++-8",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 8 Release (C++14)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-8", cxx: "g++-8",
cxx_standard: 14,
cxx_concepts: false
}
- {
name: "Linux GCC 8 Debug (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "gcc-8", cxx: "g++-8",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 8 Release (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-8", cxx: "g++-8",
cxx_standard: 17,
cxx_concepts: false
}
- {
name: "Linux GCC 8 Release (C++17, Concepts)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "gcc-8", cxx: "g++-8",
cxx_standard: 17,
Expand Down Expand Up @@ -198,7 +215,8 @@ jobs:
# Clang-5.0
- {
name: "Linux Clang 5.0 Debug (C++14 / libc++ / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-5.0", cxx: "clang++-5.0",
cxx_standard: 14,
Expand All @@ -207,7 +225,8 @@ jobs:
}
- {
name: "Linux Clang 5.0 Debug (C++17 / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-5.0", cxx: "clang++-5.0",
cxx_standard: 17,
Expand All @@ -217,7 +236,8 @@ jobs:
# Clang-6.0
- {
name: "Linux Clang 6.0 Debug (C++14 / libc++ / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-6.0", cxx: "clang++-6.0",
cxx_standard: 14,
Expand All @@ -226,7 +246,8 @@ jobs:
}
- {
name: "Linux Clang 6.0 Debug (C++17 / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-18.04,
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-6.0", cxx: "clang++-6.0",
cxx_standard: 17,
Expand All @@ -237,6 +258,7 @@ jobs:
- {
name: "Linux Clang 8 Debug (C++14 / libc++ / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-8", cxx: "clang++-8",
cxx_standard: 14,
Expand All @@ -245,7 +267,7 @@ jobs:
}
- {
name: "Linux Clang 8 Debug (C++17 / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
os: ubuntu-20.04,
build_type: Debug,
cc: "clang-8", cxx: "clang++-8",
cxx_standard: 17,
Expand All @@ -256,6 +278,7 @@ jobs:
- {
name: "Linux Clang 9 Debug (C++17 / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-9", cxx: "clang++-9",
cxx_standard: 17,
Expand All @@ -264,6 +287,7 @@ jobs:
- {
name: "Linux Clang 9 Release (C++17)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "clang-9", cxx: "clang++-9",
cxx_standard: 17,
Expand All @@ -273,6 +297,7 @@ jobs:
- {
name: "Linux Clang 10 Debug (C++20 / ASAN)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: Debug,
cc: "clang-10", cxx: "clang++-10",
cxx_standard: 20,
Expand All @@ -282,6 +307,7 @@ jobs:
- {
name: "Linux Clang 10 Release (C++20 / Concepts)", artifact: "Linux.tar.xz",
os: ubuntu-latest,
container: "ubuntu:18.04",
build_type: RelWithDebInfo,
cc: "clang-10", cxx: "clang++-10",
cxx_standard: 20,
Expand Down Expand Up @@ -354,7 +380,19 @@ jobs:
}

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Setup container environment
if: matrix.config.container
run: |
apt-get update
apt-get -y install sudo python git g++ cmake curl
- name: Install packages
if: matrix.install
run: |
sudo apt-get update
sudo apt-get -y install ${{matrix.install}}
- name: Download Ninja and CMake
id: cmake_and_ninja
Expand Down
2 changes: 1 addition & 1 deletion install_libcxx.sh
Expand Up @@ -54,7 +54,7 @@ if [ ${VERSION} == $TRUNK_VERSION ]; then
else
echo "Fetching libc++/libc++abi version: ${VERSION} ..."
MAJOR=$(echo ${VERSION} | cut -d '.' -f 1)
if [[ ${MAJOR} -lt 8 ]]; then
if [[ ${MAJOR} -lt 14 ]]; then
URL_ROOT="https://releases.llvm.org/${VERSION}"
else
URL_ROOT="https://github.com/llvm/llvm-project/releases/download/llvmorg-${VERSION}"
Expand Down

0 comments on commit c3f0d17

Please sign in to comment.