Merge pull request #204 from tkaitchuck/master #470
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Rust | |
on: [push, pull_request] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install latest stable | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
components: clippy | |
- name: check nostd | |
run: cargo check --no-default-features | |
- name: test nostd | |
run: cargo test --no-default-features | |
- name: check constrandom | |
run: cargo check --no-default-features --features compile-time-rng | |
- name: test constrandom | |
run: cargo test --no-default-features --features compile-time-rng | |
- name: check fixed-seed | |
run: cargo check --no-default-features --features std | |
- name: check | |
run: cargo check | |
- name: test | |
run: cargo test | |
nightly: | |
name: nightly | |
runs-on: ubuntu-latest | |
env: | |
RUSTFLAGS: -C target-cpu=native | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install latest nightly | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: nightly | |
components: clippy | |
- name: check nightly | |
run: cargo check -Z msrv-policy | |
- name: test nightly | |
run: cargo test | |
- name: check serde | |
run: cargo check --features serde | |
- name: test serde | |
run: cargo test --features serde | |
linux_arm7: | |
name: Linux ARMv7 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
targets: armv7-unknown-linux-gnueabihf | |
- run: cargo check --target armv7-unknown-linux-gnueabihf | |
- name: Install 1.72.0 | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: 1.72.0 | |
targets: armv7-unknown-linux-gnueabihf | |
- run: cargo +1.72.0 check --target armv7-unknown-linux-gnueabihf | |
aarch64-apple-darwin: | |
name: Aarch64 Apple Darwin | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
targets: aarch64-apple-darwin | |
- run: cargo check --target aarch64-apple-darwin | |
- run: cargo test | |
- run: cargo test --no-default-features --features compile-time-rng | |
- name: Install 1.72.0 | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: 1.72.0 | |
targets: aarch64-apple-darwin | |
- run: cargo +1.72.0 check --target aarch64-apple-darwin | |
i686-unknown-linux-gnu: | |
name: Linux i686 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
targets: i686-unknown-linux-gnu | |
- name: Install cross compile tools | |
run: sudo apt-get install -y gcc-multilib libc6-i386 libc6-dev-i386 | |
- run: cargo check --target i686-unknown-linux-gnu | |
- run: cargo test --target i686-unknown-linux-gnu | |
- name: check constrandom | |
run: cargo check --no-default-features --features compile-time-rng --target i686-unknown-linux-gnu | |
- name: Install 1.72.0 | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: 1.72.0 | |
targets: i686-unknown-linux-gnu | |
- run: cargo +1.72.0 check --target i686-unknown-linux-gnu | |
- name: check constrandom | |
run: cargo +1.72.0 check --no-default-features --features compile-time-rng --target i686-unknown-linux-gnu | |
x86_64-unknown-linux-gnu: | |
name: Linux x86_64 | |
runs-on: ubuntu-latest | |
env: | |
RUSTFLAGS: -C target-cpu=skylake -C target-feature=+aes | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: nightly | |
targets: x86_64-unknown-linux-gnu | |
- run: cargo check --target x86_64-unknown-linux-gnu | |
- run: cargo test --target x86_64-unknown-linux-gnu | |
- name: check constrandom | |
run: cargo check --no-default-features --features compile-time-rng --target x86_64-unknown-linux-gnu | |
- name: Install 1.72.0 | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: 1.72.0 | |
- run: cargo +1.72.0 check --target x86_64-unknown-linux-gnu | |
- name: check constrandom | |
run: cargo +1.72.0 check --no-default-features --features compile-time-rng --target x86_64-unknown-linux-gnu | |
thumbv6m: | |
name: thumbv6m | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
targets: thumbv6m-none-eabi | |
- run: cargo check --target thumbv6m-none-eabi --no-default-features | |
wasm32-unknown-unknown: | |
name: wasm | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
targets: wasm32-unknown-unknown | |
- run: cargo check --target wasm32-unknown-unknown --no-default-features | |
no_std: | |
name: no-std build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: nightly | |
- run: cargo build --manifest-path=no_std_test/Cargo.toml |