-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Upstream tooling has several breaking changes that limit our ability to cross compile on CI. - MIPS downgraged to Tier 3 and not providing rust-std pre-compilation - MIPS having `-lunwind` errors on nightly when running `-Z build-std` - Stable cross for Android lacking `-lunwind` on the container This commit separate the problematic pipelines into their own workflow, so it does not interrupt the build matrix of stable cross compilation tools. Furthermore, to alleviate the MIPS Tier 3 downgraged, we now pin the MIPS pipeline to Rust 1.71, which still had MIPS as Tier 2.
- Loading branch information
Showing
3 changed files
with
58 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# We could use `@actions-rs/cargo` Action ability to automatically install `cross` tool | ||
# in order to compile our application for some unusual targets. | ||
|
||
# Separated as another pipeline to avoid errors cancelling other targets until the cross issue is solved | ||
# Ref: https://github.com/bltavares/multicast-socket/issues/18 | ||
|
||
on: [push, pull_request] | ||
|
||
name: Cross-compile android | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
target: | ||
- aarch64-linux-android | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: actions-rs/toolchain@v1 | ||
with: | ||
toolchain: stable | ||
target: ${{ matrix.target }} | ||
override: true | ||
- uses: actions-rs/cargo@v1 | ||
with: | ||
use-cross: true | ||
command: build | ||
args: --target=${{ matrix.target }} --examples |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
# Since Rust 1.72+ MIPS is a Tier 3 platform, and there are many errors on the latest nightly to use -Z build-std. | ||
# So we pin it to 1.71 to produce valid targets | ||
# Ref: https://github.com/rust-lang/compiler-team/issues/648 | ||
|
||
on: [push, pull_request] | ||
|
||
name: Cross-compile MIPS | ||
|
||
jobs: | ||
build: | ||
name: Build | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
target: | ||
- mips-unknown-linux-musl | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: actions-rs/toolchain@v1 | ||
with: | ||
toolchain: 1.71 | ||
target: ${{ matrix.target }} | ||
override: true | ||
- uses: actions-rs/cargo@v1 | ||
with: | ||
use-cross: true | ||
command: build | ||
args: --target=${{ matrix.target }} --examples |