Fix cross compilations (#664)
This commit is contained in:
parent
70fefd6dcc
commit
feae25878a
|
|
@ -16,78 +16,118 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jobs": {
|
"jobs": {
|
||||||
"test_cross": {
|
"test_cross_std": {
|
||||||
"name": "Cross platform test",
|
"name": "Cross platform test (platforms with standard library)",
|
||||||
"runs-on": "ubuntu-latest",
|
"runs-on": "ubuntu-latest",
|
||||||
"strategy": {
|
"strategy": {
|
||||||
"fail-fast": false,
|
"fail-fast": false,
|
||||||
"matrix": {
|
"matrix": {
|
||||||
"platform": [
|
"platform": [
|
||||||
|
# Tier 1
|
||||||
|
"aarch64-unknown-linux-gnu",
|
||||||
|
"i686-pc-windows-gnu",
|
||||||
|
# `cross` does not provide a Docker image for target i686-pc-windows-msvc
|
||||||
|
# "i686-pc-windows-msvc",
|
||||||
|
"i686-unknown-linux-gnu",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-apple-darwin
|
||||||
|
# "x86_64-apple-darwin",
|
||||||
|
"x86_64-pc-windows-gnu",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-pc-windows-msvc
|
||||||
|
# "x86_64-pc-windows-msvc",
|
||||||
|
"x86_64-unknown-linux-gnu",
|
||||||
|
|
||||||
|
# Tier 2
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-apple-darwin
|
||||||
|
# "aarch64-apple-darwin",
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-pc-windows-msvc
|
||||||
|
# "aarch64-pc-windows-msvc",
|
||||||
"aarch64-unknown-linux-musl",
|
"aarch64-unknown-linux-musl",
|
||||||
"arm-linux-androideabi",
|
|
||||||
"arm-unknown-linux-gnueabi",
|
"arm-unknown-linux-gnueabi",
|
||||||
"arm-unknown-linux-gnueabihf",
|
"arm-unknown-linux-gnueabihf",
|
||||||
|
"armv7-unknown-linux-gnueabihf",
|
||||||
|
# `cross` does not provide a Docker image for target loongarch64-unknown-linux-gnu
|
||||||
|
# "loongarch64-unknown-linux-gnu",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "mips-unknown-linux-gnu",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "mips64-unknown-linux-gnuabi64",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "mips64el-unknown-linux-gnuabi64",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "mipsel-unknown-linux-gnu",
|
||||||
|
"powerpc-unknown-linux-gnu",
|
||||||
|
"powerpc64-unknown-linux-gnu",
|
||||||
|
"powerpc64le-unknown-linux-gnu",
|
||||||
|
"riscv64gc-unknown-linux-gnu",
|
||||||
|
"s390x-unknown-linux-gnu",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "x86_64-unknown-freebsd",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "x86_64-unknown-illumos",
|
||||||
|
"x86_64-unknown-linux-musl",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "x86_64-unknown-netbsd",
|
||||||
|
|
||||||
|
# Tier 3, only those that have std
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-apple-ios
|
||||||
|
# "aarch64-apple-ios",
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-apple-ios-sim
|
||||||
|
# "aarch64-apple-ios-sim",
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-fuchsia
|
||||||
|
# "aarch64-fuchsia",
|
||||||
|
# `cross` does not provide a Docker image for target aarch64-unknown-fuchsia
|
||||||
|
# "aarch64-unknown-fuchsia",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/1222): currently broken
|
||||||
|
# "aarch64-linux-android",
|
||||||
|
"arm-linux-androideabi",
|
||||||
"arm-unknown-linux-musleabi",
|
"arm-unknown-linux-musleabi",
|
||||||
"arm-unknown-linux-musleabihf",
|
"arm-unknown-linux-musleabihf",
|
||||||
"armv5te-unknown-linux-gnueabi",
|
"armv5te-unknown-linux-gnueabi",
|
||||||
"armv5te-unknown-linux-musleabi",
|
"armv5te-unknown-linux-musleabi",
|
||||||
"armv7-linux-androideabi",
|
"armv7-linux-androideabi",
|
||||||
"armv7-unknown-linux-gnueabihf",
|
"armv7-unknown-linux-gnueabi",
|
||||||
|
"armv7-unknown-linux-musleabi",
|
||||||
"armv7-unknown-linux-musleabihf",
|
"armv7-unknown-linux-musleabihf",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/634): broken
|
||||||
# BlockedTODO: https://github.com/chronotope/chrono/issues/674
|
|
||||||
# Fixed in https://github.com/chronotope/chrono/pull/593
|
|
||||||
# "asmjs-unknown-emscripten",
|
# "asmjs-unknown-emscripten",
|
||||||
|
|
||||||
# These seem to fail on `-lunwind` not being available
|
|
||||||
# "i686-linux-android",
|
|
||||||
# "x86_64-linux-android",
|
|
||||||
|
|
||||||
"i586-unknown-linux-gnu",
|
"i586-unknown-linux-gnu",
|
||||||
"i586-unknown-linux-musl",
|
"i586-unknown-linux-musl",
|
||||||
"i686-unknown-linux-gnu",
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/1222): currently broken
|
||||||
|
# "i686-linux-android",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "i686-unknown-freebsd",
|
||||||
"i686-unknown-linux-musl",
|
"i686-unknown-linux-musl",
|
||||||
"mips-unknown-linux-gnu",
|
|
||||||
"mips-unknown-linux-musl",
|
"mips-unknown-linux-musl",
|
||||||
"mips64-unknown-linux-gnuabi64",
|
"mips64-unknown-linux-muslabi64",
|
||||||
"mips64el-unknown-linux-gnuabi64",
|
"mips64el-unknown-linux-muslabi64",
|
||||||
"mipsel-unknown-linux-gnu",
|
|
||||||
"mipsel-unknown-linux-musl",
|
"mipsel-unknown-linux-musl",
|
||||||
"powerpc-unknown-linux-gnu",
|
"sparc64-unknown-linux-gnu",
|
||||||
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
# Seems to have a bug in qemu, where all floats are `0.0` and aren't equal with each other
|
|
||||||
# "powerpc64le-unknown-linux-gnu",
|
|
||||||
|
|
||||||
"riscv64gc-unknown-linux-gnu",
|
|
||||||
"s390x-unknown-linux-gnu",
|
|
||||||
|
|
||||||
# Seems to not be able to link to certain files
|
|
||||||
# - cannot find -lsendfile
|
|
||||||
# - cannot find -llgrp
|
|
||||||
# "sparcv9-sun-solaris",
|
# "sparcv9-sun-solaris",
|
||||||
|
"thumbv7neon-linux-androideabi",
|
||||||
# These have no `std`
|
"thumbv7neon-unknown-linux-gnueabihf",
|
||||||
# "thumbv6m-none-eabi",
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
# "thumbv7em-none-eabi",
|
|
||||||
# "thumbv7em-none-eabihf",
|
|
||||||
# "thumbv7m-none-eabi",
|
|
||||||
|
|
||||||
# BlockedTODO: https://github.com/chronotope/chrono/issues/674
|
|
||||||
# Fixed in https://github.com/chronotope/chrono/pull/593
|
|
||||||
# "wasm32-unknown-emscripten",
|
# "wasm32-unknown-emscripten",
|
||||||
|
# `cross` does not provide a Docker image for target wasm32-unknown-unknown
|
||||||
# Seems to not be able to link to certain files
|
# "wasm32-unknown-unknown",
|
||||||
# - cannot find -lsendfile
|
# `cross` does not provide a Docker image for target wasm32-wasi
|
||||||
# - cannot find -llgrp
|
# "wasm32-wasi",
|
||||||
# "x86_64-sun-solaris",
|
# `cross` does not provide a Docker image for target x86_64-apple-ios
|
||||||
|
# "x86_64-apple-ios",
|
||||||
"x86_64-unknown-linux-gnu",
|
# `cross` does not provide a Docker image for target x86_64-fortanix-unknown-sgx
|
||||||
"x86_64-unknown-linux-musl",
|
# "x86_64-fortanix-unknown-sgx",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-fuchsia
|
||||||
# Seems to immediately bail
|
# "x86_64-fuchsia",
|
||||||
# error: test failed, to rerun pass '--lib'
|
# `cross` does not provide a Docker image for target x86_64-unknown-fuchsia
|
||||||
# could not execute process `...` (never executed)
|
# "x86_64-unknown-fuchsia",
|
||||||
# "x86_64-unknown-netbsd",
|
# BLOCKEDTODO(https://github.com/cross-rs/cross/issues/975): currently broken
|
||||||
|
# "x86_64-linux-android",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-pc-solaris
|
||||||
|
# "x86_64-pc-solaris",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-unknown-linux-gnux32
|
||||||
|
# "x86_64-unknown-linux-gnux32",
|
||||||
|
# `cross` does not provide a Docker image for target x86_64-unknown-redox
|
||||||
|
# "x86_64-unknown-redox",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -122,43 +162,73 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"test_windows": {
|
# None of these work, needs more investigation
|
||||||
"name": "Cross platform test",
|
# "test_cross_no_std": {
|
||||||
"runs-on": "windows-latest",
|
# "name": "Cross platform test (no_std, platforms without standard library)",
|
||||||
"strategy": {
|
# "runs-on": "ubuntu-latest",
|
||||||
"fail-fast": false,
|
# "strategy": {
|
||||||
"matrix": {
|
# "fail-fast": false,
|
||||||
"platform": [
|
# "matrix": {
|
||||||
# linker `i686-w64-mingw32-gcc` not found
|
# "platform": [
|
||||||
# "i686-pc-windows-gnu",
|
# # Tier 3
|
||||||
|
# "aarch64-unknown-none-softfloat",
|
||||||
"x86_64-pc-windows-gnu",
|
# "aarch64-unknown-none",
|
||||||
]
|
# "aarch64-unknown-uefi",
|
||||||
}
|
# "armebv7r-none-eabi",
|
||||||
},
|
# "armebv7r-none-eabihf",
|
||||||
"steps": [
|
# "armv7a-none-eabi",
|
||||||
{
|
# "armv7r-none-eabi",
|
||||||
"uses": "actions/checkout@v4",
|
# "armv7r-none-eabihf",
|
||||||
"name": "Checkout"
|
# "i586-pc-windows-msvc",
|
||||||
},
|
# "i686-unknown-uefi",
|
||||||
{
|
# "nvptx64-nvidia-cuda",
|
||||||
"uses": "actions-rs/toolchain@v1",
|
# "riscv32i-unknown-none-elf",
|
||||||
"with": {
|
# "riscv32imac-unknown-none-elf",
|
||||||
"profile": "minimal",
|
# "riscv32imc-unknown-none-elf",
|
||||||
"toolchain": "stable",
|
# "riscv64gc-unknown-none-elf",
|
||||||
"target": "${{ matrix.platform }}",
|
# "riscv64imac-unknown-none-elf",
|
||||||
"override": true
|
# "thumbv6m-none-eabi",
|
||||||
},
|
# "thumbv7em-none-eabi",
|
||||||
"name": "Install Rust stable"
|
# "thumbv7em-none-eabihf",
|
||||||
},
|
# "thumbv7m-none-eabi",
|
||||||
{
|
# "thumbv8m.base-none-eabi",
|
||||||
"run": "cargo test --target ${{ matrix.platform }}",
|
# "thumbv8m.main-none-eabi",
|
||||||
"name": "Run tests",
|
# "thumbv8m.main-none-eabihf",
|
||||||
"env": {
|
# "x86_64-unknown-none",
|
||||||
"RUSTFLAGS": "-D warnings"
|
# "x86_64-unknown-uefi",
|
||||||
}
|
# ]
|
||||||
}
|
# }
|
||||||
]
|
# },
|
||||||
}
|
# "steps": [
|
||||||
|
# {
|
||||||
|
# "uses": "actions/checkout@v4",
|
||||||
|
# "name": "Checkout"
|
||||||
|
# },
|
||||||
|
# {
|
||||||
|
# "uses": "actions-rs/toolchain@v1",
|
||||||
|
# "with": {
|
||||||
|
# "profile": "minimal",
|
||||||
|
# "toolchain": "stable",
|
||||||
|
# "override": true
|
||||||
|
# },
|
||||||
|
# "name": "Install Rust stable"
|
||||||
|
# },
|
||||||
|
# {
|
||||||
|
# "uses": "actions-rs/install@v0.1",
|
||||||
|
# "with": {
|
||||||
|
# "crate": "cross"
|
||||||
|
# },
|
||||||
|
# "name": "Install cargo cross"
|
||||||
|
# },
|
||||||
|
# {
|
||||||
|
# "run": "cross test --target ${{ matrix.platform }} --no-default-features --features alloc,derive",
|
||||||
|
# "name": "Run tests",
|
||||||
|
# "env": {
|
||||||
|
# "RUSTFLAGS": "-D warnings",
|
||||||
|
# "RUST_BACKTRACE": "1",
|
||||||
|
# }
|
||||||
|
# }
|
||||||
|
# ]
|
||||||
|
# }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue