-
Notifications
You must be signed in to change notification settings - Fork 11
Feature: Add RISC-V target to embedded-smoke #140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,7 +3,7 @@ name: Target matrix | |
| # Reusable: called by CI on pull requests and by Release on a version bump. | ||
| # | ||
| # `full` selects the target set. false (default) = the per-PR representative set | ||
| # (x86_64 host + all three bare-metal ABIs, thumbv6m as a reduced canary); true = | ||
| # (x86_64 host + all four bare-metal ABIs, thumbv6m as a reduced canary); true = | ||
| # the complete matrix, adding the aarch64 host. The `setup` job turns that flag into | ||
| # the JSON matrices the build jobs consume, so representative and full share one set | ||
| # of steps and differ only in the host list. | ||
|
|
@@ -33,9 +33,9 @@ jobs: | |
| shell: bash | ||
| run: | | ||
| # thumbv6m runs the reduced canary (--no-default-features) on every PR; the | ||
| # thumbv7em ABIs run the full set. The bare set is the same for representative | ||
| # and full runs — full only adds the aarch64 host. | ||
| bare='[{"target":"thumbv7em-none-eabi","args":""},{"target":"thumbv7em-none-eabihf","args":""},{"target":"thumbv6m-none-eabi","args":"--no-default-features"}]' | ||
| # thumbv7em ABIs and riscv32 run the full set. The bare set is the same for | ||
|
kmolan marked this conversation as resolved.
|
||
| # representative and full runs — full only adds the aarch64 host. | ||
| bare='[{"target":"thumbv7em-none-eabi","args":""},{"target":"thumbv7em-none-eabihf","args":""},{"target":"thumbv6m-none-eabi","args":"--no-default-features"},{"target":"riscv32imc-unknown-none-elf","args":""}]' | ||
| if [ "${{ inputs.full }}" = "true" ]; then | ||
| hosts='[{"target":"x86_64-unknown-linux-gnu","runner":"ubuntu-latest"},{"target":"aarch64-unknown-linux-gnu","runner":"ubuntu-24.04-arm"}]' | ||
| else | ||
|
|
@@ -92,6 +92,11 @@ jobs: | |
| with: | ||
| packages: qemu-system-arm | ||
| version: 1.0 | ||
| - name: Install QEMU (RISC-V) | ||
| run: | | ||
| sudo apt-get update | ||
| sudo apt-get install -y qemu-system-misc | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. do not do apt install. Rather stick with cached deps similar to how the arm is installed above.
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. reason is to avoid the slow apt update and apt install on every CI
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I agree. My first push put Bumping the cache
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looked more into it, and yeah you're right. RISC-V is flaky so apt install is the right move here. |
||
| command -v qemu-system-riscv32 | ||
| - name: Run smoke tests + budget checks under QEMU | ||
| run: | | ||
| for bin in embedded-smoke; do | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.