Skip to content

Fix compilation error and regression tests for big endian platforms #140

Fix compilation error and regression tests for big endian platforms

Fix compilation error and regression tests for big endian platforms #140

Workflow file for this run

name: Rust
on:
push:
branches: [
master,
auto, # used for bors
try # used for bors
]
pull_request:
branches: [ master ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
matrix:
rust_channel: [ stable, beta, nightly ]
include:
- rust_channel: nightly
check_cfg: '-Zcheck-cfg'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ matrix.rust_channel }}
# Add a big endian target so we can check that everything at least
# compiles on big endian.
targets: powerpc64-unknown-linux-gnu
- name: Build
run: cargo build --verbose --all ${{ matrix.check_cfg }}
- name: Run tests
run: cargo test --verbose --all ${{ matrix.check_cfg }}
- name: Docs
run: cargo doc --verbose --all
- name: Check big endian
run: cargo check --target powerpc64-unknown-linux-gnu --verbose --all
# These jobs doesn't actually test anything, but they're only used to tell
# bors the build completed, as there is no practical way to detect when a
# workflow is successful listening to webhooks only.
#
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!
end-success:
name: bors build finished
runs-on: ubuntu-latest
needs: [build]
if: github.event.pusher.name == 'bors' && success()
steps:
- name: mark the job as a success
run: exit 0
end-failure:
name: bors build finished
runs-on: ubuntu-latest
needs: [build]
if: github.event.pusher.name == 'bors' && (failure() || cancelled())
steps:
- name: mark the job as a failure
run: exit 1