-
Notifications
You must be signed in to change notification settings - Fork 2k
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
tree wide: accomodate RISC-V toolchain update & boards/common/makefiles/stdio_cdc_acm.dep.mk: fix [backport 2024.01] #20383
tree wide: accomodate RISC-V toolchain update & boards/common/makefiles/stdio_cdc_acm.dep.mk: fix [backport 2024.01] #20383
Conversation
This fixes compilation issues in `tests/pkg/tinyusb_netdev` with newer versions of the RISC-V toolchain due to two competing USB stacks being pulled in. With the older toolchain the build system warns: The following features may conflict: periph_usbdev tinyusb_device But builds fine (even though surprises at runtime are likely). The newer toolchain takes an issue with the same symbol being linked in more than once (and more than one instance not being `weak`). (cherry picked from commit 38ab147)
I fear we will have to bundle this backport with the backport of #20380 into one backport PR :/ |
The CI now uses `riscv-none-elf` over the previous (and technically incorrect) `riscv-none-embed`. In addition, we no longer probe for host toolchains with the incorrect target triple, as the source providing it has long declared the toolchain with the incorrect triple as obsolete.
This drops support for the legacy riscv-none-embed target triple. That value has been incorrect since the beginning and the toolchain that used that has been long declared obsolete and is fairly outdated. With our CI updating the toolchain, we no longer need to check for that.
The legacy `riscv-none-embed` target triple is incorrect and the toolchain using it has long been obsolete. With our CI no longer using the obsolete toolchain, there is no need to handle that one anymore.
With the new RISC-V toolchain, some binaries grew larger, most smaller.
This should now contain all the fixes needed to get past the CI |
Maybe disabling all the flaky tests on native should also be backported. But for now, let's roll the dice again. |
Just rerolling the dice until all of the flaky native and native64 tests succeed for both GNU and LLVM toolchain on the first run is unbearable. We either have to also backport all those "disabling flake test in CI" PRs of lately, or revert #20269 in the release branch to treat the native test failures as build failures and just re-run them up to three times. |
Do you have a list of the tests to disable? |
nvm I think I got it. |
This tests fails sporadically on unrelated PRs, wasting days of CPU time in the CI. So, let's disable this test for now.
The test is already marked as disabled, but executed anyway. Hopefully this does the trick.
Yeah! Merging to the release branch works again 🎉 |
Backport of #20379, #20380, #20382, #20358, #20324
20378
Contribution description
This fixes compilation issues in
tests/pkg/tinyusb_netdev
with newer versions of the RISC-V toolchain due to two competing USB stacks being pulled in. With the older toolchain the build system warns:But builds fine (even though surprises at runtime are likely). The newer toolchain takes an issue with the same symbol being linked in more than once (and more than one instance not being
weak
).Testing procedure
make BOARD=seeedstudio-gd32 -C tests/pkg/tinyusb_netdev
should no longer pull in two USB stacks.Issues/PRs references
None
20380
Contribution description
This contains fixed needed after updating the RISC-V toolchain in the CI
Testing procedure
Build
riotbuild
from RIOT-OS/riotdocker#248 locally, then runThis should fail for each and every build in
master
, but work for each and every build with this PRIssues/PRs references
Depends on:
20382, 20358, 20324
Disabling flaky native tests...