- 
                Notifications
    
You must be signed in to change notification settings  - Fork 8.2k
 
Labels
RFCRequest For Comments: want input from the communityRequest For Comments: want input from the communityarea: ToolchainsToolchainsToolchains
Description
Introduction
Problem description
Hi, I recently bumped into few compiler quirks:
- the first priority check implementation broke ARCMWDT due to differences in section naming
 - the second implementation broke ARMClang due to missing symbols
 - the troubleshooting of the second implementation was slowed down because ARMClang support was already broken
 - a recent build time optimization added a warning in clang builds for pretty much anything but native_posix that turned out to be an llvm bug
 - we are now blocking a Kconfig option removal for unclear compiler limitations (may not be the case, but it adds to the point)
 
None of the above were detectable in CI. On paper the project supports a handful of different compilers, but in practice the only ones tested in CI are
- Zephyr SDK at the current stable version
 - Clang/LLVM at the version in the CI image, but really only builds for native_posix
 
Any breakage that does not hit any of these is going to go undetected and has to get caught manually by a reviewer or post-submit, potentially post-release, so it's regression and potential backport.
More importantly, many of those toolchains are proprietary, most developer have no access to them, so one has to rely on someone else to test their code, but at the same time there's not toolchain maintainers or a known list of point of contacts for validating changes against a specific toolchain.
Proposed change
- Supported proprietary toolchains should have an area in the MAINTAINER file listing users who can test potentially breaking changes. Ideally there should be a way for Zephyr contributors to access proprietary toolchains for troubleshooting, or the support team should provide help in running the changes on the toolchain and providing build artifacts, or contributing fixes and workarounds directly.
 - Supported open source toolchains should have some level of testing in CI (Clang/LLVM beyond native_posix is what I'm thinking)
 
henrikbrixandersencfriedt, gmarull and mrx23dotkartben
Metadata
Metadata
Assignees
Labels
RFCRequest For Comments: want input from the communityRequest For Comments: want input from the communityarea: ToolchainsToolchainsToolchains
Type
Projects
Status
Done