From e0c7abb5b6a041cfa04a0490496020f77a58f284 Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 14:45:58 +0100 Subject: [PATCH 1/8] Update workflows to ubuntu-26.04 --- .github/dependabot.yml | 8 +++++ .github/workflows/armv7.yml | 16 ++++----- .github/workflows/benchmark.yml | 12 +++---- .github/workflows/big-endian.yml | 14 ++++---- .github/workflows/boost-asio.yml | 6 ++-- .github/workflows/clang-format.yml | 4 +-- .github/workflows/clang-linux-erlang.yml | 4 +-- .github/workflows/clang-linux-latest.yml | 20 ++--------- .github/workflows/clang-linux.yml | 4 +-- .github/workflows/clang-tidy.yml | 6 ++-- .github/workflows/clang.yml | 2 +- .github/workflows/code_coverage.yml | 14 ++++---- .github/workflows/disable-always-inline.yml | 35 +++++-------------- .github/workflows/docs.yml | 4 +-- .github/workflows/exhaustive_float.yml | 4 +-- .github/workflows/exhaustive_int.yml | 4 +-- .github/workflows/gcc-erlang.yml | 4 +-- .github/workflows/gcc-old-abi.yml | 15 +++----- .github/workflows/gcc-x86.yml | 4 +-- .github/workflows/gcc.yml | 17 ++++----- .github/workflows/quickfuzz.yml | 9 ++--- .github/workflows/sanitizers.yml | 11 ++---- .github/workflows/simple_float.yml | 8 ++--- .github/workflows/standalone-asio.yml | 11 ++---- .../workflows/yaml-conformance-data-gcc.yml | 4 +-- 25 files changed, 94 insertions(+), 146 deletions(-) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000000..5bf1d3d448 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,8 @@ +version: 2 + +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + day: "wednesday" \ No newline at end of file diff --git a/.github/workflows/armv7.yml b/.github/workflows/armv7.yml index 7d5426282d..18206c3617 100644 --- a/.github/workflows/armv7.yml +++ b/.github/workflows/armv7.yml @@ -18,7 +18,7 @@ on: jobs: build-armv7: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 name: GCC armv7 (NEON, cross-compiled) steps: @@ -28,17 +28,17 @@ jobs: run: | sudo apt-get update sudo apt-get install -y \ - gcc-13-arm-linux-gnueabihf \ - g++-13-arm-linux-gnueabihf \ - libstdc++-13-dev-armhf-cross \ + gcc-15-arm-linux-gnueabihf \ + g++-15-arm-linux-gnueabihf \ + libstdc++-15-dev-armhf-cross \ libc6-armhf-cross \ qemu-user-static - name: Verify compiler and NEON target macro run: | - arm-linux-gnueabihf-g++-13 --version + arm-linux-gnueabihf-g++-15 --version qemu-arm-static --version - arm-linux-gnueabihf-g++-13 -std=c++23 -march=armv7-a -mfpu=neon -mfloat-abi=hard -dM -E -x c++ /dev/null | grep "__ARM_NEON" + arm-linux-gnueabihf-g++-15 -std=c++23 -march=armv7-a -mfpu=neon -mfloat-abi=hard -dM -E -x c++ /dev/null | grep "__ARM_NEON" - name: Create CMake toolchain file run: | @@ -46,8 +46,8 @@ jobs: set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESSOR armv7) - set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc-13) - set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++-13) + set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc-15) + set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++-15) set(CMAKE_FIND_ROOT_PATH /usr/arm-linux-gnueabihf) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index 2c4846b904..7ad06f873f 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -11,11 +11,11 @@ on: jobs: skip_ws_benchmark: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 env: - CC: gcc-14 - CXX: g++-14 + CC: gcc-15 + CXX: g++-15 steps: - uses: actions/checkout@v6 @@ -45,11 +45,11 @@ jobs: fi string_write_benchmark: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 env: - CC: gcc-14 - CXX: g++-14 + CC: gcc-15 + CXX: g++-15 steps: - uses: actions/checkout@v6 diff --git a/.github/workflows/big-endian.yml b/.github/workflows/big-endian.yml index 7a2eb4de09..822fc9c85e 100644 --- a/.github/workflows/big-endian.yml +++ b/.github/workflows/big-endian.yml @@ -18,7 +18,7 @@ on: jobs: build-s390x: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 name: GCC s390x (big-endian, cross-compiled) steps: @@ -28,13 +28,13 @@ jobs: run: | sudo apt-get update sudo apt-get install -y \ - g++-13-s390x-linux-gnu \ + g++-15-s390x-linux-gnu \ qemu-user-static \ - libstdc++-13-dev-s390x-cross + libstdc++-15-dev-s390x-cross - name: Verify cross-compiler run: | - s390x-linux-gnu-g++-13 --version + s390x-linux-gnu-g++-15 --version qemu-s390x-static --version - name: Create CMake toolchain file @@ -43,8 +43,8 @@ jobs: set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESSOR s390x) - set(CMAKE_C_COMPILER s390x-linux-gnu-gcc-13) - set(CMAKE_CXX_COMPILER s390x-linux-gnu-g++-13) + set(CMAKE_C_COMPILER s390x-linux-gnu-gcc-15) + set(CMAKE_CXX_COMPILER s390x-linux-gnu-g++-15) set(CMAKE_FIND_ROOT_PATH /usr/s390x-linux-gnu) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) @@ -70,7 +70,7 @@ jobs: } } EOF - s390x-linux-gnu-g++-13 -std=c++20 /tmp/check_endian.cpp -o /tmp/check_endian + s390x-linux-gnu-g++-15 -std=c++20 /tmp/check_endian.cpp -o /tmp/check_endian qemu-s390x-static -L /usr/s390x-linux-gnu /tmp/check_endian - name: Configure CMake diff --git a/.github/workflows/boost-asio.yml b/.github/workflows/boost-asio.yml index 9fefb4f7ef..4f8a512402 100644 --- a/.github/workflows/boost-asio.yml +++ b/.github/workflows/boost-asio.yml @@ -23,9 +23,9 @@ jobs: fail-fast: false matrix: compiler: - - { name: clang, version: 18 } - - { name: clang, version: 20 } - - { name: gcc, version: 14 } + - { name: clang, version: 21 } + - { name: clang, version: 22 } + - { name: gcc, version: 15 } boost_version: [1.88.0, 1.86.0] env: diff --git a/.github/workflows/clang-format.yml b/.github/workflows/clang-format.yml index 28236a3562..f807ea786e 100644 --- a/.github/workflows/clang-format.yml +++ b/.github/workflows/clang-format.yml @@ -11,7 +11,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 steps: - uses: actions/checkout@v6 @@ -20,7 +20,7 @@ jobs: source: '.' exclude: '' extensions: 'h,hpp,cpp' - clangFormatVersion: 20 + clangFormatVersion: 22 style: file inplace: True - uses: EndBug/add-and-commit@v9 diff --git a/.github/workflows/clang-linux-erlang.yml b/.github/workflows/clang-linux-erlang.yml index 50a2cf9716..10c4df8c7a 100644 --- a/.github/workflows/clang-linux-erlang.yml +++ b/.github/workflows/clang-linux-erlang.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [17, 18] + clang: [21, 22] build_type: [Debug] std: [23] diff --git a/.github/workflows/clang-linux-latest.yml b/.github/workflows/clang-linux-latest.yml index 43685b058e..71ff99c4e4 100644 --- a/.github/workflows/clang-linux-latest.yml +++ b/.github/workflows/clang-linux-latest.yml @@ -21,12 +21,12 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [19, 20] + clang: [21, 22] build_type: [Debug] std: [23] @@ -38,22 +38,6 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install latest clang - run: | - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - - # Use the 'noble' repository for Ubuntu 24.04 - echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-${{matrix.clang}} main" | sudo tee /etc/apt/sources.list.d/llvm.list - # Clean apt cache and update before installing - sudo apt-get clean - sudo apt-get update - sudo apt-get install -y --fix-missing clang-${{matrix.clang}} libc++-${{matrix.clang}}-dev libc++abi-${{matrix.clang}}-dev - - - name: Set path for clang - run: | - echo "PATH=/usr/lib/llvm-${{matrix.clang}}/bin:$PATH" >> $GITHUB_ENV - clang-${{matrix.clang}} --version - clang++-${{matrix.clang}} --version - - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/clang-linux.yml b/.github/workflows/clang-linux.yml index 2ccf1f3ba6..394f1a7d91 100644 --- a/.github/workflows/clang-linux.yml +++ b/.github/workflows/clang-linux.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [17, 18] + clang: [21, 22] build_type: [Debug] std: [23] diff --git a/.github/workflows/clang-tidy.yml b/.github/workflows/clang-tidy.yml index 676a7e6ffd..ec3bcefbe7 100644 --- a/.github/workflows/clang-tidy.yml +++ b/.github/workflows/clang-tidy.yml @@ -8,7 +8,7 @@ on: jobs: clang-tidy-include-cleaner: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 steps: - name: Checkout code @@ -20,7 +20,7 @@ jobs: - name: Install Clang-Tidy run: | sudo apt-get update - sudo apt-get install -y clang-tools-19 + sudo apt-get install -y clang-tools-22 - name: Run Clang-Tidy Include Cleaner run: | @@ -31,7 +31,7 @@ jobs: git diff --diff-filter=d --name-only origin/main | grep -E "\.cpp$" | xargs -r -t -n 1 -P 8 -- /usr/bin/clang-tidy-19 --fix --checks="-*,misc-include-cleaner" || true - name: Commit changes - uses: EndBug/add-and-commit@v9 + uses: EndBug/add-and-commit@v10 with: author_name: Clang Tidy Bot author_email: actions@github.com diff --git a/.github/workflows/clang.yml b/.github/workflows/clang.yml index 59c484748d..1c31d13e26 100644 --- a/.github/workflows/clang.yml +++ b/.github/workflows/clang.yml @@ -1,4 +1,4 @@ -name: clang +name: clang (MacOS) on: push: diff --git a/.github/workflows/code_coverage.yml b/.github/workflows/code_coverage.yml index ab8d67eb2b..e8f2e30765 100644 --- a/.github/workflows/code_coverage.yml +++ b/.github/workflows/code_coverage.yml @@ -8,24 +8,24 @@ env: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 steps: - uses: actions/checkout@v6 - name: Set up environment run: | - echo "CXX=clang++-16" >> "$GITHUB_ENV" - echo "CC=clang-16" >> "$GITHUB_ENV" + echo "CXX=clang++-22" >> "$GITHUB_ENV" + echo "CC=clang-22" >> "$GITHUB_ENV" echo "CXXFLAGS="-fprofile-instr-generate -fcoverage-mapping"" >> "$GITHUB_ENV" echo "LDFLAGS="-fprofile-instr-generate"" >> "$GITHUB_ENV" echo "LLVM_PROFILE_FILE="code-%p.profraw"" >> "$GITHUB_ENV" - - name: Have llvm-cov point to llvm-cov-16 + - name: Have llvm-cov point to llvm-cov-22 run: | mkdir -p /home/runner/.local/bin - ln -s `which llvm-cov-16` /home/runner/.local/bin/llvm-cov - ln -s `which llvm-profdata-16` /home/runner/.local/bin/llvm-profdata + ln -s `which llvm-cov-22` /home/runner/.local/bin/llvm-cov + ln -s `which llvm-profdata-22` /home/runner/.local/bin/llvm-profdata - name: Configure CMake run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} @@ -37,7 +37,7 @@ jobs: run: cmake --build build --config ${{env.BUILD_TYPE}} --target ccov-all -j 2 - name: Archive code coverage results - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v7 with: name: code-coverage-report path: ${{github.workspace}}/build/ccov/all-merged diff --git a/.github/workflows/disable-always-inline.yml b/.github/workflows/disable-always-inline.yml index 3d170b4453..c83ba4c481 100644 --- a/.github/workflows/disable-always-inline.yml +++ b/.github/workflows/disable-always-inline.yml @@ -18,9 +18,7 @@ on: jobs: gcc15: - runs-on: ubuntu-24.04 - container: - image: gcc:15 + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -29,8 +27,8 @@ jobs: std: [23] env: - CC: gcc - CXX: g++ + CC: gcc-15 + CXX: g++-15 steps: - name: Install build dependencies @@ -40,9 +38,6 @@ jobs: apt-get update apt-get install -y --no-install-recommends \ ca-certificates \ - cmake \ - git \ - python3 update-ca-certificates - uses: actions/checkout@v6 @@ -62,8 +57,8 @@ jobs: - name: Test run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" - clang19: - runs-on: ubuntu-latest + clang22: + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -72,27 +67,13 @@ jobs: std: [23] env: - CC: clang-19 - CXX: clang++-19 - LLVM_VERSION: 19 + CC: clang-22 + CXX: clang++-22 + LLVM_VERSION: 22 steps: - uses: actions/checkout@v6 - - name: Install Clang 19 - run: | - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - - echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main" | sudo tee /etc/apt/sources.list.d/llvm.list - sudo apt-get clean - sudo apt-get update - sudo apt-get install -y --fix-missing clang-19 libc++-19-dev libc++abi-19-dev - - - name: Set path for clang - run: | - echo "PATH=/usr/lib/llvm-19/bin:$PATH" >> $GITHUB_ENV - clang-19 --version - clang++-19 --version - - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 5756665237..0a07f5f7ce 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -20,7 +20,7 @@ concurrency: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 steps: - name: Checkout uses: actions/checkout@v6 @@ -52,7 +52,7 @@ jobs: environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 needs: build steps: - name: Deploy to GitHub Pages diff --git a/.github/workflows/exhaustive_float.yml b/.github/workflows/exhaustive_float.yml index deedfe275c..147101aeec 100644 --- a/.github/workflows/exhaustive_float.yml +++ b/.github/workflows/exhaustive_float.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [18] + clang: [22] build_type: [Release] std: [23] diff --git a/.github/workflows/exhaustive_int.yml b/.github/workflows/exhaustive_int.yml index 79b7ff93a5..409fd141c2 100644 --- a/.github/workflows/exhaustive_int.yml +++ b/.github/workflows/exhaustive_int.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [18] + clang: [22] build_type: [Release] std: [23] diff --git a/.github/workflows/gcc-erlang.yml b/.github/workflows/gcc-erlang.yml index a8d5290da0..37750b11c3 100644 --- a/.github/workflows/gcc-erlang.yml +++ b/.github/workflows/gcc-erlang.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [13, 14] + gcc: [14, 15] build_type: [Debug] std: [23] diff --git a/.github/workflows/gcc-old-abi.yml b/.github/workflows/gcc-old-abi.yml index 4b92b7deab..00afa64e12 100644 --- a/.github/workflows/gcc-old-abi.yml +++ b/.github/workflows/gcc-old-abi.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [13, 14] + gcc: [14, 15] build_type: [Debug] std: [23] @@ -45,9 +45,7 @@ jobs: run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" build-gcc15: - runs-on: ubuntu-24.04 - container: - image: gcc:15 + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -56,8 +54,8 @@ jobs: std: [23] env: - CC: gcc - CXX: g++ + CC: gcc-15 + CXX: g++-15 steps: - name: Install build dependencies @@ -67,10 +65,7 @@ jobs: apt-get update apt-get install -y --no-install-recommends \ ca-certificates \ - cmake \ - git \ libssl-dev \ - python3 update-ca-certificates - uses: actions/checkout@v6 diff --git a/.github/workflows/gcc-x86.yml b/.github/workflows/gcc-x86.yml index c5b75729b8..2e57176fda 100644 --- a/.github/workflows/gcc-x86.yml +++ b/.github/workflows/gcc-x86.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [13, 14] + gcc: [14, 15] build_type: [Debug] std: [23] diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index 8dec3858e3..fe6a7216e7 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [13, 14] + gcc: [14, 15] build_type: [Debug] std: [23] @@ -45,9 +45,7 @@ jobs: run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" build-gcc15: - runs-on: ubuntu-24.04 - container: - image: gcc:15 + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -56,8 +54,8 @@ jobs: std: [23] env: - CC: gcc - CXX: g++ + CC: gcc-15 + CXX: g++-15 steps: - name: Install build dependencies @@ -67,10 +65,7 @@ jobs: apt-get update apt-get install -y --no-install-recommends \ ca-certificates \ - cmake \ - git \ libssl-dev \ - python3 update-ca-certificates - uses: actions/checkout@v6 @@ -89,7 +84,7 @@ jobs: run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" build-gcc16: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 container: image: gcc:16.1 diff --git a/.github/workflows/quickfuzz.yml b/.github/workflows/quickfuzz.yml index e146bf3f18..3ca370ceb2 100644 --- a/.github/workflows/quickfuzz.yml +++ b/.github/workflows/quickfuzz.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [19] + clang: [22] build_type: [Debug] std: [23] @@ -34,11 +34,6 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y clang-19 - - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/sanitizers.yml b/.github/workflows/sanitizers.yml index 71a86a49bd..7a4e1a7eb8 100644 --- a/.github/workflows/sanitizers.yml +++ b/.github/workflows/sanitizers.yml @@ -18,9 +18,7 @@ on: jobs: asan: - runs-on: ubuntu-24.04 - container: - image: gcc:15 + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -29,8 +27,8 @@ jobs: std: [23] env: - CC: gcc - CXX: g++ + CC: gcc-15 + CXX: g++-15 steps: - name: Install build dependencies @@ -40,10 +38,7 @@ jobs: apt-get update apt-get install -y --no-install-recommends \ ca-certificates \ - cmake \ - git \ libssl-dev \ - python3 update-ca-certificates - uses: actions/checkout@v6 diff --git a/.github/workflows/simple_float.yml b/.github/workflows/simple_float.yml index 961a086cb7..c18024a3fb 100644 --- a/.github/workflows/simple_float.yml +++ b/.github/workflows/simple_float.yml @@ -18,12 +18,12 @@ on: jobs: clang: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - clang: [18] + clang: [22] build_type: [Release] std: [23] @@ -57,12 +57,12 @@ jobs: run: ctest -R simple_float_test --output-on-failure gcc: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [14] + gcc: [15] build_type: [Release] std: [23] diff --git a/.github/workflows/standalone-asio.yml b/.github/workflows/standalone-asio.yml index dc3a5c9ddf..9f862694c8 100644 --- a/.github/workflows/standalone-asio.yml +++ b/.github/workflows/standalone-asio.yml @@ -19,9 +19,7 @@ on: jobs: build: name: Standalone ASIO 1.36 + SSL - runs-on: ubuntu-24.04 - container: - image: gcc:15 + runs-on: ubuntu-26.04 strategy: fail-fast: false @@ -30,8 +28,8 @@ jobs: std: [23] env: - CC: gcc - CXX: g++ + CC: gcc-15 + CXX: g++-15 steps: - name: Install build dependencies @@ -41,10 +39,7 @@ jobs: apt-get update apt-get install -y --no-install-recommends \ ca-certificates \ - cmake \ - git \ libssl-dev \ - python3 update-ca-certificates - uses: actions/checkout@v6 diff --git a/.github/workflows/yaml-conformance-data-gcc.yml b/.github/workflows/yaml-conformance-data-gcc.yml index 4b0f708f2e..317af41d57 100644 --- a/.github/workflows/yaml-conformance-data-gcc.yml +++ b/.github/workflows/yaml-conformance-data-gcc.yml @@ -18,12 +18,12 @@ on: jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: - gcc: [14] + gcc: [15] build_type: [Debug] std: [23] From 88221447d289132efe179508ba5f6f98725b1c25 Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 16:30:50 +0100 Subject: [PATCH 2/8] Remove unnecessary workflow; an attempt to fix others --- .github/workflows/gcc.yml | 39 -------------------------------- .github/workflows/sanitizers.yml | 10 -------- 2 files changed, 49 deletions(-) diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index fe6a7216e7..b9b90c57ce 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -44,45 +44,6 @@ jobs: - name: Test run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" - build-gcc15: - runs-on: ubuntu-26.04 - - strategy: - fail-fast: false - matrix: - build_type: [Debug] - std: [23] - - env: - CC: gcc-15 - CXX: g++-15 - - steps: - - name: Install build dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - apt-get update - apt-get install -y --no-install-recommends \ - ca-certificates \ - libssl-dev \ - update-ca-certificates - - - uses: actions/checkout@v6 - - - name: Prepare build directory - run: cmake -E make_directory "$GITHUB_WORKSPACE/build" - - - name: Configure CMake - run: | - CXXFLAGS="-g3" cmake -S "$GITHUB_WORKSPACE" -B "$GITHUB_WORKSPACE/build" -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_STANDARD=${{matrix.std}} - - - name: Build - run: cmake --build "$GITHUB_WORKSPACE/build" -j $(nproc) - - - name: Test - run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" - build-gcc16: runs-on: ubuntu-26.04 container: diff --git a/.github/workflows/sanitizers.yml b/.github/workflows/sanitizers.yml index 7a4e1a7eb8..c29c095c59 100644 --- a/.github/workflows/sanitizers.yml +++ b/.github/workflows/sanitizers.yml @@ -31,16 +31,6 @@ jobs: CXX: g++-15 steps: - - name: Install build dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - apt-get update - apt-get install -y --no-install-recommends \ - ca-certificates \ - libssl-dev \ - update-ca-certificates - - uses: actions/checkout@v6 - name: Configure CMake From e691e6626b836ebd78d985896a65698ab4d0a02d Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 18:03:22 +0100 Subject: [PATCH 3/8] fix errors with most runners --- .github/workflows/boost-asio.yml | 11 +---------- .github/workflows/clang-tidy.yml | 9 ++------- .github/workflows/disable-always-inline.yml | 9 --------- .github/workflows/exhaustive_int.yml | 5 ----- .github/workflows/gcc-erlang.yml | 4 ---- .github/workflows/standalone-asio.yml | 10 ---------- 6 files changed, 3 insertions(+), 45 deletions(-) diff --git a/.github/workflows/boost-asio.yml b/.github/workflows/boost-asio.yml index 4f8a512402..f10b2b6b30 100644 --- a/.github/workflows/boost-asio.yml +++ b/.github/workflows/boost-asio.yml @@ -18,7 +18,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 strategy: fail-fast: false matrix: @@ -35,15 +35,6 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install clang - if: matrix.compiler.name == 'clang' - run: | - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - - echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-${{ matrix.compiler.version }} main" | sudo tee /etc/apt/sources.list.d/llvm.list - sudo apt-get update - sudo apt-get install -y --fix-missing clang-${{ matrix.compiler.version }} libc++-${{ matrix.compiler.version }}-dev libc++abi-${{ matrix.compiler.version }}-dev - echo "PATH=/usr/lib/llvm-${{ matrix.compiler.version }}/bin:$PATH" >> $GITHUB_ENV - - name: Install Boost id: install-boost uses: MarkusJx/install-boost@v2 diff --git a/.github/workflows/clang-tidy.yml b/.github/workflows/clang-tidy.yml index ec3bcefbe7..8808599e19 100644 --- a/.github/workflows/clang-tidy.yml +++ b/.github/workflows/clang-tidy.yml @@ -17,18 +17,13 @@ jobs: fetch-depth: 0 # Fetch all history for git diff token: ${{ secrets.GITHUB_TOKEN }} # Use GITHUB_TOKEN for pushing changes - - name: Install Clang-Tidy - run: | - sudo apt-get update - sudo apt-get install -y clang-tools-22 - - name: Run Clang-Tidy Include Cleaner run: | echo "Running clang-tidy on .hpp files" - git diff --diff-filter=d --name-only origin/main | grep -E "\.hpp$" | xargs -r -t -n 1 -P 8 -- /usr/bin/clang-tidy-19 --fix --checks="-*,misc-include-cleaner" || true + git diff --diff-filter=d --name-only origin/main | grep -E "\.hpp$" | xargs -r -t -n 1 -P 8 -- /usr/bin/clang-tidy-22 --fix --checks="-*,misc-include-cleaner" || true echo "Running clang-tidy on .cpp files" - git diff --diff-filter=d --name-only origin/main | grep -E "\.cpp$" | xargs -r -t -n 1 -P 8 -- /usr/bin/clang-tidy-19 --fix --checks="-*,misc-include-cleaner" || true + git diff --diff-filter=d --name-only origin/main | grep -E "\.cpp$" | xargs -r -t -n 1 -P 8 -- /usr/bin/clang-tidy-22 --fix --checks="-*,misc-include-cleaner" || true - name: Commit changes uses: EndBug/add-and-commit@v10 diff --git a/.github/workflows/disable-always-inline.yml b/.github/workflows/disable-always-inline.yml index c83ba4c481..6c2c4fe357 100644 --- a/.github/workflows/disable-always-inline.yml +++ b/.github/workflows/disable-always-inline.yml @@ -31,15 +31,6 @@ jobs: CXX: g++-15 steps: - - name: Install build dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - apt-get update - apt-get install -y --no-install-recommends \ - ca-certificates \ - update-ca-certificates - - uses: actions/checkout@v6 - name: Configure CMake diff --git a/.github/workflows/exhaustive_int.yml b/.github/workflows/exhaustive_int.yml index 409fd141c2..ee7f541a9b 100644 --- a/.github/workflows/exhaustive_int.yml +++ b/.github/workflows/exhaustive_int.yml @@ -34,11 +34,6 @@ jobs: steps: - uses: actions/checkout@v6 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y libc++-dev libc++abi-dev - - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/gcc-erlang.yml b/.github/workflows/gcc-erlang.yml index 37750b11c3..57eab9c4e2 100644 --- a/.github/workflows/gcc-erlang.yml +++ b/.github/workflows/gcc-erlang.yml @@ -32,10 +32,6 @@ jobs: CXX: g++-${{matrix.gcc}} steps: - - name: Install Dependencies - run: | - sudo apt-get update - sudo apt-get install erlang-dev - uses: actions/checkout@v6 diff --git a/.github/workflows/standalone-asio.yml b/.github/workflows/standalone-asio.yml index 9f862694c8..5b2240049c 100644 --- a/.github/workflows/standalone-asio.yml +++ b/.github/workflows/standalone-asio.yml @@ -32,16 +32,6 @@ jobs: CXX: g++-15 steps: - - name: Install build dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - apt-get update - apt-get install -y --no-install-recommends \ - ca-certificates \ - libssl-dev \ - update-ca-certificates - - uses: actions/checkout@v6 - name: Configure CMake From 1642194b16721c9fe62a464aa0b9507d55aeccbc Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 18:12:54 +0100 Subject: [PATCH 4/8] Remove clang-linux-latest that is no longer needed --- .github/workflows/clang-linux-latest.yml | 56 ------------------------ 1 file changed, 56 deletions(-) delete mode 100644 .github/workflows/clang-linux-latest.yml diff --git a/.github/workflows/clang-linux-latest.yml b/.github/workflows/clang-linux-latest.yml deleted file mode 100644 index 71ff99c4e4..0000000000 --- a/.github/workflows/clang-linux-latest.yml +++ /dev/null @@ -1,56 +0,0 @@ -name: clang-linux-latest -# This is for the latest version of Clang that aren't yet -# supported by default in the Github Action runners -# and instead need to be installed - -on: - push: - branches: - - main - - feature/* - paths-ignore: - - '**/*.md' - - 'docs/**' - pull_request: - branches: - - main - paths-ignore: - - '**/*.md' - - 'docs/**' - workflow_dispatch: - -jobs: - build: - runs-on: ubuntu-26.04 - - strategy: - fail-fast: false - matrix: - clang: [21, 22] - build_type: [Debug] - std: [23] - - env: - CC: clang-${{matrix.clang}} - CXX: clang++-${{matrix.clang}} - LLVM_VERSION: ${{matrix.clang}} - - steps: - - uses: actions/checkout@v6 - - - name: Configure CMake - run: | - cmake -B ${{github.workspace}}/build \ - -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \ - -DCMAKE_CXX_STANDARD=${{matrix.std}} \ - -DCMAKE_C_COMPILER=${{env.CC}} \ - -DCMAKE_CXX_COMPILER=${{env.CXX}} \ - -DCMAKE_CXX_FLAGS="-stdlib=libc++" \ - -DCMAKE_EXE_LINKER_FLAGS="-stdlib=libc++ -lc++abi" - - - name: Build - run: cmake --build build -j $(nproc) - - - name: Test - working-directory: build - run: ctest -j $(nproc) --output-on-failure \ No newline at end of file From 288bf9650c1a78e0466a5baec3922eae9b31f6cd Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 18:20:50 +0100 Subject: [PATCH 5/8] Resolve clang dependency issues in most workflows; fix other workflows --- .github/workflows/boost-asio.yml | 6 ++++++ .github/workflows/disable-always-inline.yml | 5 +++++ .github/workflows/exhaustive_int.yml | 5 +++++ .github/workflows/gcc-erlang.yml | 5 +++++ .github/workflows/gcc-old-abi.yml | 10 ---------- 5 files changed, 21 insertions(+), 10 deletions(-) diff --git a/.github/workflows/boost-asio.yml b/.github/workflows/boost-asio.yml index f10b2b6b30..53fc1e50fe 100644 --- a/.github/workflows/boost-asio.yml +++ b/.github/workflows/boost-asio.yml @@ -35,6 +35,12 @@ jobs: steps: - uses: actions/checkout@v6 + - name: Install Clang dependencies + if: ${{ matrix.compiler.name == 'clang' }} + run: | + sudo apt-get update + sudo apt-get install -y libc++-dev libc++abi-dev + - name: Install Boost id: install-boost uses: MarkusJx/install-boost@v2 diff --git a/.github/workflows/disable-always-inline.yml b/.github/workflows/disable-always-inline.yml index 6c2c4fe357..e5c0226c32 100644 --- a/.github/workflows/disable-always-inline.yml +++ b/.github/workflows/disable-always-inline.yml @@ -65,6 +65,11 @@ jobs: steps: - uses: actions/checkout@v6 + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y libc++-dev libc++abi-dev + - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/exhaustive_int.yml b/.github/workflows/exhaustive_int.yml index ee7f541a9b..409fd141c2 100644 --- a/.github/workflows/exhaustive_int.yml +++ b/.github/workflows/exhaustive_int.yml @@ -34,6 +34,11 @@ jobs: steps: - uses: actions/checkout@v6 + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y libc++-dev libc++abi-dev + - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/gcc-erlang.yml b/.github/workflows/gcc-erlang.yml index 57eab9c4e2..1277bf5f55 100644 --- a/.github/workflows/gcc-erlang.yml +++ b/.github/workflows/gcc-erlang.yml @@ -35,6 +35,11 @@ jobs: - uses: actions/checkout@v6 + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y erlang-dev + - name: Configure CMake run: | CXXFLAGS="-g3" cmake -B ${{github.workspace}}/build \ diff --git a/.github/workflows/gcc-old-abi.yml b/.github/workflows/gcc-old-abi.yml index 00afa64e12..0efb754cbc 100644 --- a/.github/workflows/gcc-old-abi.yml +++ b/.github/workflows/gcc-old-abi.yml @@ -58,16 +58,6 @@ jobs: CXX: g++-15 steps: - - name: Install build dependencies - env: - DEBIAN_FRONTEND: noninteractive - run: | - apt-get update - apt-get install -y --no-install-recommends \ - ca-certificates \ - libssl-dev \ - update-ca-certificates - - uses: actions/checkout@v6 - name: Prepare build directory From e057951faa84d2f6d929c3ebf5a61f5e6ff1e742 Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 18:33:51 +0100 Subject: [PATCH 6/8] Remove an unncessary workflow; Migrate remainder of workflows to ubuntu 26; --- .github/workflows/disable-always-inline.yml | 1 - .github/workflows/gcc-old-abi.yml | 31 +-------------------- .github/workflows/gcc.yml | 2 +- .github/workflows/p2996-reflection.yml | 2 +- 4 files changed, 3 insertions(+), 33 deletions(-) diff --git a/.github/workflows/disable-always-inline.yml b/.github/workflows/disable-always-inline.yml index e5c0226c32..725e27c63e 100644 --- a/.github/workflows/disable-always-inline.yml +++ b/.github/workflows/disable-always-inline.yml @@ -60,7 +60,6 @@ jobs: env: CC: clang-22 CXX: clang++-22 - LLVM_VERSION: 22 steps: - uses: actions/checkout@v6 diff --git a/.github/workflows/gcc-old-abi.yml b/.github/workflows/gcc-old-abi.yml index 0efb754cbc..e8f10aa111 100644 --- a/.github/workflows/gcc-old-abi.yml +++ b/.github/workflows/gcc-old-abi.yml @@ -42,33 +42,4 @@ jobs: run: cmake --build "$GITHUB_WORKSPACE/build" -j $(nproc) - name: Test - run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" - - build-gcc15: - runs-on: ubuntu-26.04 - - strategy: - fail-fast: false - matrix: - build_type: [Debug] - std: [23] - - env: - CC: gcc-15 - CXX: g++-15 - - steps: - - uses: actions/checkout@v6 - - - name: Prepare build directory - run: cmake -E make_directory "$GITHUB_WORKSPACE/build" - - - name: Configure CMake - run: | - CXXFLAGS="-g3 -D_GLIBCXX_USE_CXX11_ABI=0" cmake -S "$GITHUB_WORKSPACE" -B "$GITHUB_WORKSPACE/build" -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_STANDARD=${{matrix.std}} - - - name: Build - run: cmake --build "$GITHUB_WORKSPACE/build" -j $(nproc) - - - name: Test - run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" + run: ctest --output-on-failure --test-dir "$GITHUB_WORKSPACE/build" \ No newline at end of file diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index b9b90c57ce..a676b9f653 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -92,7 +92,7 @@ jobs: # C++26 P2996 reflection coverage on GCC 16.1. # Replaces the standalone gcc-p2996-reflection.yml workflow which used # ubuntu:26.04 + apt-installed gcc-16; gcc:16.1 is the official image. - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 container: image: gcc:16.1 diff --git a/.github/workflows/p2996-reflection.yml b/.github/workflows/p2996-reflection.yml index 661f17d2bb..041ebc8ae2 100644 --- a/.github/workflows/p2996-reflection.yml +++ b/.github/workflows/p2996-reflection.yml @@ -21,7 +21,7 @@ env: jobs: test-p2996: - runs-on: ubuntu-latest + runs-on: ubuntu-26.04 name: P2996 Reflection Tests steps: From 78fb193007e4fa3abb827f757e7baafe5934d288 Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 18:40:54 +0100 Subject: [PATCH 7/8] Readme compiler support improvements --- README.md | 38 +++++++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index b4dd193bbb..2b4a071de6 100644 --- a/README.md +++ b/README.md @@ -91,6 +91,29 @@ See this README, the [Glaze Documentation Page](https://stephenberry.github.io/g - [Streaming I/O](https://stephenberry.github.io/glaze/streaming/) for reading/writing large files with bounded memory - [Much more!](#more-features) +## Compiler/System Support + +- Requires C++23 +- Tested for both 64bit and 32bit +- Supports both little-endian and big-endian systems + +| Compiler | Supported versions | Versions tested in CI | +|-------------|------------------------------------------------------|-----------------------| +| MSVC | Visual Studio 2026 MSVC Build Tools 14.50 and higher | 14.51 | +| Clang | >= 18 | 21, 22 | +| GCC | >= 13 | 14, 15, 16 | +| Apple Clang | >= 21 | 21 | + +In [Actions](https://github.com/stephenberry/glaze/actions), MSVC is tested on Windows, GCC is tested on Linux and Clang is tested on Linux and macOS. Big-endian is tested via QEMU emulation on s390x. + +![clang build](https://github.com/stephenberry/glaze/actions/workflows/clang.yml/badge.svg) ![gcc build](https://github.com/stephenberry/glaze/actions/workflows/gcc.yml/badge.svg) ![msvc build](https://github.com/stephenberry/glaze/actions/workflows/msvc.yml/badge.svg) + +Glaze seeks to maintain compatibility with the latest three versions of GCC and Clang, as well as the two latest versions of MSVC and the latest version of Apple Clang (Xcode). We aim to only drop old versions with major releases. + +### MSVC Compiler Flags + +Glaze requires a C++ standard conformant pre-processor, which requires the `/Zc:preprocessor` flag when building with MSVC. + ## Performance | Library | Roundtrip Time (s) | Write (MB/s) | Read (MB/s) | @@ -251,21 +274,6 @@ auto ec = glz::read_json(obj, buffer); The buffer refills automatically during parsing, enabling reading of arbitrarily large inputs with fixed memory. See [Streaming I/O](https://stephenberry.github.io/glaze/streaming/) for NDJSON processing and other streaming patterns. -## Compiler/System Support - -- Requires C++23 -- Tested for both 64bit and 32bit -- Supports both little-endian and big-endian systems - -[Actions](https://github.com/stephenberry/glaze/actions) build and test with [Clang](https://clang.llvm.org) (18+), [MSVC](https://visualstudio.microsoft.com/vs/features/cplusplus/) (Visual Studio 2026 MSVC Build Tools 14.50), and [GCC](https://gcc.gnu.org) (13+) on apple, windows, and linux. Big-endian is tested via QEMU emulation on s390x. - -![clang build](https://github.com/stephenberry/glaze/actions/workflows/clang.yml/badge.svg) ![gcc build](https://github.com/stephenberry/glaze/actions/workflows/gcc.yml/badge.svg) ![msvc build](https://github.com/stephenberry/glaze/actions/workflows/msvc.yml/badge.svg) - -> Glaze seeks to maintain compatibility with the latest three versions of GCC and Clang, as well as the latest version of MSVC and Apple Clang (Xcode). And, we aim to only drop old versions with major releases. - -### MSVC Compiler Flags - -Glaze requires a C++ standard conformant pre-processor, which requires the `/Zc:preprocessor` flag when building with MSVC. ### SIMD Architecture Detection From fe5ac2eb6e62394ea06f85f1760459ad349cd66d Mon Sep 17 00:00:00 2001 From: DockedFerret800 Date: Thu, 11 Jun 2026 19:17:27 +0100 Subject: [PATCH 8/8] Fix armv7and big-endian --- .github/workflows/armv7.yml | 6 +++--- .github/workflows/big-endian.yml | 8 +++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/armv7.yml b/.github/workflows/armv7.yml index 18206c3617..0dfa147e3c 100644 --- a/.github/workflows/armv7.yml +++ b/.github/workflows/armv7.yml @@ -32,12 +32,12 @@ jobs: g++-15-arm-linux-gnueabihf \ libstdc++-15-dev-armhf-cross \ libc6-armhf-cross \ - qemu-user-static + qemu-user - name: Verify compiler and NEON target macro run: | arm-linux-gnueabihf-g++-15 --version - qemu-arm-static --version + qemu-arm --version arm-linux-gnueabihf-g++-15 -std=c++23 -march=armv7-a -mfpu=neon -mfloat-abi=hard -dM -E -x c++ /dev/null | grep "__ARM_NEON" - name: Create CMake toolchain file @@ -55,7 +55,7 @@ jobs: set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) # Use QEMU to run selected target binaries in smoke tests. - set(CMAKE_CROSSCOMPILING_EMULATOR qemu-arm-static;-L;/usr/arm-linux-gnueabihf) + set(CMAKE_CROSSCOMPILING_EMULATOR qemu-arm;-L;/usr/arm-linux-gnueabihf) # We're cross-compiling; avoid running target executables during configure. set(CMAKE_CROSSCOMPILING TRUE) diff --git a/.github/workflows/big-endian.yml b/.github/workflows/big-endian.yml index 822fc9c85e..54e98db3d7 100644 --- a/.github/workflows/big-endian.yml +++ b/.github/workflows/big-endian.yml @@ -29,13 +29,13 @@ jobs: sudo apt-get update sudo apt-get install -y \ g++-15-s390x-linux-gnu \ - qemu-user-static \ + qemu-user \ libstdc++-15-dev-s390x-cross - name: Verify cross-compiler run: | s390x-linux-gnu-g++-15 --version - qemu-s390x-static --version + qemu-s390x --version - name: Create CMake toolchain file run: | @@ -51,6 +51,8 @@ jobs: set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + set(CMAKE_CROSSCOMPILING_EMULATOR qemu-s390x;-L;/usr/s390x-linux-gnu) + # Tell CMake we're cross-compiling, so it won't try to run test executables set(CMAKE_CROSSCOMPILING TRUE) EOF @@ -71,7 +73,7 @@ jobs: } EOF s390x-linux-gnu-g++-15 -std=c++20 /tmp/check_endian.cpp -o /tmp/check_endian - qemu-s390x-static -L /usr/s390x-linux-gnu /tmp/check_endian + qemu-s390x -L /usr/s390x-linux-gnu /tmp/check_endian - name: Configure CMake run: |