Run tests for riscv64
This commit is contained in:
parent
2f74b68617
commit
04a3850317
10
.github/workflows/main.yml
vendored
10
.github/workflows/main.yml
vendored
@ -50,10 +50,12 @@ jobs:
|
|||||||
- os: ubuntu-latest
|
- os: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
TARGET_TRIPLE: aarch64-unknown-linux-gnu
|
TARGET_TRIPLE: aarch64-unknown-linux-gnu
|
||||||
# s390x requires QEMU 6.1 or greater, we could build it from source, but ubuntu 22.04 comes with 6.2 by default
|
|
||||||
- os: ubuntu-latest
|
- os: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
TARGET_TRIPLE: s390x-unknown-linux-gnu
|
TARGET_TRIPLE: s390x-unknown-linux-gnu
|
||||||
|
- os: ubuntu-latest
|
||||||
|
env:
|
||||||
|
TARGET_TRIPLE: riscv64gc-unknown-linux-gnu
|
||||||
- os: windows-latest
|
- os: windows-latest
|
||||||
env:
|
env:
|
||||||
TARGET_TRIPLE: x86_64-pc-windows-msvc
|
TARGET_TRIPLE: x86_64-pc-windows-msvc
|
||||||
@ -92,6 +94,12 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install -y gcc-s390x-linux-gnu qemu-user
|
sudo apt-get install -y gcc-s390x-linux-gnu qemu-user
|
||||||
|
|
||||||
|
- name: Install riscv64gc toolchain and qemu
|
||||||
|
if: matrix.env.TARGET_TRIPLE == 'riscv64gc-unknown-linux-gnu'
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y gcc-riscv64-linux-gnu qemu-user
|
||||||
|
|
||||||
- name: Prepare dependencies
|
- name: Prepare dependencies
|
||||||
run: ./y.sh prepare
|
run: ./y.sh prepare
|
||||||
|
|
||||||
|
@ -42,6 +42,16 @@ pub(crate) fn set_cross_linker_and_runner(&mut self) {
|
|||||||
"/usr/s390x-linux-gnu".to_owned(),
|
"/usr/s390x-linux-gnu".to_owned(),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
"riscv64gc-unknown-linux-gnu" => {
|
||||||
|
// We are cross-compiling for riscv64. Use the correct linker and run tests in qemu.
|
||||||
|
self.rustflags.push("-Clinker=riscv64-linux-gnu-gcc".to_owned());
|
||||||
|
self.rustdocflags.push("-Clinker=riscv64-linux-gnu-gcc".to_owned());
|
||||||
|
self.runner = vec![
|
||||||
|
"qemu-riscv64".to_owned(),
|
||||||
|
"-L".to_owned(),
|
||||||
|
"/usr/riscv64-linux-gnu".to_owned(),
|
||||||
|
];
|
||||||
|
}
|
||||||
"x86_64-pc-windows-gnu" => {
|
"x86_64-pc-windows-gnu" => {
|
||||||
// We are cross-compiling for Windows. Run tests in wine.
|
// We are cross-compiling for Windows. Run tests in wine.
|
||||||
self.runner = vec!["wine".to_owned()];
|
self.runner = vec!["wine".to_owned()];
|
||||||
|
Loading…
Reference in New Issue
Block a user