[llvm] [libc++] Run macOS CI on self-hosted runners instead of Github ones (PR #210124)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 16 10:58:53 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-github-workflow
Author: Louis Dionne (ldionne)
<details>
<summary>Changes</summary>
This should increase our capacity and allow better turn around times, and potentially unblock additional test coverage.
Note that this change implies that the self-hosted runners provide a version of Xcode that is supported by libc++ (the latest released one).
When we create a release branch, we would need a way to pin down the version of Xcode used by the runners so the CI doesn't break if a newer Xcode introduces issues with the version of libc++ on the release branch. We don't currently have a solution to these problems, but I think the benefits outweigh the risk here.
---
Full diff: https://github.com/llvm/llvm-project/pull/210124.diff
1 Files Affected:
- (modified) .github/workflows/libcxx-build-and-test.yaml (+4-11)
``````````diff
diff --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index 7244d236877bd..f406b9e02f161 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -198,13 +198,9 @@ jobs:
matrix:
include:
- config: generic-cxx03
- os: macos-26
- config: generic-cxx23
- os: macos-26
- config: generic-modules
- os: macos-26
- config: apple-configuration
- os: macos-26
# TODO: These jobs are intended to test back-deployment (building against ToT libc++ but running against an
# older system-provided libc++.dylib). Doing this properly would require building the test suite on a
# recent macOS using a recent Clang (hence recent Xcode), and then running the actual test suite on an
@@ -216,18 +212,15 @@ jobs:
# macOS versions as a way to avoid rotting that configuration, but it doesn't provide a lot of additional
# coverage.
- config: apple-system
- os: macos-26
- config: apple-system-hardened
- os: macos-26
- runs-on: ${{ matrix.os }}
+ runs-on: ["self-hosted", "macOS", "ARM64", "26", "26.5"]
steps:
- uses: actions/checkout at de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- - uses: maxim-lobanov/setup-xcode at ed7a3b1fda3918c0306d1b724322adc0b8cc0a90 # v1.7.0
- with:
- # https://github.com/actions/runner-images/blob/main/images/macos/macos-26-Readme.md
- xcode-version: '26.4'
+ - name: Install Ninja and CMake
+ run: |
+ brew install ninja cmake
- name: Build and test
run: |
python3 -m venv .venv
``````````
</details>
https://github.com/llvm/llvm-project/pull/210124
More information about the llvm-commits
mailing list