name: Rust
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
linux-android:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
default: true
components: rustfmt, clippy
- name: Check code format
run: cargo fmt -- --check
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --lib --verbose
- uses: nttld/setup-ndk@v1
with:
ndk-version: r22b
- name: Build on android
run: rustup target add armv7-linux-androideabi && cargo build --target armv7-linux-androideabi
- name: Build on android 64
run: rustup target add aarch64-linux-android && cargo build --target aarch64-linux-android
macos-ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: aarch64-apple-ios
- name: Build on MacOS
run: cargo build --verbose
- name: Build for iOS
run: cargo build --target aarch64-apple-ios
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Build on Windows
run: cargo build --verbose