1name: CI 2on: [push, pull_request] 3 4jobs: 5 docker: 6 name: Docker 7 runs-on: ubuntu-latest 8 strategy: 9 matrix: 10 target: 11 - aarch64-unknown-linux-gnu 12 - arm-unknown-linux-gnueabi 13 - arm-unknown-linux-gnueabihf 14 - armv7-unknown-linux-gnueabihf 15 - i686-unknown-linux-gnu 16 - mips-unknown-linux-gnu 17 - mips64-unknown-linux-gnuabi64 18 - mips64el-unknown-linux-gnuabi64 19 - powerpc-unknown-linux-gnu 20 - powerpc64-unknown-linux-gnu 21 - powerpc64le-unknown-linux-gnu 22 - x86_64-unknown-linux-gnu 23 steps: 24 - uses: actions/checkout@master 25 - name: Install Rust 26 run: rustup update nightly && rustup default nightly 27 - run: rustup target add ${{ matrix.target }} 28 - run: rustup target add x86_64-unknown-linux-musl 29 - run: cargo generate-lockfile 30 - run: ./ci/run-docker.sh ${{ matrix.target }} 31 32 rustfmt: 33 name: Rustfmt 34 runs-on: ubuntu-latest 35 steps: 36 - uses: actions/checkout@master 37 - name: Install Rust 38 run: rustup update stable && rustup default stable && rustup component add rustfmt 39 - run: cargo fmt -- --check 40 41 wasm: 42 name: WebAssembly 43 runs-on: ubuntu-latest 44 steps: 45 - uses: actions/checkout@master 46 - name: Install Rust 47 run: rustup update nightly && rustup default nightly 48 - run: rustup target add wasm32-unknown-unknown 49 - run: cargo build --target wasm32-unknown-unknown 50 51 cb: 52 name: "The compiler-builtins crate works" 53 runs-on: ubuntu-latest 54 steps: 55 - uses: actions/checkout@master 56 - name: Install Rust 57 run: rustup update nightly && rustup default nightly 58 - run: cargo build -p cb 59 60 benchmarks: 61 name: Benchmarks 62 runs-on: ubuntu-latest 63 steps: 64 - uses: actions/checkout@master 65 - name: Install Rust 66 run: rustup update nightly && rustup default nightly 67 - run: cargo bench --all 68