Skip to content

Support visionOS, watchOS, and tvOS #190

Support visionOS, watchOS, and tvOS

Support visionOS, watchOS, and tvOS #190

Workflow file for this run

name: coreaudio-sys
on: [push, pull_request]
jobs:
# Run cargo test with default, no and all features.
macos-test:
runs-on: macOS-latest
strategy:
matrix:
toolchain: [stable, nightly]
steps:
- uses: actions/checkout@v4
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2.0.3
with:
version: "15.0"
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.toolchain }}
- name: cargo test
run: cargo test --verbose
- name: cargo test - no features
run: cargo test --no-default-features --verbose
- name: cargo test - all features
run: cargo test --all-features --verbose
ios-check:
runs-on: macOS-14
strategy:
matrix:
toolchain: [stable, nightly]
target: [aarch64-apple-ios, x86_64-apple-ios, aarch64-apple-ios-sim]
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.toolchain }}
targets: ${{ matrix.target }}
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2.0.3
with:
version: "15.0"
- name: add ios targets
run: rustup target add ${{matrix.target}}
- name: Build for iOS target ${{matrix.target}}
run: cargo build --verbose --target=${{matrix.target}}
apple-tier-3-check:
runs-on: macOS-14
strategy:
matrix:
target: [
aarch64-apple-visionos,
aarch64-apple-visionos-sim,
aarch64-apple-watchos,
arm64_32-apple-watchos,
armv7k-apple-watchos,
aarch64-apple-watchos-sim,
x86_64-apple-watchos-sim,
aarch64-apple-tvos,
aarch64-apple-tvos-sim,
x86_64-apple-tvos-sim,
]
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly
components: rust-src
- name: Install Xcode Command Line Tools
run: sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer
- name: Build for visionOS target ${{matrix.target}}
run: cargo +nightly build -Z build-std --target=${{matrix.target}}
# Build the docs with all features to make sure docs.rs will work.
macos-docs:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v4
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2.0.3
with:
version: "15.0"
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- name: cargo doc - all features
run: cargo doc --all-features --verbose
# Publish a new version when pushing to master.
# Will succeed if the version has been updated, otherwise silently fails.
cargo-publish:
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
env:
CRATESIO_TOKEN: ${{ secrets.CRATESIO_TOKEN }}
runs-on: macOS-latest
steps:
- uses: actions/checkout@v4
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2.0.3
with:
version: "15.0"
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- name: cargo publish
continue-on-error: true
run: cargo publish --token $CRATESIO_TOKEN