Skip to content

Commit

Permalink
Add LLVM 19 to CI.
Browse files Browse the repository at this point in the history
  • Loading branch information
insertinterestingnamehere committed Sep 25, 2024
1 parent c0a15da commit 0dec46a
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 34 deletions.
16 changes: 8 additions & 8 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ jobs:
image: ubuntu-2404:edge
resource_class: arm.medium
environment:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
steps:
- checkout
- run: |
Expand All @@ -50,8 +50,8 @@ jobs:
sudo apt-get install -y autoconf automake libtool
sudo apt-get install -y hwloc libhwloc-dev
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-add-repository -y 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main'
sudo apt-get install -y clang-18
sudo apt-add-repository -y 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-19 main'
sudo apt-get install -y clang-19
- run: |
./autogen.sh
./configure --enable-picky --with-scheduler=<< parameters.scheduler >> -with-topology=<< parameters.topology >>
Expand All @@ -73,8 +73,8 @@ jobs:
image: ubuntu-2404:edge
resource_class: arm.medium
environment:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
CFLAGS: "-fsanitize=<< parameters.sanitizer >> -fno-sanitize-recover=all"
CXXFLAGS: "-fsanitize=<< parameters.sanitizer >> -fno-sanitize-recover=all"
LDFLAGS: "-fsanitize=<< parameters.sanitizer >> -fno-sanitize-recover=all"
Expand All @@ -88,8 +88,8 @@ jobs:
sudo apt-get install -y autoconf automake libtool
sudo apt-get install -y hwloc libhwloc-dev
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-add-repository -y 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main'
sudo apt-get install -y clang-18
sudo apt-add-repository -y 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-19 main'
sudo apt-get install -y clang-19
- run: |
./autogen.sh
./configure --enable-picky --with-scheduler=<< parameters.scheduler >> -with-topology=<< parameters.topology >>
Expand Down
30 changes: 15 additions & 15 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,33 +120,33 @@ arm_linux_clang_task:
timeout_in: 5m
matrix:
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: nemesis
QTHREADS_TOPOLOGY: no
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: nemesis
QTHREADS_TOPOLOGY: hwloc
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: sherwood
QTHREADS_TOPOLOGY: no
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: sherwood
QTHREADS_TOPOLOGY: hwloc
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: distrib
QTHREADS_TOPOLOGY: no
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
QTHREADS_SCHEDULER: distrib
QTHREADS_TOPOLOGY: hwloc
install_deps_script: |
Expand All @@ -157,9 +157,9 @@ arm_linux_clang_task:
gpg --no-default-keyring --keyring ./tmp.gpg --export --output llvm-snapshot.gpg
rm tmp.gpg
cp llvm-snapshot.gpg /etc/apt/trusted.gpg.d/llvm-snapshot.gpg # This is for CI so no need to do something more complicated to restrict key use to a specific repo.
apt-add-repository -y 'deb https://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main'
apt-add-repository -y 'deb https://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main' # Something's buggy upstream but running this twice fixes it.
apt-get install -y clang-18
apt-add-repository -y 'deb https://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-19 main'
apt-add-repository -y 'deb https://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-19 main' # Something's buggy upstream but running this twice fixes it.
apt-get install -y clang-19
apt-get install -y autoconf automake libtool
apt-get install -y hwloc libhwloc-dev
build_script: |
Expand Down
24 changes: 13 additions & 11 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
continue-on-error: true
strategy:
matrix:
clang_version: [11, 12, 13, 14, 15, 16, 17]
clang_version: [11, 12, 13, 14, 15, 16, 17, 18]
scheduler: [nemesis, sherwood, distrib]
topology: [hwloc, binders, no]
include:
Expand All @@ -57,6 +57,8 @@ jobs:
gcc_version: 13
- clang_version: 17
gcc_version: 13
- clang_version: 18
gcc_version: 13
env:
CC: clang-${{ matrix.clang_version }}
CXX: clang++-${{ matrix.clang_version }}
Expand Down Expand Up @@ -249,8 +251,8 @@ jobs:
topology: [hwloc, binders, no]
use_libcxx: [false] # disable testing on libcxx since its effect seems very limited for now.
env:
CC: clang-18
CXX: clang++-18
CC: clang-19
CXX: clang++-19
CFLAGS: "-fsanitize=${{ matrix.sanitizer }} -fno-sanitize-recover=all"
CXXFLAGS: ${{ matrix.use_libcxx && format('-stdlib=libc++ -fsanitize={0} -fno-sanitize-recover=all', matrix.sanitizer) || format('-fsanitize={0} -fno-sanitize-recover=all', matrix.sanitizer) }}
LDFLAGS: "-fsanitize=${{ matrix.sanitizer }} -fno-sanitize-recover=all"
Expand All @@ -265,10 +267,10 @@ jobs:
- name: install compiler
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - && break || sleep 1
sudo apt-add-repository 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main' && break || sleep 1
sudo apt-get install clang-18
sudo apt-add-repository 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-19 main' && break || sleep 1
sudo apt-get install clang-19
- if: ${{ matrix.use_libcxx }}
run: sudo apt-get install libc++-18-dev libc++abi-18-dev
run: sudo apt-get install libc++-19-dev libc++abi-19-dev
- if: ${{ matrix.topology != 'no' }}
run: |
sudo apt-get install hwloc libhwloc-dev
Expand Down Expand Up @@ -297,8 +299,8 @@ jobs:
- compiler: gcc
use_libcxx: true
env:
CC: ${{ matrix.compiler == 'gcc' && 'gcc-14' || 'clang-18' }}
CXX: ${{ matrix.compiler == 'gcc' && 'g++-14' || 'clang++-18' }}
CC: ${{ matrix.compiler == 'gcc' && 'gcc-14' || 'clang-19' }}
CXX: ${{ matrix.compiler == 'gcc' && 'g++-14' || 'clang++-19' }}
CXXFLAGS: ${{ matrix.use_libcxx && '-stdlib=libc++' || '' }}
QTHREADS_ENABLE_ASSERTS: ${{ matrix.use_asserts && '--enable-asserts' || '' }}
steps:
Expand All @@ -309,10 +311,10 @@ jobs:
- if: ${{ matrix.compiler == 'clang' }}
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - && break || sleep 1
sudo apt-add-repository 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main' && break || sleep 1
sudo apt-get install clang-18
sudo apt-add-repository 'deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-19 main' && break || sleep 1
sudo apt-get install clang-19
- if: ${{ matrix.use_libcxx }}
run: sudo apt-get install libc++-18-dev libc++abi-18-dev
run: sudo apt-get install libc++-19-dev libc++abi-19-dev
- if: ${{ matrix.topology != 'no' }}
run: |
sudo apt-get install hwloc libhwloc-dev
Expand Down

0 comments on commit 0dec46a

Please sign in to comment.