diff --git a/.circleci/config.yml b/.circleci/config.yml index e0617d648..b528e9c72 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -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: | @@ -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 >> @@ -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" @@ -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 >> diff --git a/.cirrus.yml b/.cirrus.yml index 28f765350..eabdb7df1 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -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: | @@ -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: | diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 1358cd9c9..cacfaa0a8 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -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: @@ -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 }} @@ -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" @@ -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 @@ -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: @@ -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