diff --git a/.github/workflows/cross.yml b/.github/workflows/cross.yml new file mode 100644 index 0000000..5694b57 --- /dev/null +++ b/.github/workflows/cross.yml @@ -0,0 +1,57 @@ +on: [push, pull_request] + +name: Cross testing + +jobs: + + Cross: + name: Cross + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + arch: + ############ Tier 1 + - aarch64-unknown-linux-gnu + # - i686-pc-windows-gnu # not supported by cross + # - i686-pc-windows-msvc # not supported by cross + - i686-unknown-linux-gnu + # - x86_64-apple-darwin # proprietary apple stuff + - x86_64-pc-windows-gnu + # - x86_64-pc-windows-msvc # not supported by cross + - x86_64-unknown-linux-gnu + ############ Tier 2 with Host Tools + # - aarch64-apple-darwin # proprietary apple stuff + # - aarch64-pc-windows-msvc # not supported by cross + - aarch64-unknown-linux-musl + - arm-unknown-linux-gnueabi + - arm-unknown-linux-gnueabihf + - armv7-unknown-linux-gnueabihf + - mips-unknown-linux-gnu + - mips64-unknown-linux-gnuabi64 + - mips64el-unknown-linux-gnuabi64 + - mipsel-unknown-linux-gnu + - powerpc-unknown-linux-gnu + # - powerpc64-unknown-linux-gnu # not supported by cross + - powerpc64le-unknown-linux-gnu + - riscv64gc-unknown-linux-gnu + - s390x-unknown-linux-gnu + # - x86_64-unknown-freebsd # not supported by cross + - x86_64-unknown-illumos + - x86_64-unknown-linux-musl + - x86_64-unknown-netbsd + steps: + - name: Checkout Crate + uses: actions/checkout@v2 + - name: Checkout Toolchain + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + - name: Install target + run: rustup target add ${{ matrix.arch }} + - name: install cross + run: cargo install cross + - name: run cross test + run: cross test --target ${{ matrix.arch }}