Enable AOT build for android-riscv64 #2399
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR replaces
qemu-user-static
binaries distributed bytonistiigi/binfmt
withfedora
distributed ones.To properly run android riscv64 QEMU >= 8.2.0 is needed, but
tonistiigi/binfmt:master
has been stuck at QEMU 8.1.5 for a very long time (8.2.0 was released on 20 Dec 2023): tonistiigi/binfmt#197. Instead, current stable fedora 40 has QEMU 8.2.7 and upcoming fedora 41 has QEMU 9.1.0. Both version runs dart for android riscv64 without issues.In addition, the new QEMU version fixed the bug that dart arm linux-musl would get stuck, so that this PR changes it back to run all linux builds with QEMU for simplicity.
Although dart-sdk still has no support for cross compiling AOT snapshot, with this PR we would reach complete coverage for AOT on all supported platforms.