| name: iOS |
| permissions: |
| contents: read |
| |
| on: [push, pull_request, workflow_dispatch] |
| |
| jobs: |
| build: |
| runs-on: ${{ matrix.os }} |
| strategy: |
| matrix: |
| os: [ macos-12, macos-13 ] |
| steps: |
| - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6 |
| - uses: lukka/get-cmake@85652a37b177d946c9f4fad0f696b2927ee7754d # v3.29.4 |
| - name: Download dependencies |
| run: python3 utils/git-sync-deps |
| # NOTE: The MacOS SDK ships universal binaries. CI should reflect this. |
| - name: Configure Universal Binary for iOS |
| run: | |
| cmake -S . -B build \ |
| -D CMAKE_BUILD_TYPE=Debug \ |
| -D CMAKE_SYSTEM_NAME=iOS \ |
| "-D CMAKE_OSX_ARCHITECTURES=arm64;x86_64" \ |
| -G Ninja |
| env: |
| # Linker warnings as errors |
| LDFLAGS: -Wl,-fatal_warnings |
| - run: cmake --build build |
| - run: cmake --install build --prefix /tmp |